Traduction d'un plugin DotClear2
Par ȷulmud le dimanche 31 décembre 2006, 09:09 - Pense-bête - Lien permanent
La méthode choisie dans DotClear2 pour la traduction des plugins est basée sur gettext, et est fondamentalement différente de celle qui était utilisée dans DotClear 1. Puisque j'ai découvert ce monde en tentant de traduire mon premier plugin, voici quelques notes sur la manière de procéder pour générer les fichiers de traduction.
Pour la première traduction d'un nouveau plugin :
xgettext -L PHP --keyword=__ *.php mv messages.po messages.pot mkdir -p locales/fr msginit --locale=fr -o locales/fr/main.po
Lors de mises à jour du plugin, pour fusionner les nouvelles chaînes dans le plugin avec celles déjà traduites :
xgettext -L PHP --keyword=__ *.php mv -f messages.po messages.pot msgmerge -U locales/fr/main.po messages.pot
Mise à jour, 1er janvier 2007, 09h42 : Il semble également exister le plugin langOmatic de Tigroux pour se simplifier la tâche de traduction... Je ne l'ai pas testé toutefois.
Mise à jour, 3 février 2008, 10h06 : Il y avait une coquille qui s'était glissée dans l'appel à msginit
. L'article est maintenant corrigé. Merci à Osku de me l'avoir signalé.
Commentaires
Salut,
Il n'y aurait pas une coquille dans
locales/fr/main.php
? C'est plutôt unmain.po
je pense ?Merci pour l'astuce :)
Osku : Oups, effectivement, il y avait une coquille qui s'était glissée pour l'appel à msginit. J'ai corrigé l'article. Merci beaucoup.
Que penses tu de l'amélioration suivante : (afin de supprimer le message.pot de la racine du plugin)
Et pour la MAJ:
Merci encore pour l'astuce, je m'en suis servi pas plus tard qu'hier :)