diff --git a/doc/source/conf.py b/doc/source/conf.py index 2bab1ee..cca45ab 100644 --- a/doc/source/conf.py +++ b/doc/source/conf.py @@ -15,6 +15,8 @@ import sys import os +import openstackdocstheme + # If extensions (or modules to document with autodoc) are in another directory, # add these directories to sys.path here. If the directory is relative to the # documentation root, use os.path.abspath to make it absolute, like shown here. @@ -28,7 +30,7 @@ import os # Add any Sphinx extension module names here, as strings. They can be # extensions coming with Sphinx (named 'sphinx.ext.*') or your custom # ones. -extensions = ['openstackdocstheme'] +extensions = [] # Add any paths that contain templates here, relative to this directory. templates_path = ['_templates'] @@ -98,7 +100,7 @@ pygments_style = 'sphinx' # The theme to use for HTML and HTML Help pages. See the documentation for # a list of builtin themes. -html_theme = 'default' +html_theme = 'openstackdocs' # Theme options are theme-specific and customize the look and feel of a theme # further. For a list of options available for each theme, see the @@ -106,7 +108,7 @@ html_theme = 'default' #html_theme_options = {} # Add any paths that contain custom themes here, relative to this directory. -#html_theme_path = [] +html_theme_path = [openstackdocstheme.get_html_theme_path()] # The name for this set of Sphinx documents. If None, it defaults to # " v documentation". diff --git a/openstackdocstheme/__init__.py b/openstackdocstheme/__init__.py index 7373e99..f404efa 100644 --- a/openstackdocstheme/__init__.py +++ b/openstackdocstheme/__init__.py @@ -15,25 +15,8 @@ import os -def builder_inited(app): - theme_dir = os.path.join(os.path.dirname(__file__), 'theme') - app.info('Using openstackdocs theme from %s' % theme_dir) - # Insert our theme directory at the front of the search path and - # force the theme setting to use the one in the package unless - # another openstack theme is already selected. This is done here, - # instead of in setup(), because conf.py is read after setup() - # runs, so if the conf contains these values the user values - # overwrite these. That's not bad for the theme, but it breaks the - # search path. - app.config.html_theme_path.insert(0, theme_dir) - # Set the theme name - if not app.config.html_theme.startswith('openstack'): - app.config.html_theme = 'openstackdocs' - # Re-initialize the builder, if it has the method for setting up - # the templates and theme. - if hasattr(app.builder, 'init_templates'): - app.builder.init_templates() - - -def setup(app): - app.connect('builder-inited', builder_inited) +def get_html_theme_path(): + """Return the directory containing our HTML theme.""" + cur_dir = os.path.abspath(os.path.dirname(__file__)) + d = os.path.join(cur_dir, 'theme') + return d