Sphinx 文档变量

Sphinx documentation variables

我正在使用 Sphinx Doc 为我的一个项目创建文档,并且我在整个文档中多次使用某些词,例如 - IP 地址、端口号和许多其他可能会随时间变化的内容。如果由于某种原因,其中一个将被更改,我只想在一个地方更改它,而不是在每个文件中手动更改。我正在寻找的是一些创建某种资源的简单方法 file/variables,可以从我所有的 .rst 文件中轻松访问它。

我找到了this一个:

my_config_value = 'test'
rst_epilog = '.. |my_conf_val| replace:: %s' % my_config_value

近乎完美,但我想有很多变数。使用上面的方法,我只能使用一个——这还不够。

我也找到了使用 sphinx.ext.extlinks 的方法。它正在工作,但不完全是我想要的方式。我在 conf.py:

中使用它
extlinks = {'test': ('bla_bla_bla', None)}

然后,在一些 .rst:

:test:`1`

结果bla_bla_bla1

首先,这是无处可去的超链接。二、我不会写

:test:` `

甚至 :test:,因为它不起作用。

我的问题来了:有没有简单的方法来创建变量,可以在整个文档中使用?

感谢 mzjn 我找到了我的问题的准确答案。如果以后有人搜索,我在下面留下答案。

在我的 conf.py 我添加了这个:

address = '192.168.1.1'
port = 'port 3333'

rst_prolog = """
.. |address| replace:: {0}
.. |port| replace:: {1}
""".format(
address, 
port
)

然后在我的 .rst 中使用:

|address| - |port|

结果 192.168.1.1 - port 3333。这正是我所需要的。非常感谢mzjn.