Différences
Ci-dessous, les différences entre deux révisions de la page.
Prochaine révision | Révision précédenteProchaine révisionLes deux révisions suivantes | ||
tutoriel:programmation:python:traduire [2020/09/04 22:27] – admin | tutoriel:programmation:python:traduire [2021/02/17 15:44] – ↷ Page déplacée de fr:tutoriel:programmation:python:traduire à tutoriel:programmation:python:traduire admin | ||
---|---|---|---|
Ligne 15: | Ligne 15: | ||
Dans tous les cas, les outils GNU gettext sont recommandés, | Dans tous les cas, les outils GNU gettext sont recommandés, | ||
- | ===== Pré-requis ===== | + | ====== Pré-requis |
- | ===== Première étape : marquage des chaînes à traduire ===== | + | ====== Première étape : marquage des chaînes à traduire |
Dans les différents modules python, les chaînes de caractère à traduire sont passées comme argument à une fonction, nommée par convention **_** (le caractère de soulignement). | Dans les différents modules python, les chaînes de caractère à traduire sont passées comme argument à une fonction, nommée par convention **_** (le caractère de soulignement). | ||
- | ==== Cas d'une chaîne simple ==== | + | ===== Cas d'une chaîne simple |
Par exemple : | Par exemple : | ||
Ligne 33: | Ligne 33: | ||
</ | </ | ||
- | ==== Chaînes contenant des parties variables ==== | + | ===== Chaînes contenant des parties variables |
Il ne faut pas écrire : | Il ne faut pas écrire : | ||
Ligne 45: | Ligne 45: | ||
</ | </ | ||
- | ==== Chaînes contenant plusieurs parties variables ==== | + | ===== Chaînes contenant plusieurs parties variables |
Dans ce cas, nommez-les et utilisez un dictionnaire et non une liste, ce qui permettra au traducteur d' | Dans ce cas, nommez-les et utilisez un dictionnaire et non une liste, ce qui permettra au traducteur d' | ||
Ligne 65: | Ligne 65: | ||
Si vous utilisez **glade** pour réaliser votre interface, vous pouvez choisir les textes qui ne doivent pas être traduits (par défaut, ils sont tous traduisibles). | Si vous utilisez **glade** pour réaliser votre interface, vous pouvez choisir les textes qui ne doivent pas être traduits (par défaut, ils sont tous traduisibles). | ||
- | ===== Autres étapes ===== | + | ====== Autres étapes |
- | ==== Modification du programme python ==== | + | ===== Modification du programme python |
Dans cette seconde étape, nous utilisant le module **gettext** de python pour définir la fonction **_()**. | Dans cette seconde étape, nous utilisant le module **gettext** de python pour définir la fonction **_()**. | ||
Ligne 142: | Ligne 142: | ||
Le fichier **coincoin.pot** obtenu est le modèle des futures traductions. À chaque changement du programme, il faudra le mettre à jour en relançant cette commande. | Le fichier **coincoin.pot** obtenu est le modèle des futures traductions. À chaque changement du programme, il faudra le mettre à jour en relançant cette commande. | ||
- | ==== Localisation ==== | + | ===== Localisation |
Cette partie doit être faite pour chaque langue. | Cette partie doit être faite pour chaque langue. | ||
Ligne 154: | Ligne 154: | ||
Le fichier **mo** produit doit être distribué dans les paquets binaires de l' | Le fichier **mo** produit doit être distribué dans les paquets binaires de l' | ||
- | ===== Conclusion ===== | + | ====== Conclusion |
- | ===== Problèmes connus ===== | + | ====== Problèmes connus |
- | ===== Voir aussi ===== | + | ====== Voir aussi ====== |
* **(fr)** [[http:// | * **(fr)** [[http:// |