Use different icons for wishes, fixed bugs and completed wishes
Marco Ricci

Marco Ricci commited on 2025-06-21 15:12:47
Zeige 3 geänderte Dateien mit 57 Einfügungen und 11 Löschungen.


This uniform set of icons and colors can then be used on both the
wishlist overview page and the wishlist items themselves. The changelog
can reuse the icons too, but by icon name instead of symbolic name.
... ...
@@ -40,7 +40,7 @@
40 40
 
41 41
     <ul style="list-style-type: none;">
42 42
     <li>:material-bug: --- a related bug entry from the wishlist page
43
-    <li>:material-gift: --- a related wishlist entry from the wishlist page
43
+    <li>:material-file-document-plus-outline: --- a related wishlist entry from the wishlist page
44 44
     </ul>
45 45
 
46 46
 <aside markdown><small>
... ...
@@ -68,7 +68,7 @@ specifically marked as such.)
68 68
     requested or rejected reliably across different terminal programs, we
69 69
     will rather emit only uncolored, unstyled, lowest-common-denominator
70 70
     device-independent output.
71
-    →[:material-gift:][WISH_CONVENTIONAL_CONFIGURABLE_TEXT_STYLING]
71
+    →[:material-file-document-plus-outline:][WISH_CONVENTIONAL_CONFIGURABLE_TEXT_STYLING]
72 72
 
73 73
 ### Added  {#added-in-v0.5}
74 74
 
... ...
@@ -102,14 +102,14 @@ specifically marked as such.)
102 102
   - For [`derivepassphrase vault`][CLI_VAULT], support printing the service
103 103
     notes before the passphrase, as an alternative, instead of always
104 104
     printing them *after* the passphrase.
105
-    →[:material-gift:][WISH_PRINT_SERVICE_NOTES_ABOVE]
105
+    →[:material-file-document-plus-outline:][WISH_PRINT_SERVICE_NOTES_ABOVE]
106 106
 
107 107
   - In the `--version` option of [`derivepassphrase`][CLI] and each
108 108
     subcommand, additionally report build and environment information, such
109 109
     as supported subcommands, derivation schemes, foreign configuration
110 110
     formats and active [PEP 508 extras](https://peps.python.org/pep-0508/).
111 111
     (Each subcommand only reports the items relevant to that subcommand.)
112
-    →[:material-gift:][WISH_REPORT_BUILD_FLAGS_AND_FEATURES]
112
+    →[:material-file-document-plus-outline:][WISH_REPORT_BUILD_FLAGS_AND_FEATURES]
113 113
 
114 114
   - For developers: Rewrite the tests concerning [`derivepassphrase
115 115
     vault`][CLI_VAULT] and `--notes` usage into [hypothesis][]-based tests
... ...
@@ -201,7 +201,7 @@ specifically marked as such.)
201 201
     better built-in query functionality for the effective configuration is
202 202
     available, because users should not be rewarded for meddling around in
203 203
     data files.
204
-    →[:material-gift:][WISH_PRETTY_PRINT_JSON]
204
+    →[:material-file-document-plus-outline:][WISH_PRETTY_PRINT_JSON]
205 205
 
206 206
 ### Fixed  {#fixed-in-v0.5}
207 207
 
... ...
@@ -213,7 +213,7 @@ specifically marked as such.)
213 213
   - For [`derivepassphrase vault`][CLI_VAULT], when exporting a vault
214 214
     configuration, export a pretty-printed configuration, to ease debugging
215 215
     and introspection.
216
-    →[:material-gift:][WISH_PRETTY_PRINT_JSON]
216
+    →[:material-file-document-plus-outline:][WISH_PRETTY_PRINT_JSON]
217 217
 
218 218
   - For [`derivepassphrase vault`][CLI_VAULT], also print the service notes
219 219
     (if any) when deriving a service passphrase, just like <i>vault</i>(1)
... ...
@@ -379,7 +379,7 @@ specifically marked as such.)
379 379
   - Add SSH agent spawning support to the test suite.
380 380
     Use this support to test the agent functionality on all known major SSH
381 381
     agent implementations automatically.
382
-    →[:material-gift:][WISH_TEST_SUITE_ISOLATED_SSH_AGENT]
382
+    →[:material-file-document-plus-outline:][WISH_TEST_SUITE_ISOLATED_SSH_AGENT]
383 383
   - Add [hypothesis][]-based tests to the test suite.
384 384
   - Update README to add explanations for virtual environments and package
385 385
     extras.
... ...
@@ -481,7 +481,7 @@ specifically marked as such.)
481 481
 
482 482
     This feature requires the `cryptography` Python module, but is available
483 483
     even if `vault` is not installed.
484
-    →[:material-gift:][WISH_EXPORT_VAULT_FORMATS]
484
+    →[:material-file-document-plus-outline:][WISH_EXPORT_VAULT_FORMATS]
485 485
 
486 486
 ### Fixed  {#fixed-in-v0.2.0}
487 487
 
... ...
@@ -519,12 +519,12 @@ specifically marked as such.)
519 519
     instead of globally.
520 520
     Automatically fall back to, and migrate, the old global settings file if
521 521
     no subsystem-specific configuration was found.
522
-    →[:material-gift:][WISH_OTHER_DERIVATION_SCHEMES]
523
-    [:material-gift:][WISH_SCHEME_SPECIFIC_CLI_AND_CONFIG]
522
+    →[:material-file-document-plus-outline:][WISH_OTHER_DERIVATION_SCHEMES]
523
+    [:material-file-document-plus-outline:][WISH_SCHEME_SPECIFIC_CLI_AND_CONFIG]
524 524
 
525 525
   - Make `derivepassphrase_export` a subcommand: [`derivepassphrase
526 526
     export`][CLI_EXPORT].
527
-    →[:material-gift:][WISH_EXPORTER_SCRIPT_AS_SUBCOMMAND]
527
+    →[:material-file-document-plus-outline:][WISH_EXPORTER_SCRIPT_AS_SUBCOMMAND]
528 528
 
529 529
 ### Deprecated  {#deprecated-in-v0.2.0}
530 530
 
... ...
@@ -44,3 +44,48 @@ a.fixed {
44 44
 .md-typeset a[href^="wishlist/"] .twemoji {
45 45
     vertical-align: middle;
46 46
 }
47
+
48
+:root {
49
+    --md-admonition-icon--bug: url('data:image/svg+xml;charset=utf-8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path d="M14 12h-4v-2h4m0 6h-4v-2h4m6-6h-2.81a6 6 0 0 0-1.82-1.96L17 4.41 15.59 3l-2.17 2.17a6 6 0 0 0-2.83 0L8.41 3 7 4.41l1.62 1.63C7.88 6.55 7.26 7.22 6.81 8H4v2h2.09c-.05.33-.09.66-.09 1v1H4v2h2v1c0 .34.04.67.09 1H4v2h2.81c1.04 1.79 2.97 3 5.19 3s4.15-1.21 5.19-3H20v-2h-2.09c.05-.33.09-.66.09-1v-1h2v-2h-2v-1c0-.34-.04-.67-.09-1H20z"/></svg>');
50
+    --md-admonition-icon--bug-success: url('data:image/svg+xml;charset=utf-8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path d="M19 7h-2.81c-.45-.8-1.07-1.5-1.82-2L16 3.41 14.59 2l-2.17 2.17a6 6 0 0 0-2.83 0L7.41 2 6 3.41 7.62 5c-.75.5-1.36 1.21-1.81 2H3v2h2.09c-.06.33-.09.66-.09 1v1H3v2h2v1c0 .34.03.67.09 1H3v2h2.81A6 6 0 0 0 13 19.65V19c0-2.54 1.61-4.8 4-5.65V13h2v-2h-2v-1c0-.34-.03-.67-.09-1H19zm-6 8H9v-2h4zm0-4H9V9h4zm4.75 11.16-2.75-3L16.16 18l1.59 1.59L21.34 16l1.16 1.41z"/></svg>');
51
+    --md-admonition-icon--wish: url('data:image/svg+xml;charset=utf-8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path d="M23 18h-3v-3h-2v3h-3v2h3v3h2v-3h3M6 2a2 2 0 0 0-2 2v16c0 1.11.89 2 2 2h7.81c-.36-.62-.61-1.3-.73-2H6V4h7v5h5v4.08c.33-.05.67-.08 1-.08.34 0 .67.03 1 .08V8l-6-6M8 12v2h8v-2m-8 4v2h5v-2Z"/></svg>');
52
+    --md-admonition-icon--wish-success: url('data:image/svg+xml;charset=utf-8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path d="m23.5 17-5 5-3.5-3.5 1.5-1.5 2 2 3.5-3.5zM6 2a2 2 0 0 0-2 2v16c0 1.11.89 2 2 2h7.81c-.36-.62-.61-1.3-.73-2H6V4h7v5h5v4.08c.33-.05.67-.08 1-.08.34 0 .67.03 1 .08V8l-6-6M8 12v2h8v-2m-8 4v2h5v-2Z"/></svg>');
53
+}
54
+.md-typeset .admonition.wish,
55
+.md-typeset details.wish {
56
+    border-color: #888888;
57
+}
58
+.md-typeset .wish > .admonition-title,
59
+.md-typeset .wish > summary {
60
+    background-color: #8888881a;
61
+}
62
+.md-typeset .wish > .admonition-title::before,
63
+.md-typeset .wish > summary::before {
64
+    background-color: #888888;
65
+    -webkit-mask-image: var(--md-admonition-icon--wish);
66
+            mask-image: var(--md-admonition-icon--wish);
67
+}
68
+.md-typeset .admonition.bug-success,
69
+.md-typeset details.bug-success,
70
+.md-typeset .admonition.wish-success,
71
+.md-typeset details.wish-success {
72
+    border-color: #00c853;
73
+}
74
+.md-typeset .bug-success > .admonition-title,
75
+.md-typeset .bug-success > summary,
76
+.md-typeset .wish-success > .admonition-title,
77
+.md-typeset .wish-success > summary {
78
+    background-color: #00c8531a;
79
+}
80
+.md-typeset .bug-success > .admonition-title::before,
81
+.md-typeset .bug-success > summary::before {
82
+    background-color: #00c853;
83
+    -webkit-mask-image: var(--md-admonition-icon--bug-success);
84
+            mask-image: var(--md-admonition-icon--bug-success);
85
+}
86
+.md-typeset .wish-success > .admonition-title::before,
87
+.md-typeset .wish-success > summary::before {
88
+    background-color: #00c853;
89
+    -webkit-mask-image: var(--md-admonition-icon--wish-success);
90
+            mask-image: var(--md-admonition-icon--wish-success);
91
+}
... ...
@@ -40,6 +40,7 @@ theme:
40 40
   #      name: Switch to system preference
41 41
   icon:
42 42
     logo: material/library
43
+    repo: fontawesome/brands/git-alt
43 44
   features:
44 45
     - content.action.view
45 46
     - content.code.annotate
46 47