3 # SCons documentation build configuration file, created by
4 # sphinx-quickstart on Mon Apr 30 09:36:53 2018.
6 # This file is execfile()d with the current directory set to its
9 # Note that not all possible configuration values are present in this
12 # All configuration values have a default; values that are commented out
13 # serve to show the default.
15 # If extensions (or modules to document with autodoc) are in another directory,
16 # add these directories to sys.path here. If the directory is relative to the
17 # documentation root, use os.path.abspath to make it absolute, like shown here.
21 sys
.path
.insert(0, os
.path
.abspath('../../'))
23 # -- General configuration ------------------------------------------------
25 # If your documentation needs a minimal Sphinx version, state it here.
29 # Add any Sphinx extension module names here, as strings. They can be
30 # extensions coming with Sphinx (named 'sphinx.ext.*') or your custom
33 #'autoclasstoc', # TODO: figure out how to make this useful
35 'sphinx.ext.autosummary',
36 #'sphinx.ext.githubpages'
37 'sphinx.ext.napoleon',
39 'sphinx.ext.viewcode',
44 autosummary_generate
= True
46 autodoc_default_options
= {
48 "special-members": False,
49 "private-members": True,
50 "inherited-members": True,
51 "undoc-members": True,
52 "exclude-members": '__weakref__',
54 autodoc_exclude_members
= ['*Tests']
56 # Napoleon settings. Nearly all defaults, listed explicitly to be safe.
57 # See: https://www.sphinx-doc.org/en/master/usage/extensions/napoleon.html#configuration
58 napoleon_google_docstring
= True
59 napoleon_numpy_docstring
= True
60 napoleon_include_init_with_doc
= False
61 napoleon_include_private_with_doc
= True
62 napoleon_include_special_with_doc
= True # not default
63 napoleon_use_admonition_for_examples
= True # not default
64 napoleon_use_admonition_for_notes
= False
65 napoleon_use_admonition_for_references
= False
66 napoleon_use_ivar
= True # not default
67 napoleon_use_param
= True
68 napoleon_use_rtype
= True
69 napoleon_preprocess_types
= False
70 napoleon_type_aliases
= None
71 napoleon_attr_annotations
= True
73 # Add any paths that contain templates here, relative to this directory.
74 templates_path
= ['_templates']
76 # Since 0.99, rst2pdf says: "twoColumn isn't part of the default styles
77 # in 0.99. You need to add the twocolumn style file."
78 pdf_stylesheets
= ['twocolumn']
80 # The suffix(es) of source filenames.
81 # You can specify multiple suffix as a list of string:
83 source_suffix
= '.rst'
85 # The master toctree document.
88 # General information about the project.
90 copyright
= '2022, SCons Project'
91 author
= 'SCons Project Team'
93 # The version info for the project you're documenting, acts as replacement for
94 # |version| and |release|, also used in various other places throughout the
97 from SCons
import __version__
98 # The full version, including alpha/beta/rc tags:
100 # The short X.Y version.
101 version_parts
= __version__
.split('.')
102 major
, minor
, patch
= version_parts
[0:3]
103 version
= '.'.join([major
, minor
,patch
])
105 # The language for content autogenerated by Sphinx. Refer to documentation
106 # for a list of supported languages.
108 # This is also used if you do content translation via gettext catalogs.
109 # Usually you set "language" from the command line for these cases.
112 # List of patterns, relative to source directory, that match files and
113 # directories to ignore when looking for source files.
114 # This pattern also affects html_static_path and html_extra_path .
115 exclude_patterns
= ["*Tests.py"]
117 # The name of the Pygments (syntax highlighting) style to use.
118 pygments_style
= 'sphinx'
120 # If true, `todo` and `todoList` produce output, else they produce nothing.
121 todo_include_todos
= False
124 # -- Options for HTML output ----------------------------------------------
126 # The theme to use for HTML and HTML Help pages. See the documentation for
127 # a list of builtin themes.
129 #html_theme = "sphinx_rtd_theme"
130 html_theme
= "sphinx_book_theme"
132 # Theme options are theme-specific and customize the look and feel of a theme
133 # further. For a list of options available for each theme, see the
136 html_theme_options
= {
137 "collapse_navigation": False,
138 "navigation_depth": 3,
141 # Add any paths that contain custom static files (such as style sheets) here,
142 # relative to this directory. They are copied after the builtin static files,
143 # so a file named "default.css" will overwrite the builtin "default.css".
144 html_static_path
= ['_static']
146 # Custom sidebar templates, must be a dictionary that maps document names
149 # The default sidebars (for documents that don't match any pattern) are
150 # defined by theme itself. Builtin themes are using these templates by
151 # default: ``['localtoc.html', 'relations.html', 'sourcelink.html',
152 # 'searchbox.html']``.
156 # -- Options for HTMLHelp output ------------------------------------------
158 # Output file base name for HTML help builder.
159 htmlhelp_basename
= 'SConsAPIDocs'
162 # -- Options for LaTeX output ---------------------------------------------
165 # The paper size ('letterpaper' or 'a4paper').
167 # 'papersize': 'letterpaper',
169 # The font size ('10pt', '11pt' or '12pt').
171 # 'pointsize': '10pt',
173 # Additional stuff for the LaTeX preamble.
177 # Latex figure (float) alignment
179 # 'figure_align': 'htbp',
183 # Grouping the document tree into LaTeX files. List of tuples
184 # (source start file, target name, title,
185 # author, documentclass [howto, manual, or own class]).
190 "SCons API Documentation",
197 # -- Options for manual page output ---------------------------------------
199 # One entry per manual page. List of tuples
200 # (source start file, name, description, authors, manual section).
202 (master_doc
, 'sconsapidocs', 'SCons API Documentation', [author
], 1)
206 # -- Options for Texinfo output -------------------------------------------
208 # Grouping the document tree into Texinfo files. List of tuples
209 # (source start file, target name, title, author,
210 # dir menu entry, description, category)
211 texinfo_documents
= [
215 "SCons API Documentation",
218 "One line description of project.",
224 # -- Options for Epub output -------------------------------------------------
229 # Grouping the document tree into PDF files. List of tuples
230 # (source start file, target name, title, author, options).
231 pdf_documents
= [('index', 'scons-api', 'SCons API Docs', 'SCons Project'),]