Sphinx development¶
Sphinx is a maintained by a group of volunteers. We value every contribution!
The code can be found in a Git repository, at https://github.com/sphinx-doc/sphinx/.
Issues and feature requests should be raised in the tracker.
The mailing list for development is at Google Groups.
There is also the #sphinx-doc IRC channel on freenode.
For more about our development process and methods, see the Sphinx Developer’s Guide.
Extensions¶
To learn how to write your own extension, see Developing extensions for Sphinx.
The sphinx-contrib repository contains many contributed extensions. Some of them have their own releases on PyPI, others you can install from a checkout.
This is the current list of contributed extensions in that repository:
aafig: render embedded ASCII art as nice images using aafigure
actdiag: embed activity diagrams by using actdiag
adadomain: an extension for Ada support (Sphinx 1.0 needed)
ansi: parse ANSI color sequences inside documents
argdoc: automatically generate documentation for command-line arguments, descriptions and help text
astah: embed diagram by using astah
autoanysrc: Gather reST documentation from any source files
autorun: Execute code in a
runblock
directivebeamer: A builder for Beamer (LaTeX) output.
blockdiag: embed block diagrams by using blockdiag
cacoo: embed diagram from Cacoo
cf3domain: a domain for CFEngine 3 policies
cheader: The missing c:header directive for Sphinx’s built-in C domain
cheeseshop: easily link to PyPI packages
clearquest: create tables from ClearQuest queries
cmakedomain: a domain for CMake
coffeedomain: a domain for (auto)documenting CoffeeScript source code
context: a builder for ConTeXt
disqus: embed Disqus comments in documents
documentedlist: converts a Python list to a table in the generated documentation
doxylink: Link to external Doxygen-generated HTML documentation
domaintools: A tool for easy domain creation
email: obfuscate email addresses
erlangdomain: an extension for Erlang support (Sphinx 1.0 needed)
exceltable: embed Excel spreadsheets into documents using exceltable
feed: an extension for creating syndication feeds and time-based overviews from your site content
findanything: an extension to add Sublime Text 2-like findanything panels to your documentation to find pages, sections and index entries while typing
gnuplot: produces images using gnuplot language
googleanalytics: track web visitor statistics by using Google Analytics
googlechart: embed charts by using Google Chart
googlemaps: embed maps by using Google Maps
httpdomain: a domain for documenting RESTful HTTP APIs
hyphenator: client-side hyphenation of HTML using hyphenator
imgur: embed Imgur images, albums, and metadata in documents
inlinesyntaxhighlight: inline syntax highlighting
lassodomain: a domain for documenting Lasso source code
libreoffice: an extension to include any drawing supported by LibreOffice (e.g. odg, vsd, …)
lilypond: an extension inserting music scripts from Lilypond in PNG format
makedomain: a domain for GNU Make
matlabdomain: document MATLAB code
mockautodoc: mock imports
mscgen: embed mscgen-formatted MSC (Message Sequence Chart)s
napoleon: supports Google style and NumPy style docstrings
nicovideo: embed videos from nicovideo
nwdiag: embed network diagrams by using nwdiag
omegat: support tools to collaborate with OmegaT (Sphinx 1.1 needed)
osaka: convert standard Japanese doc to Osaka dialect (this is a joke extension)
paverutils: an alternate integration of Sphinx with Paver
phpdomain: an extension for PHP support
plantuml: embed UML diagram by using PlantUML
py_directive: Execute python code in a
py
directive and return a math noderawfiles: copy raw files, like a CNAME
requirements: declare requirements wherever you need (e.g. in test docstrings), mark statuses and collect them in a single list
restbuilder: a builder for reST (reStructuredText) files
rubydomain: an extension for Ruby support (Sphinx 1.0 needed)
sadisplay: display SqlAlchemy model sadisplay
sdedit: an extension inserting sequence diagram by using Quick Sequence Diagram Editor (sdedit)
seqdiag: embed sequence diagrams by using seqdiag
slide: embed presentation slides on slideshare and other sites
swf: embed flash files
sword: an extension inserting Bible verses from Sword
tikz: draw pictures with the TikZ/PGF LaTeX package
traclinks: create TracLinks to a Trac instance from within Sphinx
versioning: Sphinx extension that allows building versioned docs for self-hosting
whooshindex: whoosh indexer extension
youtube: embed videos from YouTube
zopeext: provide an
autointerface
directive for using Zope interfaces
See the extension tutorials on getting started with writing your own extensions.