All Projects → ionelmc → sphinx-py3doc-enhanced-theme

ionelmc / sphinx-py3doc-enhanced-theme

Licence: BSD-2-Clause license
A theme based on the theme of https://docs.python.org/3/ with some responsive enhancements.

Programming Languages

javascript
184084 projects - #8 most used programming language
python
139335 projects - #7 most used programming language
HTML
75241 projects

Overview

docs Documentation Status
tests
Travis-CI Build Status Requirements Status

demo default, bare
package

A theme based on the theme of https://docs.python.org/3/ with some responsive enhancements.

  • Free software: BSD 2-Clause License

Installation

pip install sphinx_py3doc_enhanced_theme

Add this in your documentation's conf.py:

import sphinx_py3doc_enhanced_theme
html_theme = "sphinx_py3doc_enhanced_theme"
html_theme_path = [sphinx_py3doc_enhanced_theme.get_html_theme_path()]

Customization

No extra styling

This theme has some extra styling like different fonts, text shadows for headings, slightly different styling for inline code and code blocks.

To get the original styling Python 3 docs have add this in you conf.py:

html_theme_options = {
    'githuburl': 'https://github.com/ionelmc/sphinx-py3doc-enhanced-theme/',
    'bodyfont': '"Lucida Grande",Arial,sans-serif',
    'headfont': '"Lucida Grande",Arial,sans-serif',
    'codefont': 'monospace,sans-serif',
    'linkcolor': '#0072AA',
    'visitedlinkcolor': '#6363bb',
    'extrastyling': False,
}
pygments_style = 'friendly'

Custom favicon

To have a custom favicon create a theme directory near your conf.py and add this theme.conf in it:

[theme]
inherit = sphinx_py3doc_enhanced_theme

Then create a favicon.png in the static directory.

And then edit your conf.py to have something like this:

import sphinx_py3doc_enhanced_theme
html_theme = "theme"
html_theme_path = [sphinx_py3doc_enhanced_theme.get_html_theme_path(), "."]

The final file structure should be like this:

docs
├── conf.py
└── theme
    ├── static
    │   └── favicon.png
    └── theme.conf

A bit of extra css

html_theme_options = {
    'appendcss': 'div.body code.descclassname { display: none }',
}

Examples

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].