如何使用 gettext 编写国际化手册?

如何使用 gettext 编写国际化手册?

我需要为我制作的软件写一份手册。写手册或其他文档时是否可以使用 gettext?

答案1

查看狮身人面像以 reStructuredText 形式编写您的文档并使其可以 gettext 格式翻译。

答案2

据我所知,当您的编程语言包含字符串时,即当字符串与代码混合时,gettext 很有用。

警报(_("你好"));

然后预处理器找到所有出现的 _(“..”) 并生成一个 .po 模板,然后您复制该 .po 文件并编辑该文件,将“Hello”翻译成您的语言:

msgstr "你好"
msgstr "捷克"

gettext 旨在解决您在编程语言中使用字符串时遇到的问题,通常是使用位置参数、复数、对偶(某些语言有对偶)等格式化字符串,这些东西可能会因运行时参数而改变翻译。

这种事情在手册上是没有必要的,因为手册通常没有改变句子的运行时参数。

我认为使用 gettext 的唯一优点是保留标记,但通常标记(在 latex、docbook 等中)是一种定义结构的操作,因此它是文档语义的一部分,而外观应该在不同的地方处理(css 等)。

考虑到 xgettext 标签会在文档标记语言中引入噪音,我认为将翻译与标记隔离的能力不会是一个很大的优势。

(此外,我不知道有任何工具可以使用 gettext 对 latex/docbook/whatever 进行预处理和后处理)

相关内容