Extensions for Sphinx which allow substitutions within code blocks.
Contents
Sphinx Substitution Extensions is compatible with Sphinx 8.2.0+ using Python 3.10+.
$ pip install Sphinx-Substitution-Extensions- Add the following to
conf.pyto enable the extension:
"""Configuration for Sphinx."""
extensions = ["sphinxcontrib.spelling"] # Example existing extensions
extensions += ["sphinx_substitution_extensions"]- Set the following variable in
conf.pyto define substitutions:
"""Configuration for Sphinx."""
rst_prolog = """
.. |release| replace:: 0.1
.. |author| replace:: Eleanor
"""This will replace |release| in the new directives with 0.1, and |author| with Eleanor.
This adds a :substitutions: option to Sphinx's built-in code-block directive.
.. code-block:: shell
:substitutions:
echo "|author| released version |release|":substitution-code:`echo "|author| released version |release|"`:substitution-download:`|author|'s manuscript <|author|_manuscript.txt>`- Add
sphinx_substitution_extensionstoextensionsinconf.pyto enable the extension:
"""Configuration for Sphinx."""
extensions = ["myst_parser"] # Example existing extensions
extensions += ["sphinx_substitution_extensions"]- Set the following variables in
conf.pyto define substitutions:
"""Configuration for Sphinx."""
myst_enable_extensions = ["substitution"]
myst_substitutions = {
"release": "0.1",
"author": "Eleanor",
}This will replace |release| in the new directives with 0.1, and |author| with Eleanor.
This adds a :substitutions: option to Sphinx's built-in code-block directive.
```{code-block} bash
:substitutions:
echo "|author| released version |release|"
```As well as using |author|, you can also use {{author}}.
This will respect the value of myst_sub_delimiters as set in conf.py.
{substitution-code}`echo "|author| released version |release|"`{substitution-download}`|author|'s manuscript <|author|_manuscript.txt>`This package is largely inspired by code written for Flocker by ClusterHQ. Developers of the relevant code include, at least, Jon Giddy and Tom Prince.
See CONTRIBUTING.rst.