4.5. Traductions dans d'autres langues

4.5.1. Mise à jour des traductions

Les textes de l'application ne sont pas codés en dur, mais sont placés dans des fichiers « property ». Ainsi, programmeurs et traducteurs peuvent travailler d'une façon relativement indépendante. Pauker a déjà été traduit en quelques langues, mais on peut faire mieux. La figure suivante montre à quels endroits sont rangés les fichiers des textes de l'application dans les différentes langues.

Pour éditer les traductions, vous devez faire un clic droit sur le fichier Strings.properties et choisir le menu option « Open ». Attention! Ni le double clic sur Strings.properties, ni le clic-droit->Edit ne fonctionnent comme attendu!

Après avoir ouvert le fichier Strings.properties, un nouveau formulaire apparaît, dans lequel toutes les traductions sont affichées (voir figure suivante). Vous pouvez maintenant éditer les traductions.

Malheureusement, cette vue n'est pas présentée très clairement. En double cliquant sur l'onglet « Strings.properties », vous pouvez maximiser le formulaire. Si vous voulez éditer une traduction précise, vous pouvez réduire les colonnes des autres langues (Voir figure suivante).

Maintenant, nous pouvons travailler à la traduction avec cet outil.

Notez qu'il n'est pas utile de traduire les textes qui sont identiques dans votre langue aux textes de la colonne de langue par défaut. Par exemple, en Anglais, le mot « Status » est identique à sa traduction en Allemand « Status », il ne sera pas traduit. (voir figure suivante). La même règle s'applique aux différentes variantes de langues: Par exemple, l'allemand en Allemagne et en Suisse s'écrivent exactement de la même manière, excepté le caractère « ß » qui est remplacé par « ss ». Ainsi, la traduction de « de_CH - German (Switzerland) » est presque vide, sauf pour quelques exceptions. Par exemple: « Größe » est traduit par « Grösse »

En plus des textes du logiciel, vous pourrez traduire le fichier credits_<votre_code_de_langue>.html (voir figure suivante):

Ce fichier est affiché via le menu « AideÀ propos... » de Pauker.

Un autre fichier à traduire est celui concernant l'information de licence de Pauker. Ce fichier est nommé license_<your language code>.html (voir figure suivante):

Il y a déjà quelques traductions non officielles de la licence sur le site web suivant: http://www.gnu.org/licenses/translations.html

Un autre document devant être traduit est le fichier d'aide. Cette documentation est écrite au format DocBook. Pour plus d'informations sur ce format, veuillez consulter le site suivant: http://www.docbook.org

Le code source de ce document est dans le répertoire « doc » du répertoire Pauker. (voir figure suivante):

Vous pouvez éditer le fichier Pauker.docbook directement dans NetBeans. Il est vivement conseillé de configurer NetBeans pour éditer les fichiers .docbook comme des fichiers XML. NetBeans affichera alors la coloration syntaxique, et offrira la possibilité de valider en ligne le document. Pour cela, ajoutez l'élément « docbook » dans « ToolsOptionsAdvanced OptionsIDE ConfigurationSystemObject TypesXML ObjectsExtensions and MIME Types »

Pauker utilise JavaHelp pour afficher l'aide en ligne. Pour plus d'information, veuillez consulter le site web: https://javahelp.dev.java.net

Pour transformer le fichier Pauker.docbook au format JavaHelp, nous utilisons XSLT. Voir le site suivant: http://www.w3.org/TR/xslt

La transformation des fichiers docbook de Pauker en JavaHelp dans toutes les langues est un processus relativement complexe. C'est pourquoi, une cible Ant « 1_create-docs » a été écrite pour faire tout cela automatiquement. (voir figure suivante):

Cette tache Ant doit fonctionner sur toutes les distributions Linux si vous avez installé le logiciel « xsltproc » Pour plus d'information sur l'écriture d'une cible Ant, consultez le site: http://ant.apache.org

Pour pouvoir visualiser le résultat, vous devez lancer Pauker avec la traduction mise à jour. Appuyez simplement sur la touche F6.

Pour voir Pauker avec la nouvelle traduction, votre system d'exploitation peut être démarré dans la langue de votre nouvelle traduction. Si vous ne pouvez ou ne voulez pas changer la langue de votre système d'exploitation, vous pouvez configurer le project Pauker dans netbeans comme ceci: Faites un clic droit sur le projet« Pauker » et choisissez le menu « Properties ».

Dans les propriétes du projet, catégorie « Run » vous pouvez soit choisir une langue déjà existante à partir de la liste déroulante en haut de la fenêtre, ou si votre langue cible n'existe pas encore, vous pouvez ajouter une nouvelle configuration et régler les options de la machine virtuelle java ( VM-Options) comme ceci: -Duser.language=<language code> et -Duser.country=<country code>.

Après cela, vous pouvez relancer Pauker en pressant la touche F6.

Vous pouvez facilement permuter les différentes configurations de langue en utilisant la liste déroulante suivante sur la barre d'outils de netbeans:

4.5.2. Ajout de traductions

Si vous ne voulez pas juste étendre ou corriger une traduction mais plutôt ajouter une nouvelle langue, faites un clic droit sur Strings.properties et sélectionnez le menu « Add Locale... ».

Pour être utilisé dans tous les pays où la langue est parlé, vous ne devriez pas utiliser d'autres spécialisations comme le code pays ou des variantes.

En complément de l'ajout d'un fichier Strings_<langue>.properties vous devrez également créer et traduire un nouveau fichier de remerciements en suivant les étapes décrites:

  1. sélectionner credits.html

  2. copier le fichier, ex: en faisant Ctrl+C

  3. sélectionner le package « pauker »

  4. coller le fichier ex: en faisant Ctrl+V

  5. renommer le fichier credits_1.html, ex: clic droit et selection du menu « Rename... » puis changer le nom du fichier en credits_<langue>.html

Dans votre nouveau fichier Strings_<langue>.properties vous devez régler la traduction du texte « About_Message_File » pour qu'il pointe sur votre nouveau fichier de remerciements credits_<language>.html.

Le fichier à traduire suivant est celui contenant les informations de licence license.html. Copiez le puis renommez le en suivant les mêmes étapes que pour le fichier de remerciements. (voir plus haut). Veuillez noter qu'il existe déjà un certain nombre de traductions non officielles. Voir sur le site: « Unofficial GNU License Translations Page »: http://www.gnu.org/licenses/translations.html

Dans votre nouveau fichier Strings_<langue>.properties vous devez régler la traduction du texte « License_File » pour qu'il pointe sur votre nouveau fichier de licence license_<langue>.html.

Enfin, il ne reste plus qu'à traduire le fichier d'aide. Pour cela, vous devez:

  1. Créer un nouveau répertoire pour votre langue dans le répertoire doc/docbook/.

  2. Copier le fichier Pauker.docbook à partir d'une autre langue dans votre répertoire.

  3. Traduire votre copie de Pauker.docbook.

  4. Modifier la cible Ant « 1_create-docs »pour gérer la transformation docbook vers javahelp.