import sys
import os
+extensions = [ 'sphinx.ext.autodoc' ]
+
# The suffix of source filenames.
source_suffix = '.rst'
# General information about the project.
project = u'notmuch'
-copyright = u'2009-2020, Carl Worth and many others'
+copyright = u'2009-2021, Carl Worth and many others'
location = os.path.dirname(__file__)
for pathdir in ['.', '..']:
- version_file = os.path.join(location,pathdir,'version')
+ version_file = os.path.join(location,pathdir,'version.txt')
if os.path.exists(version_file):
with open(version_file,'r') as infile:
version=infile.read().replace('\n','')
+# for autodoc
+sys.path.insert(0, os.path.join(location, '..', 'bindings', 'python-cffi', 'notmuch2'))
+
# read generated config
for pathdir in ['.', '..']:
conf_file = os.path.join(location,pathdir,'sphinx.config')
# Hacky reimplementation of include to workaround limitations of
# sphinx-doc
lines = ['.. include:: /../emacs/rstdoc.rsti\n\n'] # in the source tree
- for file in ('notmuch.rsti', 'notmuch-lib.rsti', 'notmuch-show.rsti', 'notmuch-tag.rsti'):
+ for file in ('notmuch.rsti', 'notmuch-lib.rsti', 'notmuch-show.rsti', 'notmuch-tag.rsti', 'notmuch-tree.rsti'):
lines.extend(open(rsti_dir+'/'+file))
rst_epilog = ''.join(lines)
del lines
# the docstring include files
exclude_patterns.append('notmuch-emacs.rst')
+if not tags.has('WITH_PYTHON'):
+ exclude_patterns.append('python-bindings.rst')
+
# The name of the Pygments (syntax highlighting) style to use.
pygments_style = 'sphinx'
# Despite the name, this actually affects manual pages as well.
html_use_smartypants = False
+# See:
+# - https://www.sphinx-doc.org/en/master/usage/configuration.html#confval-manpages_url
+# - https://manpages.debian.org/
+manpages_url = 'https://manpages.debian.org/{page}.{section}.html'
+
# -- Options for manual page output ---------------------------------------
# One entry per manual page. List of tuples
notmuch_authors = u'Carl Worth and many others'
+man_make_section_directory = False
+
man_pages = [
('man1/notmuch', 'notmuch',
u'thread-based email index, search, and tagging',
u'syntax for notmuch queries',
[notmuch_authors], 7),
+ ('man7/notmuch-sexp-queries', 'notmuch-sexp-queries',
+ u's-expression syntax for notmuch queries',
+ [notmuch_authors], 7),
+
('man1/notmuch-show', 'notmuch-show',
u'show messages matching the given search terms',
[notmuch_authors], 1),