Aller au contenu
Badge

Titre

Sous-titre

i18n · once

Titre

  • Identificateurs de paramètres régionaux (BCP 47)
  • Unicode et UTF-8
  • Clés de traduction
  • Pluralisation (unité de soins intensifs)
t("cart.items", { count })

L10n · per locale

Titre

  • tr-TRreviewed
  • de-DEreviewed
  • ja-JPin review
  • ar-EGrtl · queued

Foundations

Titre

Sous-titre

Titre

Paragraphe1

Paragraphe2

Paragraphe3

Titre

Paragraphe1

Paragraphe2

Paragraphe3

  • Identificateurs de paramètres régionaux (BCP 47)

    Les balises BCP 47 telles que « en-US » ou « zh-Hans-CN » indiquent la langue, l'alphabet et la région. Elles constituent la base de tout système d'internationalisation et déterminent les traductions, les formats et les règles applicables.

  • Unicode et UTF-8

    Unicode attribue un point de code unique à chaque caractère de chaque alphabet. L'UTF-8 est le codage le plus répandu sur le Web et garantit un affichage correct du texte, quelle que soit la langue.

  • Clés de traduction

    Les clés de traduction sont des identifiants fixes qui renvoient à des chaînes spécifiques à une locale. Elles dissocient votre code source du contenu traduisible, ce qui permet un développement et une traduction en parallèle.

  • Pluralisation (unité de soins intensifs)

    Les langues ont des règles de pluriel différentes : l'anglais en compte deux, l'arabe six. ICU MessageFormat gère les pluriels, le genre et certaines expressions au sein d'une syntaxe unique.

  • Assistance RTL

    L'arabe, l'hébreu et d'autres écritures se lisent de droite à gauche. La prise en charge de la lecture de droite à gauche nécessite de inverser la disposition, de retourner les icônes et d'utiliser les propriétés logiques CSS à la place des propriétés « left » et « right ».

  • Date / Montant / Devise

    Les dates, les nombres et les devises varient selon les paramètres régionaux. L'API Intl et des bibliothèques telles que date-fns proposent un formatage adapté aux paramètres régionaux ; ainsi, 1 000,50 s'affiche sous la forme 1 000,50 en allemand.

Badge

Titre

Sous-titre

JSON

.json

React · Vue · Angular

Particulièrement apprécié pour les applications web (React, Vue, Angular). Lisible par l'utilisateur, prend en charge l'imbrication pour des structures de clés bien organisées. Il n'y a pas de norme intégrée pour la formation des pluriels ; c'est pourquoi des bibliothèques telles que ICU MessageFormat comblent cette lacune.

XLIFF

.xlf

TMS interchange

Norme industrielle basée sur XML pour l'échange de traductions entre outils. Prise en charge par toutes les plateformes TMS professionnelles. Format détaillé mais riche en fonctionnalités, avec prise en charge intégrée des notes, du suivi de l'état d'avancement et des métadonnées.

PO/POT (Gettext)

.po / .pot

Python · PHP · Ruby

Format open source classique utilisé dans les écosystèmes Python, PHP et Ruby. Prise en charge intégrée du pluriel grâce à une syntaxe dédiée aux formes plurielles. Largement pris en charge par les traducteurs et les outils de traduction.

ARB

.arb

Flutter · Dart

Application Resource Bundle est le format standard de Flutter et Dart. Basé sur JSON et prenant en charge la syntaxe des messages ICU, il permet de gérer les pluriels et les sélections de manière native. Il est utilisé par l'outil gen-l10n de Flutter.

.strings / .stringsdict

.strings

iOS · macOS

Formats natifs de la plateforme Apple pour le développement sous iOS et macOS. Le fichier .strings gère de simples paires clé-valeur, tandis que le fichier .stringsdict utilise la structure XML des fichiers plist pour les règles de pluralisation.

.resx

.resx

.NET · C#

Format de fichier de ressources .NET utilisé pour les applications C# et VB.NET. Basé sur XML, il offre une intégration étroite avec les outils Visual Studio. Prend en charge les ressources typées pour les chaînes de caractères, les images et d'autres ressources.

Badge

Titre

Sous-titre

  1. Auditez votre base de codeIdentifiez toutes les chaînes de caractères, tous les formats de date et tous les modèles dépendants des paramètres régionaux qui sont codés en dur. Déterminez quels composants et quelles pages contiennent du texte destiné aux utilisateurs qui doit être extrait.
  2. Externaliser les chaînes de caractèresDéplacez tout le texte destiné aux utilisateurs vers des fichiers de ressources structurés (JSON, XLIFF ou PO). Remplacez les chaînes intégrées par des appels de fonction de traduction qui font référence à des clés.
  3. Choisissez vos outilsChoisissez une bibliothèque d'internationalisation (i18n) pour votre framework, un système de gestion des traductions (TMS) pour faciliter la collaboration, et optez pour un processus de traduction assuré par des traducteurs humains, par l'IA ou un système hybride.
  4. Intégrer et expédierIntégrez votre bibliothèque d'internationalisation (i18n) au routage et au rendu, connectez votre système de gestion de traduction (TMS) à votre infrastructure de CI/CD pour une synchronisation automatique, et déployez les paquets de paramètres régionaux via un CDN pour une diffusion rapide.

Titre

Sous-titre

  • Toutes les chaînes destinées aux utilisateurs ont été transférées dans des fichiers de ressources
  • Détection de la langue mise en place (navigateur, URL, préférences de l'utilisateur)
  • La pluralisation est gérée à l'aide de ICU MessageFormat pour toutes les langues cibles
  • Le formatage de la date, de l'heure, des nombres et des devises utilise l'API Intl ou une solution équivalente
  • Prise en charge de la mise en page RTL testée avec les propriétés logiques CSS
  • Paramètres de localisation de secours configurés en cas de traductions manquantes
  • Les clés de traduction respectent une convention de nommage cohérente
  • Le pipeline CI vérifie qu'il n'y a pas de clés de traduction manquantes ou inutilisées

Badge

Titre

Sous-titre

  • Intégration Développeur

    Évaluez les outils CLI, la compatibilité SDK, les flux de travail basés sur Git et les hooks CI/CD. Les meilleures plateformes TMS s'intègrent directement dans votre pipeline de développement afin que les traductions restent synchronisées avec les modifications du code automatiquement.

  • Mémoire de Traduction

    La mémoire de traduction stocke les traductions précédemment approuvées et les suggère pour des chaînes similaires ou identiques. Cela réduit les coûts de traduction, accélère les délais et maintient la cohérence dans tout votre produit.

  • Fonctionnalités de Collaboration

    Recherchez des flux de révision, des commentaires en ligne, des glossaires partagés et des chaînes d'approbation. Ces fonctionnalités permettent aux traducteurs, aux réviseurs et aux développeurs de collaborer sans goulets d'étranglement ni malentendus.

  • IA et Automatisation

    Les plateformes TMS modernes proposent des suggestions de traduction automatique, des contrôles qualité automatisés, des opérations par lots et un routage intelligent. Les flux de travail assistés par IA réduisent les efforts manuels tout en maintenant la qualité des traductions.

Quality

Titre

Sous-titre

  • Concaténation de chaînes

    La construction de phrases par concaténation de fragments ne fonctionne pas dans les langues où l'ordre des mots est différent. Utilisez plutôt ICU MessageFormat avec des espaces réservés.

  • Chaînes de caractères codées en dur

    Intégrer du texte destiné aux utilisateurs directement dans le code source rend la traduction impossible sans modification du code. Externalisez toutes les chaînes de caractères dès le début.

  • Ignorer les pluriels

    La simple condition if/else pour distinguer le singulier du pluriel ne fonctionne qu'en anglais. De nombreuses langues possèdent plusieurs formes de pluriel qui nécessitent l'application des règles de pluriel de l'ICU.

  • Une traduction après coup

    Ajouter la fonctionnalité d'internationalisation après le lancement implique une refonte coûteuse. Concevoir dès le départ en tenant compte de l'internationalisation permet de gagner du temps et d'éviter l'accumulation de dette technique.

Titre

Sous-titre

  • Pseudo
  • Visuel
  • Automatisé
  • Linguistique
  • Expansion

By framework

Titre

Sous-titre

Badge

Titre

Sous-titre

Titre

Sous-titre