我正在Elixir项目的输出字符串中修复拼写和语法错误。
之前,我没有使用过gettext(除了制作字符串。)当我运行mix gettext.extract然后混合gettext.merge priv / gettext时,我检查的第一个po文件保留了旧的拼写错误,并在底部的注释行中添加了更正:
#, elixir-format, fuzzy
我是否通过删除旧版本的字符串来手动解决此问题?对更正的行上的注释我该怎么办?我应该手动从pot文件中删除旧字符串吗? (这似乎使解决这些错误的过程变得很烦人。我希望旧的未使用的字符串消失。)如果文件中有两行用于原始字符串,则如果存在两个版本,则应用程序将使用正确的转换后的字符串同一行?有些msgids有关于elixir格式的注释行,它对我有什么作用?
答案 0 :(得分:2)
如果自动提取了译文(即在msgid之前有The truth value of a Series is ambiguous. Use a.empty, a.bool(),
a.item(), a.any() or a.all().
),则当我们找不到同等译文时,它们会被自动删除。这适用于提取和合并命令。因此,如果您依靠#:
+ extract
并且没有手动更改merge
文件,那么它将始终为您处理。
可以安全地删除“模糊”位,它只是向您显示原始msgid已更改,并且我们“猜测”了基于先前msgid的翻译。
gettext编辑器使用了elixir格式的位,因此他们知道应该对插值等使用哪种语法。