-
-
Notifications
You must be signed in to change notification settings - Fork 26
/
Copy pathmkdocs.yml
126 lines (117 loc) · 4.23 KB
/
mkdocs.yml
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
site_name: libzim
site_description: 'A shallow Python interface on top of the C++ libzim library for seamless interaction with ZIM files.'
repo_url: https://github.com/openzim/python-libzim
repo_name: GitHub
edit_uri: edit/main/docs/
validation:
omitted_files: warn
absolute_links: warn
unrecognized_links: warn
nav:
- Home: index.md
- API Reference: api_reference/
- License: license.md
theme:
name: material
logo: assets/openzim.png
palette:
# Light mode
- scheme: default
toggle:
icon: material/brightness-7
name: Switch to dark mode
# Dark mode
- scheme: slate
toggle:
icon: material/brightness-4
name: Switch to light mode
features:
# Add buttons to edit content
- content.action.edit
# Add buttons to copy code
- content.code.copy
# Use XHR for page changes to avoid page flash during navigation.
- navigation.instant
- navigation.instant.progress
# Expand all collapsible subsections by default
- navigation.expand
# Show navigation paths as breadcrumbs
- navigation.path
# Add button to scroll to top after scrolling down.
- navigation.top
# Use tabs and section headers rather than a single side navbar.
- navigation.tabs
- navigation.sections
# Keep navigation tabs visible even when scrolling down.
- navigation.tabs.sticky
# Enable search suggestion and highlighting
- search.highlight
- search.suggest
markdown_extensions:
- pymdownx.snippets:
base_path: .
check_paths: true
# Enable syntax highlighting of code blocks
- pymdownx.superfences
plugins:
- search
# Replace externally hosted assets for compliance with various privacy regulations.
- privacy
# Nicely include markdown, e.g. to rewrite relative links
- include-markdown
# Generate API docs and navigation for them
- gen-files:
scripts:
- docs/scripts/generate_api_nav.py
# Import additional nav from NAVIGATION.md files, like the one produced
# by gen-files.
- literate-nav:
nav_file: NAVIGATION.md
# Generate items
- mkdocstrings:
handlers:
python:
# Set up cross-references to Python types
import:
- url: https://docs.python.org/3/objects.inv
domains: [std, py]
- https://typing-extensions.readthedocs.io/en/latest/objects.inv
options:
heading_level: 2
load_external_modules: false
show_submodules: false
# force dynamic analysis from compiled module when loading data
allow_inspection: true
force_inspection: true
filters:
# attr and methods starting with _
- '!^_'
# *_module_* for internal libzim-only vars that build the submodules
- '!_module_'
# *_public_objects for internal libzim-only vars that expose submodules
- '!_public_objects$'
# List all inherited members without further filtering
inherited_members: true
# Put the signature in a code-block below the heading and modernize annotations
separate_signature: true
show_signature_annotations: true
modernize_annotations: true
# Show symbol type in headings (e.g mod, class, meth, func, attr)
show_symbol_type_heading: true
# Show the symbol type in table of contents
show_symbol_type_toc: true
# Render cross-references for type annotations in signatures.
signature_crossrefs: true
# Show summaries of modules, functions, classes, methods and attributes
summary: true
# Don't merge __init__ method into the class signature as this
# causes the graph generated by griffe to be cyclic.
merge_init_into_class: false
# Typically this should be off, but python-libzim has some
# items that won't be picked up because they lack docstrings.
show_if_no_docstring: true
# docstring style and options
docstring_style: google
docstring_section_style: list
docstring_options:
returns_type_in_property_summary: true