Ouf, j'ai enfin réussi à mettre po4a sur mon Mac.
Pas de paquet chez Homebrew, un truc qui ne marche pas chez Macport, et enfin, chez Fink, une version qui tourne.
Avant de réaliser qu'il me restait Fink à vérifier, j'avais même essayé d'installer une petite Debian dans VirtualBox, mais là le fun c'était d'installer le dossier partagé entre "Virtual" Debian et OSX, et ça m'a pris ma matinée.
L'avantage c'est que j'ai quand même constaté que Emacs y démarrait au quart de tour alors que dans Terminal sur OSX, il me faut bien 5-6 secondes...
Donc voilà. Merci infiniment à l'équipe de po4a pour cet outil magnifique et voici les chiffres :
le manuel d'emacs
la référence d'emacs lisp
et l'introduction à la programmation en emacs lisp
même si j'imagine qu'il y a plein de trucs qui ne sont pas à traduire genre des lignes de code, etc., ça fait quand même au total près de 850 000 mots en première approximation (dans OmegaT). J'avais fait une première estimation à 900 000 mots basée sur les texi il y a longtemps...
Comme il a été dit à cette époque, on a déjà du matériel traduit. Entre autres, un manuel de la version 21.0.100 publié sur le site de Linux France, avec les sources texi.
Le problème est que sur le site FTP de gnu, il n'y a pas de version 21.0.100, et la version la plus récente disponible est une 21.1.
Les sources hébergées chez Linux France ne recouvrent pas tout le manuel. Seulement les fichiers suivants:
basic.texi
buffers.texi
commands.texi
display.texi
emacs.texi
entering.texi
files.texi
fixit.texi
frames.texi
help.texi
indent.texi
killing.texi
m-x.texi
major.texi
mark.texi
mini.texi
mule.texi
regs.texi
screen.texi
search.texi
windows.texi
sachant que les fichiers correspondants de la version anglaise on des chaînes en plus pour la plupart puisqu'ils sont plus récents.
Pour créer un corpus bilingue de référence par paragraphe qui pourra être converti soit en PO soit en TMX pour les traducteurs il faut aligner manuellement les fichiers puisqu'ils sont en toute probabilité non symétriques. En comparant la structure des texi j'ai réalisé que leur forme "relativement" libre ne se prêtait pas à un alignement simple entre les deux langues. Donc je suis passé par po4a.
Pour simplifier encore plus, une fois les PO créés dans leurs langues respectives, j'ai retiré les informations qui gênaient l'alignement (no-wrap, msgstr, mise des paragraphes sur une ligne, etc.) et j'ai collé tout ça dans un fichier Calc avec un fichier texi par feuille.
Après, c'est de l'alignement "à vue". Quand on voit un décalage d'un côté, on regarde ce qui est en trop, on élimine si nécessaire (en général les chaînes anglaises qui sont en surplus, des fois des chaînes françaises qui ont été ajoutées pour créer l'index).
Voilà. Après de longues heures dans Calc, les fichiers sont alignés.
C'est seulement après que j'ai réalisé que la version française était passée à côté d'une correction orthographique, donc hop, passage à la moulinette Antidote, près de 10,000 erreurs (typographie, mots anglais inclus, etc.) dont une quantité non négligeable d'« insére » pour « insère ».
Comme j'ai décidé de travailler dans OmegaT, ce corpus bilingue va être converti en TMX. J'ai un utilitaire qui avant était autonome mais maintenant n'existe que comme "outil" du Translation Studio de Heartsome (passé en GPL avec sa version 8), il s'agit du "CSV to TMX converter".
Avant de mettre tout ça en TMX, je retire quand même les lignes qui me servaient de repères dans l'alignement et voilà, j'ai une TMX qui reflète la traduction existante et qui est relativement correcte.
Pour ne pas être étouffé par l'ampleur de la tâche, j'ai décidé de travailler un PO à la fois, et en de commencer par les POs qui ont été traduits précédemment.
À ce jour, j'ai (re-)traduit basic/buffers/commands et je suis donc sur display. display est énorme. Il contient autant de mots que la somme des trois précédents (10 000 sur 20 000), et puis l'ensemble est très bavard.
J'ai fait des choix de terminologie aussi, parfois un peu radicaux. Par exemple "kill". Il n'y a aucune raison de traduire ça par "détruire" comme ça a été fait. Pour des éléments du tampon on peut tourner ça en "couper" et pour le tampon ou la fenêtre et le cadre on peut utiliser "fermer" ou "supprimer". Pareil pour "key", quand il s'agit parfois de "touche", on a beaucoup de "séquence" également.
Le but est de créer un truc qui se lise, sans trop de néologismes, et qui permette aux francophones pas forcément anglophones qui s'intéressent à Emacs de plonger dans le manuel et d'en ressortir plus "savants".
Les chiffres sont les suivants pour les fichiers qui ont déjà une traduction :
Project Statistics
Segments Words #Files
Total: 6436 104252 20
Remaining: 3936 80601 17
Unique: 5858 101633 20
Unique Remaining: 3738 79777 17
Individual File Statistics:
File Name Total Words Remaining Words
basic.texi.fr.po 5048 0
buffers.texi.fr.po 4363 0
commands.texi.fr.po 1389 0
display.texi.fr.po 10682 10096
emacs.texi.fr.po 8807 7564
entering.texi.fr.po 1079 1025
files.texi.fr.po 13614 11790
fixit.texi.fr.po 2666 1802
frames.texi.fr.po 7386 6537
help.texi.fr.po 3728 3275
indent.texi.fr.po 1622 1550
killing.texi.fr.po 6141 4617
m-x.texi.fr.po 480 416
mark.texi.fr.po 3275 2980
mini.texi.fr.po 5124 4896
mule.texi.fr.po 11229 9772
regs.texi.fr.po 2204 1257
screen.texi.fr.po 2622 2513
search.texi.fr.po 9815 7981
windows.texi.fr.po 2978 2530
Et les chiffres pour les fichiers qui n'existaient pas dans la première traduction:
Project Statistics
Segments Words #Files
Total: 11250 206767 36
Remaining: 10811 204471 35
Unique: 10942 205105 35
Unique Remaining: 10645 203983 35
Individual File Statistics:
File Name Total Words Remaining Words
abbrevs.texi.fr.po 2998 2633
ack.texi.fr.po 7483 7291
anti.texi.fr.po 766 732
arevert-xtra.texi.fr.po 1341 1307
building.texi.fr.po 9621 9572
cal-xtra.texi.fr.po 5383 5382
calendar.texi.fr.po 9146 9121
cmdargs.texi.fr.po 6640 6603
custom.texi.fr.po 15670 15611
dired-xtra.texi.fr.po 330 296
dired.texi.fr.po 8527 8457
doclicense.texi.fr.po 3713 3679
emacs-xtra.texi.fr.po 413 370
emacsver.texi.fr.po 34 0
emerge-xtra.texi.fr.po 2175 2129
fortran-xtra.texi.fr.po 3276 3238
glossary.texi.fr.po 9027 8926
gnu.texi.fr.po 4528 4493
gpl.texi.fr.po 5669 5572
kmacro.texi.fr.po 3859 3824
macos.texi.fr.po 1461 1427
maintaining.texi.fr.po 15045 14931
misc.texi.fr.po 15623 15550
modes.texi.fr.po 2861 2788
msdog-xtra.texi.fr.po 3964 3930
msdog.texi.fr.po 7100 7064
package.texi.fr.po 1939 1898
picture-xtra.texi.fr.po 1689 1655
programs.texi.fr.po 10617 10601
rmail.texi.fr.po 10032 9969
sending.texi.fr.po 3952 3910
text.texi.fr.po 16060 15989
trouble.texi.fr.po 8822 8749
vc-xtra.texi.fr.po 99 65
vc1-xtra.texi.fr.po 2668 2511
xresources.texi.fr.po 4236 4198
Donc au total 310 000 mots approximativement pour la totalité du manuel, 24 000 déjà traduits, soit par moi, soit dans l'ancienne version, sachant que les anciennes traductions ont été insérées automatiquement mais qu'il faut quand même les relire en totalité et adapter la terminologie.
Dans un premier temps, je vais travailler "offline" donc sans créer de projet en équipe pour OmegaT. Si certains sont intéressés pour m'aider je mettrai tout ça en ligne. Pour le moment j'ai besoin de relecteurs sur les POs que j'ai pour les trois premiers fichiers, et d'une saine discussion au sujet des choix que j'ai faits.
Au cas où certains d'entre vous s'ennuieraient cet été, voilà les 3 premiers chapitres.
Amicalement,
Jean-Christophe Helary
ps : quand le manuel sera bouclé, je passerai à l'introduction à Emacs Lisp, de Chassel, puis seulement à la référence Emacs Lisp, qui a été le sujet d'un travail collaboratif avec des étudiants de l'INSA.