Sphinx文档:conf.py变量的翻译(i18n)

时间:2019-04-23 10:01:13

标签: python internationalization python-sphinx

在一个狮身人面像文档项目中,如何将翻译添加到conf.py中定义的变量中?

要点在于:project变量是"<Brand Name> Setup and Configuration Manual",在这里我希望翻译后一部分。

使用标准的i18n设施,.pot文件中缺少这些值。我也找不到如何使用conf.py中的命令行指定语言(通过硬编码字典进行翻译)。

1 个答案:

答案 0 :(得分:0)

如上面的评论所述,这是目前尚待解决的问题。

可以通过标签将信息传递给conf.py(仅)。

在命令行上,使用-t language_de代替-D language=de,以定义包含区域设置ID的标记。

conf.py中,使用以下命令捕获标记:

language = None
for t in tags:
    if t.startswith('language_'):
        language = t[9:]

由于-D language=..中的language变量具有相同的作用,因此可以省略conf.py命令行。

一旦我们获得了语言价值,便可以使用字典进行翻译:

project = {
    'de': u'<Brand Name> Setup-und Konfigurationshandbuch',
    # ... more translations ...
}.get(language, u'<Brand Name> Setup and Configuration Manual')