international-globe.jpg

Logiciels de traduction : Tux devient polyglotte

Cette page a pour but de recenser

  1. les techniques de "localisation" d'un logiciel (sa traduction et l'affichage de cette traduction lors du lancement du logiciel)
  2. les logiciels de traduction fonctionnant sur Ubuntu ainsi que les outils à la disposition du linguiste.

En complément, on pourra consulter cette page d'aide à la traduction qui liste des ressources (hors logiciels) utiles aux traducteurs.

À tout seigneur tout honneur : Une rapide introduction à la traduction d’Ubuntu (guide d'utilisation de l'outil de traduction en ligne Launchpad).

Avant toute chose, il est fortement conseillé de se familiariser avec les formats et extensions utilisés dans le domaine de la traduction.

Plutôt que de réinventer le fil à couper le beurre, veuillez consultez la note de bas de page « Liste des logiciels informatiques et formats de fichiers couramment utilisés dans la gestion documentaire »1) , dont la documentation wiki « Équipe de traduction : Les fichiers PO et POT » fait partie. — source : openSUSE France.

Sous linux, l'utilitaire de traduction dominant pour un logiciel est gnu gettext. Il est compatible avec la plupart des langages, qui savent l'appeler. Il permet à un logiciel d'appeler une traduction en sa basant sur la langue du système. Par exemple, si la langue du système est l'italien, c'est la traduction italienne qui sera automatiquement affichée (si elle existe).

En théorie, tout peut être géré à la main (sans outils), ce qui suffit pour de petits projets, ou permet de mieux comprendre le fonctionnement sous-jacent à ces outils.

Par convention, le texte à traduire est en Anglais, et les fichiers de traduction sont dans les langues cibles. Si le fichier de traduction manque pour une langue, c'est la version en anglais qui sera affichée.

Exemple avec un petit programme en bash appelé test.sh :

#!/bin/bash
#=====================================
# Définir emplacement des traductions
#=====================================
TEXTDOMAIN=test				# Nom du programme ET des fichiers de traduction
TEXTDOMAINDIR="/usr/share/locale"	# path des fichiers de traduction - pour des test, on peut définir un autre répertoire
 
# Programme
echo $"hello, world"	# c'est le $"" qui indique à bash et à gnu gettext que le contenu entre les "" est à traduire
echo $"How do you do ?"

Fichier de traduction en français test.fr.po :

msgid ""
msgstr ""
"Project-Id-Version: test\n"
"Report-Msgid-Bugs-To: FULL NAME <cage.christophe@orange.fr>\n"
"PO-Revision-Date: 2020-04-24 10:10+0100\n"
"Language-Team: xx\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"X-Launchpad-Export-Date: \n"
"POT-Creation-Date: \n"
"Last-Translator: \n"
"Plural-Forms: nplurals=2; plural=(n > 1);\n"
"Language: fr\n"

msgid "hello, world"
msgstr "Bonjour, le monde"

msgid "How do you do ?"
msgstr "Comment allez vous ?"

Les lignes msgid doivent correspondre au détail prêt à la ligne $"xx" dans le programme, sinon la traduction ne fonctionne pas.

Une fois le fichier .po créé, on peut créer ("compiler") le fichier.mo, qui sera le VRAI fichier de traduction. Et on en profite pour le placer au bon endroit (celui qu'on a défini au début du programme test.sh pour les fichiers de traductions).

On se place dans le répertoire avec le fichier .po et on lance une commande du type :

sudo msgfmt test.fr.po -o /usr/share/locale/fr/LC_MESSAGES/test.mo

si on a un fichier de traduction en italien, ce sera :

sudo msgfmt test.it.po -o /usr/share/locale/it/LC_MESSAGES/test.mo

Les fichiers de traduction en .mo ont tous le même nom, c'est leur répertoire de langue qui change.

S'il n'existe pas encore, n'oubliez pas de créer le répertoire d'accueil des fichiers .mo (par exemple /usr/share/locale/fr/LC_MESSAGES). Si vous utilisez les répertoire officiels de traduction, cette création n'est pas nécessaire, ils existent normalement déjà.

Désormais, quand vous lancez test.sh, les textes du programme s'afficheront dans la langue d'installation de votre Ubuntu (ou linux) : en français, par exemple. Si aucun fichier de traduction correspondant à votre langue n'est trouvé, c'est la langue utilisée dans le programme qui s'affiche, donc normalement l'anglais.

Bien sur, les outils de traduction vous aident à automatiser de nombreuses étapes, et offrent des options non étudiées ici.

Convertisseurs de fichiers au format *.PO

  • Translate toolkit permet de transformer n'importe quel fichier (texte, srt) en fichiers au format *.PO2) conforme au format utilisé pour la traduction.
    Attention à l'encodage du fichier d'origine, il faut impérativement le convertir au format UTF-8
    (voir le logiciel iconv pour la conversion).

Utilisez la commande :

msgfmt mon_fichier.po -o mon_fichier.mo

Et dans l'autre sens (un fichier au format *.MO vers un fichier au format *.PO) :

msgunfmt mon_fichier.mo >mon_fichier.po

Convertisseurs de fichiers au format *.TS

Pour toutes les applications qui utilisent l'interpréteur QT, le format des fichiers de langues est le *.TS3).
Pour pouvoir être lu par les logiciels concernés il faut les convertir au format *.QM.
Ce que vous pouvez faire avec la commande :

lrelease file.ts

Mettre à jour un fichier au format *.PO

Il se peut que de nouvelle ligne soit apparues dans votre application à traduire, il peut donc être utile de fusionner les nouvelles lignes avec celle déjà traduites.
Ceci peut se faire avec POedit4).
⇒ Allez dans Catalogue → Mettre à jour depuis les sources.
Avant cela il aura fallu préciser le chemin vers les sources, toujours dans Catalogue → Propriétés… dans l'onglet Chemin des sources. Si vous n'avez pas le dossier des sources vous pouvez mettre à jour à partir du fichier pot, Catalogue → Mettre à jour depuis un fichier pot….

Extraire les lignes à traduire des sources

Pour extraire les lignes à traduire des sources d'un logiciel vous pouvez utiliser la commande xgettext :

xgettext -o sortie.pot -a *.cpp --from-code UTF-8

Le fichier sortie.pot sera votre modèle pour les langues dans lesquelles traduire. *.cpp désigne le type de fichier dans lesquelles extraire les lignes internationalisées.

  • poedit : éditeur texte brut de fichiers au format *.PO,
  • gtranslator : éditeur plus complet de fichiers au format *.PO ; Documentation: GTranslator
  • Po4a (acronyme de "PO 4 (for) Anything") : programme d'aide à la traduction et à la maintenance des traductions de logiciels et de documents.
  • virtaal : traduire par segment un fichier au format *.PO.
    Son avantage : un clic droit permet d'aller chercher le sens du mot (ou de l'expression) sur Google translate, Urban Dictionnary,…
    dictionnaire de synonymes et autres (c'est entièrement configurable dans les préférences).
  • Qt Linguist: le programme officiel pour traduire des applications développées pour l’interpréteur Qt.

Ce sont des outils propriétaires (non libres) gratuits. Les qualités se sont sans cesse améliorées, et sont (en 2020) plutôt bonnes.

  • DeepL - basé sur des réseaux de neurones artificiels. Fait au moins jeu égal avec Google Trad.
  • Google traduction - le plus connu

Le marché de la traduction assistée par ordinateur (TAO) est dominé par le logiciel SDL Trados Studio, qui n'est pas disponible pour les systèmes Linux. La seule solution pour l'utiliser sous Ubuntu est d’exécuter Windows dans une machine virtuelle. Cependant, d'autres outils de TAO — libres comme propriétaires — sont proposés en version Linux.

Les outils professionnels libres

omegat_logo.jpg * Argos https://github.com/argosopentech/argos-translate

  • OmegaT : application professionnelle libre d'aide à la traduction
  • (en) Le progiciel Global Sight (site web) est un logiciel de TAO open source publié sous licence Apache 2.0 et développé en language Java.
    Globalsight utilise une base de données MySQL, prend en charge la traduction assistée par ordinateur et la traduction automatique.
    Principales caractéristiques :
    • Automatisation des tâches de filtrage, segmentation, mise à jour de moteur de traduction, génération de fichier cible.
    • Mémoire de traduction
    • Prise en charge complète des processus de traduction mobilisant de multiples prestataires.
    • Deux éditeurs de traduction en ligne
    • Calcul des coûts basés sur des taux configurables pour chaque étape du processus de localisation
    • Filtres pour les fichiers :
      • RTF,
      • La suite Microsoft® Office365 (Word, PowerPoint, Excel),
      • XML, HTML, , PHP, ASP,
      • Javascript, JSP, Java Propriétés,
      • Frame, InDesign, etc…5)
    • Recherche de concordance
    • Alignement et génération de mémoire de traduction de documents déjà traduits
  • (en) Esperantilo TM : EspernatiloTM est une mémoire de traduction open source.
    Le programme prend en charge les formats HTML, OpenOffice, XML, MS Word (en partie) et peut utiliser les formats d’échange TMX et XLIFF. Esperantilo TM fonctionne sur Windows et Linux.
    Esperantilo est programmé à l'aide de l'interpréteur TCL/Tk ; il utilise le correcteur orthographique Hunspell.
    La gestion des données est effectuée par le moteur de bases de données SQLite.
    • Les points forts :
      • Facilité d’installation
      • Compatibilité avec les formats standards TMX et XLIFF
      • Éditeur de mémoire de traduction.
    • Les points faibles
      • Présence de bugs.
  • (en) Anaphraseus : Anaphraseus est une macro pour LibreOffice qui fonctionne de la même manière que Wordfast Classic.
    Cet outil propose un éditeur de mémoire de traduction, un outil de traduction ainsi que l’édition et la création de glossaires. Il nécessite l'installation des paquets Java pour LibreOffice.

Les logiciels propriétaires et commerciaux

  • Wordfast : deuxième du marché après SDL Trados Studio6)

  • (en) Le portail de TStream : TStream Editor Studio, de la société XPlanation.
    Solution complète qui intègre :
    • la gestion de projets (commande, devis),
    • la gestion de bases terminologique et de mémoire de traduction.
    • La fonction en ligne permet l’intervention de plusieurs acteurs sur chaque projet (client, chef de projets, traducteur…)

Voici une liste non exhaustive de quelques outils de traduction dans divers domaines d'activité :

  • YouTranslate! : YouTranslate! est un petit utilitaire libre programmé en Mono permettant d'utiliser les services de traduction distants Google et Yahoo! Babel Fish directement sur votre ordinateur sans avoir à lancer votre navigateur Internet.
  • Translatium : Translatium est un logiciel propriétaire qui vous permet de traduire des mots, des phrases et des images dans plus de 100 langues.
  • Gnome Subtitles : Gnome Subtitles est un logiciel permettant la création et l'édition de fichiers de sous-titres. Il permet également de synchroniser les sous-titres avec la vidéo.
    Il peut fonctionner en mode traduction : une colonne pour les sous-titres que vous souhaitez traduire ainsi qu'une colonne pour mettre les sous-titres traduits.

Dictionnaires et logiciels d'apprentissage des langues

Voir la page consacrée aux dictionnaires et encyclopédies dans la documentation.

  • pour l'enregistrement audio et l'écoute : Audacity
  • Le logiciel Rosetta Stone - Logiciel d'apprentissage complet d'une langue. [Payant, non-libre]
  • GConjugo - Logiciel d'apprentissage de la conjugaison d'une langue sous forme de tests

Voir aussi la page consacrée à l'apprentissage des langues dans la documentation.

La configuration du clavier

Reportez-vous à la page qui traite de la configuration du clavier et ses pages connexes.

Les langues


Auteur : inconnu.
Dernière modification : 28 octobre 2017.
Contributeurs : eagle08 : typos, liens connexes, Accessiweb, formatage du texte pour lecture transversale.


1) , 2) , 4) , 5)
Liste des logiciels informatiques et formats de fichiers couramment utilisés dans la gestion documentaire :
Les termes rencontrés dans le domaine de la traduction :
- TM ou Mémoire de traduction.
- Glossaire des termes de traductique et de l'informatique.
Les formats rencontrés dans le domaine de la traduction
- le format *.MO : fichiers de traduction Gettext.
- La documentation WIKI « Équipe de traduction : Les fichiers PO et POT » . — source : openSUSE France.
- le format *.QM : fichiers de l’interpréteur QT.
- le format *.TS : fichiers de l’interpréteur QT.
Les termes rencontrés dans le domaine de la traduction et de l'informatique :
- Glossaire des termes de traductique et de l'informatique.
3)
Liste des logiciels informatiques et formats de fichiers couramment utilisés dans la gestion documentaire :
Les termes rencontrés dans le domaine de la traduction :
- TM ou Mémoire de traduction.
- Glossaire des termes de traductique et de l'informatique.
Les formats rencontrés dans le domaine de la traduction
- le format *.MO : fichiers de traduction Gettext.
- La documentation wiki « Équipe de traduction : Les fichiers PO et POT » . — source : openSUSE France.
- le format *.QM : fichiers de l’interpréteur QT.
- le format *.TS : fichiers de l’interpréteur QT.
Les termes rencontrés dans le domaine de la traduction et de l'informatique :
- Glossaire des termes de traductique et de l'informatique.
6)
Source : Enquête 2015 sur les pratiques professionnelles des métiers de la traduction, Société française des traducteurs, 2015, p. 30
  • traduction.txt
  • Dernière modification: Le 11/03/2023, 20:36
  • par L'Africain