i18n: adopt the client's word for tell, and translate the appearance tab

Two decisions, both yours.

Where Square Enix ships a client in a language, that client's word wins.
German says Flüstern, French message privé, Japanese テル, Korean
귓속말, Simplified Chinese 密语. Everywhere else there is no official
client and the loanword is what players actually say, so it stays.

That meant rewriting the whole corpus in those languages rather than
just the new keys, which is the reason the split existed in the first
place: forty German values and thirty-seven French ones carried the old
word. /tell is untouched, because that is a command and not a noun.

The mechanical pass left French with three agreement errors -- "des
message privé", "ce onglet", "messages de message privé" -- which is
what happens when you substring-replace a language with gender and
number. Fixed by hand.

Traditional Chinese keeps 悄悄話, which the file already used nineteen
times; it has no official client of its own.

The appearance tab is translated as well. Thirty keys: the colour
editor's groups and buttons, the theme categories, fork and import and
export, the font labels and the preview's input placeholder. Theme token
names stay English -- WindowBg and TextPrimary are JSON keys, not
prose -- and so do the brand strings.

465 keys, 25 files, no gaps, no orphans, no placeholder drift.

Still English and not in this commit: the database viewer behind
/hellionView, which is a documented user command rather than a
developer tool, and the symbol picker. Both are their own block.
This commit is contained in:
2026-08-19 05:11:05 +02:00
parent 5991f49c59
commit 3a1b863def
31 changed files with 2419 additions and 135 deletions
@@ -1357,4 +1357,94 @@
<data name="Settings_About_CustomRepo" xml:space="preserve">
<value>Mukautetun tietovaraston manifesti</value>
</data>
<data name="Settings_Theme_ActiveTheme" xml:space="preserve">
<value>Aktiivinen teema: {0}</value>
</data>
<data name="Settings_Theme_ForkAndEdit" xml:space="preserve">
<value>Haaroita ja muokkaa</value>
</data>
<data name="Settings_Theme_ForkTooltip" xml:space="preserve">
<value>Sisäänrakennettuja teemoja ei voi muokata suoraan. Haaroitus luo mukautetun kopion, jota voit muokata ja tallentaa.</value>
</data>
<data name="Settings_Theme_EditTheme" xml:space="preserve">
<value>Muokkaa teemaa</value>
</data>
<data name="Settings_Theme_Editing" xml:space="preserve">
<value>Muokataan: {0}</value>
</data>
<data name="Settings_Theme_Group_Surfaces" xml:space="preserve">
<value>Pinnat</value>
</data>
<data name="Settings_Theme_Group_Borders" xml:space="preserve">
<value>Reunat</value>
</data>
<data name="Settings_Theme_Group_Text" xml:space="preserve">
<value>Teksti</value>
</data>
<data name="Settings_Theme_Group_Identity" xml:space="preserve">
<value>Identiteetti</value>
</data>
<data name="Settings_Theme_Group_Status" xml:space="preserve">
<value>Tila</value>
</data>
<data name="Settings_Theme_Save" xml:space="preserve">
<value>Tallenna</value>
</data>
<data name="Settings_Theme_Cancel" xml:space="preserve">
<value>Peruuta</value>
</data>
<data name="Settings_Theme_ResetToSource" xml:space="preserve">
<value>Palauta lähteeseen</value>
</data>
<data name="Settings_Theme_ResetUnavailable" xml:space="preserve">
<value>Palautus ei ole käytettävissä haaraa muokattaessa. Tallenna tai peruuta ensin.</value>
</data>
<data name="Settings_Theme_LockedTooltip" xml:space="preserve">
<value>Tallenna tai hylkää muutoksesi ensin</value>
</data>
<data name="Settings_Theme_Custom" xml:space="preserve">
<value>Mukautetut ({0})</value>
</data>
<data name="Settings_Theme_ForkActive" xml:space="preserve">
<value>Haaroita aktiivinen teema</value>
</data>
<data name="Settings_Theme_ImportFile" xml:space="preserve">
<value>Tuo teematiedosto…</value>
</data>
<data name="Settings_Theme_ExportActive" xml:space="preserve">
<value>Vie aktiivinen teema…</value>
</data>
<data name="Settings_Theme_ImportPathHint" xml:space="preserve">
<value>JSON-tiedoston polku (tai vedä kansioon)</value>
</data>
<data name="Settings_Theme_ExportDialogTitle" xml:space="preserve">
<value>Vie teema</value>
</data>
<data name="Settings_Theme_Category_Cool" xml:space="preserve">
<value>Viileät</value>
</data>
<data name="Settings_Theme_Category_Natural" xml:space="preserve">
<value>Luonnolliset</value>
</data>
<data name="Settings_Theme_Category_Classic" xml:space="preserve">
<value>Klassiset</value>
</data>
<data name="Settings_Theme_Category_Retro" xml:space="preserve">
<value>Retro</value>
</data>
<data name="Settings_Fonts_Bundled" xml:space="preserve">
<value>Hellion Inter (mukana)</value>
</data>
<data name="Settings_Fonts_GameFont" xml:space="preserve">
<value>Pelin fontti</value>
</data>
<data name="Settings_Fonts_Global" xml:space="preserve">
<value>Yleinen: {0}</value>
</data>
<data name="Settings_Fonts_Active" xml:space="preserve">
<value>Aktiivinen: {0}</value>
</data>
<data name="Settings_Preview_TypeAMessage" xml:space="preserve">
<value>Kirjoita viesti...</value>
</data>
</root>