如何使用Sphinx翻译代码块中的注释



我使用Sphinx为项目编写文档。我有一些代码示例(定义为code-blocks,两者都包含在内,只是内联键入(。在这些代码示例中有注释,但当我进行文档翻译时,它们不会被提取到.po文件中,显然也不会被翻译。

如何翻译代码示例中的注释?

我发现了其他关于狮身人面像修改的问题。答案建议修改conf.py(制作一些挂钩(,创建roleextensions。我以前从来没有这样做过,我不知道从哪里开始,什么解决方案会更好。这个问题有什么现有的解决方案吗?

UPD。以下是我想在文档中显示的代码示例:

git clone https://github.com/ynikitenko/lena
# most of requirements are for development only
pip install -r lena/requirements.txt

(这里我想翻译一下评论(。一个更困难(也许不那么需要(的例子是:

class End(object):
"""Stop sequence here."""
def run(self, flow):
"""Exhaust all preceding flow and stop iteration
(yield nothing to the following flow).
"""
for val in flow:
pass
return
# otherwise it won't be a generator
yield "unreachable"

这些示例使用指令进行格式化

.. code-block:: 

我写信给斯芬克斯的官方用户谷歌小组,这是来自Documatt的Matt:的答案

这是不可能的。斯芬克斯必须理解各种语言的评论。

如果要翻译代码块中的注释(以及::之后的文字块(,则必须全部翻译。将gettext_aditional_targets=["literal-block"]添加到conf.py,然后重新运行POT/PO更新。

代码行保留在";翻译";的代码,但现在问题为我解决了。

最新更新