Selon les tags présents sur cette page, celle-ci n'a pas été vérifiée pour une des versions LTS supportées d'Ubuntu.
Apportez votre aide…

Comment internationaliser un logiciel libre?

Vous avez créé un logiciel libre et vous souhaitez l'internationaliser? Ce tutoriel décrit les logiciels à installer et la démarche à suivre.

Pré-requis

  • Avoir créé un logiciel libre.

A faire une bonne fois pour toutes

Tout d'abord, il vous faudra:

  • créer un compte Launchpad pour votre application (par exemple https://launchpad.net/monappli )
  • traduire en anglais, si ce n'est pas déjà fait, les chaînes de caractères de votre GUI
  • ajouter "gettext-base" comme dépendance de votre application
  • au début de votre application, charger le ou les fichiers de traduction (.mo) via la syntaxe suivante :
# pour du bash, à adapter pour d'autres langages
set -a
source gettext.sh
set +a
export TEXTDOMAIN=nomdelapplication
export TEXTDOMAINDIR="/usr/share/locale"
. /usr/bin/gettext.sh

À refaire à chaque fois qu'on ajoute une/plusieurs chaînes à traduire

* Dans votre application, utiliser la syntaxe suivante:

# pour du bash, à adapter pour d'autres languages
echo "$(eval_gettext $'Welcome to my first free software')" # par exemple dans fichier1.sh
echo "$(eval_gettext $'Please click here')" # par exemple dans fichier2.sh
  • Fabriquer le fichier de traduction .pot via la commande suivante en lui mettant en argument les fichiers qui contiennent des phrases à traduire:
xgettext --language=Shell --output=nomdelapplication.pot /dossier1/fichier1.sh /dossier2/fichier2.sh
  • Uploader le .pot sur la page "Translations" de votre projet Launchpad (ne pas oublier de valider le .pot)
  • Les traducteurs traduisent
  • Télécharger les .mo depuis Launchpad
  • Placer les .mo dans la source de votre application dans le dossier /usr/share/locale

Voir aussi


Contributeurs principaux : YannUbuntu.