A tool to create Sphinx documentation for GI modules using Python introspection.
pgi-docgen create
introspects the GI module, pulls in the GIR docs and
creates a Sphinx environment.
pgi-docgen build
builds HTML documentation using Sphinx.
poetry install poetry shell # API docs for Gtk/Gst: ./tools/build.sh Gtk-3.0 Gst-1.0
The resulting docs can be found in _docs/_build
The following creates docs for the in gnome-music included libgd:
XDG_DATA_DIRS=$XDG_DATA_DIRS:/usr/share/gnome-music/ \ GI_TYPELIB_PATH=/usr/lib/x86_64-linux-gnu/gnome-music/girepository-1.0/ \ LD_LIBRARY_PATH=/usr/lib/x86_64-linux-gnu/gnome-music/ ./build.sh Gd-1.0
There are two ways to reference the online API reference from sphinx generated documentation:
Including the sidebar (needs JavaScript)
intersphinx_mapping = { 'gtk': ('https://lazka.github.io/pgi-docs/#Gtk-3.0/', 'https://lazka.github.io/pgi-docs/Gtk-3.0/objects.inv'), }
Without the sidebar
intersphinx_mapping = { 'gtk': ('https://lazka.github.io/pgi-docs/Gtk-3.0', None), }
Everything in the pgidocgen/gen/data/theme
sub directory:
https://github.com/rtfd/readthedocs.org
MIT License
Fonts in pgidocgen/gen/data/theme/static/fonts
- Lato:
SIL Open Font License 1.1
- DejaVu Sans Mono:
https://dejavu-fonts.github.io/
Public Domain
- FontAwesome:
SIL OFL 1.1
pgidocgen/gen/data/ext/devhelp_fork.py
https://bitbucket.org/birkenfeld/sphinx/
BSD
pgidocgen/gen/data/index/jquery-2.2.0.min.js
MIT License
pgidocgen/gen/data/index/js.cookie-2.1.0.min.js
https://github.com/js-cookie/js-cookie
MIT License
Everything else:
GNU Lesser General Public License 2.1 or later