Building the documentation
You can use Sphinx to generate the full documentation in various formats (including HTML or PDF) yourself, as described in the following.
First, I will assume that you downloaded the [TeNPySource] repository with:
git clone --recursive https://github.com/tenpy/tenpy
This includes the [TeNPyNotebooks] as a git submodule; you might need to git submodule update if it is out of date.
Building the documentation requires a few more packages (including Sphinx). The recommended way is to create a separate conda environment for it with:
conda env create -f doc/environment.yml # make sure to use the file from the doc/ subfolder!
conda activate tenpydoc
Alternatively, you can use pip and pip install -r doc/requirements.txt
, but this will not be able to install
all dependencies: some packages like Graphviz are not available from pip alone.
Afterwards, simply go to the folder doc/
and run the following command:
make html
This should generate the html documentation in the folder doc/sphinx_build/html.
Open this folder (or to be precise: the file index.html in it) in your webbrowser
and enjoy this and other documentation beautifully rendered, with cross links, math formulas
and even a search function.
Other output formats are available as other make targets, e.g., make latexpdf
.
Note
Building the documentation with sphinx requires loading the TeNPy modules. The conf.py adjusts the python sys.path to include the /tenpy folder from root directory of the git repository. It will not use the cython-compiled parts.
Troubleshooting
If you get an error along the lines of
Exception occurred:
File "/home/runner/work/tenpy/tenpy/doc/sphinx_ext/sphinx_cfg_options.py", line 227, in run
assert isinstance(desc_content, addnodes.desc_content)
Make sure that the config directives, such as e.g. .. cfg:config ::
or .. cfg:configoptions ::
are followed by an empty line.