查看原文
其他

JSON 文件如何进行翻译与本地化

可爱的冬梅 职业译员玩转翻译技术
2024-09-09

Hi,你好呀,我是May。

昨天跟大家分享了应用程序本地化如何翻译 JSON 文件,然后有小伙伴问我说,那,JSON 文件格式可以直接导入memoQ进行翻译吗?当然可以。

所以,今天跟大家分享另一种常见的格式,JSON文件。

1. 认识应用程序本地化中的 JSON 文本

JSON (JavaScript Object Notation),是一种轻量级的数据交换格式,指的是用于在 JavaScript 处理中描述对象的格式。

json 文件的应用场景:

一般是与浏览器或本机移动应用程序通信的软件。

基本数据结构:

  • 字符串:以双引号""括起来的零个或多个Unicode码位。支持反斜杠开始的转义字符序列。

  • 布尔值:表示为true或者false。

  • 数组:有序的零个或者多个值。

  • 对象:若干无序的“键-值”(key-value pairs),其中键只能是字符串。键与值之间用冒号:分割。“key”: “text”

  • 空值:值写为null

啊哈哈哈,其实上面我自己都不想懂,没关系,再说一遍,我们本地化人员不是程序员,不需要会写,只要认识就行!

所以你只需要知道:

(1)JSON 文件的数据结构长这样:

{
"key": "text",
}

其中:

  • "key" 是键,可以理解为说明型文本不翻译;

  • "text" 是值,要翻译。

(2)原文可能会含有HTML样式或其它占位符,翻译时必须保留这些字符串

2. memoQ 如何帮助处理 JSON 文档

memoQ 中支持直接导入 JSON 文件

对于含有占位符或 HTML 样式的文档,还可以借助层叠过滤器实现。

层叠层叠嘛,第一层是 JSON 过滤器,第二层是HTML过滤器,也可以再加一层正则表达式标注器。 

2.1 使用 JSON 过滤器,帮助待翻译的内容

直接将文件导入至项目即可,<span style='background:yellow;'>memoQ自动识别。

如果你的文件样式是JSON样式,但是文档格式是TXT或者其他文本格式,同样可以使用“选择性导入” -> 选择 JSON 过滤器

2.3 添加正则标注器,帮助处理字符串和非译元素

如果原文中有想<color=yellow>{PropName}这样的字符串和非译元素,需要再加一层正则表达式标注器,并设置正则定义方式。

——这样的话原文中的非译元素可以固定为标签,译员就不会误翻译。

Step 1:在导入项目时,使用“选择性导入”;

Step 2:选择好原文后,默认用的过滤器是 JSON 过滤器。因为原文有字符串,这里选择“更改过滤器和配置”;

Step 3:添加一层正则表达式标注器,并设置正则定义方式。

Step 4:设置完成过滤器,保存层叠过滤器,以供下次使用。然后,点击"确定"即可。

关于正则表达式如何写

我写过一篇应用程序本地化中常用字符串和正则表达式推荐,你可以来学习正则。

当然,memoQ 自带了一个 tags and entities 的标注器,内嵌了像 <color>这样的标签,也设置了哪些是开标签哪些是关闭标签,你也可以直接使用,还是不错的。

3. 在 memoQ 中进行翻译

导入完成文档后,即可在memoQ中进行翻译了。

在翻译过程中,你会发现:

  • 需要翻译的原文,也就是 key 值就提取出来了,可以安心做翻译。

  • 下方还可以预览原文和译文

4. 导出译文

翻译结束后,导出就OK啦

导出译文的操作可以参考如何在memoQ中导出最终译文

这里用了机器翻译的结果。


好啦~今天到这里哦~

更多翻译技术干货,欢迎关注职业译员玩转翻译技术公众号,嘻嘻~

下次见啦,拜~


往期精选

应用程序本地化如何翻译 PO 文件

memoQ支持超过260种语言对

如何翻译单语XML文档?

搞定应用程序本地化中的多语言XML文档

翻译包含HTML样式的XML文档(实体篇)

翻译包含HTML样式的XML文档 (CDATA篇)

XML文档篇:认识DTD(一)

如何翻译包含DTD的XML文档

认识XML文档:认识xsd文档篇(二)

如何翻译包含架构文件(xsd)的XML?

如何用memoQ翻译CAD文件

继续滑动看下一个
职业译员玩转翻译技术
向上滑动看下一个

您可能也对以下帖子感兴趣

文章有问题?点此查看未经处理的缓存