sphinx.ext.ifconfig – Inclui conteúdo baseado em configuração

Essa extensão é um tanto simples e tem apenas uma diretiva:

Aviso

Essa diretiva é desenhada para controlar somente conteúdo do documento. Não pode controlar seções, rótulos e outros.

.. ifconfig::

Inclui conteúdo da diretiva apenas se a expressão Python fornecida como argumento for True, avaliada no espaço de nomes da configuração do projeto (ou seja, todas as variáveis registradas de conf.py estão disponíveis).

Por exemplo, alguém pode escrever

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

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

Para tornar um valor config personalizável para o Sphinx, usar add_config_value() na função no conf.py. Por exemplo:

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

O segundo argumento é um valor padrão, o terceiro deve ser sempre 'env' para esses valores (isso seleciona se o Sphinx faz a releitura do documento se os valores forem modificados).