Dynamische Internationalisierung

Syntax

$input.internationalize(
    sourceLang: $sourceLang, 
    translate: $translate
)

Wandelt den Text der gegebenen Sprache in einen internationalisierten Text um.

{"en": $englishText, "de": $germanText}
    .internationalize(translate: $translate)

Fasst Texte in mehreren Sprachen zu einem internationalisierten Text zusammen.

Parameter

Name Typ Beschreibung Pflicht Default
input Text oder Wörterbuch mit Texten Entweder der umzuwandelnde Text, oder ein Wörterbuch, das Sprachkürzel auf Texte in der jeweiligen Sprache abbildet. ja
sourceLang Zeichenkette Die Sprache der Eingabezeichenkette. Nur relevant in der Form mit der einzelnen Zeichenkette als Eingabe. nein Die Standardsprache der Anwendung
translate Wahrheitswert Ob der Übersetzungsservice verwendet werden soll, um die fehlenden Übersetzungen zu ergänzen. Wenn nicht alle von der Anwendung unterstützten Sprachen für die Konstruktion der internationalisierten Zeichenkette angegeben wurde, und nicht übersetzt werden soll (oder der Übersetzungsservice nicht alle Sprachen der Anwendung unterstützt) wird eine internationalisierte Zeichenkette erzeugt, die für manche Sprachen in der Standardsprache angezeigt wird. nein false

Rückgabewert

Typ: Internationalisierter Text

Ein Wert der in der Sprache des angemeldeten Nutzers dargestellt werden kann. Die Eingangstexte werden zu einem internationalisierten Text zusammengefasst und optional durch generierte Übersetzungen des Übersetzungsservice ergänzt.

Beispiele

Einzelnen Text internationalisieren

Mache aus der englischen Zeichenkette "Hello world!" eine internationalisierte Zeichenkette (tl.model.i18n:I18NString). Fülle die restlichen von der Anwendung unterstützten Sprachen mit Übersetzungen, die vom Übersetzungsservice generiert werden:

"Hello world".internationalize(lang:"en", translate: true)

Liefert einen Wert, der für einen Nutzer mit der Sprache Deutsch als "Hallo Welt!" dargestellt würde.

Texte in mehreren Sprachen zu einer internationalisierten Zeichenkette zusammenfassen

{"en": "Hello world!", "de": "Hallo Welt!"}.internationalize()

Liefert dasselbe wie das TL-Script-Literal #("Hello world!"@en, "Hallo Welt!"@de) kann aber mit dynamischen Werten verwendet werden.