Titre
Paragraphe1
Paragraphe2
Paragraphe3
Sous-titre
i18n · once
Titre
L10n · per locale
Titre
Foundations
Sous-titre
Paragraphe1
Paragraphe2
Paragraphe3
Paragraphe1
Paragraphe2
Paragraphe3
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 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.
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.
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.
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 ».
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
Sous-titre
.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.
.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
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
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
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
.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
Sous-titre
Sous-titre
Badge
Sous-titre
É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.
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.
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.
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
Sous-titre
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.
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.
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.
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.
Sous-titre
By framework
Sous-titre
Badge
Sous-titre