Traduction I18n avec CLI
Le CLI de traduction Logto est un outil puissant conçu pour les développeurs contribuant aux efforts d'internationalisation de Logto. Avec ce CLI, vous pouvez vous concentrer sur la rédaction de contenu en anglais, puis le traduire facilement dans toutes les langues prises en charge.
Pour les utilisateurs réguliers de Logto cherchant des traductions personnalisées sans contribuer au projet, veuillez vous référer à notre guide de localisation.
À partir de la version v1.20.0, la commande de traduction est retirée de @logto/cli
et maintenue en tant que package autonome @logto/translation
dans le monorepo logto. En conséquence, la manière d'exécution est légèrement différente.
Migrer depuis @logto/cli
Voici une comparaison des anciennes et nouvelles méthodes d'exécution du CLI :
Ancienne méthode (avant v1.20.0) :
pnpm cli translate <command> [options]
Nouvelle méthode :
pnpm translate <command> [options]
Synchroniser les clés
Disons que nous avons apporté quelques modifications aux clés de traduction dans le dossier en
du package phrases
. Nous voulons synchroniser ces modifications avec le dossier pt-BR
. Exécutez la commande ci-dessous pour synchroniser les clés de traduction et la structure des fichiers :
pnpm translate sync-keys --target pt-BR
Cette commande lira toutes les clés de traduction du dossier de langue source (en
par défaut) et les synchronisera avec le dossier de langue cible (pt-BR
dans cet exemple).
- Si le dossier de langue cible n'existe pas, il sera créé automatiquement ;
- Si le dossier de langue cible existe déjà, il sera mis à jour avec de nouvelles clés et les clés obsolètes seront supprimées.
Pour chaque clé de traduction :
- Si une clé est manquante dans la cible, elle sera ajoutée avec un commentaire pour indiquer que la phrase n'est pas traduite (marquée avec
/** UNTRANSLATED */
) ; - Si une clé est manquante dans la référence, elle sera supprimée de la cible ;
- Si une clé existe à la fois dans la référence et la cible, la valeur de la cible sera utilisée.
Pour synchroniser les clés pour toutes les langues dans le package phrases
, exécutez la commande ci-dessous :
pnpm translate sync-keys --target all
Ainsi, nous pouvons nous concentrer sur la mise à jour des clés de traduction dans le dossier de langue source, et les clés de traduction dans d'autres langues seront mises à jour automatiquement.
Cette commande s'exécute pour le package phrases
par défaut. Vous pouvez spécifier le nom du package avec l'option --package
. Par exemple, utilisez --package phrases-experience
pour synchroniser les clés pour le package phrases-experience
.
Après avoir synchronisé les clés, nous pouvons traduire les clés en utilisant l'API ChatGPT.
Traduire les clés en utilisant ChatGPT
Exécutez la commande ci-dessous pour traduire les clés en utilisant ChatGPT :
pnpm translate sync
Cette commande traduira toutes les clés non traduites (marquées avec /** UNTRANSLATED */
) dans toutes les langues des packages phrases
et phrases-experience
. Notez qu'une variable d'environnement OPENAI_API_KEY
est requise pour exécuter cette commande.