mirror of
https://github.com/readthedocs/sphinx_rtd_theme.git
synced 2025-02-25 18:55:21 -06:00
This is a release candidate for 0.5.0, which adds support for both HTML4 and HTML5 writers, which should support the default writer regardless of your version of Sphinx. Also included in this release are localization efforts and 10 language translations. You will need to specify the release manually to test, if there are no major issues, we will have a 0.5.0 release shortly. Closes #886 Closes #712
121 lines
2.8 KiB
Python
121 lines
2.8 KiB
Python
# -*- coding: utf-8 -*-
|
|
|
|
import sys
|
|
import os
|
|
import re
|
|
|
|
# If we are building locally, or the build on Read the Docs looks like a PR
|
|
# build, prefer to use the version of the theme in this repo, not the installed
|
|
# version of the theme.
|
|
def is_development_build():
|
|
# PR builds have an interger version
|
|
re_version = re.compile(r'^[\d]+$')
|
|
if 'READTHEDOCS' in os.environ:
|
|
version = os.environ.get('READTHEDOCS_VERSION', '')
|
|
if re_version.match(version):
|
|
return True
|
|
return False
|
|
return True
|
|
|
|
if is_development_build():
|
|
sys.path.insert(0, os.path.abspath('..'))
|
|
sys.path.append(os.path.abspath('./demo/'))
|
|
|
|
import sphinx_rtd_theme
|
|
from sphinx.locale import _
|
|
|
|
project = u'Read the Docs Sphinx Theme'
|
|
slug = re.sub(r'\W+', '-', project.lower())
|
|
version = '0.5.0rc1'
|
|
release = '0.5.0rc1'
|
|
author = u'Dave Snider, Read the Docs, Inc. & contributors'
|
|
copyright = author
|
|
language = 'en'
|
|
|
|
extensions = [
|
|
'sphinx.ext.intersphinx',
|
|
'sphinx.ext.autodoc',
|
|
'sphinx.ext.mathjax',
|
|
'sphinx.ext.viewcode',
|
|
'sphinxcontrib.httpdomain',
|
|
'sphinx_rtd_theme',
|
|
]
|
|
|
|
templates_path = ['_templates']
|
|
source_suffix = '.rst'
|
|
exclude_patterns = []
|
|
locale_dirs = ['locale/']
|
|
gettext_compact = False
|
|
|
|
master_doc = 'index'
|
|
suppress_warnings = ['image.nonlocal_uri']
|
|
pygments_style = 'default'
|
|
|
|
intersphinx_mapping = {
|
|
'rtd': ('https://docs.readthedocs.io/en/latest/', None),
|
|
'sphinx': ('http://www.sphinx-doc.org/en/stable/', None),
|
|
}
|
|
|
|
html_theme = 'sphinx_rtd_theme'
|
|
html_theme_options = {
|
|
'logo_only': True,
|
|
'navigation_depth': 5,
|
|
}
|
|
html_context = {}
|
|
|
|
if not 'READTHEDOCS' in os.environ:
|
|
html_static_path = ['_static/']
|
|
html_js_files = ['debug.js']
|
|
|
|
# Add fake versions for local QA of the menu
|
|
html_context['test_versions'] = list(map(
|
|
lambda x: str(x / 10),
|
|
range(1, 100)
|
|
))
|
|
|
|
html_logo = "demo/static/logo-wordmark-light.svg"
|
|
html_show_sourcelink = True
|
|
|
|
htmlhelp_basename = slug
|
|
|
|
|
|
latex_documents = [
|
|
('index', '{0}.tex'.format(slug), project, author, 'manual'),
|
|
]
|
|
|
|
man_pages = [
|
|
('index', slug, project, [author], 1)
|
|
]
|
|
|
|
texinfo_documents = [
|
|
('index', slug, project, author, slug, project, 'Miscellaneous'),
|
|
]
|
|
|
|
|
|
# Extensions to theme docs
|
|
def setup(app):
|
|
from sphinx.domains.python import PyField
|
|
from sphinx.util.docfields import Field
|
|
|
|
app.add_object_type(
|
|
'confval',
|
|
'confval',
|
|
objname='configuration value',
|
|
indextemplate='pair: %s; configuration value',
|
|
doc_field_types=[
|
|
PyField(
|
|
'type',
|
|
label=_('Type'),
|
|
has_arg=False,
|
|
names=('type',),
|
|
bodyrolename='class'
|
|
),
|
|
Field(
|
|
'default',
|
|
label=_('Default'),
|
|
has_arg=False,
|
|
names=('default',),
|
|
),
|
|
]
|
|
)
|