The*_*ter 14 xcode localization export nslocalizedstring ios
情况:
我们使用XCode导出/导入工具为我们的翻译生成可本地化的文件.这在XCode 8中运行良好.由于我们更新到XCode 9,我们发现了一些问题.
问题:
NSLocalizedString()
键/值:When you export localizations, Xcode searches your code for the macros and includes the strings files in the exported localization file for translation.
.xliff
文件中不存在..xliff
文件时,XCode似乎删除了文件中的所有注释.它被取代"(No Comment)"
组态:
我尝试过的:
NSLocalizedString()
当我第一次Localizable.strings
手动生成开发文件时,我可以通过使用命令行命令将我的字符串显示在导出中find ./ -name "*.m" -print0 | xargs -0 xcrun extractLocStrings -o .
(我为.swift
文件运行第二次,因为我的项目是swift/objc混合).然后结合结果,让我的字符串显示在导出中,但没有注释,这是翻译人员的指南. 题:
这是一个XCode 9错误吗?我是否错过了本地化导出/导入的任何文档或新功能/选项?有变通方法吗?
对我来说解决导入和导出问题的是通过取消选中Project > Info > Localizations下的Use Base Internationalization来关闭 Base Internationalization 。我在代码中设置了所有翻译,因此不需要为我的 .storyboard 和 .xib 文件启用它。
以前,当启用它时,“Localized.strings (Base)”文件中没有任何内容,但 Xcode 8 在导出时使用我的“Localized (English)”文件中的内容似乎仍然可以正常工作。对于 Xcode 9,如果我的源文本位于 Localized (Base) 中,那么导出工作正常,但导入时仍然遇到问题。
我使用的是 Xcode 9.4.1。