single |
Exhale
========================================================================================
|docs| |pypi| |coverage| |license|
Installation
----------------------------------------------------------------------------------------
Exhale is a `Sphinx Extension`__ that depends on `Breathe`_ for access to
the Doxygen
reStructuredText directives, and both `BeautifulSoup`_ and `lxml`_ for
parsing the
generated Doxygen XML documentation. Exhale is [hosted on PyPI
], meaning you can install it through the normal
mechanisms, e.g.,
__ http://www.sphinx-doc.org/en/stable/extensions.html
.. _BeautifulSoup: https://www.crummy.com/software/BeautifulSoup/bs4/doc/
.. _lxml: http://lxml.de/
.. _Breathe: https://breathe.readthedocs.io/en/latest/
.. code-block:: console
$ python -m pip install exhale
This will install Exhale, as well as all of its dependencies.
Exhale Version Compatibility with Python, Sphinx, and Breathe
----------------------------------------------------------------------------------------
+----------------+----------------+----------------+-----------------+
| Exhale Version | Python Version | Sphinx Version | Breathe Version |
+================+================+================+=================+
| 0.3.2 -- 0.3.6 | >=3.7 | >=3.0,<5 | >=4.32.0 |
+----------------+----------------+----------------+-----------------+
| 0.3.0 | >=3.6 | >=3.0,<5 | >=4.32.0 |
+----------------+----------------+----------------+-----------------+
| 0.2.1 -- 0.2.4 | 2.7, 3.3+ | >=1.6.1 | "Any" |
+----------------+----------------+----------------+-----------------+
| <=0.2.0 | 2.7, 3.3+ | >=1.0 | "Any" |
+----------------+----------------+----------------+-----------------+
For your project's documentation requirements, adopting ``exhale@0.3.0
means you just
need to specify directly that your docs/requirements.txt`` or similar
express::
exhale>=0.3.0
The ``exhale@0.3.0 release uses the same dependencies required by
breathe@4.32.0``.
If you need python 3.5 support, pin your documentation requirements to::
sphinx>=2.0
breathe>=4.13.0
exhale<0.3.0
For Python 2.7, you should pin your documentation requirements to::
sphinx==1.8.5
breathe==4.12.0
exhale<0.3.0
**Order matters**, namely that sphinx and breathe appear / are installed
before
exhale. Exhale 0.2.* releases support Python 2.7, but users need to be
aware of the
dependencies between Python, Sphinx, and Breathe versions.
.. _credit:
Credit
----------------------------------------------------------------------------------------
This project could not exist without the already excellent tools available:
Doxygen,
Sphinx, Breathe, and many others. In particular, though, for the Tree View
hierarchies
to be successful, I vendor copies of two excellent libraries that I make no
claims to.
They are vendored with your installation of Exhale, in accordance with each
project's
license:
1. For non-bootstrap, I used Kate Morley's excellent and lightweight
collapsibleLists_
including the sample CSS / images on that post. She includes a generous
`CC0 1.0 license `_ for these files, as well
as the rest of
her website.
For every HTML Theme I have tried, except for ones using bootstrap, this
library
works reliably and consistently. It matches the Sphinx RTD theme quite
well, too!
2. For bootstrap, I used Jon Miles' comprehensive `bootstrap-treeview`__
library. Jon
Miles hosts this library using the
[Apache v2 license].
|