Richtlinien für Übersetzer
In Discourse enden alle Message-Format-Zeichenketzen mit einem Schlüssel, der auf “_MF” endet. Der Crowdin-Editor bietet eine Vorschau, mit der man verschiedene Werte ausprobieren kann, was bei der Überprüfung der Übersetzungen sehr hilfreich ist.
Wichtig: Sie müssen die Pluralformen Ihrer Übersetzung anpassen, wenn Ihre Sprache Formen verwendet, die über “one” (eins) und “other” (sonstige) hinausgehen. Sie können Formen innerhalb eines { FOO, plural, ... }-Blocks hinzufügen oder entfernen, damit es für Ihre Sprache funktioniert. Die Vorschau im Crowdin-Editor zeigt einen “Syntax error” (Syntaxfehler) an, wenn es ein Problem mit Ihrer Übersetzung gibt.
Die verfügbaren Pluralformen sind:
- zero (null)
- one (eins)
- two (zwei)
- few (wenige)
- many (viele)
- other (sonstige — erforderliche allgemeine Pluralform — wird auch für Sprachen ohne Unterscheidung zwischen Singular und Plural verwendet)
Manchmal sehen Sie in einer englischen Quellzeichenkette einen leeren =0 {}-Block, was bedeutet, dass die Variable keinen Wert von 0 annehmen kann.
Richtlinien für Entwickler
Message-Format-Zeichenketzen sind derzeit nur für Client-Übersetzungen verfügbar. Sie sind nützlich, wenn Ihre Zeichenkette mehr als eine Zahl oder viele Variablen enthält, was zu einer hohen Anzahl von Permutationen führen würde.
-
Die Schlüssel von Message-Format-Zeichenketzen müssen mit “_MF” enden
-
Verwenden Sie das folgende Format für Zahlen (
#wird durch die Zahl ersetzt):{ variable_name, plural, one: {# Singular text} other: {# Plural text} } -
Verwenden Sie das folgende Format für Auswahlen:
{ variable_name, select, foo: {This is foo} bar: {This is bar} baz: {This is baz} } -
So verwenden Sie es in JavaScript:
I18n.messageFormat("key_MF", { variable1: "foo", variable2: 42, }); -
Empfehlung: Verwenden Sie nach Möglichkeit komplexe Argumente als äußerste Struktur einer Nachricht und schreiben Sie in ihren Unternachrichten ganze Sätze. Wenn Sie verschachtelte select- und plural-Argumente haben, platzieren Sie die select-Argumente (mit ihren festen Auswahlmengen) nach außen und nisten Sie die plural-Argumente (hoffentlich höchstens eines) darin ein. Siehe Formatting Messages | ICU Documentation -
Machen Sie sie lesbar – siehe vorhandene Beispiele in client.en.yml
SchlechtThere {currentTopics, plural, one {is <strong>#</strong> topic} other {are <strong>#</strong> topics}}. Visitors need more to read and reply to – we recommend at least { requiredTopics, plural, one {<strong>#</strong> topic} other {<strong>#</strong> topics}}. Only staff can see this message.
GutThere { currentTopics, plural, one {is <strong>#</strong> topic} other {are <strong>#</strong> topics} }. Visitors need more to read and reply to – we recommend at least { requiredTopics, plural, one {<strong>#</strong> topic} other {<strong>#</strong> topics} }. Only staff can see this message.
Werkzeuge und weitere Informationen
-
Online ICU Message Editor ermöglicht es Ihnen, eine Message-Format-Zeichenkette zu testen, falls es ein Problem mit dem Crowdin-Editor gibt. Bitte deaktivieren Sie die Option “Parse simple xml/html tags”, sonst sehen Sie möglicherweise eine Fehlermeldung.
Dieses Dokument wird versioniert verwaltet – schlagen Sie Änderungen auf GitHub vor.
