Documentation

Internationaliser un projet

Lancez l'assistant d'Internationalisation pour rendre un projet multilingue. Coroid analyse le dépôt, suggère les langues et les paramètres, puis prépare une tâche pull request.

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.

Localisation
Assistant d'internationalisation

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é.

Étape 3 sur 7
Langues à ajouter

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.

5 langues
  • 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
Ajouter un marché
Les plus parléesEuropePays nordiquesAsie de l'EstLes AmériquesDe droite à gauche
RetourContinuer

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 :

FormatUtilisation
ICU JSONFichiers de messages avec des formes plurielles et sélectives ICU
i18next JSONCatalogues i18next et react-i18next, y compris les suffixes de pluriel
Vue i18n JSONMessages vue-i18n, y compris les messages liés et les pluriels de type pipe
Rails YAMLconfig/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 MDXPages 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)."
  }
}
  • cli La 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.
  • derivedLocales Il liste les variantes régionales générées par les règles.
  • protectedTerms et localeInstructions contiennent 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.