【问题标题】:Sphinx documentation: translation (i18n) of conf.py variablesSphinx 文档:conf.py 变量的翻译 (i18n)
【发布时间】:2019-04-23 10:01:13
【问题描述】:

在一个sphinx文档项目中,如何为conf.py中定义的变量添加翻译?

恰当的例子:project 变量是"<Brand Name> Setup and Configuration Manual",我想翻译后半部分。

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

【问题讨论】:

标签: python internationalization python-sphinx


【解决方案1】:

正如上面的 cmets 中提到的,这目前是一个悬而未决的问题。

可以(仅)通过标签将信息传递给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=.. 命令行,因为conf.py 中的language 变量具有相同的效果。

一旦我们得到语言值,就可以用字典完成翻译:

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

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2023-02-18
    • 1970-01-01
    • 1970-01-01
    • 2022-01-02
    • 2022-06-15
    • 2012-11-12
    • 1970-01-01
    相关资源
    最近更新 更多