Traduire une application Vue en chinois simplifié
Déposez le fichier JSON de vue-i18n de votre application Vue (par exemple <code>en.json</code> ou <code>fr.json</code>). Manuce vous rend le même fichier, prêt à devenir <code>zh-CN.json</code> : seules les valeurs sont traduites en chinois simplifié, les interpolations <code>{name}</code> et les formes plurielles séparées par <code>|</code> sont conservées. Un rapport liste les chaînes traduites et celles laissées telles quelles, avec la raison.
Combien ça coûte
Pour les fichiers de langue d'une application Vue totalisant environ 2 500 mots, 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 que le chinois change dans vos messages vue-i18n
Le chinois simplifié ne se contente pas de remplacer les mots : il réorganise la phrase, et vos variables se déplacent avec elle. "{count} files selected" devient "已选择 {count} 个文件" : le nombre passe au milieu, précédé du verbe et suivi d'un classificateur (个, 条, 项…). C'est pour cela qu'une phrase découpée en plusieurs clés puis recollée dans le gabarit se traduit mal : une seule chaîne avec ses variables donne une phrase chinoise naturelle.
Côté pluriel, le chinois n'a qu'une catégorie CLDR, other : le nom ne change pas avec la quantité. Vue-i18n, lui, choisit une forme selon la position dans la chaîne séparée par |. Manuce conserve le même nombre de formes que la source ; en chinois, elles seront souvent presque identiques, par exemple :
- source :
"no items | one item | {count} items" - chinois :
"没有项目 | {count} 个项目 | {count} 个项目"
La structure reste donc compatible avec votre appel $t('cart.items', n) sans toucher au code. Enfin, le registre : une interface chinoise s'adresse en général à l'utilisateur avec 您 (vouvoiement poli) plutôt que 你 ; si votre produit vise un public jeune avec un ton familier, signalez-le avant de commander.
Ponctuation, polices et mise en page côté Vue
La ponctuation chinoise est pleine chasse : ,。:?!. Un libellé "Email:" devient "邮箱:". Le piège se trouve dans les composants qui ajoutent la ponctuation eux-mêmes, par exemple {{ $t('form.email') }}: dans le gabarit : vous obtiendrez un deux-points latin collé à des caractères chinois. Mettez la ponctuation dans la valeur traduite, pas dans le code.
Les polices demandent une vérification systématique :
- une police latine chargée en web font ne contient pas les hanzi ; le navigateur bascule alors sur une police de secours, parfois disgracieuse. Prévoyez dans votre
font-familydes polices système chinoises, par exemple"PingFang SC", "Microsoft YaHei", "Noto Sans SC", sans-serif; - une police chinoise complète pèse plusieurs mégaoctets : préférez les polices système à un fichier chargé pour tous les visiteurs ;
text-transform: uppercase, l'italique et unletter-spacingprononcé n'ont pas de sens ou nuisent à la lisibilité en chinois.
Le texte chinois compte deux à trois fois moins de caractères, mais chaque caractère est plus large : la place occupée varie peu. En revanche, toute troncature par nombre de caractères (label.slice(0, 20)) donne en chinois une chaîne bien plus longue à l'écran. Et comme il n'y a pas d'espaces entre les mots, le retour à la ligne peut couper n'importe où : vérifiez les boutons et les colonnes étroites.
Ce que Manuce rend, et ce qu'il ne fait pas
Vous récupérez le même fichier JSON : indentation, ordre des clés, guillemets, fins de ligne, encodage et BOM conservés ; seules les valeurs changent. Les clés ("checkout.confirm"), les valeurs vides, les URL, les adresses email, les nombres, les couleurs, les formats de date, les identifiants et tout ce que vous marquez comme non traduisible restent tels quels.
Chaque valeur traduite est comparée à la source : mêmes variables {name}, mêmes balises. Si une traduction perd une variable et que l'écart persiste, la valeur source est gardée et le rapport le signale. Vous aurez donc peut-être quelques chaînes encore en langue source à reprendre, mais pas de {count} disparu qui casserait l'affichage.
Ce que Manuce ne fait pas :
- il ne traite que vos fichiers JSON de vue-i18n : les textes écrits en dur dans les composants
.vuene sont pas extraits ; - il ne modifie ni votre CSS, ni vos polices, ni la configuration de vue-i18n (
locale,fallbackLocale) ; - il ne teste pas le rendu dans votre application ;
- il ne produit pas de traduction assermentée, au cas où vos mentions légales devraient l'être.
Le chinois traditionnel (Taïwan, Hong Kong) est une langue distincte chez Manuce : si vous visez aussi ces marchés, commandez-le à part pour un fichier zh-TW.json.
Préparer le projet avant l'envoi
Quelques minutes de préparation évitent la plupart des retouches :
- Partez de la langue la plus complète : si votre
en.jsona des clés absentes defr.json, envoyez celui qui est à jour. - Regroupez les phrases : remplacez
"You have"+{count}+"messages"par une seule clé"Vous avez {count} messages", que le chinois pourra réordonner. - Sortez les textes en dur des composants vers le JSON avant l'envoi.
- Marquez le non traduisible : nom de produit, noms de marque, termes techniques que vos utilisateurs chinois connaissent en anglais.
- Choisissez le code de langue :
zh-CNouzh-Hansplutôt quezhseul, pour laisser de la place à une version traditionnelle plus tard.
Le prix porte sur les mots des valeurs, clés et balises exclues, avec un coefficient ×1.6 pour le chinois. L'extrait gratuit vous montre un paragraphe traduit avant de payer : utile pour juger le registre.
Vérifier après réintégration
Une fois zh-CN.json en place, passez l'application en chinois et contrôlez :
- les chaînes signalées dans le rapport comme laissées en langue source ;
- les dates et nombres : Manuce ne touche pas aux formats ; passez par
$det$nde vue-i18n avec la localezh-CNpour obtenir par exemple 2024年3月5日 ; - la police réellement affichée sur Windows, macOS et Android ;
- les deux-points et parenthèses ajoutés par le code, qui doivent passer en pleine chasse ;
- les boutons, onglets et menus où le texte peut se couper.
Si un relecteur sinophone peut parcourir les écrans, demandez-lui surtout de vérifier les classificateurs et les chaînes très courtes, plus ambiguës hors contexte.
En pratique
- Exportez le fichier JSON vue-i18n de votre langue la plus complète.
- Déposez-le sur Manuce, choisissez le chinois simplifié et consultez le devis et l'extrait gratuit.
- Récupérez le fichier traduit et le rapport des chaînes laissées telles quelles.
- Enregistrez-le sous zh-CN.json, déclarez la locale et ajoutez des polices chinoises à votre CSS.
- Parcourez l'application en chinois et corrigez ponctuation, troncatures et chaînes signalées.
Questions fréquentes
Comment sont traités les pluriels séparés par | en chinois ?
Le nombre de formes de la source est conservé, pour que vue-i18n trouve toujours la forme attendue. Le chinois ne distingue pas singulier et pluriel, les formes seront donc souvent identiques, avec un classificateur comme 个. Vous n'avez rien à changer dans vos appels $t.
Mes variables {name} et {count} restent-elles intactes ?
Oui. Chaque valeur traduite est comparée à la source, variables et balises comprises. Elles peuvent changer de place dans la phrase, ce qui est normal en chinois. Si une variable manque et que l'écart persiste, la valeur source est conservée et signalée dans le rapport.
Manuce traduit-il aussi les textes écrits directement dans mes composants .vue ?
Non. Manuce traite les fichiers JSON de vue-i18n. Les textes en dur dans les gabarits doivent d'abord être déplacés dans ces fichiers, ce qui est de toute façon nécessaire pour que vue-i18n les affiche en chinois.
Puis-je obtenir aussi le chinois traditionnel pour Taïwan ou Hong Kong ?
Oui, mais c'est une langue distincte chez Manuce : il faut la commander en plus du chinois simplifié. La remise s'applique alors à toute la commande dès deux langues (−20 % pour deux).
Pourquoi mon texte chinois s'affiche-t-il dans une police étrange ?
Votre police latine ne contient pas les caractères chinois et le navigateur prend une police de secours. Ajoutez des polices système chinoises dans votre font-family. Manuce ne modifie pas votre CSS : c'est à faire de votre côté.
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.