xref: /Universal-ctags/docs/conf.py (revision 3a7b291363971e028ae891be22659d0055952683)
1# -*- coding: utf-8 -*-
2#
3# Universal Ctags documentation build configuration file
4#
5# This file is execfile()d with the current directory set to its
6# containing dir.
7#
8# Note that not all possible configuration values are present in this file.
9# See http://sphinx-doc.org/config.html for more information.
10#
11# All configuration values have a default; values that are commented out
12# serve to show the default.
13
14import sys
15import os
16
17# Check if we run on RTD or locally
18on_rtd = os.environ.get('READTHEDOCS', None) == 'True'
19
20# If extensions (or modules to document with autodoc) are in another directory,
21# add these directories to sys.path here. If the directory is relative to the
22# documentation root, use os.path.abspath to make it absolute, like shown here.
23#sys.path.insert(0, os.path.abspath('.'))
24
25# -- General configuration ------------------------------------------------
26
27# If your documentation needs a minimal Sphinx version, state it here.
28#needs_sphinx = '1.0'
29
30# Add any Sphinx extension module names here, as strings. They can be
31# extensions coming with Sphinx (named 'sphinx.ext.*') or your custom
32# ones.
33import os, sys
34sys.path.append(os.path.abspath("./_ext"))
35
36extensions = [
37        'lexers'
38]
39
40# Add any paths that contain templates here, relative to this directory.
41templates_path = ['_templates']
42
43# The suffix of source filenames.
44source_suffix = '.rst'
45
46# The encoding of source files.
47#source_encoding = 'utf-8-sig'
48
49# The master toctree document.
50master_doc = 'index'
51
52# General information about the project.
53project = 'Universal Ctags'
54copyright = '2015-2022, Universal Ctags Team'
55
56# The version info for the project you're documenting, acts as replacement for
57# |version| and |release|, also used in various other places throughout the
58# built documents.
59#
60# The short X.Y version.
61version = '0.3.0'
62# The full version, including alpha/beta/rc tags.
63release = '0.3.0'
64
65# The language for content autogenerated by Sphinx. Refer to documentation
66# for a list of supported languages.
67#language = None
68
69# There are two options for replacing |today|: either, you set today to some
70# non-false value, then it is used:
71#today = ''
72# Else, today_fmt is used as the format for a strftime call.
73today_fmt = '%d %B %Y'
74
75# List of patterns, relative to source directory, that match files and
76# directories to ignore when looking for source files.
77exclude_patterns = ['_build']
78
79# The reST default role (used for this markup: `text`) to use for all
80# documents.
81#default_role = None
82
83# If true, '()' will be appended to :func: etc. cross-reference text.
84#add_function_parentheses = True
85
86# If true, the current module name will be prepended to all description
87# unit titles (such as .. function::).
88#add_module_names = True
89
90# If true, sectionauthor and moduleauthor directives will be shown in the
91# output. They are ignored by default.
92#show_authors = False
93
94# The name of the Pygments (syntax highlighting) style to use.
95pygments_style = 'sphinx'
96
97# A list of ignored prefixes for module index sorting.
98#modindex_common_prefix = []
99
100# If true, keep warnings as "system message" paragraphs in the built documents.
101#keep_warnings = False
102
103# Customizes the Smart Quotes transform. The default 'qDe' educates normal
104# quote characters ", ', em- and en-Dashes ---, --, and ellipses ....
105smartquotes_action = 'qe'  # Exclude dashes transform for cmdline options.
106
107
108# -- Options for HTML output ----------------------------------------------
109
110# The theme to use for HTML and HTML Help pages.  See the documentation for
111# a list of builtin themes.
112html_theme = 'default'
113
114# Theme options are theme-specific and customize the look and feel of a theme
115# further.  For a list of options available for each theme, see the
116# documentation.
117#html_theme_options = {}
118
119# Add any paths that contain custom themes here, relative to this directory.
120#html_theme_path = []
121
122# See if the RTD theme is installed locally
123# Based on RTD FAQ and the RTD-theme install instruction
124# http://read-the-docs.readthedocs.org/en/latest/faq.html
125# https://github.com/snide/sphinx_rtd_theme
126
127if not on_rtd:
128	if os.path.exists('_themes/sphinx_rtd_theme'):
129		html_theme_path = [ '_themes', ]
130		html_theme = 'sphinx_rtd_theme'
131
132# The name for this set of Sphinx documents.  If None, it defaults to
133# "<project> v<release> documentation".
134#html_title = None
135
136# A shorter title for the navigation bar.  Default is the same as html_title.
137#html_short_title = None
138
139# The name of an image file (relative to this directory) to place at the top
140# of the sidebar.
141#html_logo = None
142
143# The name of an image file (within the static path) to use as favicon of the
144# docs.  This file should be a Windows icon file (.ico) being 16x16 or 32x32
145# pixels large.
146#html_favicon = None
147
148# Add any paths that contain custom static files (such as style sheets) here,
149# relative to this directory. They are copied after the builtin static files,
150# so a file named "default.css" will overwrite the builtin "default.css".
151#html_static_path = ['_static']
152
153# Add any extra paths that contain custom files (such as robots.txt or
154# .htaccess) here, relative to this directory. These files are copied
155# directly to the root of the documentation.
156#html_extra_path = []
157
158# If not '', a 'Last updated on:' timestamp is inserted at every page bottom,
159# using the given strftime format.
160html_last_updated_fmt = '%d %b %Y'
161
162# If true, SmartyPants will be used to convert quotes and dashes to
163# typographically correct entities.
164#html_use_smartypants = True
165
166# Custom sidebar templates, maps document names to template names.
167#html_sidebars = {}
168
169# Additional templates that should be rendered to pages, maps page names to
170# template names.
171#html_additional_pages = {}
172
173# If false, no module index is generated.
174#html_domain_indices = True
175
176# If false, no index is generated.
177#html_use_index = True
178
179# If true, the index is split into individual pages for each letter.
180#html_split_index = False
181
182# If true, links to the reST sources are added to the pages.
183html_show_sourcelink = False
184
185# If true, "Created using Sphinx" is shown in the HTML footer. Default is True.
186#html_show_sphinx = True
187
188# If true, "(C) Copyright ..." is shown in the HTML footer. Default is True.
189#html_show_copyright = True
190
191# If true, an OpenSearch description file will be output, and all pages will
192# contain a <link> tag referring to it.  The value of this option must be the
193# base URL from which the finished HTML is served.
194#html_use_opensearch = ''
195
196# This is the file name suffix for HTML files (e.g. ".xhtml").
197#html_file_suffix = None
198
199# Output file base name for HTML help builder.
200htmlhelp_basename = 'UniversalCtagsdoc'
201
202
203# -- Options for LaTeX output ---------------------------------------------
204
205latex_elements = {
206	# The paper size ('letterpaper' or 'a4paper').
207	'papersize': 'a4paper',
208
209	# The font size ('10pt', '11pt' or '12pt').
210	#'pointsize': '10pt',
211
212	# Additional stuff for the LaTeX preamble.
213	#'preamble': '',
214
215	'classoptions': ',openany,oneside',
216	'babel': '\\usepackage[english]{babel}'
217}
218
219# Grouping the document tree into LaTeX files. List of tuples
220# (source start file, target name, title,
221#  author, documentclass [howto, manual, or own class]).
222latex_documents = [
223  ('index', 'UniversalCtags.tex', 'Universal Ctags Documentation',
224   'Universal Ctags Team', 'manual'),
225]
226
227# The name of an image file (relative to this directory) to place at the top of
228# the title page.
229#latex_logo = None
230
231# For "manual" documents, if this is true, then toplevel headings are parts,
232# not chapters.
233#latex_use_parts = False
234
235# If true, show page references after internal links.
236#latex_show_pagerefs = False
237
238# If true, show URL addresses after external links.
239#latex_show_urls = False
240
241# Documents to append as an appendix to all manuals.
242#latex_appendices = []
243
244# If false, no module index is generated.
245#latex_domain_indices = True
246
247
248# -- Options for manual page output ---------------------------------------
249
250# One entry per manual page. List of tuples
251# (source start file, name, description, authors, manual section).
252man_pages = [
253    ('index', 'Universal Ctags', 'Universal Ctags Documentation',
254     ['Universal Ctags Team'], 1)
255]
256
257# If true, show URL addresses after external links.
258#man_show_urls = False
259
260
261# -- Options for Texinfo output -------------------------------------------
262
263# Grouping the document tree into Texinfo files. List of tuples
264# (source start file, target name, title, author,
265#  dir menu entry, description, category)
266texinfo_documents = [
267  ('index', 'Universal Ctags', 'Universal Ctags Documentation',
268   'Universal Ctags Team', 'Universal Ctags', 'Universal Ctags',
269   'Miscellaneous'),
270]
271
272# Documents to append as an appendix to all manuals.
273#texinfo_appendices = []
274
275# If false, no module index is generated.
276#texinfo_domain_indices = True
277
278# How to display URL addresses: 'footnote', 'no', or 'inline'.
279#texinfo_show_urls = 'footnote'
280
281# If true, do not generate a @detailmenu in the "Top" node's menu.
282#texinfo_no_detailmenu = False
283