diff options
Diffstat (limited to 'doc/conf.py.in')
-rw-r--r-- | doc/conf.py.in | 127 |
1 files changed, 127 insertions, 0 deletions
diff --git a/doc/conf.py.in b/doc/conf.py.in new file mode 100644 index 0000000..444b70a --- /dev/null +++ b/doc/conf.py.in @@ -0,0 +1,127 @@ +# Copyright 2020-2021 David Robillard <d@drobilla.net> +# SPDX-License-Identifier: ISC + +# Project information + +project = "@LILV_TITLE@" +copyright = "2020-2023, David Robillard" +author = "David Robillard" +release = "@LILV_VERSION@" +version = "@LILV_VERSION@" +desc = "A library for loading LV2 plugins" + +# General configuration + +exclude_patterns = ["xml"] +language = "en" +nitpicky = True +pygments_style = "friendly" + +try: + import sphinx_lv2_theme + + have_lv2_theme = True +except ModuleNotFoundError: + have_lv2_theme = False + +# Ignore everything opaque or external for nitpicky mode +_opaque = [ + "FILE", + "LV2_Descriptor", + "LV2_Feature", + "LV2_Handle", + "LV2_URID_Map", + "LV2_URID_Unmap", + "LilvInstanceImpl", + "LilvNodeImpl", + "LilvPluginClassImpl", + "LilvPluginImpl", + "LilvPortImpl", + "LilvScalePointImpl", + "LilvStateImpl", + "LilvUIImpl", + "LilvWorldImpl", + "size_t", + "uint32_t", + "va_list", +] + +nitpick_ignore = list(map(lambda x: ("c:identifier", x), _opaque)) + +# HTML output + +html_copy_source = False +html_secnumber_suffix = " " +html_short_title = "@LILV_TITLE@" + +html_theme_options = { + "description": desc, + "logo_name": True, + "logo_width": "8em", +} + +if tags.has("singlehtml"): + html_sidebars = {"**": ["globaltoc.html"]} + html_theme_options.update( + { + "globaltoc_collapse": False, + "globaltoc_maxdepth": 3, + "nosidebar": False, + "page_width": "80em", + } + ) +else: + html_theme_options.update( + { + "globaltoc_collapse": True, + "globaltoc_maxdepth": 1, + "nosidebar": True, + "page_width": "60em", + } + ) + +if have_lv2_theme: + html_theme = "sphinx_lv2_theme" + + html_theme_options.update( + { + "show_footer_version": True, + "show_logo_version": True, + } + ) + + if tags.has("singlehtml"): + html_theme_options.update( + { + "body_max_width": "64em", + "body_min_width": "64em", + "nosidebar": False, + "sidebar_width": "12em", + } + ) + + else: + html_theme_options.update( + { + "body_max_width": "60em", + "body_min_width": "40em", + } + ) + +else: + html_theme = "alabaster" + + if tags.has("singlehtml"): + html_theme_options = { + "body_max_width": "58em", + "body_min_width": "40em", + "sidebar_width": "16em", + } + + else: + html_theme_options = { + "body_max_width": "60em", + "body_min_width": "40em", + "nosidebar": True, + "show_relbars": True, + } |