jekyll-theme-zer0 1.30.0 → 1.31.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (60) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.md +748 -571
  3. data/README.md +17 -3
  4. data/_data/backlog.yml +33 -10
  5. data/_data/consumers.yml +99 -0
  6. data/_data/features.yml +1 -1
  7. data/_data/i18n/fr.yml +30 -14
  8. data/_data/i18n/manifest.yml +63 -45
  9. data/_data/theme-manifest.yml +41 -39
  10. data/_data/ui-text.yml +1 -0
  11. data/_includes/README.md +1 -1
  12. data/_includes/analytics/posthog.html +28 -9
  13. data/_includes/components/README.md +1 -1
  14. data/_includes/components/background-image.html +7 -1
  15. data/_includes/components/cookie-consent.html +30 -30
  16. data/_includes/components/halfmoon.html +5 -3
  17. data/_includes/components/mermaid.html +14 -7
  18. data/_includes/components/preview-image.html +22 -3
  19. data/_includes/components/theme-preview-gallery.html +1 -1
  20. data/_includes/content/intro.html +21 -3
  21. data/_includes/content/seo.html +8 -0
  22. data/_includes/content/sitemap.html +220 -263
  23. data/_includes/core/branding.html +8 -15
  24. data/_includes/core/footer.html +3 -1
  25. data/_includes/core/head.html +33 -22
  26. data/_includes/core/header.html +14 -2
  27. data/_includes/core/tokens-inline.html +16 -1
  28. data/_includes/navigation/breadcrumbs.html +21 -15
  29. data/_includes/navigation/navbar.html +9 -6
  30. data/_includes/setup/wizard.html +5 -1
  31. data/_layouts/article.html +15 -3
  32. data/_layouts/home.html +13 -1
  33. data/_layouts/note.html +2 -1
  34. data/_layouts/notebook.html +2 -1
  35. data/_layouts/root.html +22 -0
  36. data/_sass/components/_cookie-banner.scss +48 -0
  37. data/_sass/components/_setup-wizard.scss +19 -1
  38. data/_sass/components/_ui-enhancements.scss +11 -0
  39. data/_sass/core/_navbar.scss +163 -70
  40. data/_sass/core/_sidebar-extras.scss +2 -14
  41. data/_sass/core/code-copy.scss +27 -8
  42. data/_sass/theme/_skins.scss +6 -2
  43. data/assets/css/extension-points-demo.css +27 -0
  44. data/assets/data/wiki-index.json +19 -0
  45. data/assets/js/auto-hide-nav.js +53 -13
  46. data/assets/js/code-copy.js +72 -1
  47. data/assets/js/extension-points-demo.js +48 -0
  48. data/assets/js/halfmoon.js +11 -1
  49. data/assets/js/mermaid-diagrams.js +128 -22
  50. data/assets/js/obsidian-local-graph.js +27 -5
  51. data/assets/js/search-modal.js +35 -3
  52. data/assets/js/setup-wizard.js +7 -2
  53. data/scripts/bin/validate +1 -0
  54. data/scripts/ci/test_visual_evidence_autogen.py +64 -2
  55. data/scripts/ci/visual_evidence_autogen.py +14 -4
  56. data/scripts/features/install-preview-generator +1 -1
  57. data/scripts/lib/README.md +12 -0
  58. data/scripts/lib/preview_generator.py +2 -2
  59. data/scripts/validate-features.rb +5 -8
  60. metadata +4 -2
data/README.md CHANGED
@@ -43,11 +43,16 @@ preview: /assets/images/wizard-on-journey.png
43
43
  hero_image: /assets/images/wizard-on-journey.png
44
44
  excerpt: "AI-native Jekyll theme for GitHub Pages — multi-agent ready (Copilot, Codex, Cursor, Claude), AI-powered install & preview images, AIEO-optimized, with Docker-first development and 43 documented features"
45
45
  ---
46
-
47
46
  [![pages-build-deployment](https://github.com/bamr87/zer0-mistakes/actions/workflows/pages/pages-build-deployment/badge.svg)](https://github.com/bamr87/zer0-mistakes/actions/workflows/pages/pages-build-deployment) [![Gem Version](https://badge.fury.io/rb/jekyll-theme-zer0.svg)](https://badge.fury.io/rb/jekyll-theme-zer0) [![CI](https://github.com/bamr87/zer0-mistakes/actions/workflows/ci.yml/badge.svg)](https://github.com/bamr87/zer0-mistakes/actions/workflows/ci.yml) [![License: MIT](https://img.shields.io/badge/License-MIT-yellow.svg)](https://opensource.org/licenses/MIT) [![Docker](https://img.shields.io/badge/docker-ready-blue.svg)](https://github.com/bamr87/zer0-mistakes/blob/main/docker-compose.yml) [![Bootstrap](https://img.shields.io/badge/Bootstrap-5.3.3-purple.svg)](https://getbootstrap.com/) [![AI-Native](https://img.shields.io/badge/AI--Native-Copilot%20%7C%20Codex%20%7C%20Cursor%20%7C%20Claude-8A2BE2)](AGENTS.md) [![AIEO](https://img.shields.io/badge/AIEO-Optimized-ff69b4)](#-aieo-optimized--built-for-ai-citation)
48
47
 
49
48
  # zer0-mistakes
50
49
 
50
+ > AI-native, Docker-first Jekyll theme for GitHub Pages sites, built on Bootstrap 5 and published as a Ruby gem.
51
+
52
+ [![CI](https://github.com/bamr87/zer0-mistakes/actions/workflows/ci.yml/badge.svg)](https://github.com/bamr87/zer0-mistakes/actions/workflows/ci.yml) [![License](https://img.shields.io/github/license/bamr87/zer0-mistakes)](LICENSE) [![Live site](https://img.shields.io/badge/live-zer0--mistakes.com-2ea44f)](https://zer0-mistakes.com/)
53
+
54
+ ## Overview
55
+
51
56
  ### A modern website theme that just works — for blogs, docs, portfolios, and more
52
57
 
53
58
  **Free • Open source • Hosted on GitHub Pages for $0/month • Works on Mac, Windows, and Linux**
@@ -58,8 +63,6 @@ If you already know Jekyll, Ruby, Docker, or AI coding agents: the same theme gr
58
63
 
59
64
  [Get Started in 5 Minutes](#-get-started-in-5-minutes) • [What You Get](#-what-you-get) • [Who It's For](#-who-its-for) • [Advanced & AI Features](#-advanced-features-for-power-users) • [Live Demo](https://zer0-mistakes.com/)
60
65
 
61
- ---
62
-
63
66
  ## ✨ What You Get
64
67
 
65
68
  A complete, professional website out of the box — no design or coding required to start:
@@ -963,4 +966,15 @@ And these AI partners that make zer0-mistakes truly AI-native:
963
966
 
964
967
  **v1.19.1** • [Changelog](CHANGELOG.md) • [License](LICENSE) • [Contributing](CONTRIBUTING.md) • [AI Agent Guide](AGENTS.md)
965
968
 
969
+ ## Changelog
970
+
971
+ Notable changes are recorded in [CHANGELOG.md](CHANGELOG.md). Tagged versions are on the [releases page](https://github.com/bamr87/zer0-mistakes/releases).
972
+
973
+ ## License
974
+
975
+ Released under the [MIT License](LICENSE).
976
+
977
+ ---
966
978
 
979
+ <!-- bamr87-portfolio-footer -->
980
+ Part of the [bamr87 portfolio](https://github.com/bamr87) — browse every project on [Amr's GitHub profile](https://github.com/bamr87).
data/_data/backlog.yml CHANGED
@@ -866,7 +866,7 @@ tasks:
866
866
 
867
867
  - id: T-033
868
868
  title: "Retire legacy test_installation.sh after equivalence audit against the installer harness"
869
- status: open
869
+ status: done
870
870
  priority: P2
871
871
  area: tests
872
872
  risk: standard
@@ -880,6 +880,10 @@ tasks:
880
880
  uncovered into test_install_*.sh, then delete the legacy suite and remove the
881
881
  `installation` routing from test_runner.sh, ci.yml, and nightly-extended.yml.
882
882
  Until then it runs nightly and on install-path PRs only (2026-07 CI tiering).
883
+ Done 2026-10-02: the suite is deleted, its scenarios live in
884
+ test_install_legacy_flags.sh (marked "Ported from retired
885
+ test_installation.sh"), test_runner.sh routes no `installation` suite, and
886
+ the CI/nightly suite lists no longer name it.
883
887
  acceptance:
884
888
  - "Every test_installation.sh scenario is mapped to a harness equivalent or ported."
885
889
  - "test_installation.sh deleted; test_runner.sh no longer routes an `installation` suite."
@@ -887,7 +891,7 @@ tasks:
887
891
  - "Nightly extended run green after removal."
888
892
  links: { issue: null, pr: null, roadmap: null }
889
893
  created: 2026-07-06
890
- updated: 2026-07-06
894
+ updated: 2026-10-02
891
895
  - id: T-034
892
896
  title: "Remove the dead preview_image_generator.rb Jekyll plugin and its test surface"
893
897
  status: done
@@ -999,7 +1003,7 @@ tasks:
999
1003
 
1000
1004
  - id: T-037
1001
1005
  title: "Navbar width recovery: two clean label tiers, merged chevron, centered grid, no subtitle"
1002
- status: open
1006
+ status: done
1003
1007
  priority: P2
1004
1008
  area: feat
1005
1009
  risk: standard
@@ -1018,13 +1022,32 @@ tasks:
1018
1022
  the navbar subtitle (_includes/core/branding.html — home hero only).
1019
1023
  Clarify the three toggles: labeled "Menu" text button below lg, gear moves
1020
1024
  into the unified drawer on mobile so only two toggles coexist.
1025
+ Done 2026-09-23: collapsed the three container-query tiers to two (icon+label
1026
+ >=51rem, icon-only below — the old 41-50.99rem bare-label tier and its
1027
+ text-overflow: ellipsis safety net are gone), merged the dropdown chevron
1028
+ into the parent link's hover row, gave the desktop grid's side tracks a
1029
+ shared floor (--zer0-navbar-side-min), moved site.subtitle to the home hero,
1030
+ and labeled the mobile menu toggle "Menu" (with aria-label mirroring the
1031
+ visible text for WCAG 2.5.3). `grid-template-columns: 1fr auto 1fr` as
1032
+ literally proposed breaks the container queries (track 2 must stay a
1033
+ definite 1fr for `.bd-navbar-nav-viewport`'s `width: 100%` to resolve) —
1034
+ used a shared side-track minimum instead; documented in-source. A prior
1035
+ attempt (#454) reached the same design but was closed as stale — its author
1036
+ had no Docker/Jekyll to run the Playwright suite or regenerate evidence.
1037
+ This finishes it against a real local build (bundle + jekyll build +
1038
+ Playwright), and additionally caught and fixed a collision the earlier
1039
+ attempt's tooling couldn't check: the new visible "Menu" text reused the
1040
+ already-defined `ui.menu_label` ("Toggle menu"), which would have shipped
1041
+ wrong text — added a dedicated `ui.nav_menu_toggle_label` key instead.
1042
+ 49/49 Playwright checks pass (37 existing navbar.spec.js + 12 new
1043
+ navbar-tiers.spec.js).
1021
1044
  acceptance:
1022
1045
  - "At 1024px and 1280px with 5 nav items every label is fully visible or the whole row is icon-only — no ellipses anywhere."
1023
1046
  - "Dropdown chevron shares the parent row's hover zone; no dead zone between link and chevron."
1024
1047
  - "Navbar carries logo + title only; subtitle appears on the home hero."
1025
1048
  - "regression test added"
1026
1049
  - "before/after evidence committed"
1027
- links: { issue: null, pr: null, roadmap: null }
1050
+ links: { issue: 405, pr: 495, roadmap: null }
1028
1051
  created: 2026-08-18
1029
1052
  updated: 2026-08-18
1030
1053
 
@@ -1292,7 +1315,7 @@ tasks:
1292
1315
 
1293
1316
  - id: T-046
1294
1317
  title: "Retire the now-dead gotoBeforeScrollSpy fixture and cover the mobile offcanvas TOC spy"
1295
- status: open
1318
+ status: done
1296
1319
  priority: P3
1297
1320
  area: tests
1298
1321
  risk: low
@@ -1354,13 +1377,13 @@ tasks:
1354
1377
 
1355
1378
  - id: T-048
1356
1379
  title: "Site-level theme_color re-pins --zer0-color-primary over the active skin"
1357
- status: open
1380
+ status: done
1358
1381
  priority: P2
1359
1382
  area: feat
1360
1383
  risk: low
1361
1384
  effort: S
1362
1385
  source: issue
1363
- summary: "Discovered while making Mermaid diagrams follow the skin (ZER0-013 rework): the skin mixin (_sass/theme/_skins.scss) writes both --bs-primary and --zer0-color-primary under [data-theme-skin], but _includes/core/tokens-inline.html emits `:root { --zer0-color-primary: <theme_color.main> }` AFTER main.css, and :root ties [data-theme-skin] on specificity, so the later inline rule wins. Result on this site: buttons/links follow the skin (#6fa8dc on air, #8338ec on neon) while every custom component that reads --zer0-color-primary (callouts, code-block accent border, focus rings) stays on the config #007bff regardless of skin. Mermaid works around it by reading --bs-primary first; the token layer should agree with itself instead."
1386
+ summary: "Done 2026-10-02 (#459): the skin wins. tokens-inline.html emits theme_color main/blue/purple only when no palette skin is active, the precedence is documented in docs/ui/design-tokens.md, and appearance.spec.js asserts it. Discovered while making Mermaid diagrams follow the skin (ZER0-013 rework): the skin mixin (_sass/theme/_skins.scss) writes both --bs-primary and --zer0-color-primary under [data-theme-skin], but _includes/core/tokens-inline.html emits `:root { --zer0-color-primary: <theme_color.main> }` AFTER main.css, and :root ties [data-theme-skin] on specificity, so the later inline rule wins. Result on this site: buttons/links follow the skin (#6fa8dc on air, #8338ec on neon) while every custom component that reads --zer0-color-primary (callouts, code-block accent border, focus rings) stays on the config #007bff regardless of skin. Mermaid works around it by reading --bs-primary first; the token layer should agree with itself instead."
1364
1387
  acceptance:
1365
1388
  - "With theme_color.main set, switching skin changes --zer0-color-primary as well as --bs-primary (probe getComputedStyle on <html>)."
1366
1389
  - "Decide and document the precedence: skin over site theme_color (recommended) or the reverse — one rule, applied to every --zer0-color-* the mixin sets."
@@ -1368,11 +1391,11 @@ tasks:
1368
1391
  - "before/after evidence committed"
1369
1392
  links: { issue: null, pr: null, roadmap: null }
1370
1393
  created: 2026-09-05
1371
- updated: 2026-09-05
1394
+ updated: 2026-10-02
1372
1395
 
1373
1396
  - id: T-049
1374
1397
  title: "test_core.sh: Liquid nested-tag check and gem-content check can never fail"
1375
- status: open
1398
+ status: done
1376
1399
  priority: P3
1377
1400
  area: tests
1378
1401
  risk: low
@@ -1389,7 +1412,7 @@ tasks:
1389
1412
 
1390
1413
  - id: T-050
1391
1414
  title: "Visual Snapshots tier: LiveReload reloads the page mid-test because npm ci lands after Jekyll starts watching"
1392
- status: open
1415
+ status: done
1393
1416
  priority: P2
1394
1417
  area: tests
1395
1418
  risk: low
data/_data/consumers.yml CHANGED
@@ -47,6 +47,25 @@
47
47
  # gem_unconstrained `gem 'jekyll-theme-zer0'` with no version — resolves
48
48
  # whatever RubyGems has at `bundle update` time; tracked
49
49
  # only (like resolved_lockfile), never reports drift
50
+ #
51
+ # ------------------------------------------------------------------------------
52
+ # Stack fields (optional; informational — scripts/bin/propagate ignores them)
53
+ # ------------------------------------------------------------------------------
54
+ # How far each consumer is aligned with the zer0 stack (one theme, one image
55
+ # engine, one CMS — templates/consumer/README.md § The zer0 stack). A dated
56
+ # snapshot of each consumer's default branch, not a live reading: refresh it
57
+ # from `zer0-cms doctor <checkout>` (bamr87/zer0-CMS), never from memory.
58
+ #
59
+ # stack:
60
+ # checked date the default branch was read
61
+ # image_gem Gemfile requires zer0-image-generator
62
+ # preview_images _config.yml has a preview_images: block
63
+ # vendored_generator copies of the image engine the gem replaces
64
+ # (_plugins/preview_*.rb forks, scripts/lib/
65
+ # preview_generator.py, scripts/generate-preview-images.sh);
66
+ # a deliberate local generator is NOT listed
67
+ # zer0_json a zer0.json (zer0-CMS project file) is committed
68
+ # doctor .github/workflows/zer0-doctor.yml caller is committed
50
69
  # ==============================================================================
51
70
 
52
71
  version: 1
@@ -77,6 +96,16 @@ consumers:
77
96
  hook, enabled by `user_overrides: true`, not a shadow — and no fix
78
97
  numbered #338 could be substantiated in that repo. Keep this field
79
98
  derived from audit-consumer output, not hand-maintained estimates.
99
+ stack:
100
+ checked: "2026-09-14"
101
+ image_gem: true
102
+ preview_images: true
103
+ vendored_generator:
104
+ - _plugins/preview_image_generator.rb
105
+ - _plugins/preview_generator.rb
106
+ - scripts/lib/preview_generator.py
107
+ zer0_json: false
108
+ doctor: false
80
109
  pins:
81
110
  - file: _config.yml
82
111
  kind: remote_theme
@@ -90,6 +119,14 @@ consumers:
90
119
  risk: >-
91
120
  Unpinned, same exposure as it-journey. Small override surface (2 includes).
92
121
  Recommend pinning and joining the fan-out.
122
+ stack:
123
+ checked: "2026-09-14"
124
+ image_gem: true
125
+ preview_images: true
126
+ vendored_generator:
127
+ - scripts/generate-preview-images.sh
128
+ zer0_json: false
129
+ doctor: false
93
130
  pins:
94
131
  - file: _config.yml
95
132
  kind: remote_theme
@@ -106,6 +143,15 @@ consumers:
106
143
  Gemfile.azure + _config.azure.yml, and local dev mounts a path gem. A bump
107
144
  must move the remote_theme tag and the gem constraint together or the two
108
145
  production stacks render different theme versions.
146
+ stack:
147
+ checked: "2026-09-14"
148
+ image_gem: false
149
+ preview_images: true
150
+ vendored_generator:
151
+ - _plugins/preview_image_generator.rb
152
+ - scripts/generate-preview-images.sh
153
+ zer0_json: true
154
+ doctor: false
109
155
  pins:
110
156
  - file: _config.yml
111
157
  kind: remote_theme
@@ -139,6 +185,15 @@ consumers:
139
185
  render different theme versions with nothing here to notice. Recommend
140
186
  pinning remote_theme and constraining Gemfile.azure together and joining
141
187
  the fan-out.
188
+ stack:
189
+ checked: "2026-09-14"
190
+ image_gem: false
191
+ preview_images: true
192
+ vendored_generator:
193
+ - _plugins/preview_image_generator.rb
194
+ - scripts/generate-preview-images.sh
195
+ zer0_json: true
196
+ doctor: false
142
197
  pins:
143
198
  - file: _config.yml
144
199
  kind: remote_theme
@@ -165,6 +220,14 @@ consumers:
165
220
  so one bump here re-rolls the whole org (12 sites). The hub's own
166
221
  _config.yml and hub.yml must move together — they are read by different
167
222
  code paths and drift silently otherwise.
223
+ stack:
224
+ checked: "2026-09-14"
225
+ image_gem: true
226
+ preview_images: true
227
+ vendored_generator:
228
+ - scripts/generate-preview-images.sh
229
+ zer0_json: false
230
+ doctor: false
168
231
  pins:
169
232
  - file: _config.yml
170
233
  kind: remote_theme
@@ -189,6 +252,14 @@ consumers:
189
252
  Unpinned, and an org hub: a theme break here reaches every auto-discovered
190
253
  member site at once. Recommend pinning both files together and joining
191
254
  the fan-out (dispatch: true) like year-of-ai.
255
+ stack:
256
+ checked: "2026-09-14"
257
+ image_gem: true
258
+ preview_images: true
259
+ vendored_generator:
260
+ - scripts/generate-preview-images.sh
261
+ zer0_json: false
262
+ doctor: false
192
263
  pins:
193
264
  - file: _config.yml
194
265
  kind: remote_theme
@@ -220,6 +291,13 @@ consumers:
220
291
  Gemfile.lock resolved 1.25.0 while the Gemfile constraint (~> 1.25)
221
292
  already permitted 1.28.0 — stale purely because nothing was nudging it.
222
293
  Keeps two deliberate include forks, declared in its .theme-overrides.yml.
294
+ stack:
295
+ checked: "2026-09-14"
296
+ image_gem: true
297
+ preview_images: true
298
+ vendored_generator: []
299
+ zer0_json: false
300
+ doctor: false
223
301
  pins:
224
302
  - file: Gemfile
225
303
  kind: gem_constraint
@@ -246,6 +324,13 @@ consumers:
246
324
  Unpinned, and with no local preview path a contributor cannot see a theme
247
325
  break before pushing. Keeps three deliberate overrides, declared in its
248
326
  .theme-overrides.yml.
327
+ stack:
328
+ checked: "2026-09-14"
329
+ image_gem: false
330
+ preview_images: false
331
+ vendored_generator: []
332
+ zer0_json: false
333
+ doctor: false
249
334
  pins:
250
335
  - file: _config.yml
251
336
  kind: remote_theme
@@ -264,6 +349,13 @@ consumers:
264
349
  risk: >-
265
350
  Unpinned, and its only build runs on push to main (jekyll-gh-pages.yml),
266
351
  so a break ships before anyone sees it.
352
+ stack:
353
+ checked: "2026-09-14"
354
+ image_gem: false
355
+ preview_images: false
356
+ vendored_generator: []
357
+ zer0_json: false
358
+ doctor: false
267
359
  pins:
268
360
  - file: _config.yml
269
361
  kind: remote_theme
@@ -289,6 +381,13 @@ consumers:
289
381
  "unreachable" rather than reading its pin — drift reporting needs a token
290
382
  here even though it is read-only. CI already supplies one; a bare local
291
383
  run will not.
384
+ stack:
385
+ checked: "2026-09-14"
386
+ image_gem: false
387
+ preview_images: false
388
+ vendored_generator: []
389
+ zer0_json: false
390
+ doctor: false
292
391
  pins:
293
392
  - file: _config.yml
294
393
  kind: remote_theme
data/_data/features.yml CHANGED
@@ -2196,7 +2196,7 @@ features:
2196
2196
  docs: "docs/systems/multilingual-translation.md"
2197
2197
  features:
2198
2198
  - "One large full-translation job (workflow_dispatch) plus bounded incremental runs when English content changes"
2199
- - "Manifest-driven SHA change detection, pruning of deleted sources, and generated /fr<en-url> permalinks (GitHub Pages safe-mode friendly)"
2199
+ - "Manifest-driven SHA change detection, pruning of deleted sources, and generated /fr/... permalinks mirroring the English URLs (GitHub Pages safe-mode friendly)"
2200
2200
  - "Markdown-safe segment translation: code, Liquid, wiki-links and URLs masked as placeholders and validated"
2201
2201
  - "Navbar language toggle with availability states, hreflang alternates, per-page html lang, machine-translation notice"
2202
2202
 
data/_data/i18n/fr.yml CHANGED
@@ -4,18 +4,18 @@
4
4
  # scripts/translate.rb from _data/ui-text.yml (en). Regenerate via
5
5
  # the Translate workflow or: ruby scripts/translate.rb --langs fr
6
6
  # ================================================================
7
- skip_links: Liens d'accès rapide
8
- skip_primary_nav: Aller à la navigation principale
9
- skip_content: Aller au contenu
10
- skip_main_content: Aller au contenu principal
11
- skip_footer: Aller au pied de page
7
+ skip_links: Liens d'évitement
8
+ skip_primary_nav: Passer à la navigation principale
9
+ skip_content: Passer au contenu
10
+ skip_main_content: Passer au contenu principal
11
+ skip_footer: Passer au pied de page
12
12
  page: Page
13
13
  pagination_previous: Précédent
14
14
  pagination_next: Suivant
15
15
  breadcrumb_home_label: Accueil
16
16
  breadcrumb_separator: "/"
17
- menu_label: Basculer le menu
18
- search_label: Basculer la recherche
17
+ menu_label: Afficher/masquer le menu
18
+ search_label: Afficher/masquer la recherche
19
19
  toc_label: Sur cette page
20
20
  ext_link_label: Lien direct
21
21
  less_than: moins de
@@ -28,7 +28,7 @@ author_label: 'Auteur :'
28
28
  comments_label: Laisser un commentaire
29
29
  comments_title: Commentaires
30
30
  more_label: En savoir plus
31
- related_label: Vous pourriez aussi aimer
31
+ related_label: Vous aimerez peut-être aussi
32
32
  follow_label: 'Suivre :'
33
33
  feed_label: Flux
34
34
  powered_by: Propulsé par
@@ -47,8 +47,8 @@ comment_btn_submit: Envoyer le commentaire
47
47
  comment_btn_submitted: Envoyé
48
48
  comment_success_msg: Merci pour votre commentaire ! Il apparaîtra sur le site une
49
49
  fois approuvé.
50
- comment_error_msg: Désolé, une erreur s'est produite lors de l'envoi. Veuillez vous
51
- assurer que tous les champs obligatoires sont remplis et réessayez.
50
+ comment_error_msg: Désolé, une erreur s'est produite lors de l'envoi. Veuillez vérifier
51
+ que tous les champs obligatoires sont remplis et réessayer.
52
52
  loading_label: Chargement...
53
53
  search_label_text: Saisissez votre terme de recherche...
54
54
  search_placeholder_text: Saisissez votre terme de recherche...
@@ -60,9 +60,9 @@ stats_total_pages: Total des pages
60
60
  stats_categories: Catégories
61
61
  stats_tags: Étiquettes
62
62
  stats_last_updated: Dernière mise à jour
63
- stats_overview: Aperçu
63
+ stats_overview: Vue d'ensemble
64
64
  stats_content_breakdown: Répartition du contenu
65
- theme_toggle: Basculer le thème
65
+ theme_toggle: Changer de thème
66
66
  dark_mode: Mode sombre
67
67
  light_mode: Mode clair
68
68
  view_source: Voir la source
@@ -98,6 +98,22 @@ lang_machine_translated: auto
98
98
  lang_machine_translated_title: Traduction générée automatiquement
99
99
  lang_untranslated_note: Les langues marquées ne sont pas encore traduites — ces liens
100
100
  ouvrent la version originale.
101
- machine_translation_notice: Cette page a été traduite automatiquement à partir de
102
- l'original en anglais.
101
+ machine_translation_notice: Cette page a été traduite automatiquement depuis l'original
102
+ en anglais.
103
103
  machine_translation_view_source: Voir l'original
104
+ diagram_label: Diagramme
105
+ diagram_tools_label: Outils de diagramme
106
+ diagram_zoom_in: Zoom avant
107
+ diagram_zoom_out: Zoom arrière
108
+ diagram_zoom_reset: Réinitialiser le zoom
109
+ diagram_fullscreen: Afficher en plein écran
110
+ diagram_fullscreen_close: Fermer le plein écran
111
+ diagram_copy_source: Copier la source du diagramme
112
+ diagram_copied: Copié
113
+ diagram_copy_failed: Échec de la copie
114
+ diagram_download: Télécharger en SVG
115
+ diagram_error_title: Ce diagramme n'a pas pu être affiché
116
+ diagram_error_hint: Vérifiez la syntaxe dans le Mermaid Live Editor. La source est
117
+ affichée ci-dessous pour ne rien perdre.
118
+ diagram_source_label: Source du diagramme
119
+ diagram_loading: Chargement du diagramme