Documentation traducteur

Revision as of 11:28, 3 August 2009 by Eldy (talk | contribs)

Language.png Traduire l'application Dolibarr dans une autre langue

Dolibarr est livré avec plusieurs langues. Par défaut, le Français et l'Anglais sont toujours complets. Les autres langues dépendent des contributions. Cette documentation vous présente comment traduire les fichiers langues pour ajouter une langue non traduite ou traduite de manière incomplète.

Il existe 4 méthodes pour réaliser la traduction de Dolibarr (1 automatique avec autotranslator.php, 3 manuelles avec phpLangEditor, iniTranslation et la méthode complètement manuelle). Les voici par ordre de préférences:

Traduction automatique avec l'outil autotranslator.php

  • OS du traducteur: Tous
  • Outil: autotranslator.php fourni avec Dolibarr 2.5.1 et plus dans le répertoire dev/translation.

Pour traduire ou mettre à jour tous les fichiers dans une nouvelle langue, lancez simplement le script:

 autotranslator.php lang_code_source lang_code_target

Par exemple :

 autotranslator.php en_US pt_PT 

pour traduire en portugais (pt_PT) en utilisant l'anglais (en_US) comme fichiers sources.

Tous les fichiers non existant seront créés, et ceux existant déjà seront mis à jour pour être complétés avec les chaines manquantes. Les chaines déjà traduites sont conservées tel quelles. L'outils utilise le service de traduction Google pour trouver la valeur traduite d'une chaine, aussi un accès internet depuis le poste où est lancé la commande est requis. Votre PHP doit de plus avoir les permissions d'écrire dans le répertoire htdocs/langs directory et doit avoir les fonctions de l'extension curl disponibles.

Traduction manuelle avec le plugin phpLangEditor de Firefox

  • OS du traducteur: Tous
  • Outil: phpLangEditor (plugin pour Firefox)
  1. Installer Firefox et la version 2.5 ou plus du plugin phpLangEditor ( http://code.google.com/p/phplangeditor/ )
  2. Une étape supplémentaire est requise pour finaliser l'installation. Appeler l'URL about:config puis dans le champ filtre, saisissez phplangeditor. Double cliquer sur la ligne phpLangEditor.file.typeOfLangExt et mettre ini a la place de php. phpLangEditor est maintenant prêt pour traduire Dolibarr.
  3. Depuis Firefox, ouvrir phpLangEditor en choisissant le menu Outils -> PHP lang editor.
  4. Cliquez sur "Ouvrir le fichier de référence" et choisissez votre fichier .lang d'origine (par exemple dans votre répertoire Dolibarr, htdocs/langs/en_US/bills.lang
  5. Cliquez sur "Ouvrir le fichier de traduction" et sélectionnez le fichier qui contiendra la traduction, si un fichier existe déjà (par exemple htdocs/langs/es_ES/bills.lang).
  6. Vous pouvez choisir d'afficher tous les termes à traduire ou uniquement les termes non-traduits. Cliquez sur le terme dans la colonne de gauche pour le traduire dans la case du bas. Vous pouvez aussi utiliser des raccourcis-clavier comme CTRL+N pour passer au suivant
  7. Enregistrer le fichier une fois la traduction terminée.
  8. Editer le fichier avec un éditeur de texte pour supprimer ou corriger la première ligne de commentaire. En effet, avec phpLangEditor, il n'est pas possible de traduire les lignes commentées (commençant par un #), aussi le fichier traduit contient une fois enregistré la ligne commentaire du fichier source. Une petite édition manuelle est nécessaire pour corriger ou supprimer cette ligne, bien que cela ne nuise pas au bon fonctionnement du nouveau fichier .lang.

Traduction manuelle avec iniTranslator

  1. Lancer votre application de traduction qui vous demandera le fichier modèle (Par exemple, sous iniTranslator, faire Fichier - Ouvrir Original). Choisir le fichier source modèle dans le répertoire htdocs/langs/en_US ou htdocs/langs/fr_FR, qui sont à jour.
  2. Puis choisissez éventuellement le fichier destination, dans le répertoire htdocs/langs/xx_XX ou xx est le code langue à traduire.
  3. Votre outils affichera les 2 fichiers face à face avec les chaines à traduire manquante.
  4. Compléter
  5. Sauvegarder le nouveau fichier destination.

Attention, iniTranslator souffre d'un grave défaut. Il ne conserve pas l'ordre d'origine des paramètres et tri le fichier généré par ordre alphabétique des clés plutot que dans l'ordre du fichier source. De plus, les zones commentaires du fichiers source ne sont pas repercutées dans le fichier destination traduit.


Traduction manuelle complètement

Pour traduire Dolibarr dans une autre langue, il faut aller dans le répertoire langs et créer un répertoire ayant pour nom le code langue à traduire (En suivant le même format que ceux déjà existant, par exemple en_US, fr_FR, es_ES, de_DE, etc...). Il faut ensuite recopier les fichiers lang depuis un répertoire déjà traduit (par exemple en_US/main.lang ou fr_FR/bills.lang), les recopier dans le répertoire de la nouvelle langue que l'on vient de créer et traduire le contenu de ces fichiers.

Ces fichiers sont constitués de la manière suivante:

Code1=Phrases à traduire 1

Code2=Phrases à traduire 2

...

Coden=Phrases à traduire n

Seules les phrases à droite du = sont à traduire, le code doit rester inchangé. Il est possible de traduire les fichiers un par un, sans tous les traduire d'un coup. Si un fichier n'a pas été traduit dans la nouvelle langue, Dolibarr utilisera l'anglais.


Notons que, pour l'instant, il reste de nombreuses phrases en dur dans le code des pages PHP. Ces dernières doivent etre remplacées par le code suivant:

$langs->trans("CodeX")

Et une entrée du type

CodeX=Phrase X

doit etre ajoutée aux fichiers .lang

Intégrer sa traduction dans Dolibarr

Si vous avez complété des fichiers .lang existant déjà dans Dolibarr mais incomplets :

  • Vous pouvez nous soumettre vos modifications en réalisant un fichier patch suivant la méthode décrite sur la page FAQ Développeur dans la section "Soumettre un patch - Sans accès CVS en ecriture".


Si vous avez créé des nouveaux fichiers .lang pour une nouvelle langue, vous pouvez :

  • Envoyer vos fichier par mail en pièce jointe sur la liste: dolibarr-dev@nongnu.org. Un développeur les intégrera pour vous.


Remarque: Il y a 2 langues maitres, toutes les 2 toujours complètes:

  • Le français (fichiers .lang du répertoire lang/fr_FR)
  • L'anglais (fichiers .lang du répertoire lang/en_US)

Il est possible d'utiliser indifférement l'une ou l'autre (celle qui arrange) comme référence car les 2 sont à jour. Tous les autres fichiers langues sont susceptibles d'être incomplets.

Diffusion de votre traduction

Dans les sources CVS Dolibarr officielles

La meilleure chose à faire, après avoir réalisé une traduction, est de les inclure dans la version officielle de Dolibarr. Ceci est possible si vous connaissez le système CVS. Vous pouvez alors demander à avoir un accès en écriture sur le CVS de Dolibarr avec le grade de FAQ_Développeur#.2A_Z-6PO pour la langue.

En tant qu'extension

Quand vous avez créer une nouvelle langue, si elle n'est pas intégrée dans Dolibarr, elle peut être malgré tout diffuser pour d'autres utilisateurs. Vous pouvez fabriquer un package pour la distribuer en utilisant le script build/makepack-dolibarrlang.pl

Le fichier .tgz fabriqué doit juste être dézippé dans le répertoire Dolibarr pour que la langue soit disponible. Ce fichier peut être envoyé sur le site web http://www.dolibarr.org dans l'espace téléchargement, modules/addon ou sur la mailing-list développeur dolibarr-dev@nongnu.org de Dolibarr.


Language.png Traduire la documentation du wiki

Le wiki est maintenu en 3 langues: Englais, Français et Espagnol. Si vous voulez améliorer la documentation d'une de ces langues, il vous suffit de créer un compte sur ce wiki. Ensuite, vous pouvez modifier toute page qui possède une traduction incorrecte ou traduire une page qui attend d'être traduite. La liste de ces pages est disponible sur la page Category:Page_waiting_for_translation.