是否可以使两个或更多的msgids匹配一个msgstr?
例如,两者('list.empty')和('list.null')返回"There is no any objects yet."
如果我在po文件中这样写:
msgid "list.empty"
msgid "list.null"
msgstr "There is no any objects yet."
Run Code Online (Sandbox Code Playgroud)
它只是错误的"丢失'msgstr'":
然而,
msgid "list.empty"
msgstr "There is no any objects yet."
msgid "list.null"
msgstr "There is no any objects yet."
Run Code Online (Sandbox Code Playgroud)
看起来和工作正常但很愚蠢,因为一旦我改变一个没有另一个msgstr,他们会返回不同的结果.
有没有人有更好的黑客?
你正在gettext以错误的方式接近,这是它的工作原理:
msgid 每个条目都需要msgctxt是可选的,用于区分msgid具有相同内容且可能具有不同翻译的两个记录.(msgid, msgctxt)是字典的唯一键,如果msgctxt缺少,你可以考虑它null.您应该在实现之前阅读gettext文档,因为它并不总是直截了当.
在您的情况下,这是您应该如何实现它:
msgctxt "list.empty"
msgid "There is no any objects yet."
msgctxt "list.null"
msgid "There is no any objects yet."
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
8476 次 |
| 最近记录: |