Traduire un site web ou un logiciel avec PoEdit
Il arrive fréquemment que l’on tombe sur un plugin ou un logiciel qui ne soit disponible que dans le langue de Shakespeare, ou du moins, qui ne soit pas disponible dans le franc gaulois que nous connaissons bien.
La méthode la plus répandue (et heu… la plus efficace ?) pour rendre un site ou une application multilingue consiste à se servir de GNU Gettext. Cet outil se sert de fichiers de traduction ayant une extension *.mo (le fichier traduit compilé). Vous les trouverez généralement dans un dossier lang, ln, lng, etc.
A partir de là, il y a 2 solutions, soit vous trouvez dans le même dossier ou dans le dossier des sources, un fichier avec une extension *.po (le projet de traduction), soit il va falloir aller farfouiller dans les sources du logiciel pour trouver les textes à traduire. Dans un cas comme dans l’autre, rien de dramatique.
Si vous n’avez pas de fichier *.po disponible, en ouvrant l’un des fichier source du logiciel (ou du site), vous devriez trouver quelque chose qui ressemble à ça :
__( 'english version of the text', 'nomDuSite' )
Il s’agit en fait d’une fonction __() qui appelle la traduction du « english version of the text » pour l’application « nomDuSite ». Le nom de l’application « nomDuSite » est facultatif (ou pas, selon les applis).
Une fois que nous avons nos fichiers sources et le (ou les) noms des fonctions qui appellent les traductions, il ne nous reste plus qu’à installer PoEdit pour nous lancer dans la traduction à proprement parler.
Une fois installé, il faut créer un nouveau catalogue dans PoEdit. Si votre fichier *.mo est déjà présent dans votre projet à traduire, il suffira de l’ouvrir puis d’aller dans Catalogue => Configuration.
Dans cet onglet, il faudra remplir les formes plurielles :
nplurals=2; plural n>1;
Dans l’onglet chemin, bien penser à remplir le chemin complet vers le répertoire racine du projet.
Enfin, dans l’onglet mots clefs, saisir le plus important : le nom de la fonction de traduction (sans les parenthèses), c’est cet élément là qui servira à PoEdit pour repérer automatiquement tous les textes à traduire.
Maintenant, PoEdit est prêt pour aller repérer les chaînes à traduire dans les fichiers sources, il suffira d’aller dans Catalogue => Mettre à jour à partir des sources pour que l’ensemble des termes à traduire apparaissent dans une liste.
Il ne reste plus que le plus long : traduire chaque ligne (dans l’espace blanc en dessous de la version native). Pour les formes plurielles, 2 solutions sont proposées directement par Poedit, il suffit alors de remplir les deux cas possibles. Si une valeur est passée à la traduction, elle le sera sous la forme habituelle « %s ».
Un simple clic sur Enregistrer sauvegardera automatiquement le fichier de projet (PO) et le fichier de traduction compilé (MO).
Bonnes traductions 😉
Et si vous avez d’autres astuces, je suis preneur !
[…] Traduire un site web ou un logiciel avec PoEdit | SousLesToits. […]