ManuceTraduire un fichierTraduire une application Ruby on Rails en italien

Traduire une application Ruby on Rails en italien

Vous déposez vos fichiers config/locales/*.yml, Manuce rend des fichiers italiens au même format : la clé racine devient <code>it:</code>, les interpolations comme <code>%{count}</code> sont vérifiées et les clés <code>one</code>/<code>other</code> sont adaptées. Seules les valeurs changent ; il vous reste à régler quelques points propres à l'italien, que cette page détaille.

Déposer mon fichier Voir les tarifs

Combien ça coûte

Pour les fichiers de langue d'une application Ruby on Rails totalisant environ 3 000 mots, vers l’italien :

Essentiel
18 €

Comprendre, usage interne.

Professionnel
54 €

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

Premium
105 €

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 vos fichiers de langue Rails

L'italien a une longueur proche du français : un libellé qui tient en français tiendra en général en italien, mais il sera souvent plus long que la version anglaise si votre interface a été dessinée à partir de l'anglais. Les vrais pièges sont ailleurs.

  • Le pluriel. En italien, one ne s'applique qu'à 1 ; zéro passe par other : « 0 messaggi », pas « 0 messaggio ». Si vous voulez un texte dédié, Rails utilise une clé zero lorsqu'elle existe et que le compte vaut 0.
  • L'accord. Le participe s'accorde avec le nom : one: "%{count} file selezionato", other: "%{count} file selezionati", mais « %{count} fatture selezionate » au féminin.
  • La catégorie many. Le CLDR prévoit pour l'italien one, many et other, mais many ne concerne que de grands nombres ronds en notation compacte (« 1 milione di utenti »). La règle de pluriel par défaut de Rails ne connaît que one et other, ce qui suffit pour les compteurs habituels.

Articles, élisions et messages d'erreur ActiveRecord

Une interpolation qui insère un nom pose un problème que le français connaît aussi, mais en plus marqué : l'article italien dépend du genre et de l'initiale du mot (il, lo, la, l'). Une chaîne comme "Eliminare il %{model}?" sera fausse pour « l'utente » ou « la fattura ». Deux solutions sûres : une formule sans article ("Eliminare questo elemento?") ou une clé par modèle.

Même difficulté avec errors.format, qui vaut par défaut "%{attribute} %{message}" : « Email non può essere vuoto » est faux, car email est féminin. Si vos attributs mêlent les genres, un format du type "%{attribute}: %{message}" associé à des messages neutres (« campo obbligatorio ») évite les accords impossibles.

Les libellés de bouton générés par helpers.submit se traduisent bien sans article : « Crea %{model} », « Aggiorna %{model} ».

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

Vous recevez le même fichier, dans le même format, prêt à remettre dans le projet :

  • la clé racine de langue (fr:, en:…) devient it: ;
  • indentation, ordre des clés, guillemets, commentaires, fins de ligne, encodage et BOM sont conservés ; seules les valeurs changent ;
  • chaque valeur traduite est comparée à la source (variables comme %{count} ou %{name}, balises) ; en cas d'écart persistant, la valeur source est gardée et le rapport le signale ;
  • les clés, valeurs vides, URL, adresses email, nombres, couleurs, formats de date, identifiants et tout ce qui est marqué non traduisible restent tels quels.

Le rapport liste les chaînes traduites et celles laissées telles quelles, avec la raison. Le prix porte sur les mots des valeurs, clés et balises exclues ; l'italien est au tarif de base (coefficient ×1).

Conséquence pratique : les formats comme date.formats.default ou number.currency.format ne sont pas modifiés. À vous de les régler pour l'Italie : "%d/%m/%Y", séparateur décimal ,, séparateur de milliers ., symbole après le montant (« 12,50 € »). Manuce ne produit pas non plus de traduction assermentée, si vos conditions d'utilisation devaient en exiger une.

Registre et conventions de l'interface italienne

Le vouvoiement italien se fait à la troisième personne, avec Lei : « Inserisca la Sua password » plutôt que « Inserisci la tua password ». C'est le registre attendu pour une application professionnelle ; si votre marque tutoie, vérifiez sur l'extrait gratuit le registre obtenu avant de commander, et gardez la même forme dans tous les fichiers.

  • Les boutons courts se mettent volontiers à l'impératif ou à l'infinitif : « Salva », « Annulla », « Accedi ».
  • Majuscule seulement au premier mot : « Impostazioni account », pas « Impostazioni Account ».
  • Jours et mois en minuscules : « lunedì », « gennaio ».
  • Accents : « perché » (aigu), « è » (grave) ; en capitale, « È » et non « E' ».

Préparer vos fichiers et vérifier le résultat

Avant le dépôt, assurez-vous que le fichier source est complet : une clé absente en source sera absente en italien. Marquez comme non traduisibles les noms de produit ou d'offre qui doivent rester tels quels.

Après la livraison :

  1. Vérifiez que le YAML se charge : ruby -ryaml -e "YAML.load_file('config/locales/it.yml')". L'italien est riche en apostrophes (l', dell', un') : dans une chaîne entre apostrophes simples, elles doivent être doublées.
  2. Ajoutez :it à config.i18n.available_locales.
  3. Testez les compteurs à 0, 1 et 2, et les formulaires en erreur pour les accords.
  4. Lisez le rapport : chaque chaîne laissée en source y est expliquée.

En pratique

  1. Rassemblez les fichiers config/locales/*.yml de la langue source et marquez ce qui ne doit pas être traduit.
  2. Déposez-les sur Manuce : devis immédiat sur le nombre exact de mots et extrait gratuit d'un paragraphe.
  3. Récupérez les fichiers italiens et le rapport, puis placez-les dans config/locales.
  4. Ajoutez :it aux langues disponibles, réglez dates et nombres, testez pluriels et messages d'erreur.

Questions fréquentes

Les variables comme %{count} ou %{name} restent-elles intactes ?

Oui, chaque valeur traduite est comparée à la source pour les variables et les balises. Si un écart persiste, la valeur source est conservée et le rapport l'indique. Vous savez donc précisément quelles chaînes revoir.

Faut-il prévoir une clé many pour l'italien ?

Pour des compteurs ordinaires, non : one et other suffisent, et la règle de pluriel par défaut de Rails n'utilise que ces deux clés. La catégorie many du CLDR concerne de grands nombres ronds en notation compacte, rares dans une interface.

Les traductions par défaut de Rails (erreurs de validation, noms de mois) sont-elles incluses ?

Manuce traduit les fichiers que vous déposez. Si vos messages ActiveRecord ou vos noms de jours figurent dans ces fichiers, les valeurs sont traduites ; les formats de date et les nombres, eux, restent inchangés et sont à régler pour l'Italie.

La traduction utilise-t-elle Lei ou tu ?

Le registre formel Lei est la convention pour une application professionnelle en italien. Si votre ton est plus familier, contrôlez le registre sur l'extrait gratuit avant de payer, puis vérifiez la cohérence entre fichiers.

Que se passe-t-il pour les noms de marque ou les identifiants ?

Les clés, URL, adresses email, identifiants, nombres et couleurs ne sont pas traduits. Pour un nom de produit écrit en clair dans une valeur, marquez-le comme non traduisible avant le dépôt.

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