A sphinx extension to include jinja based templates based documentation into a sphinx doc
In your rst doc, you can use the following snippet to use a jinja template to generate your doc
.. jinja:: first_ctx
{% for k, v in topics.items() %}
{{k}}
~~~~~
{{v}}
{% endfor %}
In your sphinx conf.py
file, you can create or load the contexts needed for your jinja templates
extensions = ['sphinxcontrib.jinja']
jinja_contexts = {
'first_ctx': {'topics': {'a': 'b', 'c': 'd'}}
}
file
: allow to specify a path to Jinja instead of writing it into the content of the directive. Path is relative to the current directory of sphinx-build tool, typically the directory where theconf.py
file is located.header_char
: character to use for the the headers. You can use it in your template to set your own title character:For example:
Title {{ options.header_char * 5 }}
debug
: print debugging information during sphinx-build. This allows you to see the generated rst before sphinx builds it into another format.
Example of declaration in your RST file:
.. jinja:: approval_checks_api
:file: relative/path/to/template.jinja
:header_char: -
Each element of the jinja_contexts
dictionary is a context dict for use in your jinja templates.
- pip install tox
- tox