CPython doesn't use autodoc for its documentation - we use hand-written prose.
For PEP 3144 (the ipaddress module), I'd like to use sphinx-apidoc to generate the initial reference documentation. That means I want to run a two-pass operation:
Use sphinx-apidoc to emit a Sphinx project for the module that depends on autodoc
Run a sphinx builder that creates new reStructuredText source files, with all the autodoc directives replaced by inline reStructuredText content and markup that produces the same output
The first step is straightforward, but I have no idea how to do the second step and can't even think of good ways to search for any existing projects along these lines.
I had same problem and for one time generating of docs I've used quite ugly solution to patch Sphinx, see Make Sphinx generate RST class documentation from pydoc.
Not a full answer, more or less a starting point:
autodoc
translates auto directives to python directives. So one can use autodoc events to get the translated python directives.For example if you have the following
mymodule.py
:sphinx-apidoc
will createThe following extension (or addition to
conf.py
):will give you:
However as
autodoc
emits no event, when the translation is completed, So further processing done by autodoc has to be adapted to the docstrings here.