Traduire

La traduction

La traduction est quelque chose d’important lorsqu’on se forme soi-même. Afin de devenir autonome, je dois souvent lire des documents rédigés en Anglais. C’est également une manière d’améliorer sa communication : se faire comprendre et interpréter. On a aussi la chance de pouvoir rencontrer plus de personnes qualifiées et expérimentées dans divers domaines.

Pour des raisons personnelles, la traduction est devenue essentielle. Pour autant, j’ai toujours autant de mal à traduire efficacement. Il semblerait que ce soit une activité assez ardue pour les débutants, comme pour les pro. D’ailleurs, je ne serais pas non plus étonné que des personnes de bonne foi surestiment leur compétences en traduction, de penser qu’il suffisait de bien saisir le sens des phrases pour obtenir une traduction correcte. En d’autres termes, elles pensent qu’il est plus efficace d’intérioriser leur traduction que de l’exprimer de façon plus formelle ou explicitement à l’oral.

Fréquemment, j’ai l’impression que les gens ne comprennent pas ce que je dis, là où je veux en venir. Ça me laisse souvent perplexe : on peut entrevoir des perspectives et se retrouver pour ainsi dire, totalement démuni. Après, être largué, c’est sans doute commun !

La technologie

Ainsi, c’est pour moi l’occasion d’esquisser un nouveau projet autour de la traduction. J’aimerais intégrer des fonctionnalités de traduction dans l’éditeur de texte GNU Emacs. Pour ceux qui ne connaissent pas, c’est un logiciel défraîchi, très complexe, mais puissant. Comme je suis présomptueux mais pas barré à ce point, quoique je dois être bien placé, j’ai cherché ce qui existait déjà comme technologie dans le domaine. Pour me conforter dans ce choix, je me dis que cela a de l’intérêt et que, avec ou sans, la traduction est une activité compliquée. L’idée c’est de prendre en compte l’existant et d’obtenir quelque chose de connexe.

On ne va pas se mentir je travaille exclusivement avec du logiciel ouvert. Donc, le super logiciel propriétaire, high-tech, conçu pour les professionnels, on oublie direct. Comprenez par là que, au départ, je ne vais pas forcément reprendre ce qui se fait de mieux en termes d’intégrations. Bon, évidemment, connaître le développement logiciel c’est plus que souhaitable dans mon cas (vu que je souhaite en faire mon métier).

Je préfère grandement les traductions réalisées par des personnes plutôt que des traductions automatisées. Lors de mes recherches sur le Web, les résultats affichés concernaient des logiciels de traduction assistée par ordinateur (CAT en anglais) ou divers services de traduction collaboratifs en ligne. On peut notamment citer Okapi Framework et Weblate, ou encore OmegaT. Honnêtement, mon choix s’est fait en fonction de mon expérience personnelle de la traduction, et non pas, par rapport aux fonctions de tel ou tel outil. Ce que je recherchais c’était un outil accessible me permettant de traduire immédiatement sans trop de prises de tête.

Au niveau sous-jacent, on s’aperçoit que les outils de traduction assistée par ordinateur exploitent diverses technologies XML standardisées. Étant donné que je travaille beaucoup avec des fichiers sources ou du texte, il me semblait pertinent de chercher à adapter Emacs, à lequel j’ai déjà consacré énormément de temps. Il faut savoir qu’avec Emacs, pour les utilisateurs avancés, on peut quasiment façonner son environnement de développement. Ceci est évidemment à prendre en compte puisque l’investissement est vraiment conséquent, pour ne pas dire considérable. Donc, quel est l’intérêt d’adapter Emacs ? Bénéficier d’une multitude de fonctionnalités et en intégrer une multitude pour simplifier significativement son travail de traduction. Prenons, par exemple, le logiciel de traduction OmegaT. Il me semble qu’il a une bonne réputation, par contre, on constate qu’il est vraiment axé sur la traduction et que l’édition de texte est assez basique. À l’inverse, Emacs ne dispose d’aucune fonctionnalité de traduction mais est très abouti comme éditeur. L’un dans l’autre cela ne me gêne pas, puisque Emacs est extensible.

Un projet

N’ayant pas eu de formation ou d’expérience dans la conception d’outils de traduction, je me suis basé sur les standards XML pour trouver des idées. XML Localization Interchange File Format (XLIFF) a retenu toute mon attention. Effectivement, la spécification a été élaboré par des professionnels pour établir un modèle de données et présenter des processus relatifs à la traduction. En d’autres termes, on peut appliquer des outils différents sur divers fichiers tant que le modèle reste conforme. C’est pratique pour permettre à chaque traducteur d’utiliser les ressources dont il dispose. Pour les concepteurs, cela facilite les choses puisqu’on a déjà une base commune bien structurée. D’ailleurs, c’est pour dire, ceux qui ont participé à l’élaboration de la spécification considèrent que XLIFF est par nature un format d’échange sans perte de données. Concrètement, XLIFF permet de supporter plusieurs types de contenu et d’ajouter des métadonnées et des renseignements pour appuyer les traducteurs dans leur activité (glossaires, annotations, commentaires, avancement du projet, etc.).

En pratique, les choses se corsent. J’en avais déjà fait mention sur la liste de diffusion Emacs, mais, cela a fait un flop ou n’a pas tellement suscité les passions. D’un autre côté, bien qu’Emacs dispose d’un mode XML, son analyseur XML est basé sur Relax NG Compact. Or la spécification XLIFF est distribuée avec des fichiers XML Schema et Schematron. Ceux-ci permettent de valider les documents XLIFF obtenus, c’est non négligeable. Donc, on est initialement confronté à un gros souci lorsqu’on veut produire des documents XLIFF et vérifier qu’ils soient tout à fait conformes. La charge de travail est potentiellement exponentielle. Ensuite, ses connaissances en programmation Emacs Lisp sont mises à l’épreuve. Là encore, c’est difficile. Dans l’idéal, il ne s’agit plus seulement de développer un mode mais une application intégrée pouvant potentiellement permettre à des développeurs de logiciels libres ou à des contributeurs lambda de se mettre à niveau en matière de traduction, du genre à éclipser « gettext » et à permettre une refonte de l’interface Emacs dans plusieurs langues. Les effets seraient remarquables mais pas extraordinaires.

Laisser un commentaire

Votre adresse e-mail ne sera pas publiée.