diff --git a/doc/conf.py b/doc/conf.py index 25d468e..218b2a0 100644 --- a/doc/conf.py +++ b/doc/conf.py @@ -11,12 +11,15 @@ # All configuration values have a default; values that are commented out # serve to show the default. -import sys, os +import os +import sys + import sphinx -sys.path.insert(0, os.path.abspath('sphinxext')) +sys.path.insert(0, os.path.abspath("sphinxext")) import sphinx_gallery + # 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. @@ -26,11 +29,12 @@ # This is for ReadTheDoc import matplotlib import matplotlib.sphinxext -matplotlib.use('Agg') + +matplotlib.use("Agg") import pkg_resources -version = pkg_resources.require(pkg_name)[0].version +version = pkg_resources.require(pkg_name)[0].version release = version @@ -42,49 +46,46 @@ import easydev from easydev import get_path_sphinx_themes - # -- General configuration ----------------------------------------------------- # If your documentation needs a minimal Sphinx version, state it here. -#needs_sphinx = '1.0' +# needs_sphinx = '1.0' # Add any Sphinx extension module names here, as strings. They can be extensions # coming with Sphinx (named 'sphinx.ext.*') or your custom ones. extensions = [ - 'sphinx.ext.autodoc', - ('sphinx.ext.imgmath' # only available for sphinx >= 1.4 - if sphinx.version_info[:2] >= (1, 4) - else 'sphinx.ext.pngmath'), - 'sphinx.ext.coverage', - 'sphinx.ext.doctest', - 'sphinx.ext.intersphinx', - 'sphinx.ext.todo', - 'sphinx.ext.ifconfig', - 'sphinx.ext.viewcode', + "sphinx.ext.autodoc", + "sphinx.ext.imgmath", + "sphinx.ext.coverage", + "sphinx.ext.doctest", + "sphinx.ext.intersphinx", + "sphinx.ext.todo", + "sphinx.ext.ifconfig", + "sphinx.ext.viewcode", "numpydoc.numpydoc", - 'matplotlib.sphinxext.plot_directive', - 'sphinx.ext.autosummary', - 'sphinx_gallery.gen_gallery', - ] + "matplotlib.sphinxext.plot_directive", + "sphinx.ext.autosummary", + "sphinx_gallery.gen_gallery", +] # note that the numpy directives is buggy. Example: class and init are not recognised as two entities for the autoclass_content=both here below -todo_include_todos=True +todo_include_todos = True jscopybutton_path = "copybutton.js" -autoclass_content = 'both' +autoclass_content = "both" # Add any paths that contain templates here, relative to this directory. -templates_path = ['_templates'] +templates_path = ["_templates"] # The suffix of source filenames. -source_suffix = '.rst' +source_suffix = ".rst" # The encoding of source files. -#source_encoding = 'utf-8-sig' +# source_encoding = 'utf-8-sig' # The master toctree document. -master_doc = 'index' +master_doc = "index" # General information about the project. project = project @@ -95,34 +96,34 @@ # built documents. # # The short X.Y version. -version = 'Current version: ' + str(version) +version = "Current version: " + str(version) # The full version, including alpha/beta/rc tags. release = release # The language for content autogenerated by Sphinx. Refer to documentation # for a list of supported languages. -#language = None +# language = None # There are two options for replacing |today|: either, you set today to some # non-false value, then it is used: -#today = '' +# today = '' # Else, today_fmt is used as the format for a strftime call. -#today_fmt = '%B %d, %Y' +# today_fmt = '%B %d, %Y' # List of documents that shouldn't be included in the build. -#unused_docs = [] +# unused_docs = [] # List of patterns, relative to source directory, that match files and # directories to ignore when looking for source files. -exclude_trees = ['_build'] +exclude_trees = ["_build"] exclude_patterns = [] # The reST default role (used for this markup: `text`) to use for all documents. -#default_role = None +# default_role = None # If true, '()' will be appended to :func: etc. cross-reference text. -#add_function_parentheses = True +# add_function_parentheses = True # If true, the current module name will be prepended to all description # unit titles (such as .. function::). @@ -133,7 +134,8 @@ show_authors = True # The name of the Pygments (syntax highlighting) style to use. -pygments_style = 'sphinx' +pygments_style = "sphinx" + # A list of ignored prefixes for module index sorting. modindex_common_prefix = ["spectrum."] @@ -151,28 +153,6 @@ numpydoc_show_class_members = False -# solution from nilearn -def touch_example_backreferences(app, what, name, obj, options, lines): - # generate empty examples files, so that we don't get - # inclusion errors if there are no examples for a class / module - examples_path = os.path.join(app.srcdir, "modules", "generated", - "%s.examples" % name) - if not os.path.exists(examples_path): - # touch file - open(examples_path, 'w').close() - - - -# Add the 'copybutton' javascript, to hide/show the prompt in code -# examples -def setup(app): - app.add_javascript('copybutton.js') - app.connect('autodoc-process-docstring', touch_example_backreferences) - - - - - # -- Options for HTML output --------------------------------------------------- # The theme to use for HTML and HTML Help pages. Major themes that come with @@ -180,7 +160,8 @@ def setup(app): on_rtd = os.environ.get("READTHEDOCS", None) == "True" if not on_rtd: import sphinx_rtd_theme - html_theme = 'sphinx_rtd_theme' + + html_theme = "sphinx_rtd_theme" html_theme_path = [sphinx_rtd_theme.get_html_theme_path()] else: html_theme = "default" @@ -189,57 +170,57 @@ def setup(app): # further. For a list of options available for each theme, see the # documentation. # the user theme contains the otpions 'homepage', which is populated here -#html_theme_options = {'homepage': init_sphinx.url} +# html_theme_options = {'homepage': init_sphinx.url} # Add any paths that contain custom themes here, relative to this directory. -#html_theme_path = [easydev.get_path_sphinx_themes()] +# html_theme_path = [easydev.get_path_sphinx_themes()] # The name for this set of Sphinx documents. If None, it defaults to # " v documentation". -#html_title = "spectrum" + ' ('+version +')' +# html_title = "spectrum" + ' ('+version +')' # A shorter title for the navigation bar. Default is the same as html_title. html_short_title = "spectrum" # The name of an image file (relative to this directory) to place at the top # of the sidebar. -html_logo = os.path.join('logo.png') +html_logo = os.path.join("logo.png") # The name of an image file (within the static path) to use as favicon of the # docs. This file should be a Windows icon file (.ico) being 16x16 or 32x32 # pixels large. -#html_favicon = "" +# html_favicon = "" # Add any paths that contain custom static files (such as style sheets) here, # relative to this directory. They are copied after the builtin static files, # so a file named "default.css" will overwrite the builtin "default.css". -# the copybutton.js must be copied there: -html_static_path = ['_static'] +# the copybutton.js must be copied there: +html_static_path = ["_static"] # If not '', a 'Last updated on:' timestamp is inserted at every page bottom, # using the given strftime format. -html_last_updated_fmt = '%b %d, %Y' +html_last_updated_fmt = "%b %d, %Y" # If true, SmartyPants will be used to convert quotes and dashes to # typographically correct entities. -#html_use_smartypants = True +# html_use_smartypants = True # Custom sidebar templates, maps document names to template names. -html_index = 'index.html' +html_index = "index.html" -#Custom sidebar templates, maps page names to templates. -#html_sidebars = { -# 'index': [ 'indexsidebar.html'], +# Custom sidebar templates, maps page names to templates. +# html_sidebars = { +# 'index': [ 'indexsidebar.html'], # 'contents':'indexsidebar.html',# # # -#} +# } # Additional templates that should be rendered to pages, maps page names to # template names. -#html_additional_pages = { 'index': 'index.html'} +# html_additional_pages = { 'index': 'index.html'} # If false, no module index is generated. @@ -259,13 +240,13 @@ def setup(app): # If true, an OpenSearch description file will be output, and all pages will # contain a tag referring to it. The value of this option must be the # base URL from which the finished HTML is served. -#html_use_opensearch = '' +# html_use_opensearch = '' # If nonempty, this is the file name suffix for HTML files (e.g. ".xhtml"). -#html_file_suffix = '' +# html_file_suffix = '' # Output file base name for HTML help builder. -htmlhelp_basename = 'doc' +htmlhelp_basename = "doc" # -- Options for LaTeX output -------------------------------------------------- @@ -274,29 +255,28 @@ def setup(app): pngmath_use_preview = True # The paper size ('letter' or 'a4'). -latex_paper_size = 'a4' +latex_paper_size = "a4" # The font size ('10pt', '11pt' or '12pt'). -latex_font_size = '10pt' +latex_font_size = "10pt" # Grouping the document tree into LaTeX files. List of tuples # (source start file, target name, title, author, documentclass [howto/manual]). latex_documents = [ - ('index', 'main.tex', title, - author, 'manual'), + ("index", "main.tex", title, author, "manual"), ] -latex_elements = { 'inputenc': '\\usepackage[utf8]{inputenc}' } +latex_elements = {"inputenc": "\\usepackage[utf8]{inputenc}"} # The name of an image file (relative to this directory) to place at the top of # the title page. -#latex_logo = +# latex_logo = # For "manual" documents, if this is true, then toplevel headings are parts, # not chapters. -#latex_use_parts = False +# latex_use_parts = False # If true, show page references after internal links. -#latex_show_pagerefs = False +# latex_show_pagerefs = False # Additional stuff for the LaTeX preamble. latex_preamble = r""" @@ -309,7 +289,7 @@ def setup(app): \definecolor{VerbatimBorderColor}{rgb}{0,0,0} \setlength{\fboxrule}{2pt} - + \renewcommand{\Verbatim}[1][1]{% % list starts new par, but we don't want it to be set apart vertically \bgroup\parskip=0pt% @@ -331,23 +311,20 @@ def setup(app): """ # Documents to append as an appendix to all manuals. -#latex_appendices = [] +# latex_appendices = [] # If false, no module index is generated. -#latex_use_modindex = True +# latex_use_modindex = True # -- Options for manual page output -------------------------------------------- # One entry per manual page. List of tuples # (source start file, name, description, authors, manual section). -man_pages = [ - ('index', project, project, - [author], 1) -] +man_pages = [("index", project, project, [author], 1)] # Example configuration for intersphinx: refer to the Python standard library. intersphinx_mapping = { - "python": ('http://docs.python.org/',None), + "python": ("http://docs.python.org/", None), }