ManuceTraduire un fichierTraduire une application Java (Spring) en italien

Traduire une application Java (Spring) en italien

Pour traduire une application Spring en italien, on traduit les valeurs de messages.properties et l'on rend un fichier messages_it.properties prêt à poser à côté de l'original. Manuce garde les clés, les variables {0}, les échappements \uXXXX et la structure du fichier. Il gère aussi les apostrophes de MessageFormat, le vrai piège de l'italien.

Déposer mon fichier Voir les tarifs

Combien ça coûte

Pour les fichiers de langue d'une application Java (Spring) totalisant environ 2 000 mots, vers l’italien :

Essentiel
12 €

Comprendre, usage interne.

Professionnel
36 €

Prêt à transmettre, par le spécialiste technique.

Premium
70 €

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 l'italien change dans un fichier .properties

L'italien s'écrit en alphabet latin, de gauche à droite, avec une longueur proche du français. Les libellés tiennent donc à peu près dans les mêmes boutons qu'une version française, mais ils seront souvent plus longs qu'une source anglaise. Trois points demandent une attention particulière.

  • Les apostrophes. L'italien élide sans cesse : l'utente, dell'ordine, c'è, un'email. Or MessageFormat lit l'apostrophe simple comme un caractère de citation. Ainsi, Benvenuto nell'area {0} s'affiche « Benvenuto nellarea {0} » : l'apostrophe disparaît et la variable n'est pas remplacée. Il faut écrire nell''area.
  • Les accents. Une interface italienne en compte beaucoup : è, più, perché, città. La majuscule È est souvent remplacée à tort par E'. C'est une faute d'orthographe, et c'est aussi une apostrophe de plus que MessageFormat va interpréter. La forme correcte est È necessario accedere.
  • Le registre. Avec le vouvoiement de politesse (Lei), on écrit Inserisca la password. Avec le tutoiement, on écrit Inserisci la password. Beaucoup d'interfaces italiennes préfèrent l'infinitif neutre, Inserire la password. Le choix vous appartient, mais il doit être le même dans tout le fichier.

Pluriels, genre et formats : les pièges propres à l'italien

Les règles CLDR donnent à l'italien trois catégories de pluriel : one, many et other.

  • La catégorie many concerne les grands nombres ronds, qui se construisent avec di : un milione di utenti. Elle est rare dans une interface, mais elle existe.
  • Le pluriel dans Spring. Spring ne gère pas ces catégories nativement : on passe par ChoiceFormat, par exemple {0,choice,0#nessun articolo|1#1 articolo|1<{0} articoli}. La syntaxe choice doit rester intacte ; seuls les morceaux de texte se traduisent.
  • Le zéro. Il s'accorde : nessun articolo, mais nessuna fattura.

Le genre. C'est le second piège. La phrase {0} eliminato fonctionne si {0} vaut ordine, mais devient fausse avec fattura, qui demande eliminata. Si une même clé reçoit des noms de genres différents, reformulez la source pour isoler la variable : Elemento eliminato: {0}.

Les formats. L'italien écrit la date 25/12/2025 (motif dd/MM/yyyy) et le nombre 1.234,56. Les motifs de date rangés dans le fichier, comme date.format=MM/dd/yyyy, ne sont pas traduits. Adaptez-les vous-même, ou laissez les formateurs Java travailler avec Locale.ITALIAN.

Ce que Manuce rend exactement, et ce qu'il ne fait pas

Vous recevez le même fichier, dans le même format, prêt à remettre dans le projet. L'indentation, l'ordre des clés, les commentaires, les fins de ligne, l'encodage et le BOM sont conservés ; seules les valeurs changent. Plus précisément :

  • les échappements \u00E8 sont conservés s'ils sont utilisés ;
  • les lignes de continuation restent des lignes de continuation ;
  • les apostrophes de MessageFormat sont gérées dans les messages qui portent des arguments comme {0}.

Chaque valeur traduite est comparée à la source : variables {0}, {1} et balises comme <b>. Si un écart persiste, la valeur source est gardée et le rapport le signale. Ce rapport liste les chaînes traduites, celles laissées telles quelles, et pourquoi.

Plusieurs éléments ne sont pas traduits : les clés (checkout.button.pay reste tel quel), 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. Le prix porte sur les mots des valeurs seulement, clés et balises exclues. L'italien est au tarif de base (coefficient ×1).

Ce que Manuce ne fait pas. Il ne modifie ni votre code Java ni vos gabarits Thymeleaf : une chaîne écrite en dur dans une classe n'est pas dans le fichier et ne sera donc pas traduite. Manuce ne produit pas non plus de traduction assermentée, ce qui peut compter si vos conditions générales doivent en exiger une en Italie.

Préparer le fichier et vérifier après livraison

Avant le dépôt :

  • Partez du fichier source le plus complet, en général messages.properties. S'il existe, joignez aussi ValidationMessages.properties, dont les variables {min} et {max} doivent rester intactes.
  • Vérifiez l'encodage déclaré. Spring Boot lit les messages selon spring.messages.encoding. Si votre projet travaille en ISO-8859-1 avec des échappements, contrôlez que les lettres accentuées italiennes s'affichent bien une fois le fichier en place.
  • Repérez les messages sans argument. Par défaut, Spring ne les fait pas passer par MessageFormat. Dans ces messages, l''utente s'afficherait avec deux apostrophes, sauf si alwaysUseMessageFormat est activé chez vous.

Après la livraison :

  1. Nommez le fichier messages_it.properties et placez-le à côté du fichier par défaut, avec le même nom de base.
  2. Testez avec l'en-tête Accept-Language: it, ou avec le paramètre de langue si vous avez un LocaleChangeInterceptor.
  3. Contrôlez trois types d'écrans : ceux qui affichent un message avec {0} et une élision, les boutons les plus étroits, et les messages d'erreur de validation.
  4. Lisez le rapport pour savoir quelles valeurs sont restées en langue source.

En pratique

  1. Rassemblez messages.properties et, le cas échéant, ValidationMessages.properties.
  2. Déposez le fichier : le devis s'affiche, et un extrait gratuit montre un paragraphe traduit en italien.
  3. Choisissez le niveau, indiquez le registre voulu (Lei, tu ou infinitif) et réglez.
  4. Placez messages_it.properties dans src/main/resources, à côté du fichier par défaut.
  5. Testez l'application en locale it et parcourez le rapport des chaînes non traduites.

Questions fréquentes

Dois-je doubler moi-même les apostrophes italiennes ?

Non. Les apostrophes de MessageFormat sont gérées dans les messages qui contiennent des arguments comme {0}. Vérifiez cependant votre réglage alwaysUseMessageFormat : selon sa valeur, Spring traite ou non les messages sans argument par MessageFormat, ce qui change l'affichage des apostrophes doublées.

Mon fichier source utilise des échappements \u00E9. Que devient-il ?

Les échappements \uXXXX sont conservés s'ils sont utilisés, comme l'encodage et le BOM du fichier. Après livraison, contrôlez à l'écran que les lettres accentuées italiennes (è, à, ù) s'affichent correctement avec la configuration de votre projet.

Faut-il un fichier messages_it ou messages_it_IT ?

messages_it.properties suffit dans la plupart des cas : il sert à la fois it_IT et it_CH. Si une locale it_IT est demandée et qu'aucun fichier it_IT n'existe, Java se rabat sur le fichier it. Réservez it_CH aux écarts propres à la Suisse italienne.

Les clés et les variables {0} risquent-elles d'être modifiées ?

Les clés ne sont jamais traduites. Chaque valeur est comparée à la source pour vérifier les variables et les balises. En cas d'écart persistant, la valeur source est conservée et le rapport l'indique.

Lei, tu ou infinitif : que choisir pour une application ?

Le Lei convient à une application bancaire, administrative ou destinée aux entreprises. Le tu est courant dans les applications grand public. L'infinitif (Inserire la password) évite de trancher. L'essentiel est de garder la même forme dans tout le fichier.

Le spécialiste qui s’en charge

Ce sujet est confié à Dédale, le spécialiste technique. Voir comment il travaille.

Testez sur votre fichier, gratuitement

Un extrait de votre fichier traduit au niveau choisi, avant tout paiement. Vous jugez, puis vous décidez.

Déposer mon fichier