blob: 6c466d446b3b509be43ceacc127e6c570a370138 [file] [log] [blame]
Davide Pesaventoa0546db2020-04-01 19:18:04 -04001# Configuration file for the Sphinx documentation builder.
Yingdi Yu06a678a2014-08-01 17:07:08 -07002#
Davide Pesaventoa0546db2020-04-01 19:18:04 -04003# This file only contains a selection of the most common options. For a full
4# list see the documentation:
Davide Pesavento22eeb292021-10-01 21:20:53 -04005# https://www.sphinx-doc.org/en/master/usage/configuration.html
Yingdi Yu06a678a2014-08-01 17:07:08 -07006
Davide Pesaventoa0546db2020-04-01 19:18:04 -04007# -- Path setup --------------------------------------------------------------
Yingdi Yu06a678a2014-08-01 17:07:08 -07008
9# If extensions (or modules to document with autodoc) are in another directory,
10# add these directories to sys.path here. If the directory is relative to the
11# documentation root, use os.path.abspath to make it absolute, like shown here.
Davide Pesaventoa0546db2020-04-01 19:18:04 -040012#
13# import os
14import sys
15# sys.path.insert(0, os.path.abspath('.'))
Yingdi Yu06a678a2014-08-01 17:07:08 -070016
Davide Pesaventoa0546db2020-04-01 19:18:04 -040017
18# -- Project information -----------------------------------------------------
19
20project = u'ChronoSync: A Synchronization Protocol for NDN'
Davide Pesavento26a03262022-03-07 13:37:34 -050021copyright = u'Copyright © 2012-2022 Regents of the University of California.'
Davide Pesaventoa0546db2020-04-01 19:18:04 -040022author = u'Named Data Networking Project'
23
Davide Pesavento22eeb292021-10-01 21:20:53 -040024# The short X.Y version.
Davide Pesaventoa0546db2020-04-01 19:18:04 -040025#version = ''
26
Davide Pesavento22eeb292021-10-01 21:20:53 -040027# The full version, including alpha/beta/rc tags.
Davide Pesaventoa0546db2020-04-01 19:18:04 -040028#release = ''
29
30# There are two options for replacing |today|: either, you set today to some
31# non-false value, then it is used:
32#today = ''
33# Else, today_fmt is used as the format for a strftime call.
34today_fmt = '%Y-%m-%d'
35
36
37# -- General configuration ---------------------------------------------------
Yingdi Yu06a678a2014-08-01 17:07:08 -070038
39# If your documentation needs a minimal Sphinx version, state it here.
Davide Pesaventoa0546db2020-04-01 19:18:04 -040040#
Davide Pesavento22eeb292021-10-01 21:20:53 -040041needs_sphinx = '1.3'
Yingdi Yu06a678a2014-08-01 17:07:08 -070042
43# Add any Sphinx extension module names here, as strings. They can be
44# extensions coming with Sphinx (named 'sphinx.ext.*') or your custom
45# ones.
46extensions = [
Davide Pesavento22eeb292021-10-01 21:20:53 -040047 'sphinx.ext.extlinks',
Yingdi Yu06a678a2014-08-01 17:07:08 -070048 'sphinx.ext.todo',
49]
50
51def addExtensionIfExists(extension):
52 try:
53 __import__(extension)
54 extensions.append(extension)
55 except ImportError:
Davide Pesaventoa0546db2020-04-01 19:18:04 -040056 sys.stderr.write("Extension '%s' not found. "
Yingdi Yu06a678a2014-08-01 17:07:08 -070057 "Some documentation may not build correctly.\n" % extension)
Yingdi Yu06a678a2014-08-01 17:07:08 -070058
Davide Pesaventoa0546db2020-04-01 19:18:04 -040059addExtensionIfExists('sphinxcontrib.doxylink')
Yingdi Yu06a678a2014-08-01 17:07:08 -070060
61# The master toctree document.
62master_doc = 'index'
63
Davide Pesaventoa0546db2020-04-01 19:18:04 -040064# Add any paths that contain templates here, relative to this directory.
65templates_path = ['_templates']
Yingdi Yu06a678a2014-08-01 17:07:08 -070066
67# List of patterns, relative to source directory, that match files and
68# directories to ignore when looking for source files.
Davide Pesaventoa0546db2020-04-01 19:18:04 -040069# This pattern also affects html_static_path and html_extra_path.
70exclude_patterns = ['RELEASE_NOTES.rst']
Yingdi Yu06a678a2014-08-01 17:07:08 -070071
72
Davide Pesaventoa0546db2020-04-01 19:18:04 -040073# -- Options for HTML output -------------------------------------------------
Yingdi Yu06a678a2014-08-01 17:07:08 -070074
75# The theme to use for HTML and HTML Help pages. See the documentation for
76# a list of builtin themes.
Davide Pesaventoa0546db2020-04-01 19:18:04 -040077#
Yingdi Yu06a678a2014-08-01 17:07:08 -070078html_theme = 'named_data_theme'
79
Yingdi Yu06a678a2014-08-01 17:07:08 -070080# Add any paths that contain custom themes here, relative to this directory.
Davide Pesaventoa0546db2020-04-01 19:18:04 -040081html_theme_path = ['.']
Yingdi Yu06a678a2014-08-01 17:07:08 -070082
83# Add any paths that contain custom static files (such as style sheets) here,
84# relative to this directory. They are copied after the builtin static files,
85# so a file named "default.css" will overwrite the builtin "default.css".
Davide Pesaventoa0546db2020-04-01 19:18:04 -040086html_static_path = ['_static']
Yingdi Yu06a678a2014-08-01 17:07:08 -070087
Davide Pesavento22eeb292021-10-01 21:20:53 -040088html_copy_source = False
89html_show_sourcelink = False
90
91# Disable syntax highlighting of code blocks by default.
92highlight_language = 'none'
93
Yingdi Yu06a678a2014-08-01 17:07:08 -070094
Davide Pesaventoa0546db2020-04-01 19:18:04 -040095# -- Options for LaTeX output ------------------------------------------------
Yingdi Yu06a678a2014-08-01 17:07:08 -070096
97latex_elements = {
Davide Pesaventoa0546db2020-04-01 19:18:04 -040098 # The paper size ('letterpaper' or 'a4paper').
99 #
100 # 'papersize': 'letterpaper',
Yingdi Yu06a678a2014-08-01 17:07:08 -0700101
Davide Pesaventoa0546db2020-04-01 19:18:04 -0400102 # The font size ('10pt', '11pt' or '12pt').
103 #
104 # 'pointsize': '10pt',
Yingdi Yu06a678a2014-08-01 17:07:08 -0700105
Davide Pesaventoa0546db2020-04-01 19:18:04 -0400106 # Additional stuff for the LaTeX preamble.
107 #
108 # 'preamble': '',
109
110 # Latex figure (float) alignment
111 #
112 # 'figure_align': 'htbp',
Yingdi Yu06a678a2014-08-01 17:07:08 -0700113}
114
115# Grouping the document tree into LaTeX files. List of tuples
116# (source start file, target name, title,
117# author, documentclass [howto, manual, or own class]).
118latex_documents = [
Davide Pesaventoa0546db2020-04-01 19:18:04 -0400119 ('index', 'ChronoSync-docs.tex', u'A Synchronization Protocol for NDN',
120 author, 'manual'),
Yingdi Yu06a678a2014-08-01 17:07:08 -0700121]
122
Yingdi Yu06a678a2014-08-01 17:07:08 -0700123
Davide Pesaventoa0546db2020-04-01 19:18:04 -0400124# -- Options for manual page output ------------------------------------------
Yingdi Yu06a678a2014-08-01 17:07:08 -0700125
126# One entry per manual page. List of tuples
127# (source start file, name, description, authors, manual section).
128man_pages = [
129]
130
Yingdi Yu06a678a2014-08-01 17:07:08 -0700131# If true, show URL addresses after external links.
Davide Pesaventoa0546db2020-04-01 19:18:04 -0400132#man_show_urls = True
Yingdi Yu06a678a2014-08-01 17:07:08 -0700133
134
Davide Pesaventoa0546db2020-04-01 19:18:04 -0400135# -- Custom options ----------------------------------------------------------
Yingdi Yu06a678a2014-08-01 17:07:08 -0700136
137doxylink = {
Davide Pesaventoa0546db2020-04-01 19:18:04 -0400138 'ChronoSync': ('ChronoSync.tag', 'doxygen/'),
Yingdi Yu06a678a2014-08-01 17:07:08 -0700139}
Davide Pesavento22eeb292021-10-01 21:20:53 -0400140
141extlinks = {
142 'issue': ('https://redmine.named-data.net/issues/%s', 'issue #'),
143}