为什么gettext会自动给我错误的翻译?

2024-10-06 12:59:08 发布

您现在位置:Python中文网/ 问答频道 /正文

我正在为我的Django项目使用gettext翻译,并通过makemessagescompilemessages不断向.po文件添加新的和新的翻译。 现在发生的事情是,当我发送消息时,我检查.po文件,其中许多字符串已自动转换,尽管这是100%唯一的字符串

例如: 现在生成:

#: .\agregator\models.py:1855
#, fuzzy
#| msgid "Distribution order"
msgid "Distribution Product Parameters"
msgstr "Objednávka u distribuce"

它根据msgid "Distribution order"自动转换,该msgid "Distribution order"与实际字符串不接近,也没有任何指向该msgid的链接

有谁能向我解释一下背景中发生了什么,以及我如何删除所有此类链接,以便msgstr只能得到空字符串(除非字符串100%相似)?先谢谢你

我的提示是msgid是根据字符串片段分配的,寻找“最佳匹配”。如果是这种情况,如何阻止这种行为


Tags: 文件项目django字符串消息链接order事情
1条回答
网友
1楼 · 发布于 2024-10-06 12:59:08

如果msgmerge找到类似字符串的翻译,它将建议它们为“fuzzy”。这就是你在这里看到的

模糊翻译是而不是要由应用程序使用/部署的。如果将.po文件编译成带有msgmerge.mo文件(这可能是compilemessages所做的),这些模糊翻译将被忽略

只需将模糊翻译留在.po文件中。它们不会造成伤害,并且使将来的翻译更容易,因为翻译人员不必从头开始翻译,而是更正自动建议的翻译

相关问题 更多 >