Zum Hauptinhalt springen

Eine Sprache hinzufügen

Zehn Übersetzungen kommen mit OpenCLI: English, 简体中文, 繁體中文, 日本語, 한국어, Español, Português (Brasil), Français, Deutsch und Русский.

Jede weitere Sprache ist eine Datei — und eine Korrektur an einer der zehn ebenso.

Über die Oberfläche​

Customize → Language → Add a language file… nimmt eine .json-Datei entgegen und behält sie. Sie erscheint sofort in der Auswahl.

Von Hand​

Dieselbe Datei, in ~/.opencli/locales, nach der Sprache benannt:

~/.opencli/locales/nl.json

Beide Wege schreiben an dieselbe Stelle, was über die Oberfläche hinzugefügt wurde, lässt sich also danach von Hand bearbeiten oder auf einen anderen Rechner kopieren.

Was darin steht​

Jeder Eintrag ist ein englischer Satz genau so, wie er in der Oberfläche erscheint — und daneben, was stattdessen gezeigt werden soll:

{
"name": "Nederlands",
"strings": {
"Dispatch": "Verzenden",
"Scheduled tasks": "Geplande taken",
"Runs ({count})": "Uitvoeringen ({count})"
}
}

name ist, was die Sprachauswahl anzeigt. Fehlt er, wird der Dateiname benutzt. Die bloße Zuordnung funktioniert auch, ohne die Hülle:

{ "Dispatch": "Verzenden" }

Mit einer mitgelieferten anfangen​

Die mitgelieferten Übersetzungen sind dieselbe Art Datei, in web/src/locales/. Kopieren Sie eine, ersetzen Sie die rechte Seite jeder Zeile — und Sie haben einen vollständigen Ausgangspunkt statt einer Liste von Sätzen, die man erst zusammensuchen muss.

Um jeden Satz zu sehen, den die Oberfläche verwendet:

python3 scripts/i18n-check.py

Platzhalter​

{name} in einem Satz wird gefüllt. Behalten Sie dieselben Platzhalter, in der Reihenfolge, die Ihre Sprache will — dieses Umstellen ist der halbe Grund, warum es sie gibt:

{ "Allowed {count} of {total}": "{count} von {total} erlaubt" }

Pluralformen​

plural() wählt zwischen zwei Formen. Für Englisch, Deutsch, Spanisch, Französisch und Portugiesisch reicht das; die dritte Form, die Russisch für 2–4 verlangt, hat es nicht. Wo eine Sprache mehr als zwei Formen braucht, schreiben Sie den Satz so, dass die Zahl den Sinn allein trägt — запусков: {count} statt eines Substantivs, das sich danach richten muss.

Chinesisch, Japanisch und Koreanisch nehmen die Singularform und lassen die Zahl die Arbeit machen; das ist bereits erledigt.

Eine mitgelieferte Übersetzung korrigieren​

Eine Datei, die nach einer bereits mitgelieferten Sprache benannt ist, wird mit ihr zusammengeführt, nicht an ihre Stelle gesetzt. Um einen Satz zu ändern, schreiben Sie einen Eintrag:

{ "Dispatch": "Verteilen" }

Alles Übrige behält den mitgelieferten Wortlaut.

Wann es wirkt​

Eine über die Oberfläche hinzugefügte Datei gilt sofort. Eine von Hand ins Verzeichnis gelegte wird gelesen, wenn sich ein Fenster verbindet — öffnen Sie das Fenster also neu. Eine Datei, die sich nicht parsen lässt, wird übersprungen, mit einer Zeile im Gateway-Protokoll — die anderen Sprachen sind nicht betroffen.

Nicht übersetzte Sätze​

Ein Satz ohne Eintrag wird auf Englisch gezeigt, eine teilweise Übersetzung liest sich also als Mischung und nicht als Bildschirm voller Lücken. Man muss sie nicht fertigstellen, damit sie nützt.

Arabisch, Hebräisch und Persisch sind nicht unter den mitgelieferten Übersetzungen, und eines davon als Datei hinzuzufügen ergibt eine Seite, die von links nach rechts gesetzt ist. Die Oberfläche behandelt dir="rtl" noch nicht; das ist eine Änderung am Stylesheet, nicht an einer Übersetzungsdatei.