i18n: About page fully internationalized
CI / lint (push) Failing after 21s
CI / test (push) Has been skipped
CI / build (push) Has been skipped
CI / e2e (push) Has been skipped
CI / security (push) Failing after 10s

HTML:
- tagline: data-i18n-html for line break support
- stats labels: about.files instead of palette.mode_files
- built_with, last_delivery, made_with: data-i18n spans

config.js:
- Months array: 12 French months -> t('month.*')
- Jokes array: 10 French jokes -> t('about.joke_*')
- Joke display: removed hardcoded «» wrappers

Locales:
- +34 new keys (months, jokes, about labels)
- 1231 keys in each locale
This commit is contained in:
2026-06-19 11:08:11 -04:00
parent 093d04b7ca
commit 7cdb9ca5a1
4 changed files with 67 additions and 17 deletions
+3 -3
View File
@@ -375,7 +375,7 @@
id="search-dropdown-titles"
>
<div class="search-dropdown__section-header">
<span data-i18n="palette.mode_files">Fichiers</span>
<span data-i18n="about.files">Files</span>
</div>
<ul
class="search-dropdown__list"
@@ -4792,7 +4792,7 @@ curl -X POST https://votre-serveur.com/webhook \
</svg>
</div>
<h1 class="about-title" data-i18n="header.logo">ObsiGate</h1>
<p class="about-tagline">Vos notes Obsidian,<br>simplement accessibles.</p>
<p class="about-tagline" data-i18n-html="about.tagline">Vos notes Obsidian,<br>simplement accessibles.</p>
<span class="about-version">v2.0.0-dev</span>
</div>
<div class="about-body">
@@ -4833,7 +4833,7 @@ curl -X POST https://votre-serveur.com/webhook \
<span>Git&nbsp;: <strong id="about-commit">—</strong></span>
</div>
<p class="about-joke" id="about-joke"></p>
<p class="about-copy">&copy; 2026 — Fait avec ☕, 🎧 et quelques <code>git push --force</code> accidentels.</p>
<p class="about-copy">&copy; 2026 — <span data-i18n="about.made_with">Fait avec ☕, 🎧 et quelques <code>git push --force</code> accidentels.</span></p>
</div>
</div>
</div>
+12 -12
View File
@@ -1517,25 +1517,25 @@ function initAboutModal() {
// Build date (today)
var now = new Date();
var months = ['Janvier','Fevrier','Mars','Avril','Mai','Juin','Juillet','Aout','Septembre','Octobre','Novembre','Decembre'];
var months = [t('month.january'),t('month.february'),t('month.march'),t('month.april'),t('month.may'),t('month.june'),t('month.july'),t('month.august'),t('month.september'),t('month.october'),t('month.november'),t('month.december')];
var dateEl = document.getElementById('about-build-date');
if (dateEl) dateEl.textContent = months[now.getMonth()] + ' ' + now.getFullYear();
// Random joke
var jokes = [
'0 bug connu. Les autres sont timides.',
'Compile du premier coup. (Sauf le lundi matin.)',
'Ecrit par un humain. Probablement.',
'Aucun LLM n\'a ete blesse durant ce developpement.',
'Quand ca marche, on appelle ca une feature.',
'CSS: 90% du temps de dev, 10% du code.',
'Dark mode active depuis la naissance du projet.',
'Ca marche sur ma machine™',
'Techniquement, tout est un edge case.',
'Le CSS de ce panneau a pris plus de temps que le backend.'
t('about.joke_0'),
t('about.joke_1'),
t('about.joke_2'),
t('about.joke_3'),
t('about.joke_4'),
t('about.joke_5'),
t('about.joke_6'),
t('about.joke_7'),
t('about.joke_8'),
t('about.joke_9')
];
var jokeEl = document.getElementById('about-joke');
if (jokeEl) jokeEl.textContent = '« ' + jokes[Math.floor(Math.random() * jokes.length)] + ' »';
if (jokeEl) jokeEl.textContent = jokes[Math.floor(Math.random() * jokes.length)];
}
}
+26 -1
View File
@@ -1207,5 +1207,30 @@
"graph.ctrl_hover_preview": "Ctrl+hover = full preview",
"graph.published_badge": "✅ published",
"graph.click_to_open": "click to open",
"graph.ctrl_hover_preview_short": "Ctrl+hover = preview"
"graph.ctrl_hover_preview_short": "Ctrl+hover = preview",
"about.tagline": "Your Obsidian notes,<br>simply accessible.",
"about.files": "Files",
"about.made_with": "Made with ☕, 🎧 and a few accidental <code>git push --force</code>.",
"month.january": "January",
"month.february": "February",
"month.march": "March",
"month.april": "April",
"month.may": "May",
"month.june": "June",
"month.july": "July",
"month.august": "August",
"month.september": "September",
"month.october": "October",
"month.november": "November",
"month.december": "December",
"about.joke_0": "0 known bugs. The others are shy.",
"about.joke_1": "Compiles on the first try. (Except Monday mornings.)",
"about.joke_2": "Written by a human. Probably.",
"about.joke_3": "No LLMs were harmed during this development.",
"about.joke_4": "When it works, we call it a feature.",
"about.joke_5": "CSS: 90% of dev time, 10% of the code.",
"about.joke_6": "Dark mode active since the project's birth.",
"about.joke_7": "Works on my machine™",
"about.joke_8": "Technically, everything is an edge case.",
"about.joke_9": "The CSS for this panel took longer than the backend."
}
+26 -1
View File
@@ -1207,5 +1207,30 @@
"graph.ctrl_hover_preview": "Ctrl+survol = aperçu complet",
"graph.published_badge": "✅ publié",
"graph.click_to_open": "cliquer pour ouvrir",
"graph.ctrl_hover_preview_short": "Ctrl+survol = aperçu"
"graph.ctrl_hover_preview_short": "Ctrl+survol = aperçu",
"about.tagline": "Vos notes Obsidian,<br>simplement accessibles.",
"about.files": "Fichiers",
"about.made_with": "Fait avec ☕, 🎧 et quelques <code>git push --force</code> accidentels.",
"month.january": "Janvier",
"month.february": "Février",
"month.march": "Mars",
"month.april": "Avril",
"month.may": "Mai",
"month.june": "Juin",
"month.july": "Juillet",
"month.august": "Août",
"month.september": "Septembre",
"month.october": "Octobre",
"month.november": "Novembre",
"month.december": "Décembre",
"about.joke_0": "0 bug connu. Les autres sont timides.",
"about.joke_1": "Compile du premier coup. (Sauf le lundi matin.)",
"about.joke_2": "Écrit par un humain. Probablement.",
"about.joke_3": "Aucun LLM n'a été blessé durant ce développement.",
"about.joke_4": "Quand ça marche, on appelle ça une feature.",
"about.joke_5": "CSS: 90% du temps de dev, 10% du code.",
"about.joke_6": "Dark mode activé depuis la naissance du projet.",
"about.joke_7": "Ça marche sur ma machine™",
"about.joke_8": "Techniquement, tout est un edge case.",
"about.joke_9": "Le CSS de ce panneau a pris plus de temps que le backend."
}