Implémentation de l'internationalisation via des fichiers de langue

4.0
Implémentation de l'internationalisation via des fichiers de langue
0
Tags: #<Tag:0x00007f13d71ec318>

#1

Bonjour,

Nous sommes confrontés à la situation suivante : après mise en production d’une appli mono-lingue, la maîtrise d’ouvrage nous demande une version anglaise. Notre analyse est que cela est coûteux car il faut repasser à la main dans tous les recoins de l’appli pour rajouter des labels dans la nouvelle langue.

Si les labels était déportés dans un fichier de langue, ce serait plus rapide : il suffirait de copier/coller le fichier de langue et de traduire chaque terme. Est-ce que c’est une réflexion que vous avez déjà eu de votre côté?


(David AZOULAY) #2

C’est facilement faisable en faisant des export CSV (en designer pour bien avoir le format technique) des traductions dans la langue A, les transposer dans la langue B et les réimporter.

Idem pour les textes statiques et les valeurs de listes de valeurs


(François Genestin) #3
  • Depuis l’interface en designer, on peut aller dans le Menu “Traduction” et faire des export/import en masse via CSV
  • On peut aussi exporter son module en XML et en extraire toutes les sections qui contiennent des libellés (Translate*, ListOfValue…), tout traduire et les mettre dans des modules CrbLangENU, CrbLangBZH… isolés

#4

Ok merci, il faudra qu’on teste ça.

Apparemment Rosanne a un autre problème d’internationalisation, qui n’est pas de votre ressort. Elle a développé dans son appli toute une partie “administration fonctionnelle” qui permet aux métiers un certains degré d’autonomie dans la personnalisation: rajouter des valeurs possibles dans une liste déroulante, voire rajouter des champs à un formulaire. Forcément, ces développements spécifiques n’ont pas été prévus pour être multiligues. Il va falloir qu’on chiffre ça…


(François Genestin) #5

Il faudra dans ce cas donner les droits au métier pour accéder aux onglets “Traduction” :

  • des libellés des enum (FieldListValue)
  • des Attributs (TranslateField)
  • des texte statiques (ListOfValue)

Autre impact : si vous avez placé des libellés “en dur” dans les templates des objets ou des vues.
Il faudra les migrer en texte statique traduit à la volée exemple

<div class="text" data-text="XXX"></div>
<h2 class="text" data-text="XXX"></h2>
<p class="text" data-text="XXX"></p>
<span class="text" data-text="XXX"></span>

où XXX est un code de texte statique à livrer dans tous les langues.