Traduction de programmes avec des fichiers *.po (internationalisation)

Les fichiers de traduction utilisent des fichiers *.po ou *.mo.

Il suffit donc de récupérer le fichier original et de l'éditer.

Pré-requis

Installez le paquet Gtranslator ou en ligne de commande :

$ sudo apt install Gtranslator

Installez le paquet spellutils

$ sudo apt install spellutils

Installez le paquet aspell ou en ligne de commande :

$ sudo apt install aspell

Pour installer le français, Allez sur https://ftp.gnu.org/gnu/aspell/dict/0index.htmlTéléchargez et décompressez le dictionnaire français dans un répertoire de travailSi Aspell et Pspell sont installés et que aspell, word-list-compress et pspell-config sont dans le path, commencez par : $ ./configure Finding Dictionary file location ... /usr/lib/aspell Finding Data file location ... /usr/lib/aspell Construisez le paquet avec: $ sudo make installez-le avec : $ sudo make install Pour nettoyer après la construction : $ sudo make clean Pour désinstaller les fichiers : $ sudo make uninstall Une fois les listes de mots installées, vous pouvez exécuter aspell avec l'option --language-tag=fr. Vous pouvez aussi choisir le dictionnaire l'option -d ou --master d'Aspell. Vous pouvez choisir un des dictionnaires suivants : fr_CH-40fr_CH-60fr_CH-80fr_FR-40fr_FR-60fr_FR-80

Première étape : charger le fichier *.po ou *.pot fourni par le programmeur

*.po est le fichier en cours de traduction, *.pot est un modèle vide à remplir.

Par exemple, pour gnome-recipes : allez sur la page gnome de gnome-recipes https://wiki.gnome.org/Apps/Recipescliquez sur le lien Development Resources :cliquez sur le lien Translations :cliquez sur le lien de la traduction à travailler :un clic droit sur le bouton du fichier po :choisissez Enregistrer la cible du lien sous et enregistrez le fichier po dans un répertoire de travail.

Autres étapes

Démarrage

Ouvrez le fichier *.po dans Gtranslator :

Traduire

Traduisez les phrases.

Attention : Cette traduction automatique peut être assez approximative ! D'ailleurs, le résultat est marqué comme tel, sur fond jaune ! Il convient donc de tout vérifier ! Démonstration : list -> liste add gallery -> Ajouter une langue Directory to scan -> répondre à ce commentaire * 1e ligne : Traduction correcte : Faites <Alt+U> ou allez dans "Edition/La traduction est approximative" pour valider. La traduction est désormais sur fond blanc. * 2e ligne : Traduction partiellement correcte : Il faut corriger dans la partie dédiée en bas et à gauche. * 3e ligne : Traduction totalement fantaisiste à modifier entièrement.
Quelques astuces : Sur fond bleu : à traduire entièrementSur fond jaune : traduction à vérifierSur fond blanc : traduction validée
Tout n'est pas à traduire ! Certaines parties contiennent des variables de programmation à respecter ! Les variables sont précédées du signe “%” qui doit être maintenu. Ainsi &Update #1%s sera traduit par &Mettre à &jour #1%s.Le caractère “&” est utilisé pour indiquer le soulignement du caractère qui suit immédiatement. Ainsi &Fichier donnera Fichier. (Pour rappel, un tel soulignement d'une lettre indique le raccourci clavier à utiliser avec la touche ALT.)
Pour sauvegarder, passez par “enregistrer sous” en nommant votre fichier fr_FR.po.

Vous pouvez faire également des copies de sécurité pour reprendre votre travail en cas de corruption du fichier *.po.

Vérifier l'orthographe du fichier .po

Le paquet spellutils contient un outil appelé pospell qui permet de vérifier l'orthographe d'un fichier .po, en utilisant un correcteur orthographique tel que aspell :

$ pospell -n logiciel.po -p aspell check %f

Valider un fichier .po

La commande msgfmt du paquet gettext produit une version binaire *.mo du fichier *.po, utilisable pour traduire le logiciel, mais aussi valide son format :

$ msgfmt -c -o logiciel.mo logiciel.po

Mettre en place la localisation

C'est un fichier *.mo qui assure la localisation qui est généralement enregistré dans : /usr/share/locale/fr/LC_MESSAGES/nom_de_logiciel.mo ou /usr/share/locale/fr_FR/LC_MESSAGES/nom_de_logiciel.mo

$ sudo cp nom_de_logiciel.mo /usr/share/locale/fr_FR/LC-MESSAGES/nom_de_logiciel.mo

Lancez ou relancez l'application pour vérifier le résultat.

Conclusion

Problèmes connus

Voir aussi

(fr) https://traduc.org/L%27adaptation_des_logiciels/Exemple%20d%27utilisation%20de%20GettextTraduire un logiciel open-source (poEdit) : https://www.commentcamarche.net/faq/6326-traduire-un-logiciel-open-source-poeditcomment traduire un logiciel open source mais a partir de zero quand il est encore monolanguage :https://openclassrooms.com/forum/sujet/comment-traduire-un-logiciel-open-source-23537https://www.commentcamarche.net/faq/6326-traduire-un-logiciel-open-source-poedit

Basé sur << Article >> par Auteur.