############################################################################## # Documentation/conf.py # # Licensed to the Apache Software Foundation (ASF) under one or more # contributor license agreements. See the NOTICE file distributed with # this work for additional information regarding copyright ownership. The # ASF licenses this file to you under the Apache License, Version 2.0 (the # "License"); you may not use this file except in compliance with the # License. You may obtain a copy of the License at # # http://www.apache.org/licenses/LICENSE-2.0 # # Unless required by applicable law or agreed to in writing, software # distributed under the License is distributed on an "AS IS" BASIS, WITHOUT # WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the # License for the specific language governing permissions and limitations # under the License. # ############################################################################## # Configuration file for the Sphinx documentation builder. # # This file only contains a selection of the most common options. For a full # list see the documentation: # https://www.sphinx-doc.org/en/master/usage/configuration.html # -- Path setup -------------------------------------------------------------- # 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. # # import os import sys # Add the '_extensions' directory to sys.path, to enable finding Sphinx # extensions within. sys.path.insert(0, "_extensions") # -- Project information ----------------------------------------------------- project = "NuttX" copyright = "2023, The Apache Software Foundation" author = "NuttX community" version = release = "latest" # -- General configuration --------------------------------------------------- # 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_rtd_theme", "myst_parser", "sphinx.ext.autosectionlabel", "sphinx.ext.todo", "sphinx_tabs.tabs", "sphinx_copybutton", "warnings_filter", ] source_suffix = [".rst", ".md"] todo_include_todos = True autosectionlabel_prefix_document = True # do not set Python as primary domain for code blocks highlight_language = "none" primary_domain = None # Add any paths that contain templates here, relative to this directory. templates_path = ["_templates"] # List of patterns, relative to source directory, that match files and # directories to ignore when looking for source files. # This pattern also affects html_static_path and html_extra_path. exclude_patterns = ["_build", "Thumbs.db", ".DS_Store", "legacy_README.md"] # list of documentation versions to offer (besides latest). this will be # overridden by command line option but we can provide a sane default # this way html_context = dict() html_context["nuttx_versions"] = "latest" # TODO: append other options using releases detected from git (or maybe just # a few hand-selected ones, or maybe just a "stable" option) # -- Options for HTML output ------------------------------------------------- # The theme to use for HTML and HTML Help pages. See the documentation for # a list of builtin themes. # html_theme = "sphinx_rtd_theme" html_show_sphinx = False html_theme_options = {"navigation_depth": 5} # 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". html_static_path = ["_static"] html_css_files = ["custom.css"] html_show_license = True html_logo = "_static/NuttX.png" html_favicon = "_static/favicon.ico" today_fmt = "%d %B %y at %H:%M" c_id_attributes = ["FAR", "CODE", "noreturn_function"] # This is required to allow running linkcheck with sphinx-tabs sphinx_tabs_valid_builders = ["linkcheck"] # There are some sites where the linkchecker cannot handle anchors linkcheck_ignore = [ "https://github.com/pyenv/pyenv#installation", "http://openocd.zylin.com/#/c/4103/", ] latex_engine = "lualatex" copybutton_exclude = ".linenos, .gp, .go" # -- Options for warnings_filter ------------------------------------------ warnings_filter_config = "known-warnings.txt"