~~NOTOC~~
===== lhu-auto-trad =====
==== qu'est-ce que lhu-auto-trad ====
**lhu-auto-trad** est un horrible script de [[https://launchpad.net/~schplurtz|Schplurtz le déboulonné]] dont le but est d'aider à traduire la **L**ettre **H**ebdomadaire **U**buntu (notée LHU dans ce document). En effet, la LHU contient un nombre assez important de titres et de sections récurrents qu'on peut traduire de manière mécanique. La longue listes des réunions à venir, celle des bugs en sont deux exemples. Ces portions de document ne présentent aucun intéret linguistique pour les traducteurs et ne méritent donc pas mieux qu'une traduction automatique '';-)''.
**lhu-auto-trad** remplit deux fonctions :
* Étant donné un numéro de LHU, Il en télécharge le source anglais,
* il traduit tout ce qu'il peut dans ce source, et crée un document prétraduit.
==== Où trouve-t-on lhu-auto-trad ====
**lhu-auto-trad** se trouve sur le serveur obby sobby.porcheron.info . Il faut donc utiliser l'éditeur collaboratif gobby pour se connecter à ce serveur et obtenir ce script. Une fois connecté à sobby.porcheron.info, faire apparaître la fenêtre contenant la liste des documents disponibles, et charger (ou « rejoindre » selon la terminologie obby-ienne le document ''lhu-auto-trad''.
les instructions pour se connecter à sobby.porcheron.info sont quelque part sur [[:ubuntu-l10n-fr:traduction_lhu|cette page]].
Si vous avez l'intention d'utiliser **lhu-auto-trad**, après l'avoir rejoint sur sobby.porcheron.info, sauvez le, au moyen de la commande **Enregistrer le document** du menu séance.
==== Note pour l'utilisation de lhu-auto-trad ====
L'utilisation de **lhu-auto-trad** nécessite de savoir se servir d'un émulateur de terminal, tel que **xterm**, **gnome-terminal**, **rxvt**, etc... et surtout du shell qui y fonctionne. Les commandes données le sont toujours de cette manière :
$ cat /là/où/se/trouve/'LHU 84'
Le signe ''$'' symbolise l'invite de commande de votre shell (qui peut donc être différent) et ne doit pas être tapé. Vous devrez adapter certaines commandes, en ce qui concerne les noms de fichier, ou le numéro de la LHU à traduire par exemple.
Les commandes sont adaptées à tous les types de shell courants. Cependant vous devrez vérifier les réglages de votre shell en ce qui concerne l'écrasement de fichiers existants, spécialement si vous exécutez **lhu-auto-trad** plusieurs fois.
Dans la suite de ce document, on suppose que le lecteur est suffisamment averti pour effectuer les réglages nécessaires et deviner ce qui doit être changé dans une commande et par quoi. Dans l'exemple donné ci dessus, il devrait apparaître évident que ''/là/où/se/trouve/'' doit être remplacé par l'emplacement véritable du document '''LHU 84'''.
Ce document utilise systématiquement la LHU Numéro 84. Adaptez !
**lhu-auto-trad** fonctionne sans privilège administrateur, mais il vous faudra peut-être installer quelques outils complémentaires. Pour cela, il faut être administrateur de la machine sur laquelle vous voulez installer **lhu-auto-trad**.
==== Comment se servir de lhu-auto-trad ====
Avant tout, vérifiez que vous avez tous les outils nécessaires : **bash**, **wget**, **diff**, et **gawk**. Si vous utilisez Ubuntu (très probable), vous pouvez exécuter la commande suivante pour les installer ou les mettre à jour :
$ sudo apt-get install wget diff gawk
ou suivre ces liens : [[apt://wget|wget]], [[apt://diff|diff]] et [[apt://gawk|gawk]].
Si vous avez un Macintosh nanti de fink. essayez cette commande :
$ sudo fink install wget ; sudo fink install gawk
Si vous avez un macintosh muni de macport, essayez ces commandes :
$ sudo port install wget ; sudo port install gawk
Si vous utilisez encore un atari, vous ne pouvez pas installer **lhu-auto-trad** à ma connaissance, Si vous utilisez windows, vous devriez changer de système pour installer **lhu-auto-trad** (attention, cette opération pourrait supprimer toutes vos données personnelles, faites toujours une sauvegarde)
Puis, vérifiez que vous avez la toute dernière version de **lhu-auto-trad**. Au besoin, téléchargez-le à nouveau, comme décrit dans la section précédente. **lhu-auto-trad** change souvent. En particulier la liste des titres à traduire et leur traduction sont souvent modifiées. Une fois le document enregistré, n'oubliez pas de le rendre exécutable à l'aide de la commande :
$ chmod 755 /la/où/vous/avez/enregistré/lhu-auto-trad
Par la suite, l'utilisation de **lhu-auto-trad** se déroule en deux étapes.
- Exécution de lhu-auto-trad
- Création d'un nouveau document sur sobby.porcheron.info
=== Exécution de lhu-auto-trad ===
On suppose que ''lhu-auto-trad'' est dans le répertoire courant. Pour télécharger et prétraduire la LHU numéro 84, utiliser la commande ci-après. **Attention** à bien respecter le nom ''LHU NN''. Ce nom a de l'importance pour le téléversement de la LHU sur le serveur sobby.porcheron.info.
$ ./lhu-auto-trad 84 >'LHU 84'
Voilà ! Vous avez maintenant un fichier nommé ''Issue84'' qui contient le source anglais et un autre nommé ''LHU 84'' prêt à être envoyé sur sobby.porcheron.info. Si vous modifiez **lhu-auto-trad** et que vous voulez tester votre modification, utilisez l'option ''-n'' pour éviter de télécharger encore le document ''Issue84''.
$ ./lhu-auto-trad -n 84 >'LHU 84'
=== Création d'un nouveau document sur sobby.porcheron.info ===
* les instructions pour se connecter à sobby.porcheron.info sont sur [[:ubuntu-l10n-fr:traduction_lhu|cette page]]
* Si vous êtes déjà connecté à sobby.porcheron.info, déconnectez-vous.
* démarrez **gobby**, et connectez-vous à sobby.porcheron.info avec le sobriquet __LHU original__ et la couleur FFDE97. {{LAT-Image-1-2.png}}
* Ouvrez le document ''LHU 84''.
{{LAT-Image3.png}}
Cela le téléverse automatiquement sur sobby.porcheron.info, sous le nom ''LHU 84''.
* Sélectionnez et repeignez à grand coup de ''Ctrl-c Ctrl-v'' les morceaux déjà traduits. Les traducteurs feront plus facilement la différence entre ce qui n'a pas été traduit du tout et ce qui l'a été de manière automatique. On passe d'un texte comme celui-ci
{{LAT-Image4.png}}
à un texte comme celui-là
{{LAT-Image5.png}}.
==== comment modifier lhu-auto-trad ====
Cette partie est forcément un peu technique. J'en suis désolé. Le script est divisé en plusieurs parties, plus ou moins identifiées. Je vais tenter d'en donner une explication dans l'ordre du script, ce qui n'est pas forcément l'ordre des LHU.
Je passe sous silence le tout début du script, avec son initialisation (dont une partie se trouve à la fin), sa minipage d'aide, pour commencer directement avec la partie la plus couramment modifiée : les titres et le sommaire.
=== Titres et sommaire ===
Commençons par modifier les traductions des titres ou entrées du sommaire. Ces traductions sont déclarées dans une partie du script assez claire, située vers le début du script et qui contient des lignes du genre :
titre_trad 'In This Issue' 'Dans ce numéro'
titre_trad_vo x 'Review of Developer Week' 'Compte rendu de la semaine des développeurs'
titre_trad_vo x 'New in \(.*\)' 'Nouveautés de \1'
titre_trad x 'LoCo News' 'Nouvelles des LoCos'
titre_trad x 'Launchpad News' 'Nouvelles de Launchpad'
titre_trad_vo x 'Ubuntu Forums News & Interviews' 'Nouvelles et interview des forums Ubuntu'
titre_trad_vo x 'Ubuntu Forums* News' 'Nouvelles des forums Ubuntu'
titre_trad x 'Meetings & Events' 'Réunions et événements'
Les lignes sont ordonnées. En premier les lignes qui reconnaissent les plus long morceaux de texte. Il est important que la ligne ''Ubuntu Forums News & Interviews'' aparaisse avant ''Ubuntu Forums* News''. Sinon on courre le risque (limité) de voir une ligne du sommaire, et seulement du sommaire, partielement ou mal traduite.
Les lignes qui commencent par ''titre_trad'' provoqueront le **remplacement** d'un titre anglais par le titre français. Les lignes qui commencent par ''titre_trad_vo'' provoqueront l'**insertion** du titre français avant le titre anglais, qui restera donc visible pour les traducteurs.
Les lignes qui contiennent un x indiquent à ''lhu-auto-trad'' de rechercher les chaines à traduire dans le sommaire également.
Certaines lignes ne sont là que pour le sommaire.
Il n'y a pas de limite au nombre de lignes ''titre_trad'' ou ''titre_trad_vo'', il faut impérativement rajouter une ligne dans **lhu-auto-trad** dès qu'on voit un titre dont on sent bien qu'il reviendra dans une future LHU.
--------
Voyons comment apporter quelques améliorations grâce à l'exemple de la LHU 84. Avant modification, le sommaire est assez mal traduit :
- MOTU Team news
- Ubuntu Stats
- Launchpad news
- Ubuntu Forum news
- Dans la presse et la blogosphère
- Ubuntu UK Podcast #2
- Reside@HOME: Linux for Elderly Health Care
- Automatix discontinued
- Full circle Magazine #11
- CanSecWest PWN2OWN 2008 - Ubuntu Wins!
- Meeting & Events
- Mises à jour et sécurité
* MOTU Team news
* Ubuntu Stats
* Launchpad news
* Ubuntu Forum news
* In the Press & Blogosphere
* Ubuntu UK Podcast #2
* Reside@HOME: Linux for Elderly Health Care
* Automatix discontinued
* Full circle Magazine #11
* CanSecWest PWN2OWN 2008 - Ubuntu Wins!
* Meeting & Events
* Updates & Security
En particulier, les titres //MOTU Team news//, //Ubuntu Stats//, //Launchpad news//, //Ubuntu Forum news// et //Meeting & Events// devraient avoir une traduction française.
--------
En ce qui concerne //Launchpad news// on constate qu'on a déjà une ligne de traduction, mais le modèle de traduction attend une majuscule au mot //news//. Il en va de même pour //Ubuntu Forum news//. Les rédacteurs ne semblent pas très à cheval sur ce genre de choses. On va donc transformer le modèle de telle sorte qu'il reconnaisse indiférement les minuscules et majuscules en utilisant une classe de caractères ''[nN]'' pour le n de //news//. Les lignes deviennent donc :
titre_trad x 'Launchpad [nN]ews' 'Nouvelles de Launchpad'
titre_trad_vo x 'Ubuntu Forums [nN]ews & Interviews' 'Nouvelles et interview des forums Ubuntu'
titre_trad_vo x 'Ubuntu Forums* [nN]ews' 'Nouvelles des forums Ubuntu'
Et, comme on soupçonne qu'il pourrait y avoir d'autre variations sur le même thème à l'avenir, on y va carrément plus fort :
titre_trad x '[lL]aunchpad [nN]ews' 'Nouvelles de Launchpad'
titre_trad_vo x '[uU]buntu [fF]orums [nN]ews & Interviews' 'Nouvelles et interview des forums Ubuntu'
titre_trad_vo x '[uU]buntu [fF]orums* [nN]ews' 'Nouvelles des forums Ubuntu'
--------
Pour //Meeting & Events//, le problème est tout autre. Nous avons une traduction pour //Meetings &...//. On va donc rendre le ''s'' de //Meettings// optionnel au moyen d'une étoile et garder notre traduction au pluriel. Par ailleurs, on laisse aparaitre la VO en dessous de la traduction française pour que les autres traducteurs puissent éventuellement corriger. Au passage on se prémunit contre les variations de casse. La ligne devient donc :
titre_trad_vo x '[mM]eetings* & [Ee]vents' 'Réunions et événements'
//MOTU Team news// et //Ubuntu Stats// n'ont encore aucune traduction. On en crée donc une pour chaque en prenant soinde laisser apparaitre la VO. Il faut donc rajouter deux lignes.
titre_trad_vo x 'MOTU [tT]eam [nN]ews' 'Nouvelles des équipes de MOTU'
titre_trad_vo x '[uU]buntu [sS]stats' 'Statistiques concernant Ubuntu'
Ce choix a été payant. Lors de la relecture de la LHU 84, on a décidé d'utiliser «Statistiques pour Ubuntu» plutôt que «Statistiques concernant Ubuntu».
--------
On relance ''lhu-auto-trad'' et on regarde la traduction.
$ ./lhu-auto-trad -n 84 >'LHU 84'
$ gnome-open 'LHU 84'
Le résultat est bien meilleur.
- Nouvelles des équipes de MOTU
- Statistiques concernant Ubuntu
- Nouvelles de Launchpad
- Nouvelles des forums Ubuntu
- Dans la presse et la blogosphère
- Podcast Ubuntu UK numéro 2
- Reside@HOME: Linux for Elderly Health Care
- Automatix discontinued
- Full circle Magazine #11
- CanSecWest PWN2OWN 2008 - Ubuntu Wins!
- Réunions et événements
- Mises à jour et sécurité
* MOTU Team news
* Ubuntu Stats
* Launchpad news
* Ubuntu Forum news
* In the Press & Blogosphere
* Ubuntu UK Podcast #2
* Reside@HOME: Linux for Elderly Health Care
* Automatix discontinued
* Full circle Magazine #11
* CanSecWest PWN2OWN 2008 - Ubuntu Wins!
* Meeting & Events
=== Les autres modifications ===
Modifier le reste du script est assez difficile, il faut être un peu scripteur/programmeur fou pour réussir. Cela étant dit, si vous voulez réécrire complètement ce script en Java, Perl, Python, vous êtes le bienvenu.