erreurs). La seule manière entièrement fiable de procéder est de n'utiliser que les
caractères ASCII ; de manière simple, cela signifie d'écrire toutes les chaînes de
caractères en anglais dans le code source. Pour le français, omettez les accents, les
cédilles, le symbole euro, etc. : écrivez Details au lieu de Détails, en remplaçant le é
par sa version non accentuée e; par la suite, il faudra effectuer une traduction du
"français ASCII" vers du bon français, en remettant les accents et autres caractères
spéciaux à leur place.
De plus, la traduction est très souvent effectuée par des sociétés ou des
contributeurs externes (dans le cas d'un projet libre) : recruter des traducteurs de
l'anglais vers une autre langue est nettement plus facile que depuis le français. Dans
ce cas, le meilleur choix est d'écrire toutes les chaînes à traduire ainsi que les
commentaires de contexte en anglais.
1.1. Extraction des chaînes
Une fois le code ainsi modifié, l'étape suivante consiste à extraire les chaînes dans des
fichiers à distribuer au traducteur. La procédure imposée est d'abord d'écrire un fichier
de projet (dont la fonction principale est de lister tous les fichiers à analyser), puis de
lancer lupdate sur ce fichier de projet.
Deux variables doivent être définies dans le fichier de projet : SOURCES liste les
fichiers sources (seuls ceux qui doivent être traduits s'y retrouvent obligatoirement,
mais ajouter d'autres fichiers sources ne cause pas de tort), tandis que TRANSLATIONS
donne tous les fichiers de traduction à générer (.ts). Le code langue respecte un
certain format : la première partie donne la langue proprement dite (fr, en), la seconde
la région (FR pour France, US pour États-Unis).
SOURCES += *.qml
TRANSLATIONS += biblioapp.fr_FR.ts \
biblioapp.en_US.ts
L'extraction proprement dite se fait avec l'utilitaire lupdate en ligne de commande ou
depuis l'environnement de développement, comme dans le cas PyQt.
lupdate biblioapp.pro
Note > Les fichiers ainsi générés ne sont différents que par leur nom : lupdate ne
cherche pas à comprendre les codes de langue et de pays. Qt Linguist demandera la
langue de la traduction lors de la première ouverture de ces fichiers.
396
caractères ASCII ; de manière simple, cela signifie d'écrire toutes les chaînes de
caractères en anglais dans le code source. Pour le français, omettez les accents, les
cédilles, le symbole euro, etc. : écrivez Details au lieu de Détails, en remplaçant le é
par sa version non accentuée e; par la suite, il faudra effectuer une traduction du
"français ASCII" vers du bon français, en remettant les accents et autres caractères
spéciaux à leur place.
De plus, la traduction est très souvent effectuée par des sociétés ou des
contributeurs externes (dans le cas d'un projet libre) : recruter des traducteurs de
l'anglais vers une autre langue est nettement plus facile que depuis le français. Dans
ce cas, le meilleur choix est d'écrire toutes les chaînes à traduire ainsi que les
commentaires de contexte en anglais.
1.1. Extraction des chaînes
Une fois le code ainsi modifié, l'étape suivante consiste à extraire les chaînes dans des
fichiers à distribuer au traducteur. La procédure imposée est d'abord d'écrire un fichier
de projet (dont la fonction principale est de lister tous les fichiers à analyser), puis de
lancer lupdate sur ce fichier de projet.
Deux variables doivent être définies dans le fichier de projet : SOURCES liste les
fichiers sources (seuls ceux qui doivent être traduits s'y retrouvent obligatoirement,
mais ajouter d'autres fichiers sources ne cause pas de tort), tandis que TRANSLATIONS
donne tous les fichiers de traduction à générer (.ts). Le code langue respecte un
certain format : la première partie donne la langue proprement dite (fr, en), la seconde
la région (FR pour France, US pour États-Unis).
SOURCES += *.qml
TRANSLATIONS += biblioapp.fr_FR.ts \
biblioapp.en_US.ts
L'extraction proprement dite se fait avec l'utilitaire lupdate en ligne de commande ou
depuis l'environnement de développement, comme dans le cas PyQt.
lupdate biblioapp.pro
Note > Les fichiers ainsi générés ne sont différents que par leur nom : lupdate ne
cherche pas à comprendre les codes de langue et de pays. Qt Linguist demandera la
langue de la traduction lors de la première ouverture de ces fichiers.
396
