Unterstützung für das Message Format bei der Lokalisierung

Richtlinien für Übersetzer

In Discourse enden alle Message Format-Strings mit dem Schlüssel „\_MF“. Der Crowdin Editor verfügt über eine Vorschau, mit der Sie verschiedene Werte testen können, was sehr hilfreich ist, um Ihre Übersetzungen zu überprüfen.

Wichtig: Sie müssen die Pluralformen Ihrer Übersetzung anpassen, wenn Ihre Sprache andere Formen als „one“ und „other“ verwendet. Sie können Formen innerhalb eines { FOO, plural, ... }-Blocks hinzufügen oder entfernen, damit es für Ihre Sprachen funktioniert. Die Vorschau im Crowdin Editor zeigt eine „Syntaxfehler“-Meldung an, wenn ein Problem mit Ihrer Übersetzung vorliegt.

Die verfügbaren Pluralformen sind:

  • zero
  • one
  • two
  • few
  • many
  • other (erforderlich – allgemeine Pluralform – wird auch für Sprachen ohne Unterscheidung zwischen Singular- und Pluralformen verwendet)

Manchmal sehen Sie einen leeren =0 {}-Block in einem englischen Quelltext, was bedeutet, dass die Variable keinen Wert von 0 annehmen kann.

Richtlinien für Entwickler

Message Format-Strings sind derzeit nur für clientseitige Übersetzungen verfügbar. Sie sind nützlich, wenn Ihr String 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-Strings müssen auf „\_MF“ enden

  • Verwenden Sie das folgende Format für Zahlen (# wird durch die Zahl ersetzt):

    { variable_name, plural,
        one: {# Singulartext}
      other: {# Pluraltext}
    }
    
  • Verwenden Sie das folgende Format für Auswahlen (Choices):

    { variable_name, select,
      foo: {Das ist foo}
      bar: {Das ist bar}
      baz: {Das ist baz}
    }
    
  • So verwenden Sie es in JavaScript:

    I18n.messageFormat("key_MF", {
      variable1: "foo",
      variable2: 42,
    });
    
  • :loudspeaker: Empfehlung: Verwenden Sie, wenn möglich, komplexe Argumente als äußerste Struktur einer Nachricht und schreiben Sie vollständige Sätze in deren Unter-Nachrichten. Wenn Sie verschachtelte Select- und Plural-Argumente haben, platzieren Sie die Select-Argumente (mit ihren festgelegten Auswahlmengen) außen und verschachteln Sie die Plural-Argumente (hoffentlich höchstens eines) darin. Siehe Formatting Messages | ICU Documentation

  • Machen Sie sie lesbar – siehe vorhandene Beispiele in client.en.yml

    :cross_mark: Schlecht

    There {currentTopics, plural, one {is \u003cstrong\u003e#\u003c/strong\u003e topic} other {are \u003cstrong\u003e#\u003c/strong\u003e topics}}. Visitors need more to read and reply to – we recommend at least { requiredTopics, plural, one {\u003cstrong\u003e#\u003c/strong\u003e topic} other {\u003cstrong\u003e#\u003c/strong\u003e topics}}. Only staff can see this message.
    

    :green_heart: Gut

    There { currentTopics, plural,
        one {is \u003cstrong\u003e#\u003c/strong\u003e topic}
      other {are \u003cstrong\u003e#\u003c/strong\u003e topics}
    }. Visitors need more to read and reply to – we recommend at least { requiredTopics, plural,
        one {\u003cstrong\u003e#\u003c/strong\u003e topic}
      other {\u003cstrong\u003e#\u003c/strong\u003e topics}
    }. Only staff can see this message.
    

Tools und weitere Informationen

  • Online ICU Message Editor ermöglicht es Ihnen, einen Message Format-String zu testen, falls es ein Problem mit dem Crowdin Editor gibt. Bitte deaktivieren Sie die Option „Parse simple xml/html tags“, da Sie sonst möglicherweise eine Fehlermeldung sehen.

  • ICU Message Format for Translators


Dieses Dokument wird versioniert – Änderungen an github vorschlagen.

← START DOCS ASSET MAP
[
{
“local_path”: “/assets/message-format-1.png”,
“local_sha1”: “db623e89ed49af139007c7f2ea646a406d9be002”,
“remote_short_url”: “upload://nVKf9sNIaeMdIVQIT4cByIxYCsV.png”
}
]
END DOCS ASSET MAP →

10 „Gefällt mir“