2
# PyWavelets documentation build configuration file, created by
3
# sphinx-quickstart on Sun Mar 14 10:46:18 2010.
5
# This file is execfile()d with the current directory set to its containing dir.
7
# Note that not all possible configuration values are present in this
10
# All configuration values have a default; values that are commented out
11
# serve to show the default.
14
import importlib.metadata
19
# FIXME: doctests need the str/repr formatting used in Numpy < 1.14.
20
# Should this be removed or updated?
22
np.set_printoptions(legacy='1.13')
27
# If extensions (or modules to document with autodoc) are in another directory,
28
# add these directories to sys.path here. If the directory is relative to the
29
# documentation root, use os.path.abspath to make it absolute, like shown here.
30
#sys.path.append(os.path.abspath('.'))
32
# -- General configuration -----------------------------------------------------
34
# Add any Sphinx extension module names here, as strings. They can be extensions
35
# coming with Sphinx (named 'sphinx.ext.*') or your custom ones.
38
'matplotlib.sphinxext.plot_directive',
41
'sphinx.ext.autosummary',
43
'sphinx.ext.extlinks',
44
'sphinx.ext.intersphinx',
48
'sphinx_togglebutton',
52
# Add any paths that contain templates here, relative to this directory.
53
templates_path = ['_templates']
55
# The suffix of source filenames.
58
# The encoding of source files.
59
source_encoding = 'utf-8'
61
# General information about the project.
63
copyright = f'2006-{datetime.date.today().year}, The PyWavelets Developers'
65
# The version info for the project you're documenting, acts as replacement for
66
# |version| and |release|, also used in various other places throughout the
69
# The default replacements for |version| and |release|, also used in various
70
# other places throughout the built documents.
72
version = importlib.metadata.version('pywavelets')
75
print(f"PyWavelets (VERSION {version})")
77
# The language for content autogenerated by Sphinx. Refer to documentation
78
# for a list of supported languages.
81
# There are two options for replacing |today|: either, you set today to some
82
# non-false value, then it is used:
84
# Else, today_fmt is used as the format for a strftime call.
85
#today_fmt = '%B %d, %Y'
87
# List of documents that shouldn't be included in the build.
88
unused_docs = ['substitutions', ]
90
# List of directories, relative to source directory, that shouldn't be searched
92
exclude_trees = ['_build']
94
# The reST default role (used for this markup: `text`) to use for all documents.
97
# If true, '()' will be appended to :func: etc. cross-reference text.
98
#add_function_parentheses = True
100
# If true, the current module name will be prepended to all description
101
# unit titles (such as .. function::).
102
#add_module_names = True
104
# If true, sectionauthor and moduleauthor directives will be shown in the
105
# output. They are ignored by default.
108
# The name of the Pygments (syntax highlighting) style to use.
109
pygments_style = 'sphinx'
111
# A list of ignored prefixes for module index sorting.
112
modindex_common_prefix = ['pywt.']
114
# -- Options for HTML output ---------------------------------------------------
116
# The theme to use for HTML and HTML Help pages. Major themes that come with
117
# Sphinx are currently 'default' and 'sphinxdoc'.
118
html_theme = 'pydata_sphinx_theme'
120
# Theme options are theme-specific and customize the look and feel of a theme
121
# further. For a list of options available for each theme, see the documentation
122
# at https://pydata-sphinx-theme.readthedocs.io/en/stable/user_guide/index.html
123
html_theme_options = {
124
"navbar_start": ["navbar-logo"],
125
"navbar_center": ["navbar-nav"],
126
"navbar_end": ["navbar-icon-links", "theme-switcher"],
127
"navbar_persistent": ["search-button"],
128
"primary_sidebar_end": ["indices.html", "sidebar-ethical-ads.html"],
129
"navigation_with_keys": False,
131
"navigation_depth": 2,
133
"use_edit_page_button": True,
134
"github_url": "https://github.com/PyWavelets/pywt",
135
"secondary_sidebar_items": {
136
"**": ["page-toc", "sourcelink", "edit-this-page"],
137
"index": ["page-toc"],
139
"show_prev_next": True,
140
"footer_start": ["copyright", "sphinx-version"],
141
"footer_end": ["theme-version"],
142
"pygment_light_style": "a11y-high-contrast-light",
143
"pygment_dark_style": "a11y-high-contrast-dark",
146
"name": "Discussion group on Google Groups",
147
"url": "https://groups.google.com/group/pywavelets",
148
# Icon class (if "type": "fontawesome"), or path to local image (if "type": "local")
149
"icon": "fa-regular fa-comments",
150
# The type of image to be used (see below for details)
151
"type": "fontawesome",
154
"name": "Explore PyWavelets",
155
"url": "http://wavelets.pybytes.com/",
156
"icon": "fa-solid fa-wave-square",
157
"type": "fontawesome",
160
"icon_links_label": "Quick Links",
163
# Contexts to extract GitHub links for edit buttons and theme switcher
165
"github_url": "https://github.com", # or your GitHub Enterprise site
166
"github_user": "PyWavelets",
167
"github_repo": "pywt",
168
"github_version": "main",
169
"doc_path": "doc/source",
170
"default_mode": "light",
173
# Add any paths that contain custom themes here, relative to this directory.
174
# html_theme_path = []
176
# The name for this set of Sphinx documents. If None, it defaults to
177
# "<project> v<release> documentation".
178
html_title = 'PyWavelets Documentation'
180
# A shorter title for the navigation bar. Default is the same as html_title.
181
# html_short_title = None
183
# The name of an image file (relative to this directory) to place at the top
187
# The name of an image file (within the static path) to use as favicon of the
188
# docs. This file should be a Windows icon file (.ico) being 16x16 or 32x32
190
html_favicon = '_static/favicon.ico'
192
# Add any paths that contain custom static files (such as style sheets) here,
193
# relative to this directory. They are copied after the builtin static files,
194
# so a file named "default.css" will overwrite the builtin "default.css".
195
html_static_path = ['_static']
197
# CSS files to include in the build. The file path should be relative to the
203
# If not '', a 'Last updated on:' timestamp is inserted at every page bottom,
204
# using the given strftime format.
205
html_last_updated_fmt = '%b %d, %Y'
207
# If true, SmartyPants will be used to convert quotes and dashes to
208
# typographically correct entities.
209
# html_use_smartypants = True
211
# Custom sidebar templates, maps document names to template names.
214
"**": ["sidebar-nav-bs",]
217
# Additional templates that should be rendered to pages, maps page names to
219
# html_additional_pages = {}
221
# If false, no module index is generated.
222
# html_use_modindex = True
224
# If false, no index is generated.
225
# html_use_index = True
227
# If true, the index is split into individual pages for each letter.
228
# html_split_index = False
230
# If true, links to the reST sources are added to the pages.
231
html_show_sourcelink = False
233
# If true, an OpenSearch description file will be output, and all pages will
234
# contain a <link> tag referring to it. The value of this option must be the
235
# base URL from which the finished HTML is served.
236
html_use_opensearch = 'http://pywavelets.readthedocs.org'
238
# If nonempty, this is the file name suffix for HTML files (e.g. ".xhtml").
239
# html_file_suffix = ''
241
# Output file base name for HTML help builder.
242
htmlhelp_basename = 'PyWaveletsdoc'
245
# -- Options for LaTeX output --------------------------------------------------
247
# The paper size ('letter' or 'a4').
248
# latex_paper_size = 'letter'
250
# The font size ('10pt', '11pt' or '12pt').
251
# latex_font_size = '10pt'
253
# Grouping the document tree into LaTeX files. List of tuples
254
# (source start file, target name, title, author, documentclass [howto/manual]).
256
('index', 'PyWavelets.tex', 'PyWavelets Documentation',
257
'The PyWavelets Developers', 'manual'),
260
# The name of an image file (relative to this directory) to place at the top of
264
# For "manual" documents, if this is true, then toplevel headings are parts,
266
# latex_use_parts = False
268
# Additional stuff for the LaTeX preamble.
271
# Documents to append as an appendix to all manuals.
272
# latex_appendices = []
274
# If false, no module index is generated.
275
# latex_use_modindex = True
277
# List of patterns, relative to source directory, that match files and
278
# directories to ignore when looking for source files.
279
exclude_patterns = ['substitutions.rst', ]
281
# numpydoc_show_class_members = False
282
numpydoc_class_members_toctree = False
284
# plot_directive options
285
plot_include_source = True
286
plot_formats = [('png', 96), 'pdf']
287
plot_html_show_formats = False
288
plot_html_show_source_link = False
290
# -- Options for intersphinx extension ---------------------------------------
292
# Intersphinx to get NumPy, SciPy, and other targets
293
intersphinx_mapping = {
294
'numpy': ('https://numpy.org/devdocs', None),
295
'scipy': ('https://docs.scipy.org/doc/scipy/', None),
298
# -- Options for JupyterLite -------------------------------------------------
300
global_enable_try_examples = True
301
try_examples_global_button_text = "Try it in your browser!"
302
try_examples_global_warning_text = (
303
"""These interactive examples with JupyterLite are experimental and
304
may not always work as expected. The execution of cells containing import
305
statements can result in high bandwidth usage and may take a long time to
306
load. They may not be in sync with the latest PyWavelets release.
308
Shall you encounter any issues, please feel free to report them on the
309
[PyWavelets issue tracker](https://github.com/PyWavelets/pywt/issues)."""