This package serves two purposes: it provides a default Sphinx configuration and set of extensions specific to the Astropy project, and it acts as a meta-package by installing all required Sphinx extensions for the core Astropy package and other packages.
The default Sphinx configuration can be imported by putting:
from sphinx_astropy.conf import *
at the top of your conf.py
file. You can then override specific settings from this default configuration, such as adding extensions or intersphinx packages. To give a clearer error messages for users, you can instead write:
try:
from sphinx_astropy.conf import *
except ImportError:
print('ERROR: the documentation requires the sphinx-astropy package to be installed')
sys.exit(1)
Installing sphinx-astropy will automatically install (if not already present):
- Sphinx
- astropy-sphinx-theme - the default 'bootstrap' theme use by Astropy and a number of affiliated packages. This goes with sphinx_astropy.conf.v1.
- sphinx-automodapi - an extension that makes it easy to automatically generate API documentation.
- sphinx-gallery - an extension to generate example galleries
- numpydoc - an extension to parse docstrings in NumpyDoc format
- pillow - a package to deal with images, used by some examples in the astropy core documentation.
- pytest-doctestplus - providing the 'doctestplus' extension to skip code snippets in narrative documentation.
To use the new pydata-sphinx-theme with sphinx_astropy.conf.v2, you have to install the optional [confv2] dependencies:
pip install sphinx-astropy[confv2]
That would pull in the following as well:
- pydata-sphinx-theme - a clean, three-column, Bootstrap-based Sphinx theme by and for the PyData community.
- sphinx-copybutton - a small Sphinx extension to add a "copy" button to code blocks.