sphinx.ext.ifconfig – Inhalte basierend auf Konfiguration einfügen

Diese Erweiterung ist ziemlich einfach und bietet nur eine Direktive

Warnung

Diese Direktive ist darauf ausgelegt, nur den Inhalt des Dokuments zu steuern. Sie kann keine Abschnitte, Labels usw. steuern.

.. ifconfig::

Inhalte der Direktive nur dann einfügen, wenn der als Argument gegebene Python-Ausdruck True ist und im Namensraum der Projektkonfiguration ausgewertet wird (d. h. alle registrierten Variablen aus conf.py sind verfügbar).

Zum Beispiel könnte man schreiben

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

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

Um einen benutzerdefinierten Konfigurationswert für Sphinx bekannt zu machen, verwenden Sie add_config_value() in der Setup-Funktion in conf.py, z. B.

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

Das zweite Argument ist der Standardwert, das dritte sollte für solche Werte immer 'env' sein (es bestimmt, ob Sphinx die Dokumente neu liest, wenn sich der Wert ändert).