【问题标题】:Update translation for iOS internationalization更新 iOS 国际化的翻译
【发布时间】:2012-10-17 09:04:10
【问题描述】:

要在我的 iOS 应用程序中提取带有 NSLocalizedString 的字符串“标记”,我使用以下终端命令:

find . -name \*.m | xargs genstrings -o ro.lproj

这基本上会提取所有 .m 文件中的所有标记字符串,并将它们放入我的项目 romanian 文件夹内的 Localizable.strings 文件中。

我的问题是我无法让它更新字符串文件。如果我更改/添加一些字符串,它将覆盖我的旧字符串文件。

我查看了genstrings 接受的参数,查看了手册页,但我似乎没有找到更新文件而不是覆盖它的选项。

如何更新翻译文件?

【问题讨论】:

  • 作为翻译,我可以告诉您,我们实际上更希望您向我们发送完整的英文字符串。今天的本地化人员使用 Crowdin 和 Gengo 等现代工具,可以立即向我们展示新的和更改的内容,并保留我们的旧翻译。这是执行此操作的首选方式。当您只向我们发送“最新”文件时,我们总是将其附加到您的旧文件中。见这里:ibabbleon.com/howitworks.html

标签: ios xcode internationalization nslocalizedstring genstrings


【解决方案1】:

genstrings 不进行更新。如果是这样,您仍然会遇到如何管理本地化文件更新的问题(这需要翻译人员注意更改他们的翻译,特别是对于已编辑的源字符串,因此他们需要查看源文本的差异)。

为此设计了一些工具。例如 Localization Suite 桌面应用程序 (http://www.loc-suite.org/) 和 Gengo String 网络应用程序 (http://gengo.com/string/about/)

【讨论】:

    【解决方案2】:

    你可以:

    • 使用-a 标志将字符串附加到现有文件中
    • 或者,为输出选择不同的位置并使用文件合并工具来收集结果。
    • 或使用版本控制合并回以前的版本。

    【讨论】:

      【解决方案3】:

      Genstrings 不会更新,它是一次性交易。 我用的是临管​​工具见http://www.peerassembly.com/linguan.html 它并不昂贵,并且适用于 xcode 5。你只需指出 将它添加到您的 xcode 项目中,它将从您的 代码(类似于 genstrings 但没有命令行的东西)和 构建 .strings 文件。当你更新你的代码时,你问林冠 再次扫描,它会很好地告诉你新字符串是什么。 您还可以执行其他操作,例如统计、导出、导入...

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2019-06-08
        • 2017-03-24
        • 2011-02-08
        • 1970-01-01
        • 2014-09-24
        • 1970-01-01
        • 2017-06-19
        • 1970-01-01
        相关资源
        最近更新 更多