gpt4 book ai didi

gettext - gettext 中的 "msgid"对应多个 "msgstr"

转载 作者:行者123 更新时间:2023-12-02 10:26:50 29 4
gpt4 key购买 nike

是否可以使两个或多个 msgid 与一个 msgstr 匹配?

例如,('list.empty')('list.empty') null') 返回“还没有任何对象。”

如果我在 po 文件中这样写:

msgid "list.empty"
msgid "list.null"
msgstr "There is no any objects yet."

它只是出现“缺少'msgstr'”错误:

但是,

msgid "list.empty"
msgstr "There is no any objects yet."

msgid "list.null"
msgstr "There is no any objects yet."

看起来和工作都很好,但是很愚蠢,因为一旦我更改了一个 msgstr 而没有另一个,它们就会返回不同的结果。

有没有人有更好的技巧?

最佳答案

您以错误的方式接近 gettext,其工作原理如下:

  • 每个条目都需要msgid
  • msgctxt 是可选的,用于区分具有相同内容但可能有不同翻译的两个 msgid 记录。
  • (msgid, msgctxt) 是字典的唯一键,如果 msgctxt 缺失,您可以将其视为 null

您应该阅读gettext documentation在实现之前,因为它并不总是那么简单。

就您而言,这就是您应该如何实现它:

msgctxt "list.empty"
msgid "There is no any objects yet."

msgctxt "list.null"
msgid "There is no any objects yet."

关于gettext - gettext 中的 "msgid"对应多个 "msgstr",我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5895205/

29 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com