# Customized Sphinx configuration # https://www.sphinx-doc.org/en/master/usage/configuration.html import datetime import pkg_resources # Project name project = 'Sophon' # Project author author = 'Stefano Pigozzi' # Project copyright project_copyright = f'{datetime.date.today().year}, {author}' # Project short version version = pkg_resources.get_distribution(project.lower()).version # Project long version release = pkg_resources.get_distribution(project.lower()).version # Sphinx language language = "en" # TODO: Change to it for thesis # Sphinx extensions extensions = [ "sphinx.ext.intersphinx", "sphinx.ext.autosectionlabel", # TODO: Remove in thesis ] # Source files encoding source_encoding = "UTF-8" # Source file extensions source_suffix = { ".rst": "restructuredtext", } # Source files parsers source_parsers = {} # The doc from which to start rendering root_doc = "index" # Files to ignore when rendering exclude_patterns = [ "build", "_build", "Thumbs.db", ".DS_Store", ] # Sphinx template files templates_path = [ '_templates', ] # Prologue of all rst files rst_prolog = "" # Epilogue of all rst files rst_epilog = "" # Default domain primary_domain = None # Default role default_role = None # Print warnings on the page keep_warnings = True # Display more warnings than usual nitpicky = True # Intersphinx URLs intersphinx_mapping = { "python": ("https://docs.python.org/3.8", None), "django": ("http://docs.djangoproject.com/en/3.2/", "http://docs.djangoproject.com/en/3.2/_objects/"), "docker": ("https://docker-py.readthedocs.io/en/stable/", None), "coloredlogs": ("https://coloredlogs.readthedocs.io/en/latest/", None), } # Manpages URL manpages_url = "https://man.archlinux.org/" # Autonumber figures numfig = False # TODO: Set to true for thesis # Autonumeration formatting numfig_format = { "figure": "Fig. %s", # TODO: Translate in italian "table": "Table %s", # TODO: Translate in italian "code-block": "Listing %s", # TODO: Translate in italian "section": "Section %s", # TODO: Translate in italian } # Maximum depth for autonumeration numfig_secnum_depth = 2 # HTML builder theme html_theme = 'sphinx_rtd_theme' # Configuration for the theme html_theme_options = { "style_nav_header_background": "#051836", "github_url": "https://github.com/Steffo99/sophon/tree/main/docs/source", } # Title of the HTML page html_title = f"{project}" # Short title of the HTML page html_short_title = f"{project}" # Path of the documentation static files html_static_path = [ "_static", ] # Path of extra files to add to the build html_extra_path = [ "extra", ] # LaTeX rendering engine to use latex_engine = "pdflatex" # LaTeX top level title type latex_toplevel_sectioning = "part" # LaTeX URLs rendering latex_show_urls = "footnote" # LaTeX theme latex_theme = "manual" # TODO: I'm not sure between manual or howto latex_setup = { "TitleColor": "{rgb}{0,0,0.08}", "InnerLinkColor": "{rgb}{0.19,0.57,0.82}", "OuterLinkColor": "{rgb}{0.19,0.57,0.82}", "VerbatimBorderColor": "{rgb}{0.88,0.88,0.88}", "VerbatimColor": "{rgb}{0.97,0.97,0.97}", "noteBorderColor": "{rgb}{0.42,0.69,0.87}", "importantBorderColor": "{rgb}{0.42,0.69,0.87}", "hintBorderColor": "{rgb}{0.1,0.74,0.61}", "tipBorderColor": "{rgb}{0.1,0.74,0.61}", "warningBorderColor": "{rgb}{0.94,0.7,0.49}", "warningBgColor": "{rgb}{1,0.93,0.8}", "cautionBorderColor": "{rgb}{0.94,0.7,0.49}", "cautionBgColor": "{rgb}{1,0.93,0.8}", "attentionBorderColor": "{rgb}{0.94,0.7,0.49}", "attentionBgColor": "{rgb}{1,0.93,0.8}", "dangerBorderColor": "{rgb}{0.95,0.62,0.59}", "dangerBgColor": "{rgb}{0.95,0.62,0.59}", "errorBorderColor": "{rgb}{0.95,0.62,0.59}", "errorBgColor": "{rgb}{0.95,0.62,0.59}", } latex_elements = { # TODO: Set Times New Roman font "papersize": "a4paper", "pointsize": "12pt", "sphinxsetup": ", ".join(f"{key}={value}" for key, value in latex_setup.items()) }