La méthode officielle pour traduire une WebExtension comme Meta-Press.es est d'utiliser l'API i18n
. Malheureusement cette dernière impose de définir soi-même une clé pour chaque portion de texte à traduire, or l'exercice se révèle chronophage, tout particulièrement quand il s'agit de grosse page web comportant plein de petits textes comme les formulaires.
C'est le cas de l'interface principale de Meta-Press.es, ainsi que de sa page de préférences. C'est d'ailleurs le cas de beaucoup de pages de préférences de WebExtensions.
Pour me rapprocher du fonctionnement plus simple du standard GNU gettext
, j'ai décidé d'utiliser l'implémentation gettext.js de Guillaume Potier, et de coder les fonction requise pour :
- collecter les textes à traduire (
xgettext
), - maintenir un fichier
template.json
ainsi que les traductions correspondantes, - et traduire les pages HTML lors de leur chargement.
Comme annoncé précédemment, Meta-Press.es est désormais disponible en anglais, en français, en espagnol et en espéranto !
Si vous souhaitez contribuer une nouvelle langue, il suffit de remplir les blancs du fichier template.json et de proposer votre nouvelle traduction via une pull-request (ou de m'envoyer le fichier par courriel).
Si vous cherchez une manière simple de traduire (internationaliser) votre Addon Firefox, ou au moins sa page de préférences, vous pouvez utiliser ce code, que j'ai publié dans le dépôt séparé gettext_html_auto.js avec sa documentation.
Avec month_nb, c'est le 2e outil réutilisable construit pour Meta-Press.es.
Suivre le flux des commentaires
Note : les commentaires appartiennent à celles et ceux qui les ont postés. Nous n’en sommes pas responsables.