sphinx.ext.ifconfig -- 根据配置包含内容

此插件非常简单,仅具有一个指令:

警告

本指令仅用于控制文件的内容。它不能控制分区、标签等。

.. ifconfig::

仅当作为参数给出的Python表达式在项目配置的命名空间中计算结果为 True 时,才包含该指令的内容(即,来自 conf.py 的所有注册变量均可参与)。

例如,可以这样写:

.. ifconfig:: releaselevel in ('alpha', 'beta', 'rc')

   This stuff is only included in the built docs for unstable versions.

要向Sphinx告知一个自定义的配置值,请在 conf.py 的setup函数中使用 add_config_value() ,例如:

def setup(app):
    app.add_config_value('releaselevel', '', 'env')

第二个参数是默认值,此时第三个参数应该始终是 'env' (如果值更改,它决定了Sphinx是否重新读取文档)。