是否有一些宝石或工具可用于解析我的代码并将I18n密钥提取到yml文件中?
所以,如果我有代码:
<%= t("homepage.header", default: "Cool website") %>
它会添加到yml文件
homepage:
header: "Cool website"
GetText可以做到,但对于我的项目,我们现在使用默认的rails设置。当我需要新的翻译密钥时,我不得不手动更新yml文件。
答案 0 :(得分:2)
如果您在任何地方使用default:
,那么有一个可能适合您的解决方案:
不理想,而不是Locale的主要目的(这是为了避免手动编辑YAML文件),但它应该适用于这种情况。
完全披露:我共同创立了Locale。
答案 1 :(得分:2)
对于那些从谷歌来到这里的人来说,现在有了所有这类东西的宝石。
答案 2 :(得分:1)
我还没有听说过Ruby on Rails这样的工具,但我很确定它存在。另一方面,您可以自己创建一个 - 可以使用相对简单的正则表达式来完成,如:
\s+t\(\"(?<key>.*?)\"\s*,\s*default:\s*\"(?<value>.*?)\"\)
然后,您只需访问命名组(上例中的键和值)并将其写入YAML文件。根据要用于捕获此正则表达式的编程语言,您可能需要在正则表达式前添加(?s)或(?-s)以允许将行结尾视为空格(即多行声明)