# 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)