A message a catalog lacks, or translates as an empty string, shows in English and fails nothing: - build.rs no longer requires every formats catalog to carry the same messages, and tr_format! gets a last arm that formats the English source, so a message no catalog has builds. - Coverage tests (every language translates X) and tests of one language's exact wording are gone; the language-switching, layout, date, placeholder and user-value tests read the catalog's own value instead of a hard-coded translation. - i18n::tests::translation_gaps_report lists, per language, the plain and format messages it lacks and its untranslated What's New lines. It always passes; cargo xtask ci runs it from the test step's binary after the tests. - catalogs_load checks that every catalog file is a JSON object of strings with each key once; it.json named "Dimensions" twice.
2.3 KiB
LightCraft auf Deutsch
Wähle Bearbeiten → Sprache → Deutsch oder Einstellungen → Allgemein → Sprache.
Die Auswahl gilt sofort und wird für den nächsten Start gespeichert (language: "de" in ui.json).
Die deutschen Kataloge decken alle Schlüssel der bisherigen Übersetzungen sowie sämtliche Befehls- und Reglerbezeichnungen ab: Menüs, Tastenkürzel, Fotoverwaltung, Bearbeitung, Zuschnitt, Masken, Personen, Import/Export, Einstellungen, eingebaute Vorgaben und Profile, Verlauf, Versionen, Datumsüberschriften und Statusmeldungen. Auch der Regel-Editor für Smart-Alben, Platzhalterhilfen und der Dialog bei ungespeicherten Änderungen sind angebunden. Die eingebetteten Versionshinweise sind ebenfalls übersetzt. Technische Fehler aus tieferen Schichten bleiben wie bei den bestehenden Sprachen auf Englisch.
Dateinamen, Befehls-IDs, Vorlagenplatzhalter und selbst benannte Alben, Vorgaben oder Metadaten werden nicht übersetzt. Die vorhandenen Inter-Schriften enthalten die deutschen Zeichen; für Deutsch ist kein zusätzlicher Font-Download nötig. Beschreibungen für SAM 3 werden unverändert an das Modell übergeben; die Beispiele verwenden dessen englische Begriffe.
Wartung und Prüfung
Feste Texte: crates/ui-egui/locales/de.json. Meldungen mit Werten:
crates/ui-egui/locales/de-formats.json. Die englischen Schlüssel bleiben unverändert;
Platzhalter werden beim Build durch Rust geprüft. Englische Pluralendungen werden dort,
wo sie nicht passen, mit {:.0} ausgeblendet; mengenabhängige Meldungen verwenden neutrale
Formulierungen. Das Datum erscheint beispielsweise als Sonntag, 20.09.2026.
cargo test -p lightcraft-ui-egui i18n::tests
LIGHTCRAFT_LANGUAGE=de lightcraft-cli snapshot --demo -o deutsch.png --size 1600x1000
Die Tests prüfen Platzhalter, Sprachwechsel per Menü und Steuerkanal, Speicherung,
Datumsformate, unveränderte Benutzernamen und gerenderte Texte sowie Umlaute und ß. Fehlende
Übersetzungen erscheinen auf Englisch; i18n::tests::translation_gaps_report listet sie auf. Ein weiterer Render-Test prüft die Schaltflächenbreiten; der Importtest prüft
auch den Sprachwechsel nach der Hintergrundprüfung der Quellen. Akzeptierte Sprachangaben umfassen de, de-DE, de_AT.UTF-8 und de-CH;
gespeichert wird stets de. Weitere Hinweise stehen in localization.md.