Traduire un fichier JSON i18n en chinois simplifié
Déposez votre fichier JSON i18n (i18next, react-intl, vue-i18n, next-intl, ngx-translate) : seules les valeurs passent en chinois simplifié, les clés et la structure restent identiques. Chaque chaîne est contrôlée pour garder les mêmes variables, et vous recevez le fichier prêt à remettre dans le projet avec un rapport.
Combien ça coûte
Pour un fichier JSON i18n d'environ 2 000 mots de valeurs, vers le chinois :
Comprendre, usage interne.
Prêt à transmettre, par le spécialiste technique.
Relecture croisée. Pour ce qui engage.
Prix pour une langue, mise en page d'origine comprise. TVA non applicable, article 293 B du CGI. Le devis exact, calculé sur le nombre de mots de votre fichier, s'affiche avant paiement.
Ce qui change quand les valeurs passent en chinois
Le chinois simplifié s'écrit sans espace entre les mots et avec une ponctuation pleine chasse. Dans un JSON i18n, cela touche presque chaque valeur : "welcome": "Bonjour, {name} !" devient "welcome": "你好,{name}!". La virgule et le point d'exclamation sont des signes chinois (,!), et non des signes latins précédés ou suivis d'une espace.
- Longueur : une valeur chinoise compte souvent deux à trois fois moins de caractères que l'original, mais chaque caractère est plus large. Un bouton ne gagne donc presque pas de place. En revanche, un champ limité par
maxlengthou une troncature calculée au nombre de caractères se comporte autrement qu'en français. - Ordre des mots : la variable se déplace.
"il y a {count} jours"donne"{count} 天前","Mis à jour par {user}"donne"由 {user} 更新". C'est pourquoi une phrase découpée en plusieurs clés (« Vous avez », puis{count}, puis « messages ») se traduit mal : chaque morceau est traduit seul et l'assemblage fait par le code garde l'ordre français. - Classificateurs : un nombre s'accompagne d'un mot de mesure.
"{count} fichiers"devient"{count} 个文件","{count} pages"devient"{count} 页". La variable reste, le classificateur s'ajoute autour.
Pluriels et messages ICU : une seule catégorie en chinois
Selon le CLDR, le chinois n'a qu'une catégorie de pluriel : other. Il n'y a donc aucune forme few ou many à ajouter, contrairement à des langues comme le polonais. Un message ICU tel que {count, plural, one {# fichier} other {# fichiers}} garde sa structure et ses deux branches traduites ; en chinois, c'est la branche other qui s'affiche, y compris pour 1. C'est elle qu'il faut regarder en priorité à la relecture.
- Les correspondances exactes restent des branches à part entière :
=0 {aucun fichier}devient=0 {没有文件}. - Les branches
selectsont traduites une à une, même quand le chinois ne fait pas la distinction à l'oral (他 et 她 se prononcent de la même façon). - Avec i18next, les clés suffixées
file_oneetfile_otherne sont ni traduites ni renommées. Les versions récentes d'i18next s'appuient sur les règles CLDR et ne liront quefile_otherpour le chinois : vérifiez qu'elle existe bien dans votre source.
Pour chaque chaîne, on vérifie que les variables {name}, {{count}} ou %s figurent dans la traduction, autant de fois que dans la source.
Ce que Manuce rend, et ce qu'il ne fait pas
Vous récupérez le même fichier : indentation, ordre des clés, guillemets, commentaires, fins de ligne, encodage et BOM conservés. Seules les valeurs changent, que le JSON soit plat, imbriqué ou contienne des tableaux de chaînes. Chaque valeur traduite est comparée à la source (variables, balises) ; si un écart persiste, la valeur source est gardée et le rapport l'indique. Ce rapport liste les chaînes traduites et celles laissées telles quelles, avec la raison.
Restent en l'état : les clés, les valeurs vides, les URL, les adresses email, les nombres, les couleurs comme #1A73E8, les formats de date comme YYYY-MM-DD, les identifiants et tout ce que vous avez marqué non traduisible.
- Manuce ne renomme pas votre fichier en
zh.jsonouzh-CN.jsonet ne modifie pas la configuration de votre bibliothèque. - Il ne transforme pas un format de date en
YYYY年M月D日: un format de date n'est pas traduit, l'affichage chinois des dates se règle dans le code (par exemple avecIntl.DateTimeFormatet la localezh-CN). - Il ne produit pas de version en chinois traditionnel dans la même commande : c'est une langue distincte, à choisir en plus (deux langues ouvrent droit à −20 % sur toute la commande).
Préparer le fichier et vérifier le résultat
Avant le dépôt :
- Vérifiez que le fichier est en UTF-8. L'encodage étant conservé, un fichier dans un encodage occidental ne pourrait pas contenir les caractères chinois.
- Regroupez les phrases éclatées en une seule clé avec variable :
"inbox": "Vous avez {count} messages"plutôt que trois clés concaténées. - Marquez comme non traduisibles les noms de produit ou les codes qui ne doivent pas bouger.
Après la livraison :
- Lisez le rapport : une valeur restée en français signale souvent une variable mal formée dans la source.
- Ajoutez une police chinoise à votre pile CSS (par exemple
"PingFang SC", "Microsoft YaHei", "Noto Sans SC") : une police latine n'a pas ces caractères et le navigateur choisira un substitut au hasard. - Contrôlez les retours à la ligne : sans espaces, un long texte chinois se coupe entre deux caractères, ce qui est correct, mais un conteneur à largeur fixe peut déborder autrement qu'en français.
- Décidez d'une règle pour l'espace entre caractères chinois et chiffres ou mots latins (
共 {count} 条ou共{count}条) et vérifiez qu'elle est appliquée partout. - Pour un nom de marque ou un terme technique à garder tel quel, regardez l'extrait gratuit avant de payer, puis la traduction complète.
En pratique
- Vérifiez que le JSON est en UTF-8 et que chaque phrase tient dans une seule clé.
- Déposez le fichier et choisissez le chinois simplifié : le devis porte sur les mots des valeurs.
- Lisez l'extrait gratuit, en particulier une chaîne avec variable ou pluriel.
- Récupérez le fichier traduit et le rapport, placez-le sous votre locale zh ou zh-CN.
- Testez l'interface avec une police chinoise et vérifiez les champs à longueur limitée.
Questions fréquentes
Les clés de mon JSON seront-elles traduites ?
Non. Les clés ne sont jamais traduites, seules les valeurs le sont. L'ordre des clés, l'indentation et les guillemets restent identiques, ce qui permet de comparer le fichier chinois à la source ligne à ligne.
Faut-il prévoir des formes plurielles supplémentaires pour le chinois ?
Non. Le chinois n'a que la catégorie CLDR other, il n'y a rien à ajouter. Les branches one existantes restent dans le message, mais c'est la branche other qui s'affiche ; avec i18next, assurez-vous que la clé suffixée _other existe.
Chinois simplifié ou traditionnel ?
Cette page concerne le chinois simplifié, utilisé en Chine continentale et à Singapour. Le chinois traditionnel (Taïwan, Hong Kong) est une langue distincte chez Manuce : il faut la commander en plus, et la remise de −20 % s'applique alors à toute la commande.
Comment est calculé le prix pour le chinois ?
Le devis s'affiche au dépôt et porte sur les mots des valeurs, clés et balises exclues. Le chinois est une langue à supplément, avec un coefficient ×1.6 sur le prix au mot.
Que se passe-t-il si une variable disparaît dans la traduction ?
Chaque valeur traduite est comparée à la source. Si l'écart persiste, la valeur source est conservée et le rapport le signale : vous savez précisément quelle chaîne reprendre.
Le spécialiste qui s’en charge
Ce sujet est confié à Dédale, le spécialiste technique. Voir comment il travaille.
Le même fichier, vers une autre langue
Vers le chinois, d’autres fichiers
À lire aussi
Testez sur votre fichier, gratuitement
Un extrait de votre fichier traduit au niveau choisi, avant tout paiement. Vous jugez, puis vous décidez.