使用Xcode

时间:2017-09-04 12:29:24

标签: ios xcode localization translation xliff

以下是该场景:我们使用iOS应用程序支持多种语言。我们的翻译是通过POEditor在线完成的。由于xliff格式支持跨多个本地化文件以及plists(甚至是故事板)的本地化,因此它似乎是我们的合理选择。

因此我们通过Xcodes导出选项导出语言,可以在菜单中找到(编辑 - >导出以进行本地化,一旦选择了目标)。翻译后,我们从POEditor下载更新的xliff文件。

这些更新的xliff文件可能包含新的密钥和文本,因为我们假设它们必须首先添加到POEditor中。这样,一旦再次导入它们,它们将被添加到Xcode项目中。

但是,这不能按预期工作。一旦我们手动导入xliff,就会出现diff对话框,警告我们项目中的键还没有,这很有意义,因为它们是新的。但是,单击导入有效,不会添加新密钥。

即使我们手动添加密钥,导入完成后也会消失,而不是更新。

命令行导入xcodebuild -importLocalizations -localizationPath PATH也是如此。控制台报告:项目中找不到密钥(密钥:“our_key”)

我的问题是:为什么不能通过xliff添加新的翻译到我们的项目,这些翻译只在POEditor中添加?我们做错了吗?

修改
因为看起来单一的事实来源是Xcode和开发语言。如果源文本匹配的开发语言的可本地化文件中有新密钥,则即使缺少密钥,也会添加所有其他语言。

在我看来,Xcode仍然试图比应该更聪明......

0 个答案:

没有答案