Modernize MkDocs configuration, move dev stuff to separate configuration
Marco Ricci

Marco Ricci commited on 2025-01-23 11:51:49
Zeige 4 geänderte Dateien mit 48 Einfügungen und 3 Löschungen.


The standard (online) and the offline configurations now use the
`draft_docs` option from MkDocs 1.6.

A new "dev setup" configuration, inheriting from the offline
configuration, additionally renders documentation intended as
development aids.  Unfortunately, this requires duplicating the
navigation structure.
... ...
@@ -119,9 +119,8 @@ nav:
119 119
     - Changelog: changelog.md
120 120
     - Upgrade notes: upgrade-notes.md
121 121
     - Python compatibility: pycompatibility.md
122
-exclude_docs: |
122
+draft_docs: |
123 123
   changelog.d
124
-not_in_nav: |
125 124
   _future.md
126 125
 
127 126
 markdown_extensions:
... ...
@@ -0,0 +1,40 @@
1
+INHERIT: mkdocs_offline.yml
2
+
3
+draft_docs: ''
4
+not_in_nav: |
5
+  changelog.d
6
+
7
+nav:
8
+  - Overview: index.md
9
+  - Tutorials & Examples:
10
+    - tutorials/index.md
11
+    - tutorials/basic-setup-passphrase.md
12
+  - How-Tos:
13
+    - how-tos/index.md
14
+    - how-tos/ssh-key.md
15
+  - Reference:
16
+    - reference/index.md
17
+    - Man pages:
18
+      - 'derivepassphrase(1)': reference/derivepassphrase.1.md
19
+      - 'derivepassphrase-vault(1)': reference/derivepassphrase-vault.1.md
20
+      - 'derivepassphrase-export(1)': reference/derivepassphrase-export.1.md
21
+      - 'derivepassphrase-export-vault(1)': reference/derivepassphrase-export-vault.1.md
22
+    - 'API docs: Module derivepassphrase':
23
+      - Subpackage cli:
24
+        - Module cli: reference/derivepassphrase.cli.md
25
+        - Virtual submodule _cli_msg: reference/derivepassphrase.cli.msg.md
26
+      - Subpackage exporter: reference/derivepassphrase.exporter.md
27
+      - Submodule sequin: reference/derivepassphrase.sequin.md
28
+      - Submodule ssh_agent: reference/derivepassphrase.ssh_agent.md
29
+      - Submodule _types: reference/derivepassphrase._types.md
30
+      - Submodule vault: reference/derivepassphrase.vault.md
31
+    - Technical prerequisites:
32
+      - 'Using derivepassphrase vault with an SSH key': reference/prerequisites-ssh-key.md
33
+  - Design & Background:
34
+    - explanation/index.md
35
+    - '"altered versions" license requirement': explanation/faq-altered-versions.md
36
+  - Changelog:
37
+    - Changelog: changelog.md
38
+    - Upgrade notes: upgrade-notes.md
39
+    - Python compatibility: pycompatibility.md
40
+    - Future ideas: _future.md
... ...
@@ -1,6 +1,9 @@
1 1
 INHERIT: mkdocs.yml
2 2
 
3
-exclude_docs: ''
3
+draft_docs: |
4
+  _future.md
5
+not_in_nav: |
6
+  changelog.d
4 7
 
5 8
 plugins:
6 9
   offline:
... ...
@@ -115,6 +115,9 @@ extra-dependencies = [
115 115
   # Our documentation uses formatted function signatures (i.e. with
116 116
   # formatted type annotations), which requires `black`.
117 117
   "black",
118
+  # We actually use functionality from MkDocs 1.6, so ensure the version is
119
+  # at least this high.
120
+  "mkdocs >= 1.6",
118 121
   # Our changelog is assembled from singular entries, orchestrated by
119 122
   # `scriv`.
120 123
   "scriv >= 1.4"
121 124