Ci-dessous, les différences entre deux révisions de la page.
Les deux révisions précédentes Révision précédente Prochaine révision | Révision précédente | ||
pyqt4_multilingue [2013/11/29 09:32] tyrtamos |
pyqt4_multilingue [2013/11/29 11:05] tyrtamos |
||
---|---|---|---|
Ligne 104: | Ligne 104: | ||
</ | </ | ||
- | Le contexte est en général le nom de la classe. Si la chaine du contexte | + | Le contexte est en général le nom de la classe. Si ce n'est pas dans une classe, vous pouvez mettre |
- | Attention: comme le logiciel pylupdate4 repèrera les chaines à traduire uniquement par analyse de texte, les chaines doivent être en clair (et non sous forme de variables) et les mots " | + | Attention: comme le logiciel pylupdate4 repèrera les chaines à traduire uniquement par //**analyse de texte**//, les chaines doivent être en clair (et non sous forme de variables) et les mots " |
<code python> | <code python> | ||
Ligne 122: | Ligne 122: | ||
1- utilisation de tr() ou trUtf8() comme en C++, mais si vous avez des classes qui héritent d' | 1- utilisation de tr() ou trUtf8() comme en C++, mais si vous avez des classes qui héritent d' | ||
- | 2- idem avec une définition modifiée comme ci-dessus, mais tous les contextes seront " | + | 2- idem avec une définition modifiée comme ci-dessus. Les traductions seront transmises par héritage, mais tous les contextes seront " |
3- utilisation de QtGui.QApplication.translate(...) qui est la solution recommandée par riverbank pour PyQt4, avec pour seul inconvénient des lignes beaucoup plus longues. On peut simplifier un peu en créant les variables translate et unicodeUTF8 comme expliqué ci-dessus: c'est probablement la meilleure solution sur le plan technique. | 3- utilisation de QtGui.QApplication.translate(...) qui est la solution recommandée par riverbank pour PyQt4, avec pour seul inconvénient des lignes beaucoup plus longues. On peut simplifier un peu en créant les variables translate et unicodeUTF8 comme expliqué ci-dessus: c'est probablement la meilleure solution sur le plan technique. | ||
Ligne 129: | Ligne 129: | ||
==== 2- créer un fichier projet .pro ==== | ==== 2- créer un fichier projet .pro ==== | ||
- | Si votre programme à traduire n'est composé que d'une seule page, vous n'avez peut-être pas besoin d'un fichier projet, mais c'est tout de même très pratique. | + | Si votre programme à traduire n'est composé que d'une seule page, vous n'avez peut-être pas besoin d'un fichier projet, mais c'est tout de même très pratique, parce que ça simplifie beaucoup l' |
Le fichier projet est un fichier texte avec une extension " | Le fichier projet est un fichier texte avec une extension " | ||
Ligne 138: | Ligne 138: | ||
</ | </ | ||
- | FORMS donne la liste des fichiers .ui issus de qtdesigner, séparés par des espaces. Il est à noter qu'on n' | + | FORMS donne la liste des fichiers .ui issus de qtdesigner, séparés par des espaces. Il est à noter qu'on n' |
SOURCES donne la liste des fichiers .py ou .pyw séparés par des espaces. | SOURCES donne la liste des fichiers .py ou .pyw séparés par des espaces. | ||
- | TRANSLATIONS donne la liste des fichiers .ts qui seront créés par pylupdate4, et qui, après traitement par linguist, porteront les traductions | + | TRANSLATIONS donne la liste des fichiers .ts, séparés par des espaces, |
- | Chaque fichier peut être entouré par des guillemets si nécessaire. S'il y a plusieurs fichiers, on peut les mettre sur plusieurs lignes en utilisant ' | + | Chaque fichier peut être entouré par des guillemets si son nom contient des espaces. S'il y a plusieurs fichiers, on peut les mettre sur plusieurs lignes en utilisant ' |
< | < | ||
Ligne 156: | Ligne 156: | ||
Chaque nom de fichier peut être précédé par son chemin relatif ou absolu. | Chaque nom de fichier peut être précédé par son chemin relatif ou absolu. | ||
+ | |||
+ | Il y a aussi 2 lignes supplémentaires possibles concernant les encodages. Par exemple: | ||
+ | |||
+ | < | ||
+ | CODECFORTR | ||
+ | </ | ||
+ | |||
+ | Enfin, il est possible d' | ||
==== 3- détecter les chaines à traduire avec pylupdate4 ==== | ==== 3- détecter les chaines à traduire avec pylupdate4 ==== | ||
+ | |||
+ | pylupdate4 est un programme à utiliser en console qui va faire une analyse de texte des codes Python et va créer ou mettre à jour les fichiers .ts. | ||
+ | |||
+ | Si on n'a pas créé de fichier .pro (voir le point précédent), | ||
+ | |||
+ | < | ||
+ | </ | ||
+ | |||
+ | Et si on a créé un fichier pro: | ||
+ | |||
+ | < | ||
+ | </ | ||
+ | |||
+ | On peut examiner le fichier .ts créé ainsi pour comprendre comment il est constitué. Par exemple: | ||
+ | |||
+ | < | ||
+ | < | ||
+ | < | ||
+ | < | ||
+ | ... | ||
+ | |||
+ | |||
+ | |||
+ | ... | ||
+ | </ | ||
+ | </TS> | ||
+ | </ | ||