Übersetzen

Übersetze Angular $localize-Dateien und überprüfe dann jede Zeile

ng extract-i18n schreibt standardmäßig XLIFF, mit Interpolationen als <x>-Tags und ICU-Pluralformen darin. Lasse ein Tag weg und ng build --localize schlägt fehl. KAERIS schreibt für jede Einheit ein <target> und behält jedes Tag und jede ID bei.

KAERIS hat diese Seite übersetzt und jede Zeile durch Rückübersetzung geprüft. Ein Muttersprachler hat sie noch nicht überprüft. Englisches Original

Interpolationen bleiben als <x>-Tags

Der equiv-text jedes Tags bleibt erhalten, sodass der Build immer noch weiß, was {{ name }} war.

Vorhersrc/locale/messages.xlf
<trans-unit id="welcome" datatype="html">
  <source>Welcome back, <x id="INTERPOLATION" equiv-text="{{ name }}"/>!</source>
</trans-unit>
<trans-unit id="save" datatype="html">
  <source>Save changes</source>
</trans-unit>
Nachhersrc/locale/messages.de.xlf
<trans-unit id="welcome" datatype="html">
  <source>Welcome back, <x id="INTERPOLATION" equiv-text="{{ name }}"/>!</source>
  <target>Willkommen zurück, <x id="INTERPOLATION" equiv-text="{{ name }}"/>!</target>
</trans-unit>
<trans-unit id="save" datatype="html">
  <source>Save changes</source>
  <target>Änderungen speichern</target>
</trans-unit>

Was KAERIS damit macht

Fragen

Liest es auch --format json?

Ja. Das JSON, das ng extract-i18n --format json schreibt, wird Schlüssel für Schlüssel übersetzt, einschließlich ICU-Blöcken.

Wird XLIFF 2.0 unterstützt?

Noch nicht. Das Standard-xlf von Angular ist XLIFF 1.2, das funktioniert.

Ist es kostenlos?

Ja, ohne Konto: 10.000 Zeichen pro Datei und bis zu 8 Sprachen pro Lauf. Ein kostenloser API-Schlüssel erhöht das Dateilimit auf 50.000 Zeichen. Lebenslang kostet es einmalig 79 $, mit deinem eigenen OpenRouter-Schlüssel; monatliche Pläne beginnen bei 19 $. Preise

Kann ich es vom Terminal oder in CI ausführen?

Ja. pip install kaeris, dann kaeris translate mit deiner Datei und --langs de,ja. Eine GitHub Action öffnet eine Pull-Anfrage, wenn neue Schlüssel landen. Dokumentation