1. Introduction
Le projet de traduction GNOME FR est chargé de la traduction de l'ensemble des modules présents sur le Git de GNOME. L'outil de consultation des statistiques et de réservation des traductions est http://l10n.gnome.org/.
Chaque effort de localisation est réalisé de manière indépendante par les différentes équipes de traduction du projet GNOME. Toutefois les différentes équipes respectent le même calendrier de développement. La fin d'un cycle de développement prévoit des phases de gel des chaînes de caractères contenu dans les fichiers sources des programmes afin de permettre aux traducteurs d'effectuer sereinement leurs traductions (String Change Announcement Period puis String Freeze).
La traduction française de GNOME s'appuie sur deux outils :
la liste de diffusion http://lites.traduc.org/mailman/listinfo/gnomefr qui permet aux traducteurs de s'entraider ;
l'outil de réservation Damned Lies qui gère les cycles de traduction/relecture et commit.
2. Guide de traduction
Traduire une application n'est pas aussi simple qu'il n'y paraît, c'est pourquoi nous avons regroupé l'ensemble des conseils pour faciliter l'accès aux nouveaux contributeurs.
2.1. Règles de typographie
|
Les caractères ! ? : et ; sont précédés et suivis respectivement d'une espace insécable et d'une espace normale. Il est possible d'afficher différemment les espaces insécables, pour les distinguer, dans des éditeurs tels que Vim ou Emacs (cf section Édition).
Les caractères . et , sont uniquement suivis d'une espace.
Les guillemets à utiliser sont les caractères « et » et non pas les guillemets droits ( " ) et encore moins les apostrophes ( ' ). Les caractères « et » sont respectivement suivi et précédé d'une espace insécable.
L'espace insécable (U+00A0) peut être obtenue avec ALT GR + MAJ + Espace sous X11 (et donc Emacs) avec la variante « oss » du clavier français. Sinon utilisez CTRL + x 8 Espace sous Emacs.
Les guillemets « et » peuvent être obtenus avec ALT GR + z et ALT GR + x sur les claviers français.
N'oubliez pas les accents dans les chaînes que vous traduisez, en particulier les accents sur les majuscules. Dans un environnement X-Window, les majuscules accentuées sont facilement obtenues en activant le verrouillage des majuscules (Caps Lock) et en saisissant la majuscule.
Des règles de typographie avancée sont discutées sur gnomefr/TypographieAvancee.
2.2. Guide stylistique
La traduction d'une application diffère beaucoup de la traduction d'un roman ou d'une documentation. Par exemple, les substantifs employés dans les titres ou les verbes à l'infinitif dans les boutons ont ici un rôle significatif. La qualité de la traduction influe sur la prise en main de l'application par les utilisateurs.
Le meilleur guide pour bien comprendre ces nuances et bien plus encore est le Guide Stylistique de Sun (merci Brigitte Le Grand
). Ce PDF contient 47 pages dont la lecture (très agréable) est indispensable !
Sun a récemment annoncé le lancement de son projet Open Translation sur lequel vous trouverez d'autres informations utiles.
2.3. Menus et raccourcis clavier
Un effort d'uniformisation est en cours en ce qui concerne les menus principaux des applications et des touches de raccourci permettant d'y accéder : gnomefr/Menus
2.4. Gestion de l'énergie
Une page est dédiée à la recherche d'une nomenclature de la gestion d'énergie : gnomefr/NomenclatureGestionEnergie.
2.5. Glossaire
L'utilisation du glossaire permet d'avoir une traduction homogène. Faites cependant attention à bien prendre en compte le contexte de la traduction et à ne pas appliquer bêtement les traductions indiquées dans ce glossaire : http://glossaire.traduc.org
Un essai d'amélioration des traductions des touches du clavier est en cours. Vous pouvez le consulter à la page gnomefr/TouchesClavier
2.6. Phrases type
Une collection de phrases type souvent rencontrées ; il convient d'utiliser les phrases indiquées sur cette page afin d'avoir une traduction homogène : gnomefr/PhrasesType.
3. Les fichiers PO
3.1. Structure
Un fichier PO est un format texte permettant la traduction d"une application depuis sa version anglaise vers une autre langue. Chaque application possède ainsi un fichier PO pour chacune des langues dans lequel il est traduit (es.po, de.po, etc). Les modules hébergés dans le dépôt Git de GNOME contiennent tous un répertoire nommé po contenant ces fichiers. Parfois d'autres répertoires sont utilisés notamment pour contenir les traductions de la documentation de l'application. Les développeurs marquent les chaînes à traduire avec la macro _() et les fichiers PO sont générés automatiquement par gettext. Exemple de marquage dans le code source d'une application :
case E_CAL_COMPONENT_ALARM_EMAIL:
base = _("Send an email");
break;Il existe des marquages particuliers permettant de renseigner le traducteur sur le contexte. Pour plus d'informations, consultez GnomeI18nDeveloperTips.
Exemple du fichier fr.po de l'application Evolution :
#: ../calendar/gui/dialogs/alarm-dialog.glade.h:12 #: ../calendar/gui/e-alarm-list.c:454 msgid "Send an email" msgstr "Envoyer un courriel"
Dans cet exemple, les 2 premières lignes commençant par un # font référence aux fichiers et aux numéros de lignes qui contiennent la chaîne anglaise qui va suivre. L'entête msgid précède la chaîne d'origine tandis que l'entête msgstr précède celle qui sera affichée par l'application au moment de l'exécution si vous êtes un utilisateur francophone.
Dans un fichier PO, une chaîne peut avoir 3 états :
non traduite dans ce cas msgstr "" ;
fuzzy, dans ce cas le mot clef fuzzy apparaît après le # ;
- traduite comme l'exemple ci-dessus.
Si une chaîne est non traduite ou fuzzy, c'est la chaîne anglaise qui est affichée à l'écran.
3.2. Accès au fichier souhaité
Afin de ne pas travailler inutilement, il est important de travailler sur la version attendue du fichier PO. Nous vous conseillons d'utiliser le fichier fourni par l'interface web de l10n.gnome.org.
Si vous découvrez une erreur de traduction à l'utilisation d'une application, il est important de connaître la version utilisée et/ou la version de l'environnement GNOME.
3.3. Édition
Il existent différents éditeurs/outils pour éditer les fichiers PO, tels que :
poEdit ;
- Emacs ;
- vim ;
3.3.1. Emacs
Pour saisir certains caractères dans emacs, vous pouvez utiliser les séquences de touches suivantes :
- Espace insécable : C-x 8 SPC
Guillemets ouvrants « : C-x 8 <
Guillemets fermants » : C-x 8 >
Pour afficher les espaces insécables dans Emacs 21 (actif par défaut avec Emacs 22), vous pouvez ajouter ce code dans votre .emacs :
;; espace insécable mise en évidence
;; faire un customize de nsbp-face pour obtenir la couleur de son choix
(make-face 'nbsp-face)
(require 'disp-table)
(aset standard-display-table
(make-char 'latin-iso8859-1 (- ?\240 128))
(vector (+ ?\267 (* 524288 (face-id 'nbsp-face)))))Emacs dispose d'un mode PO très utile, qui permet de se déplacer aisément sur les chaînes et d'afficher la chaîne à traduire dans son contexte (code source). Pour plus d'informations, consultez http://www.gnu.org/software/gettext/manual/html_node/gettext_7.html#PO-Mode.
3.4. Tester les traductions
Pour tester les traductions, vous pouvez télécharger et compiler les sources depuis le dépôt Git. Dans l'exemple suivant, nous allons télécharger la version de développement de eog :
git clone git://git.gnome.org/eog
Consultez la documentation http://live.gnome.org/TranslationProject/GitHowTo pour plus d'informations sur les commandes Git utiles aux traducteurs.
Le script ./autogen.sh présent dans le répertoire du module s'assure que les dépendances sont satisfaites pour compiler les sources et créé au passage quelques fichiers indispensables. En cas de succès, vous pouvez alors utiliser le trio habituel ./configure, make, make install.
L'exécution intltool-update fr dans le répertoire po du module effectue la mise à jour du fichier fr.po (commande accessible même en cas d'échec de ./autogen.sh). Cette opération :
préserve les traductions du fichier fr.po existant en mettant à jour les index (ex. #: ../calendar/gui/e-alarm-list.c:454) dans le cas où la chaîne a été déplacée ;
- ajoute les nouvelles chaînes à traduire ;
- met en commentaire les chaînes obsolètes.
Le fichier binaire généré porte l'extension .gmo (ou .mo) et est directement utilisable par l'application pour afficher ses chaînes dans votre langue.
4. Comment contribuer
4.1. Présentation sur la liste de diffusion
Une liste de discussion est dédiée à la coordination du projet de traduction française de GNOME :
Pour s'abonner à la liste ou consulter les archives, utiliser l'interface Web de la liste : http://traduc.org/mailman/listinfo/gnomefr. La liste sert à gérer le projet mais aussi à s'entraider en cas de doute sur des traductions.
Un channel IRC permet aussi de discuter en « live » : #gnomefr sur irc.gnome.org.
4.2. Réservation d'un module
L'outil Web Damned Lies permet de suivre le processus de traduction.
Le lien Se connecter en haut à droite de la page permet de la première fois de créer un compte avant de vous connecter sur le site. Il existe quatre rôles cumulables :
traducteur (par défaut), traduction des fichiers PO ;
relecteur, relecture des fichiers PO avant commit, observation attentive des différences apportées par le traducteur et validité du fichier ;
commiteur, inclusion des traductions dans le dépôt Git de GNOME, le commiteur dispose d'un accès en écriture ;
coordinateur, attribution des rôles.
Avant de commencer la traduction d'un module, sélectionnez le et modifiez son état en TRADUCTION EN COURS (commentaire optionnel). Une fois votre travail terminé, joignez votre fichier et modifiez l'état en TRADUIT.
À ce stade, les relecteurs interviennent pour valider votre traduction, RELECTURE EN COURS puis RELU. Comme pour la traduction, une nième relecture peut être effectuée idéalement par une personne différente.
Lorsqu'un relecteur juge que la qualité de la traduction est acceptable, il peut alors modifier son état en A COMMITER afin d'informer les commiteurs qu'une nouvelle traduction est prête pour inclusion dans le Git.
Les commiteurs peuvent alors modifier l'état en COMMIT EN COURS avant de procéder au commit puis COMMITE une fois effectué. La mise à jour des statistiques concernant les fichiers PO est presque instantanée.
Le cycle est alors terminé et la liste des actions en cours sur le module s'efface (les actions sont historisées dans la base SQL).
