L'assistant d'Internationalisation rend un projet multilingue. Il lit votre dépôt, commence chaque étape à partir de ce qu'il a trouvé, et aboutit à une tâche qui ouvre un pull request. Vous n'avez jamais à saisir de code de langue ni à modifier JSON ; modifiez uniquement ce que vous souhaitez, et rien ne change dans votre dépôt tant que vous n'avez pas fusionné les modifications.
Les propriétaires et les administrateurs lancent l'assistant. Démarrez-le depuis Localisation: choisissez Internationaliser un projet, ou Lancer l'assistant sur la ligne d'un projet. Pour un projet déjà multilingue, Paramètres → Changer les langues ouvre le même assistant pour proposer des modifications.
Les étapes
1. Analyse
Coroid lit la branche par défaut sans exécuter son code. Il recherche les catalogues et leurs langues, les frameworks utilisés, ainsi que le texte encore écrit directement dans le code, compté par fichier.
- Catalogues trouvés. L'assistant les conserve : Coroid y ajoute ses vérifications et traduit ce qui manque. C'est ce qu'on appelle l'adoption.
- Aucun catalogue pour l'instant. Coroid déplace le texte de votre code vers des catalogues et le remplace par des appels de recherche. C'est ce qu'on appelle l'introduction.
- Déjà configuré. Le projet dispose déjà d'une configuration Coroid, et l'assistant propose des modifications à celle-ci.
2. Langue source
C'est la langue dans laquelle le produit est écrit ; toutes les autres langues sont traduites à partir de celle-ci. L'assistant la détecte à partir de vos catalogues ou la devine grâce au texte dans le code. Toute langue peut être la langue source : un produit suédois traduit en anglais et en allemand fonctionne de la même manière.
3. Langues
Sélectionnez les langues une par une, ou ajoutez un marché entier d'un coup : Les plus parlées, Europe, Nordiques, Asie de l'Est, Les Amériques ou De droite à gauche. Chaque langue affiche son propre nom, indique si elle s'écrit de droite à gauche, et précise le nombre de formes pluriels nécessaires.
Les variantes régionales peuvent être dérivées plutôt que traduites. L'anglais britannique est dérivé de l'anglais américain avec une orthographe britannique, et l'allemand suisse de l'allemand avec une orthographe suisse, ce qui ne coûte rien et reste synchronisé avec la langue parente.
Chaque étape part de ce que le dépôt contient déjà. Modifiez uniquement ce que vous souhaitez ; rien ne sera appliqué tant que le pull request n'est pas fusionné.
- Analyser
- Langue source
- Langues
- Chaînes
- Style et termes
- Qualité et automatisation
- Revue
Sélectionnez les langues une par une ou ajoutez un marché entier. Les variantes régionales, comme l'anglais britannique, peuvent être générées automatiquement selon des règles au lieu d'être traduites manuellement.
- Deutschallemand · de · 2 formes pluriels
- Françaisfrançais · fr · 3 formes pluriels
- 日本語japonais · ja · 1 forme plurielle
- العربيةarabe · ar · de droite à gauche · 6 formes pluriels
- British Englishanglais britannique · en-GB · 2 formes plurielsAdapté avec l'orthographe britannique
L’assistant d’Internationalisation à son étape Langues : chaque langue avec sa direction d’écriture et ses formes plurielles, l’anglais britannique généré par des règles, et les marchés à ajouter en une seule opération. Données illustratives.
4. Chaînes de caractères
Lors de l'adoption, choisissez les catalogues que Coroid conserve traduits ; leurs clés et leur structure restent inchangées. Lors de l'introduction, sélectionnez les fichiers dont le texte Coroid déplace vers des catalogues ; les fichiers que vous excluez restent tels quels.
5. Style et termes
Tous ces éléments sont optionnels et appliqués dans toutes les langues :
- Formel ou informel. Pour les langues qui distinguent le tutoiement et le vouvoiement, comme l'allemand Sie et du. Par défaut, chaque terme suit le ton du texte source.
- Termes conservés tels quels. Les noms de produit, de marque et de fonctionnalité qui restent identiques dans toutes les langues.
- À propos du produit. Quelques phrases sur le produit et ses lecteurs, qui aident chaque traduction à choisir les mots appropriés.
6. Qualité et automatisation
Activés par défaut, et chacun peut être modifié ultérieurement :
- Vérifier les traductions à chaque modification. La vérification des traductions dans le contrôle qualité renvoie une modification lorsqu'elle détecte des chaînes manquantes ou corrompues.
- Traduire les chaînes fusionnées en dehors de Coroid. Si quelqu'un fusionne du nouveau texte sans passer par Coroid, une tâche se charge de le traduire.
- Appliquer les corrections chaque nuit. Les suggestions approuvées par les contributeurs arrivent sous forme d'une tâche pull request chaque nuit.
- Permettre aux personnes invitées de proposer des formulations. Les locuteurs natifs que vous invitez peuvent corriger les traductions sur votre site. Consultez Gérer les traductions avec des suggestions.
Le fichier de configuration conserve la dernière version. Coroid active les autres la prochaine fois qu'un propriétaire ou un administrateur ouvrira la Localisation après la fusion de pull request, et ce, une seule fois : si vous désactivez l'une d'entre elles ultérieurement, elle restera désactivée.
7. Révision
Un résumé du projet, de ce que la tâche va accomplir, de la langue source, des langues et de celles qui sont dérivées, du volume de traduction, des termes conservés tels quels, et de ce qui sera activé après la fusion. La traduction est facturée comme une utilisation du modèle, à l'instar du travail des autres agents, et est plafonnée par tâche.
Choisissez Internationaliser. Coroid crée alors une tâche avec une spécification et des critères d'acceptation, et la lance immédiatement.
Ce que fait la tâche
- Adoption Le fichier de configuration est écrit exactement comme l'a composé l'assistant, puis toutes les chaînes manquantes sont traduites.
- Présentation L'outil relie votre framework, déplace le texte des fichiers sélectionnés dans des catalogues, ajoute le routage linguistique, les retours en arrière et le support du texte de droite à gauche, puis procède à la traduction.
- Modification La nouvelle configuration est écrite et les traductions affectées par ce changement sont corrigées.
La tâche se termine par une demande d'intégration pull request. Une fois celle-ci fusionnée dans la branche par défaut, chaque langue apparaît dans la Localisation.
Formats
Coroid lit les catalogues dans ces formats :
| Format | Utilisation |
|---|---|
| ICU JSON | Fichiers de messages avec des formes plurielles et sélectives ICU |
| i18next JSON | Catalogues i18next et react-i18next, y compris les suffixes de pluriel |
| Vue i18n JSON | Messages vue-i18n, y compris les messages liés et les pluriels de type pipe |
| Rails YAML | config/locales/*.yml, avec %{name} interpolation et des clés de pluriel |
| gettext PO | .po fichiers et un .pot modèle, avec Plural-Forms par langue |
| Markdown et MDX | Pages de documentation placées dans un dossier de langue (docs/en/…) : texte, légendes d'images et champs de métadonnées choisis ; le code et la balise restent tels quels. |
| Personnalisé | Tout autre format, via une petite commande d'adaptateur dans votre dépôt. |
Le fichier de configuration
L'assistant écrit .coroid/i18n.json. Il décrit votre dépôt, donc il réside dans celui-ci et évolue via des demandes d'intégration :
{
"version": 1,
"cli": { "version": "1.9.0", "sha256": "…" },
"sourceLocale": "en",
"targetLocales": ["de", "fr", "ja", "ar"],
"derivedLocales": [
{ "locale": "en-GB", "from": "en", "rules": "en-gb-spelling" }
],
"catalogs": [
{
"id": "ui",
"format": "i18next-json",
"source": "messages/{locale}.json"
}
],
"protectedTerms": ["Storefront"],
"localeInstructions": {
"de": "Address the reader informally (du)."
}
}cliLa version exacte du moteur et son checksum sont verrouillés. Coroid télécharge cette version et la vérifie avant chaque exécution, afin qu'une mise à jour ne modifie jamais votre résultat de façon inattendue.derivedLocalesIl liste les variantes régionales générées par les règles.protectedTermsetlocaleInstructionscontiennent ce que vous avez sélectionné sous Style et terminologie.
Le fichier peut également contenir un glossaire, le contexte du produit, les routes de traduction par langue et la liaison des suggestions pour les contributeurs.
Paramètres → Fichier de configuration dans l'interface de travail affiche le fichier exact de la branche par défaut. Pour le modifier là-bas, éditez la proposition et choisissez Proposer une modification: Coroid ouvre une tâche qui applique précisément ce fichier et corrige les traductions affectées par le changement. Pour les langues et le style, l'assistant constitue la méthode la plus simple.