Documentation

Magic Translate vs. Lingui

Lingui est une bibliothèque i18n open source pour JavaScript et React. Comme Magic Translate, il te permet d'écrire tes propres mots dans tes composants plutôt que dans des touches. La différence, c'est ce qui se passe ensuite : avec Lingui, tu extrais les messages, tu les fais traduire et tu les compiles pour toutes les langues. Avec Magic Translate, les traductions sont créées pour toi.

En un coup d'œil

Magic TranslateLingui
Comment tu écris le texteTes propres mots, encadrés par <T>Tes propres mots, encadrés par <Trans>
TraductionsTraduction par IA, créée automatiquementTu extrais les messages et tu les fais traduire
Fichiers de messagesAucunUn catalogue par langue, par exemple un fichier PO
Construire des étapesAucunExtraire et compiler les catalogues
Nouvelles languesModifier le réglage languageTraduire chaque message dans la nouvelle langue
Pluriels et mise en formeTraduit dans le cadre de la phraseICU messages avec des règles au pluriel par langue
PrixForfait gratuit, puis forfaits mensuels en fonction de l'utilisationOpen source et gratuit

En quoi le code diffère-t-il

Avec Lingui, le texte reste dans le composant, mais chaque message passe par un catalogue :

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.

Avec Magic Translate, le composant se ressemble et les traductions sont générées automatiquement :

import { T } from '@magic-translate/react';
const Cart = () => (
<h2>
<T>Your shopping cart</T>
</h2>
);

Quand choisir Magic Translate

  • Tu aimes écrire tes propres mots dans tes composants et tu ne veux pas gérer de catalogues.
  • Tu n'as pas de traducteurs ou tu souhaites publier des mises à jour sans attendre les traductions.
  • Tu veux ajouter des langues sans gérer de projet de traduction.

Quand choisir Lingui

  • Tout le texte doit être traduit ou révisé par une personne.
  • Tu as besoin de messages ICU pour les pluriels complexes et le genre.
  • Tu veux une bibliothèque open source gratuite, sans service externe.

Passer de Lingui à Magic Translate

Comme les deux bibliothèques conservent le texte dans le composant, la migration consiste principalement à remplacer les composants et les fonctions de traduction : <Trans> devient <T>, et la macro t devient useT hook. Tu peux migrer un composant à la fois.

Prête à l'essayer ? Suis le guide de démarrage pour traduire ton premier composant en cinq minutes.