Files

111 lines
3.6 KiB
Python

# Configuration file for the Sphinx documentation builder.
#
# For the full list of built-in configuration values, see the documentation:
# https://www.sphinx-doc.org/en/master/usage/configuration.html
# -- Project information -----------------------------------------------------
# https://www.sphinx-doc.org/en/master/usage/configuration.html#project-information
project = 'Jam.py'
copyright = '2022, Jam.py Team'
author = 'Andrew Yushev & Dean D. Babic'
release = '0.0.1'
# -- General configuration ---------------------------------------------------
# https://www.sphinx-doc.org/en/master/usage/configuration.html#general-configuration
extensions = ['sphinx_rtd_theme', 'sphinx_copybutton', 'sphinx.ext.autodoc', 'sphinx.ext.linkcode', 'sphinx.ext.githubpages', 'sphinx_llms_txt']
templates_path = ['_templates']
exclude_patterns = ['**/.git', 'Thumbs.db', '**/.venv', '**/.idea', '**/.mypy_cache', '**/build']
googleanalytics_id = 'UA-122962025-6' # Provided by Google in your dashboard and need for html context below.
# The master toctree document.
master_doc = 'contents'
# -- Options for HTML output -------------------------------------------------
# https://www.sphinx-doc.org/en/master/usage/configuration.html#options-for-html-output
html_theme = 'sphinx_rtd_theme'
html_static_path = ['_static']
html_theme_options = {
'analytics_anonymize_ip': False,
'logo_only': False,
'prev_next_buttons_location': 'bottom',
'style_external_links': False,
'vcs_pageview_mode': '',
# 'style_nav_header_background': 'white',
'flyout_display': 'hidden',
'version_selector': True,
'language_selector': True,
# Toc options
'collapse_navigation': True,
'sticky_navigation': True,
'navigation_depth': 4,
'includehidden': True,
'titles_only': False,
}
html_static_path = ['_static']
html_theme_path = ['_templates']
html_css_files = ['_static/Jam.py.html_files/freemind2html.css']
html_favicon = '_static/favicon.ico'
html_last_updated_fmt = '%b %d, %Y'
html_context = {
'googleanalytics_id': googleanalytics_id,
}
htmlhelp_basename = 'Jampydocumentationdoc'
# -- Options for LaTeX output ---------------------------------------------
# https://www.sphinx-doc.org/en/master/usage/configuration.html#options-for-latex-output
latex_documents = [
(master_doc, 'Jampydocumentation.tex', 'Jam.py Documentation',
'Andrew Yushev & Dean D. Babic', 'manual'),
]
# -- Options for manual page output ---------------------------------------
# https://www.sphinx-doc.org/en/master/usage/configuration.html#confval-man_pages
man_pages = [
(master_doc, 'jampydocumentation', u'Jam.py documentation Documentation',
[author], 1),
]
# -- Options for Texinfo output -------------------------------------------
# https://www.sphinx-doc.org/en/master/usage/configuration.html#confval-texinfo_documents
texinfo_documents = [
(master_doc, 'Jampydocumentation', u'Jam.py documentation Documentation',
author, 'Jampydocumentation', 'One line description of project.',
'Miscellaneous'),
]
llms_txt_exclude = [
"requirements", # Exclude the search page
]
# -- Python link_code_resolve configuration -------------------------------
def linkcode_resolve(domain, info):
"""Map specific exceptions to specific files."""
if domain != 'py':
return None
mapping = {
'LanguageNotFound': 'https://github.com/jam-py-v5/jam-py-v7/blob/master/jam/langs.py',
'NetworkError': 'https://github.com/username/repo/blob/main/network.py',
'FileError': 'https://github.com/username/repo/blob/main/file_ops.py',
}
exception_name = info['fullname']
return mapping.get(exception_name)