Ios Xcode 10-如何刷新Siri快捷方式意图定义文件的本地化?

Ios Xcode 10-如何刷新Siri快捷方式意图定义文件的本地化?,ios,localization,xcode10,Ios,Localization,Xcode10,我有一个Siri快捷方式的意图定义文件。当我点击LocalizeXcode创建本地化文件时,使用的每个字符串都有一个ID。 但是,如果我在同一个文件中添加了一个新的意图,或者只是在同一个文件中添加了一个新的可能的响应,我该如何刷新它呢? 我目前只找到两种方法: 删除本地化并重新设置新的(这会使您丢失除默认值外所有语言中的所有翻译字符串) 导出整个应用程序的所有翻译并重新导入(如果您的整个应用程序尚未准备好进行新的本地化导出/导入,则会导致问题) 那么,有人知道刷新意图定义文件的自动本地化的方

我有一个Siri快捷方式的意图定义文件。当我点击LocalizeXcode创建本地化文件时,使用的每个字符串都有一个ID。 但是,如果我在同一个文件中添加了一个新的意图,或者只是在同一个文件中添加了一个新的可能的响应,我该如何刷新它呢? 我目前只找到两种方法:

  • 删除本地化并重新设置新的(这会使您丢失除默认值外所有语言中的所有翻译字符串)
  • 导出整个应用程序的所有翻译并重新导入(如果您的整个应用程序尚未准备好进行新的本地化导出/导入,则会导致问题)

那么,有人知道刷新意图定义文件的自动本地化的方法吗

我也有同样的问题,我今晚就玩弄了这个东西。据我所见,我必须删除所有本地化文件并重新创建它们,就像你所说的…

我最近遇到了同样的问题,我通过一个简单的解决方法和两个小的、快速的、脏的脚本成功地解决了这个问题:

  • 确保在git存储库中有旧的本地化
    .strings
    文件
  • 取消选中所有
    .intendefinition
    本地化(并删除它们)
  • 检查所有本地化,它将重新创建
    .strings
    文件,但没有旧的翻译(希望它们在git中是安全的)
  • (暂时)不要提交它们
  • 对于每个
    .strings
    文件,按以下方式运行我的小脚本:
    {script path}/update-modified-strings-file.sh{project path}/xx.lproj/YourIntents.strings
  • 检查是否一切正常
  • 承诺
  • 长命百岁
  • 请确保将两个脚本放在同一目录中:

    • 要调用的Shell脚本:
    • 第一个调用的Swift脚本:
    第一个脚本将字符串的旧版本与现有翻译签出,第二个脚本将包含新条目的新文件与现有的旧翻译合并


    希望这能有所帮助。

    与苹果开发人员就此进行了交谈。它实际上是打算现在是怎样的。。。但他们同意,这种体验不是最好的,将来可能会考虑。对于较小的更改,可以使用git diff获得新添加的ID。有人检查过它是否在Xcode 12中更改了吗?本地化意图似乎是一个很大的麻烦…不,如果你在2020年(几乎2021年)添加或删除意图,仍然需要重新生成本地化。