By Forrest Cook
March 25, 2008
The first public release of the Python
Sphinx documentation
system,
which should not be confused with the
CMU Sphinx speech recognition project,
has been announced.
Sphinx is a tool that makes it easy to create intelligent and beautiful documentation for Python projects, written by Georg Brandl and licensed under the BSD license.
It was originally created to translate the new Python documentation, but has now been cleaned up in the hope that it will be useful to many other projects. (Of course, this site is also created from reStructuredText
sources using Sphinx!)
The Sphinx
introduction
states:
"The focus is on hand-written documentation, rather than auto-generated API docs. Though there is limited support for that kind of docs as well (which is intended to be freely mixed with hand-written content), if you need pure API docs have a look at Epydoc, which also understands reST."
An interesting feature of the Sphinx web pages is the inclusion
of their own document source code.
The
document source code from the previously mentioned Sphinx
introduction page is a good place to go to get a look at the
reStructuredText language that Sphinx uses.
More information on that language can be found in the
A ReStructuredText Primer, the
Quick reStructuredText user reference and the
reStructuredText Cheat Sheet.
The Sphinx feature list includes:
- Cross-platform, works under a variety of operating systems.
- Support for the HTML, Windows HTML Help, and LaTeX output formats.
- Can use Jinja
from the Django project for creating
HTML templates.
- Includes semantic markup and automatic links for cross-referencing.
- The documentation tree is hierarchically structured.
- Indexes are automatically generated.
- Sphinx can optionally use the
Pygments programming language syntax highlighter.
- Supports a number of extensions for code snippet testing and more.
The Python source code and related files for
Sphinx are available for download
here.
The
change log shows that a number of recent releases have been made.
As of this writing,
the current version is release 0.1.61950, dated March 26, 2008.
If you need to maintain a collection of web-based or
print-based project documentation, Sphinx could be a very
useful tool.
(
Log in to post comments)