Magic Translate vs. Lingui
Lingui ist eine Open-Source-i18n-Bibliothek für JavaScript und React. Wie bei Magic Translate schreibst du damit deine eigenen Wörter in deine Komponenten statt Schlüssel. Der Unterschied ist, was als Nächstes passiert: Mit Lingui extrahierst du die Nachrichten, lässt sie übersetzen und kompilierst sie für jede Sprache. Mit Magic Translate werden die Übersetzungen für dich erstellt.
Auf einen Blick
| Magic Translate | Lingui | |
|---|---|---|
| Wie schreibst du Text | Deine eigenen Worte, verpackt in <T> | Deine eigenen Worte, verpackt in <Trans> |
| Übersetzungen | KI-Übersetzung, automatisch erstellt | Du extrahierst die Nachrichten und lässt sie übersetzen. |
| Nachrichtendateien | Keine | Ein Katalog pro Sprache, z. B. eine PO-Datei |
| Schritte erstellen | Keine | Extrahiere und kompiliere die Kataloge |
| Neue Sprachen | Ändere die Einstellung language | Übersetze jede Nachricht in die neue Sprache |
| Pluralformen und Formatierung | Übersetzt als Teil des Satzes | ICU Nachrichten mit Pluralregeln pro Sprache |
| Preis | Kostenloses Abo, dann monatliche Tarife je nach Nutzung | Open Source und kostenlos |
Wie sich der Code unterscheidet
Bei Lingui bleibt der Text in der Komponente, aber jede Nachricht durchläuft einen Katalog:
import { Trans } from '@lingui/react/macro';const Cart = () => (<h2><Trans>Your shopping cart</Trans></h2>);// Then run `lingui extract`, translate the catalogs for every language,// run `lingui compile` and load the right catalog when the app starts.
Bei Magic Translate sieht die Komponente ähnlich aus und Übersetzungen werden automatisch generiert:
import { T } from '@magic-translate/react';const Cart = () => (<h2><T>Your shopping cart</T></h2>);
Wann wähle ich Magic Translate
- Du schreibst gerne deine eigenen Worte in deine Komponenten und du möchtest keine Kataloge verwalten.
- Du hast keine Übersetzer oder du möchtest Updates veröffentlichen, ohne auf Übersetzungen zu warten.
- Du möchtest Sprachen hinzufügen, ohne ein Übersetzungsprojekt zu verwalten.
Wann wähle ich Lingui
- Der gesamte Text muss von einer Person übersetzt oder überprüft werden.
- Du benötigst ICU-Nachrichten für komplexe Pluralformen und Gender.
- Du möchtest eine kostenlose Open-Source-Bibliothek ohne externen Dienst.
Wechsel von Lingui zu Magic Translate
Da beide Bibliotheken den Text in der Komponente behalten, geht es bei der Migration hauptsächlich darum, die Übersetzungskomponenten und Funktionen zu ersetzen: <Trans> wird zu <T> und das t-Makro wird zu useT hook. Du kannst eine Komponente nach der anderen migrieren.
Bereit, es zu versuchen? Folge der Anleitung für die ersten Schritte, um deine erste Komponente in fünf Minuten zu übersetzen.