Rails工具使用yaml语言环境文件搜索未翻译的字符串

时间:2012-03-05 21:20:54

标签: ruby-on-rails internationalization

有没有办法查找rails应用程序中使用的所有键,并将未翻译的键添加到不同的yaml语言环境文件中?

该工具应扫描所有帮助程序,控制器,视图,...以查找正在使用的密钥。接下来,它应检查密钥是否已添加到不同的区域设置yaml文件。

我正在使用默认使用Rails的I18n。

更新:我正在寻找一个rake任务,它只会在我的应用程序中搜索翻译键,然后在yaml语言环境文件中查找。

2 个答案:

答案 0 :(得分:0)

为了找到“未翻译”的条目,我相信任何足够先进的 diff 工具都可以(你实际上只想过滤相似之处,隐藏差异。)
但是,请记住,通过这种方式,您只能找到与英语完全相同的字符串。换句话说,这并不意味着它们将被翻译 - 其中一些听起来可能与目标语言中的英语完全相同。

为了确保翻译某些内容,我建议您使用Translation Memory。这将使你掌控一切。但是,对于小型项目来说,这可能是一种过度杀伤。

答案 1 :(得分:0)

您的意思是类似i18n任务吗? https://github.com/glebm/i18n-tasks

此gem静态分析代码的关键用法,例如 I18n.t('some.key'),以便:

  • 报告丢失或未使用的密钥。
  • 预填充丢失的密钥,可以选择通过Google Translate或DeepL Pro。
  • 删除未使用的密钥。