translation - po 翻译文件 : what are automatic comments for?

标签 translation po

当我翻译一些东西时,有时会有一些字符串放在注释中并保留在其他所有内容之后。这些评论有什么用?

例如:

#~ msgid ""
#~ "You tried to register but your email is already known.\n"
#~ "To try again to login, click on the following link:\n"
#~ "{}{}"
#~ msgstr ""
#~ "Vous avez essayé de vous enregistrer, mais votre email est déjà connu."
#~ "Pour vous connecter, cliquez sur le lien suivant :\n"
#~ "{}{}"

~ 有什么用? 有时会有这样的管道:

#~| msgid "Show your activity"
#~ msgid "your activities"
#~ msgstr "Montrer mon activité"

| 有什么用?

最佳答案

#~ 注释是过时 字符串。当一个字符串有翻译但没有出现在当前模板(.pot)中时,msgmerge工具会用#~注释掉它,但把它留在里面。

如果该字符串以后再次出现,它会再次取消对翻译的注释,因此您不必重新翻译它。它还将使用这样评论的条目作为通过模糊匹配的建议来源。


#~| 是注释掉 #| 注释的结果。 #| 注释是通过模糊匹配创建建议时的原始文本。例如,如果目录有

msgid "Open"
msgstr "Otevři"

模板有

msgid "Open!"
msgstr ""

然后 msgmerge 将创建:

#,fuzzy
#| msgid "Open"
msgid "Open!"
msgstr "Otevři"

像 poedit、pootle 或 weblate 这样的 po 编辑器应该在固定字符串并移除模糊标志时移除 #| 注释。但是,如果有人在文本编辑器中编辑 .po,他们可能会错误地将其留在其中。

关于translation - po 翻译文件 : what are automatic comments for?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39505103/

相关文章:

c# - 从Java转换为C#:用于重新编码字符串的简单代码

javascript - Magento::翻译 javascript 文件中的文本

javascript - React i18next 和更改语言的正确方法

zend-framework2 - Zend Framework 2 Twig 翻译

localization - 查找 .po 文件中的差异

gettext - 如何在 po gettext 文件中将空翻译 (msgstr) 标记为已翻译?

c# - 从矩阵中删除翻译

reactjs - React - 每个组件的翻译

php - 如何使用 Translate Toolkit 将 .po 转换为 PHP 数组(Zend Framework)?

python - PyQt 本地化 : Translating a text through QPushButton w/use of . po 文件