2008-03-09 16:32:24 -05:00
|
|
|
.. _extensions:
|
|
|
|
|
|
|
|
Sphinx Extensions
|
|
|
|
=================
|
|
|
|
|
2014-01-20 10:21:44 -06:00
|
|
|
Since many projects will need special features in their documentation, Sphinx
|
|
|
|
allows to add "extensions" to the build process, each of which can modify almost
|
|
|
|
any aspect of document processing.
|
2008-03-09 16:32:24 -05:00
|
|
|
|
2014-01-20 10:21:44 -06:00
|
|
|
This chapter describes the extensions bundled with Sphinx. For the API
|
|
|
|
documentation on writing your own extension, see :ref:`dev-extensions`.
|
2008-03-09 16:32:24 -05:00
|
|
|
|
2008-03-12 16:37:22 -05:00
|
|
|
Builtin Sphinx extensions
|
|
|
|
-------------------------
|
2008-03-09 16:32:24 -05:00
|
|
|
|
2008-03-12 16:37:22 -05:00
|
|
|
These extensions are built in and can be activated by respective entries in the
|
|
|
|
:confval:`extensions` configuration value:
|
2008-03-09 16:32:24 -05:00
|
|
|
|
2008-03-12 16:37:22 -05:00
|
|
|
.. toctree::
|
2008-03-09 16:32:24 -05:00
|
|
|
|
2008-03-16 06:19:26 -05:00
|
|
|
ext/autodoc
|
2009-03-15 19:30:09 -05:00
|
|
|
ext/autosummary
|
2008-03-16 06:19:26 -05:00
|
|
|
ext/doctest
|
2008-08-04 12:31:25 -05:00
|
|
|
ext/intersphinx
|
2008-08-06 08:04:14 -05:00
|
|
|
ext/math
|
2009-03-04 16:52:56 -06:00
|
|
|
ext/graphviz
|
|
|
|
ext/inheritance
|
2008-03-16 06:19:26 -05:00
|
|
|
ext/ifconfig
|
|
|
|
ext/coverage
|
2008-11-09 12:46:32 -06:00
|
|
|
ext/todo
|
2009-05-02 13:38:45 -05:00
|
|
|
ext/extlinks
|
2010-01-13 16:53:01 -06:00
|
|
|
ext/viewcode
|
2012-03-11 11:48:51 -05:00
|
|
|
ext/linkcode
|
2010-05-24 08:12:27 -05:00
|
|
|
ext/oldcmarkup
|
2008-11-16 06:32:04 -06:00
|
|
|
|
|
|
|
|
|
|
|
Third-party extensions
|
|
|
|
----------------------
|
|
|
|
|
2010-10-10 14:47:03 -05:00
|
|
|
You can find several extensions contributed by users in the `Sphinx Contrib`_
|
|
|
|
repository. It is open for anyone who wants to maintain an extension
|
|
|
|
publicly; just send a short message asking for write permissions.
|
2010-10-10 13:00:12 -05:00
|
|
|
|
2015-01-02 06:49:38 -06:00
|
|
|
There are also several extensions hosted elsewhere. The `Sphinx extension
|
|
|
|
survey <http://sphinxext-survey.readthedocs.org/en/latest/>`__ contains a
|
|
|
|
comprehensive list.
|
2008-11-16 06:32:04 -06:00
|
|
|
|
2010-10-10 13:00:12 -05:00
|
|
|
If you write an extension that you think others will find useful or you think
|
|
|
|
should be included as a part of Sphinx, please write to the project mailing
|
2014-01-12 17:05:22 -06:00
|
|
|
list (`join here <https://groups.google.com/group/sphinx-dev>`_).
|
2008-12-20 17:10:47 -06:00
|
|
|
|
2014-01-12 17:05:22 -06:00
|
|
|
.. _Sphinx Contrib: https://bitbucket.org/birkenfeld/sphinx-contrib
|
2008-12-20 17:10:47 -06:00
|
|
|
|
|
|
|
|
|
|
|
Where to put your own extensions?
|
|
|
|
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
|
|
|
|
|
|
|
Extensions local to a project should be put within the project's directory
|
|
|
|
structure. Set Python's module search path, ``sys.path``, accordingly so that
|
|
|
|
Sphinx can find them.
|
|
|
|
E.g., if your extension ``foo.py`` lies in the ``exts`` subdirectory of the
|
|
|
|
project root, put into :file:`conf.py`::
|
|
|
|
|
|
|
|
import sys, os
|
|
|
|
|
|
|
|
sys.path.append(os.path.abspath('exts'))
|
|
|
|
|
|
|
|
extensions = ['foo']
|
|
|
|
|
|
|
|
You can also install extensions anywhere else on ``sys.path``, e.g. in the
|
|
|
|
``site-packages`` directory.
|