Traduire une application Flutter en japonais
Déposez le fichier .arb modèle de votre application Flutter Manuce rend le même fichier, avec des valeurs en japonais, @@locale réglé sur ja et un rapport des chaînes traduites ou laissées telles quelles. Placeholders et messages ICU sont vérifiés, et le pluriel est ramené à la seule catégorie japonaise, other.
Combien ça coûte
Pour les fichiers de langue d'une application Flutter totalisant environ 2 000 mots, vers le japonais :
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 japonais change dans un fichier .arb
Le japonais n'a qu'une catégorie de pluriel CLDR
other. Un message écrit pour l'anglais comme {count, plural, =1{1 message} other{{count} messages}} doit donc comporter au minimum la branche other, par exemple {count, plural, other{{count} 件のメッセージ}}. Manuce vérifie la structure des messages plural et select et ajoute les catégories de pluriel de la langue cible. Une branche explicite =0 reste utile si vous préférez afficher メッセージはありません plutôt que «
0 件
».
Le japonais compte avec des classificateurs (助数詞)
件 pour des messages ou des résultats, 個 pour des objets, 人 pour des personnes, 枚 pour des photos ou des billets. Le bon choix dépend de ce que compte {count}, et c'est la description de la clé @ qui le précise.
L'ordre des mots change aussi, le verbe venant en fin de phrase
Delete {fileName}? devient {fileName}を削除しますか?. Le placeholder se déplace, ce que le format ICU permet sans toucher au code Dart. En revanche, une phrase reconstituée par concaténation dans le code ('Delete ' + name) ne pourra pas être correcte en japonais
regroupez-la en un seul message avec placeholder avant la traduction.
Les messages select sur le genre ({gender, select, male{…} female{…} other{…}}) donnent souvent des branches identiques en japonais, la langue ne marquant pas le genre dans la plupart des phrases d'interface. Ce n'est pas une erreur.
Registre, écritures et ponctuation à l'écran
Une interface japonaise s'écrit en forme polie (です/ます) dans les phrases, et en forme nominale courte sur les boutons
保存 pour «
Enregistrer
», キャンセル pour «
Annuler
». Un message d'erreur reste courtois
接続できませんでした。もう一度お試しください。 Dans une application destinée à une clientèle professionnelle, un keigo plus marqué (ご利用いただけます) est attendu dans les textes d'accueil.
Trois écritures se mêlent
kanji pour les notions, hiragana pour la grammaire, katakana pour les emprunts (アカウント, ログイン). Ces emprunts sont souvent longs, et les caractères japonais occupent une pleine chasse
un libellé comme アカウント設定 peut déborder d'un bouton dimensionné pour «
Settings
». Prévoyez TextOverflow.ellipsis ou un retour à la ligne dans les zones étroites.
La ponctuation est en pleine chasse
、 et 。, ? en fin de question, guillemets 「」 au lieu de « » ou " ". Aucune espace entre les mots ni avant la ponctuation, et pas de point final sur un bouton ou un titre.
Piège propre à Flutter
les kanji partagent leurs codes Unicode avec le chinois. Si l'application ne déclare pas Locale('ja') dans supportedLocales, ou si la police retenue privilégie le chinois, certains caractères s'affichent avec un dessin chinois, ce qu'un lecteur japonais remarque aussitôt. Déclarez la locale et, au besoin, une police japonaise comme Noto Sans JP.
Ce que Manuce rend, et ce qu'il ne fait pas
Vous déposez votre fichier modèle, par exemple app_en.arb ou app_fr.arb
vous récupérez le même fichier, dont seules les valeurs sont en japonais. Indentation, ordre des clés, guillemets, commentaires, fins de ligne, encodage et BOM sont conservés. @@locale passe à ja
il suffit d'enregistrer le fichier sous app_ja.arb dans votre dossier de traductions.
Les clés @ sont ignorées
leurs descriptions servent de contexte, et les métadonnées (type des placeholders, format de date) restent intactes. Chaque valeur traduite est comparée à la source
si un {count} ou une balise manque et que l'écart persiste, la valeur source est gardée et le rapport le signale, ce qui évite un échec de flutter gen-l10n.
Ne sont pas traduits les clés, les valeurs vides, les URL, les adresses email, les nombres, les couleurs, les formats de date, les identifiants et tout ce que vous marquez non traduisible. Le prix porte sur les mots des valeurs seulement, clés et balises exclues, avec le coefficient ×1,6 propre au japonais.
- Manuce ne traduit que le fichier déposé les chaînes écrites en dur dans le code Dart restent en langue source.
- Il ne teste pas le rendu sur appareil (débordements, glyphes).
- Il ne produit pas de traduction assermentée si des conditions d'utilisation en japonais doivent être certifiées, il faut un traducteur expert.
Préparer le projet et vérifier après la traduction
Quelques minutes de préparation dans le fichier modèle évitent la plupart des contresens en japonais
- Écrivez une
descriptionpour chaque clé ambiguë « bouton qui envoie le formulaire » orienteSubmitvers送信plutôt que提出(remettre un dossier). - Précisez ce que compte chaque
{count}, pour que le classificateur soit le bon. - Sortez dates et nombres des chaînes
un placeholder de type
DateTimeavec"format": "yMMMd"s'affichera2025年3月14日grâce àintl. - Ajoutez
jaaux locales prises en charge et, pour iOS, àCFBundleLocalizationsdansInfo.plist. - Relancez
flutter gen-l10n, puis passez un appareil en japonais boutons tronqués, retours à la ligne mal placés, kanji au dessin chinois. - Lisez le rapport chaque chaîne laissée en source y figure avec la raison.
En pratique
- Ajoutez des descriptions aux clés @ de votre fichier .arb modèle, surtout pour les compteurs et les boutons.
- Déposez le fichier sur Manuce, consultez le devis et l'extrait gratuit en japonais.
- Récupérez le fichier traduit et le rapport des chaînes laissées telles quelles.
- Enregistrez-le sous app_ja.arb, déclarez la locale ja et lancez flutter gen-l10n.
- Vérifiez l'affichage sur un appareil réglé en japonais.
Questions fréquentes
Faut-il garder la branche =1 dans les pluriels japonais ?
Ce n'est pas nécessaire le japonais n'utilise que la catégorie other, que Manuce ajoute si elle manque. Une branche explicite comme =0 garde un intérêt pour afficher une phrase dédiée à l'absence d'élément. Le message reste valide pour flutter gen-l10n dans les deux cas.
Mes placeholders peuvent-ils changer de place ?
Oui, et c'est normal en japonais, où le verbe vient en fin de phrase {fileName} passe en tête dans {fileName}を削除しますか?. Le nom et le nombre de placeholders, eux, doivent rester identiques Manuce le vérifie pour chaque valeur.
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 l'indique, pour que la génération du code ne casse pas. Vous savez ainsi exactement quelles chaînes reprendre.
Pourquoi certains kanji s'affichent-ils comme du chinois ?
Kanji et caractères chinois partagent les mêmes codes Unicode, et le dessin dépend de la locale et de la police. Déclarez Locale('ja') dans supportedLocales et, si besoin, une police japonaise. Ce réglage relève du projet, pas du fichier .arb.
Comment est calculé le prix pour le japonais ?
Le devis est calculé au dépôt sur le nombre exact de mots des valeurs, clés et balises exclues. Le japonais est une langue à supplément, avec un coefficient ×1,6 sur le prix au mot. Un extrait gratuit vous est proposé avant de payer.
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 japonais, 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.