Documentation traducteur: Difference between revisions

Tag: 2017 source edit
 
(115 intermediate revisions by 14 users not shown)
Line 1: Line 1:
== Traduire Dolibarr dans une autre langue ==
<!-- BEGIN interlang links -->
Dolibarr est par défaut développé en Français et Anglais
<!-- Do NOT edit this section
    Links below are automatically managed by PolyglotBot
    You can edit links on the English source page : Translator_documentation -->
[[en:Translator_documentation]]
[[es:Documentación_traductores]]
[[de:Dokumentation_Uebersetzung]]
[[zh:翻译文档]]
<!-- END interlang links -->
{{#metamaster:keywords|traduction, documentation, traducteur, localisation, localiser, internationalise, langage}}
=[[File:Language.png]] Traduire l'application Dolibarr dans une autre langue=
Dolibarr est livré avec plusieurs langues. Par défaut, l'Anglais est toujours complet. 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 3 méthodes pour réaliser la traduction de Dolibarr:
 
#Manuelle en utilisant Transifex.com (officielle et recommandée).
#Manuelle par modification des fichiers langues
#Automatique avec autotranslator.php


Il existe 3 méthodes pour réaliser la traduction de Dolibarr (phpLangEditor, iniTranslation et la méthode manuelle).
Les voici par ordre de préférences:
Les voici par ordre de préférences:




=== Traduction via le plugin phpLangEditor de Firefox ===
==Traduction manuelle en utilisation le service en ligne de traduction Transifex (recommandé)==
* OS du traducteur: Tous
 
* Outil: phpLangEditor (plugin pour Firefox)
Transifex est une solution web qui fournit une plateforme pour la traduction des projets. Cela inclut la gestion d'équipes et de discussions, la mémoire de traduction, glossaires, and nombreuses autres fonctionnalités.
C'est assez simple d'utilisation et toute traduction peut être soumise ou récupérer à traver de l'interface web ou en utilisant le client TX dans un terminal.
 
Transifex fournit un service hébergé en ligne.
 
==Créer un compte transifex et choisissez votre langue==
Si vous souhaitez contribuer à la traduction de Dolibarr dans votre langue, référez-vous s'il vous plaît au lien suivant : https://app.transifex.com/dolibarr-association/dolibarr/dashboard/, puis vérifiez si votre langue est prise en compte.
Si elle existe (plusieurs équipes sont disponibles pour travailler sur le projet), vous pouvez demander à rejoindre l'équipe et commencer à traduire tout de suite. S'il n'existe pas d’équipe pour votre langue, vous pouvez demander une nouvelle équipe sur Transifex. Cela peut être fait directement sur le site Web de http://transifex.com
 
===Utilisation de l'interface Web (pour les traducteurs)===
Si la langue est déjà disponible sur la page https://app.transifex.com/dolibarr-association/dolibarr/dashboard/, créez un compte et suivez les instructions du site Web de transifex pour traduire les fichiers.
 
Notez que cette interface Web ne doit pas être utilisée pour traduire le langage en_US source. Toute modification de la langue source doit être effectuée en soumettant une modification de code à l'aide de demandes d'extraction GitHub.
 
===Utilisation du client en ligne de commande TX (pour Dolibarr [[:Category:Yoda]] team)===
Ceci décrit comment utiliser Transifex à partir de la ligne de commande. Toutefois, cela est réservé aux administrateurs Dolibarr pour synchroniser Transifex avec les sources principales de Dolibarr.
 
[http://docs.transifex.com/developer/client/ Documentation officielle]
 
====TX Client configuration====
Installez d'abord TX Client.
Avec Debian/Ubuntu/Mint:
<source lang="bash">
apt-get install python-pip
pip install transifex-client
</source>
Ensuite, vous devez initialiser votre environnement TX. Ceci est fait en exécutant '''tx init'''  dans le répertoire racine du projet dolibarr.
<source lang="bash">
cd git/dolibarr
tx init
</source>
Acceptez pour écraser le fichier de configuration. Conservez la valeur par défaut pour l'instance Transifex, puis entrez votre identifiant et votre mot de passe Transifex.
 
After this, a .transifexrc has been created into your HOME dir and a generic config file has been created as '''.tx/config''' dans la racine du projet.
Ainsi, le contenu de votre répertoire ressemblera à cela:
<code><pre>
.
|-- build
|-- build.xml
|-- ChangeLog
|-- COPYING
|-- COPYRIGHT
|-- dev
|-- doc
|-- .gitignore
|-- htdocs
|-- INSTALL
|-- pom.xml
|-- quickbuild.xml
|-- README
|-- README-FR
|-- README.md
|-- robots.txt
|-- scripts
|-- test
`-- .tx
</pre></code>
 
The current config file can be downloaded from https://github.com/Dolibarr/dolibarr/tree/develop/.tx , put it into .tx directory, overwriting the one created by '''tx init'''
 
This project configuration file is used to store the project’s details and the file-to-resource mappings.
 
That is a sample of what the config file contains:
 
<source lang="ini">
[main]
host = https://www.transifex.com
lang_map = uz: uz_UZ
 
[dolibarr.admin]
file_filter = htdocs/langs/<lang>/admin.lang
source_file = htdocs/langs/en_US/admin.lang
source_lang = en_US
type = MOZILLAPROPERTIES
</source>


# Installer Firefox et la version 2.5 ou plus du plugin phpLangEditor ( http://code.google.com/p/phplangeditor/ )
Here is an explanation of the sections and options used in the config file:
# 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.
# Depuis Firefox, ouvrir phpLangEditor en choisissant le menu '''Outils -> PHP lang editor'''.
# 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
# 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).
# 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
# Enregistrer le fichier une fois la traduction terminée.
# 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 par iniTranslator ===
<nowiki>[main] section</nowiki>
* OS du traducteur: Windows
* Outil: [http://initranslator.sf.net iniTranslator] (sous Windows).


# 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.
In this section we have project-wide options, such as the default transifex host for all projects. These can be overriden by each resource, in case it is needed.
# Puis choisissez éventuellement le fichier destination, dans le répertoire htdocs/langs/xx_XX ou xx est le code langue à traduire.
# Votre outils affichera les 2 fichiers face à face avec les chaines à traduire manquante.
# Compléter
# 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.
<nowiki>[dolibarr.resource]</nowiki>


source_lang: this is the source language of the resource.<br />
source_file: this points to the source file directly.<br />
file_filter: here we hold the expression used to identify translation files under the specific project. ''not mandatory''<br />
trans.<lang>: this is used for translation files that don’t follow a common naming schema and the file expression cannot be used to track them. ''not mandatory''<br />
host: in case the project doesn’t use the default Transifex server as specified in the [main] section, it can override it using this option. ''not mandatory''<br />


=== Traduction manuelle ===
====TX Client use====
Some useful information on '''tx''' commands.
 
'''tx status'''
 
Show status of translations
 
'''tx push'''
 
Used to push changes from your computer to Transifex server<br>
Additional options for the tx push command are:
<code><pre>
-h - Shows the help screen for the command
-l <lang> - Specify which translations you want to push (defaults to all)
-r <resource> - Specify the resource for which you want to push the translations (defaults to all)
-f - Push source files without checking modification times
--skip - Don't stop on errors. Useful when pushing many files concurrently.
-s - Push the source file to the server
-t - Push the translation files to the server
--no-interactive - Don't require user input when forcing a push</pre></code>
 
'''tx pull'''
 
Used to pull changes from Transifex server to your computer<br />
Additional options for the tx pull command are:
<code><pre>
-h - Shows the help screen for the command
-l <lang> - Specify which translations you want to pull (defaults to all)
-r <resource> - Specify the resource for which you want to pull the translations (defaults to all)
-a - Fetch all translation files from server (even new ones)
-s - Force the fetching of the source file (default: False)
-f - Force download of translations files
--skip - Don't stop on errors. Useful when pushing many files concurrently.
--disable-overwrite - By default Transifex will fetch new translations files and replace existing ones. Use this flag if you want to disable this feature.
--minimum_perc=VALUE - Specify the minimum acceptable percentage of a translation in order to download it.</pre></code>
 
'''Examples'''
 
To pull translation files, you can use:
 
<source lang="bash">
tx -d pull -l it_IT  # Get italian language only
tx -d pull -a  # Get all languages
</source>
 
To push source files, just type:
 
<source lang="bash">
tx -d push -t -l it_IT [-r dolibarr.file]  # To push only a specific translation file
tx -d push -s  # To push source file
</source>
 
===Other questions on transifex process===
This is short questions and answer yuo may also ask about transifex translation process:
 
1) Is the sync on a regular time interval ?
 
No. It is done where there is enough translation submited. It is also done on a beta branch just before creating the final release package.
2) Are all the translations synced to git, or only the reviewed translations. Do I need to review before sync is done ?
 
When a Sync is done, transifex files overwrites files into git, but only if there is at least on record modified for the file.
You don't have to make review before sync is done. Making review is above all to know which lines were manually reviewed and wich one were intially translated using a robot.
3) In which Dolibarr releases will translations be available ? Are transifex translations also synced to maintenance releases ?
 
Sync is always done on develop and/or beta.
So transifex changes appear in all version whose branch is created after the transifex change (a sync is always done before creating a new branch). Once a branch is created, then new changes into transifex will be available only for next branch. Reason of this is that transifex is not able to manage branch/versions (not yet).
 
==Traduction manuelle complètement (non recommandé)==


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...).
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...).
Line 39: Line 189:
Ces fichiers sont constitués de la manière suivante:
Ces fichiers sont constitués de la manière suivante:


<source lang="ini">
Code1=Phrases à traduire 1
Code1=Phrases à traduire 1
Code2=Phrases à traduire 2
Code2=Phrases à traduire 2
...
...
Coden=Phrases à traduire n
Coden=Phrases à traduire n
</source>


Seules les phrases à droite du = sont à traduire, le code doit rester inchangé.
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.
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.


Pour avoir une chaine variable selon la langue dans le code PHP, tout ce que vous avez à faire  et de charger le fichier lang et d'utiliser la méthode pour récupérer la variable traduite. Ceci peut se faire de la manière suivante:


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:
<source lang="php">
$langs->load("nomdufichier"); // ou $langs->load("nomdufichier@monmodule") si monfichier.lang est dans le répertoire htdocs/monmodule/langs/xx_XX 


$langs->trans("CodeX")
print $langs->trans("CodeX")
</source>


Et une entrée du type
Et une entrée du type
<source lang="ini">
CodeX=Phrase X
</source>
doit être ajoutée aux fichiers .lang


CodeX=Phrase X


doit etre ajoutée aux fichiers .lang
==Traduction automatique avec l'outil autotranslator.php (non recommandée)==


== Intégrer sa traduction dans Dolibarr ==
*OS du traducteur: Tous
*Outil: autotranslator.php fourni avec Dolibarr dans le répertoire '''dev/translation'''.


'''Si vous avez complété des fichiers .lang existant déjà dans Dolibarr mais incomplets :'''
Pour traduire ou mettre à jour tous les fichiers dans une nouvelle langue, lancez simplement le script:
<source lang="bash">
php autotranslator.php lang_code_source lang_code_target GOOGLEAPIKEY
</source>
Par exemple<span> </span>:
<source lang="bash">
php autotranslator.php en_US pt_PT GOOGLEAPIKEY
</source>
pour traduire en portugais (pt_PT) en utilisant l'anglais (en_US) comme fichiers sources.


* Vous pouvez nous soumettre vos modifications en réalisant un fichier patch suivant la méthode décrite sur la page [[FAQ_D%C3%A9veloppeur#Modification_du_code.2C_participer_au_d.C3.A9veloppement|FAQ Développeur]] dans la section "Sans accès CVS en ecriture".
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'outil utilise le service de [http://translate.google.com 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.
De plus, une clé pour utiliser les API Google Translate sont nécessaire et Google fait payer l'utilisation de cette API (20 $ / 1 000 000 de caractères traduits).
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.


=[[File:Language.png]] Diffusion ou intégration en standard de votre traduction=


'''Si vous avez créé des nouveaux fichiers .lang pour une nouvelle langue, vous pouvez :'''
La meilleure chose à faire, après avoir réalisé une traduction, est de les inclure dans la version officielle de Dolibarr.


* Envoyer vos fichier par mail en pièce jointe sur la liste: dolibarr-dev@nongnu.org. Un développeur les intégrera pour vous.
Si vous avez complété des fichiers .lang existant déjà dans Dolibarr mais incomplets ou si vous avez créé des nouveaux fichiers .lang pour une nouvelle langue, vous pouvez<span> </span>:


*Si la traduction a été faite en utilisant le système Transifex, il n'y a rien de particulier à faire. Votre traduction sera intégré lors des synchros régulières qui ont lieu avec les sources Git officielles (au moins 1 par mois).
*Si la traduction a été faite dans des fichiers directement pour les langues en_US, pt_BR, xx_ES, ..., il est possible de les intégrer si vous connaissez le système GIT. Pour cela, créer un compte sur {{TemplateUrlSCM}}, forker le projet, modifier les fichiers concernés et envoyer une Pull Request. A défaut de savoir utiliser GIT, envoyer vos fichiers sur la mailing-list des développeurs '''dolibarr-dev''' (Inscription sur {{TemplateURLMLDev}}.


''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.


''Remarque:'' Il y a une langue maitre toujours complète:


== Diffusion de votre langue ==
*L'anglais (fichiers .lang du répertoire lang/en_US)


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'''
Tous les autres fichiers langues sont susceptibles d'être incomplets.


Le fichier .tgz fabriqué doit juste être dézippé dans le répertoire Dolibarr pour que la langue soit disponible.
=[[File:Language.png]] Traduire la documentation du wiki=
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 de Dolibarr.
Le wiki est maintenu en 3 langues: Anglais, 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]].

Latest revision as of 09:34, 17 April 2026


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

Dolibarr est livré avec plusieurs langues. Par défaut, l'Anglais est toujours complet. 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 3 méthodes pour réaliser la traduction de Dolibarr:

  1. Manuelle en utilisant Transifex.com (officielle et recommandée).
  2. Manuelle par modification des fichiers langues
  3. Automatique avec autotranslator.php

Les voici par ordre de préférences:


Traduction manuelle en utilisation le service en ligne de traduction Transifex (recommandé)

Transifex est une solution web qui fournit une plateforme pour la traduction des projets. Cela inclut la gestion d'équipes et de discussions, la mémoire de traduction, glossaires, and nombreuses autres fonctionnalités. C'est assez simple d'utilisation et toute traduction peut être soumise ou récupérer à traver de l'interface web ou en utilisant le client TX dans un terminal.

Transifex fournit un service hébergé en ligne.

Créer un compte transifex et choisissez votre langue

Si vous souhaitez contribuer à la traduction de Dolibarr dans votre langue, référez-vous s'il vous plaît au lien suivant : https://app.transifex.com/dolibarr-association/dolibarr/dashboard/, puis vérifiez si votre langue est prise en compte. Si elle existe (plusieurs équipes sont disponibles pour travailler sur le projet), vous pouvez demander à rejoindre l'équipe et commencer à traduire tout de suite. S'il n'existe pas d’équipe pour votre langue, vous pouvez demander une nouvelle équipe sur Transifex. Cela peut être fait directement sur le site Web de http://transifex.com

Utilisation de l'interface Web (pour les traducteurs)

Si la langue est déjà disponible sur la page https://app.transifex.com/dolibarr-association/dolibarr/dashboard/, créez un compte et suivez les instructions du site Web de transifex pour traduire les fichiers.

Notez que cette interface Web ne doit pas être utilisée pour traduire le langage en_US source. Toute modification de la langue source doit être effectuée en soumettant une modification de code à l'aide de demandes d'extraction GitHub.

Utilisation du client en ligne de commande TX (pour Dolibarr Category:Yoda team)

Ceci décrit comment utiliser Transifex à partir de la ligne de commande. Toutefois, cela est réservé aux administrateurs Dolibarr pour synchroniser Transifex avec les sources principales de Dolibarr.

Documentation officielle

TX Client configuration

Installez d'abord TX Client. Avec Debian/Ubuntu/Mint:

apt-get install python-pip
pip install transifex-client

Ensuite, vous devez initialiser votre environnement TX. Ceci est fait en exécutant tx init dans le répertoire racine du projet dolibarr.

cd git/dolibarr
tx init

Acceptez pour écraser le fichier de configuration. Conservez la valeur par défaut pour l'instance Transifex, puis entrez votre identifiant et votre mot de passe Transifex.

After this, a .transifexrc has been created into your HOME dir and a generic config file has been created as .tx/config dans la racine du projet. Ainsi, le contenu de votre répertoire ressemblera à cela:

.
|-- build
|-- build.xml
|-- ChangeLog
|-- COPYING
|-- COPYRIGHT
|-- dev
|-- doc
|-- .gitignore
|-- htdocs
|-- INSTALL
|-- pom.xml
|-- quickbuild.xml
|-- README
|-- README-FR
|-- README.md
|-- robots.txt
|-- scripts
|-- test
`-- .tx

The current config file can be downloaded from https://github.com/Dolibarr/dolibarr/tree/develop/.tx , put it into .tx directory, overwriting the one created by tx init

This project configuration file is used to store the project’s details and the file-to-resource mappings.

That is a sample of what the config file contains:

[main]
host = https://www.transifex.com
lang_map = uz: uz_UZ

[dolibarr.admin]
file_filter = htdocs/langs/<lang>/admin.lang
source_file = htdocs/langs/en_US/admin.lang
source_lang = en_US
type = MOZILLAPROPERTIES

Here is an explanation of the sections and options used in the config file:

[main] section

In this section we have project-wide options, such as the default transifex host for all projects. These can be overriden by each resource, in case it is needed.

[dolibarr.resource]

source_lang: this is the source language of the resource.
source_file: this points to the source file directly.
file_filter: here we hold the expression used to identify translation files under the specific project. not mandatory
trans.<lang>: this is used for translation files that don’t follow a common naming schema and the file expression cannot be used to track them. not mandatory
host: in case the project doesn’t use the default Transifex server as specified in the [main] section, it can override it using this option. not mandatory

TX Client use

Some useful information on tx commands.

tx status

Show status of translations

tx push

Used to push changes from your computer to Transifex server
Additional options for the tx push command are:

-h - Shows the help screen for the command
-l <lang> - Specify which translations you want to push (defaults to all)
-r <resource> - Specify the resource for which you want to push the translations (defaults to all)
-f - Push source files without checking modification times
--skip - Don't stop on errors. Useful when pushing many files concurrently.
-s - Push the source file to the server
-t - Push the translation files to the server
--no-interactive - Don't require user input when forcing a push

tx pull

Used to pull changes from Transifex server to your computer
Additional options for the tx pull command are:

-h - Shows the help screen for the command
-l <lang> - Specify which translations you want to pull (defaults to all)
-r <resource> - Specify the resource for which you want to pull the translations (defaults to all)
-a - Fetch all translation files from server (even new ones)
-s - Force the fetching of the source file (default: False)
-f - Force download of translations files
--skip - Don't stop on errors. Useful when pushing many files concurrently.
--disable-overwrite - By default Transifex will fetch new translations files and replace existing ones. Use this flag if you want to disable this feature.
--minimum_perc=VALUE - Specify the minimum acceptable percentage of a translation in order to download it.

Examples

To pull translation files, you can use:

tx -d pull -l it_IT  # Get italian language only
tx -d pull -a   # Get all languages

To push source files, just type:

tx -d push -t -l it_IT [-r dolibarr.file]   # To push only a specific translation file
tx -d push -s  # To push source file

Other questions on transifex process

This is short questions and answer yuo may also ask about transifex translation process:

1) Is the sync on a regular time interval ?

No. It is done where there is enough translation submited. It is also done on a beta branch just before creating the final release package.

2) Are all the translations synced to git, or only the reviewed translations. Do I need to review before sync is done ?

When a Sync is done, transifex files overwrites files into git, but only if there is at least on record modified for the file. You don't have to make review before sync is done. Making review is above all to know which lines were manually reviewed and wich one were intially translated using a robot.

3) In which Dolibarr releases will translations be available ? Are transifex translations also synced to maintenance releases ?

Sync is always done on develop and/or beta. So transifex changes appear in all version whose branch is created after the transifex change (a sync is always done before creating a new branch). Once a branch is created, then new changes into transifex will be available only for next branch. Reason of this is that transifex is not able to manage branch/versions (not yet).

Traduction manuelle complètement (non recommandé)

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.

Pour avoir une chaine variable selon la langue dans le code PHP, tout ce que vous avez à faire et de charger le fichier lang et d'utiliser la méthode pour récupérer la variable traduite. Ceci peut se faire de la manière suivante:

$langs->load("nomdufichier"); // ou $langs->load("nomdufichier@monmodule") si monfichier.lang est dans le répertoire htdocs/monmodule/langs/xx_XX   

print $langs->trans("CodeX")

Et une entrée du type

CodeX=Phrase X

doit être ajoutée aux fichiers .lang


Traduction automatique avec l'outil autotranslator.php (non recommandée)

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

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

php autotranslator.php lang_code_source lang_code_target GOOGLEAPIKEY

Par exemple :

php autotranslator.php en_US pt_PT GOOGLEAPIKEY

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'outil 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. De plus, une clé pour utiliser les API Google Translate sont nécessaire et Google fait payer l'utilisation de cette API (20 $ / 1 000 000 de caractères traduits). 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.

Language.png Diffusion ou intégration en standard de votre traduction

La meilleure chose à faire, après avoir réalisé une traduction, est de les inclure dans la version officielle de Dolibarr.

Si vous avez complété des fichiers .lang existant déjà dans Dolibarr mais incomplets ou si vous avez créé des nouveaux fichiers .lang pour une nouvelle langue, vous pouvez :

  • Si la traduction a été faite en utilisant le système Transifex, il n'y a rien de particulier à faire. Votre traduction sera intégré lors des synchros régulières qui ont lieu avec les sources Git officielles (au moins 1 par mois).
  • Si la traduction a été faite dans des fichiers directement pour les langues en_US, pt_BR, xx_ES, ..., il est possible de les intégrer si vous connaissez le système GIT. Pour cela, créer un compte sur https://github.com/Dolibarr/dolibarr, forker le projet, modifier les fichiers concernés et envoyer une Pull Request. A défaut de savoir utiliser GIT, envoyer vos fichiers sur la mailing-list des développeurs dolibarr-dev (Inscription sur https://savannah.nongnu.org/mail/?group=dolibarr.


Remarque: Il y a une langue maitre toujours complète:

  • L'anglais (fichiers .lang du répertoire lang/en_US)

Tous les autres fichiers langues sont susceptibles d'être incomplets.

Language.png Traduire la documentation du wiki

Le wiki est maintenu en 3 langues: Anglais, 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.