Interface en anglais, par-dessus une source française

L'amont tient une table de clés FR/EN et marque chaque texte d'un data-i18n.
Reproduire ça ici demanderait de réécrire tous les écrans d'un coup, avec le
risque d'en casser un pour une clé oubliée — et un « settings.memory.title »
affiché en production.

Chemin additif : la source RESTE le français, et « English » applique un
dictionnaire sur le texte affiché (correspondance exacte, nœud par nœud).
Une chaîne absente du dictionnaire reste en français ; le dictionnaire
s'enrichit sans toucher au reste de l'interface.

Jamais traduits : le fil de discussion (#chat), le code, les zones de
saisie, et tout ce qui porte data-no-i18n. Un observateur couvre les
panneaux rendus en JS après le chargement. Revenir au français recharge la
page — le texte d'origine a été remplacé dans le DOM, c'est le moyen sûr de
le retrouver intact.

Couverture de départ : navigation des réglages, intitulés de sections,
libellés de lignes, boutons et interrupteurs. Sélecteur dans Apparence.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01K6CAgoLJzufeA8rZTSpSpY
This commit is contained in:
Claude committed 2026-09-22 14:01:36 +00:00
1 parent fa69dac77f
commit 382c5dbdce
4 files changed
+504

No files matched your search

+9
View File
@@ -659,6 +659,15 @@ document.documentElement.setAttribute('data-side',localStorage.getItem('loki-sid
<section class="set-pane" data-pane="appearance">
<div class="set-pane-h"><span>Apparence</span></div>
<div class="slist">
<!-- Langue de l'interface. La source est française ; « English » applique
un dictionnaire sur la coque (navigation, libellés, boutons) — ce qui
n'y figure pas reste en français plutôt que d'afficher une clé. -->
<label class="switchrow"><span>Langue</span>
<select id="ui-lang" class="sctl" onchange="setUiLang(this.value)">
<option value="fr">Français</option>
<option value="en">English</option>
</select>
</label>
<label class="switchrow rev"><span>mode sombre</span>
<span class="switch"><input type="checkbox" id="theme-dark" onchange="toggleThemeDark()"><span class="slider"></span></span>
</label>