最近公司的一个项目要发布多语言版本,但是因为以前主要是 English 和 Chinese ,其他语言翻译了一部分,未能完全跟上翻译的步伐。如果全部重新翻译,工作量大且浪费了以前的翻译成果,如果手动对比或者用 git diff
这样的命令去增量翻译,又无形中增加了开发人员和翻译人员的协作成本。
具体的过程就不多复述了,简单的介绍一下我们目前在 Localization 方面的规范。
iOS 项目中的 Localizable.strings
文件务必要规范化,避免重复的无意义翻译,同时在项目模块变动的时候可以及时去除无需使用的字段。
Album
,通用按钮命名为 Button
这种。 良好的示例:
// 照片 "Album_GroupName_Camera" = "相机"; "Album_GroupName_Stream" = "我的照片流"; // 按钮 "Button_Add" = "添加"; "Button_Album" = "相册"; // DO NOT TRANSLATE "Help_Image_Name_Photos" = "help_photos_chs";
Localization Suite 是一组 Localization 的工具集合。有利于帮助我们更好更快的完成翻译和校对工作。
下面简单的介绍一下基本的使用方法。
打开 Manager 之后,在菜单栏选择 New -> From Xcode ,这样可以从 Xcode 的项目文件中直接读取需要进行翻译的文件。
导入之后应该是这个样子的:
基本的操作按钮在鼠标悬停的时候都有提示。下面演示一下用这个工具的基本用处之一:查找漏翻译的内容。
以 Korean 为例。选中 Korean 然后在右侧的按钮点击 Edit 按钮。
这时会打开我们的第二个工具: Localizer:
Localizer 是用来进行翻译的,我们可以在左侧设定好筛选条件然后在右侧面板就能看到未翻译的内容:
由于这个工具把 value 相同认为未翻译,而实际上可能确实存在一些待翻译的内容,比如目前图片资源没跟上,还是先显示 ChatGame 这样的。可以统一把这些放在末尾,并且备注写明不需翻译,这样在对照的时候会更清晰一些:
先写这么多。