Interface de traduction (traduction)

De Wiki1000
(Différences entre les versions)
(Les messages à ne pas traduire)
Ligne 1 : Ligne 1 :
 
==Où traduire==
 
==Où traduire==
Il existe trois façons de traduire des message dans La Ligne 1000.
+
Il existe trois façons de traduire des message dans La Ligne 1000 :
  - Traduire les dictionnaires objets
+
  - Traduire le dictionnaire application
+
  - Traduire depuis les écrans
+
  
- Traduire les dictionnaires objets :
+
1. Traduire les dictionnaires objets
C'est la méthode recommandée.
+
:C'est la méthode recommandée.
  
- Traduire le dictionnaire application :
+
2. Traduire le dictionnaire application.
Cette méthode '''n'est pas recommandée''' car le dictionnaire d'application est un dictionnaire de travail '''qui est écrasé''' dès qu'on le reconstruit.
+
:Cette méthode n'est pas recommandée car le dictionnaire d'application est un dictionnaire de travail qui est écrasé dès qu'on le reconstruit.
  
- Traduire depuis les écrans :
+
3. Traduire depuis les écrans
Cette méthode '''n'est pas recommandée''' car les traductions sont intégrées au dictionnaire application.
+
:Cette méthode n'est pas recommandée car les traductions sont intégrées au dictionnaire application et peuvent donc être perdues.
  
 
==Comment traduire==
 
==Comment traduire==
Ligne 22 : Ligne 19 :
 
===Ergonomie===
 
===Ergonomie===
 
Cet écran a été conçu pour pouvoir travailler uniquement au clavier et faciliter ainsi la traduction.
 
Cet écran a été conçu pour pouvoir travailler uniquement au clavier et faciliter ainsi la traduction.
une fois positionné sur la zone de traduction :
+
 
 +
Une fois le focus positionné sur la zone de traduction les raccourcis clavier suivant s'appliquent :  
 
   
 
   
'''Flèche bas''' : passe au message suivant
+
*Flèche bas
 +
:Passe au message suivant
  
'''Flèche haut''' : passe au message précédent
+
*Flèche haut
 +
:Passe au message précédent
  
'''CTRL + T''' : déclare le message comme traduit
+
*CTRL + T
 +
:Déclare le message comme traduit
  
'''CTRL + F''' : inverse le statut "à confirmer"
+
*CTRL + F
 +
:Inverse le statut "à confirmer"
  
'''CTRL + P''' : permuter la sélection et normaliser
+
*CTRL + P
 +
:Permuter la sélection et normaliser
  
'''CTRL + N''' : normaliser (retirer les majuscules sauf si tout le mot est en majuscule (acronyme);   mettre le premier caractère en majuscule et le premier caractère après un point)
+
*CTRL + N
 +
:Normaliser (retirer les majuscules sauf si tout le mot est en majuscule (acronyme); mettre le premier caractère en majuscule et le premier caractère après un point)
  
'''CTRL + O''' : remplacer tous les termes trouvés dans le lexique
+
*CTRL + O
 +
:Remplacer tous les termes trouvés dans le lexique
  
'''CTRL + L''' : Supprimer le mot suivant le curseur dans la phrase.
+
*CTRL + L
 +
:Supprimer le mot suivant le curseur dans la phrase.
  
 
===Les lexiques===
 
===Les lexiques===
 
 
Dans un souci de '''rationalisation''' et '''d'homogénéité''' de la traduction, les lexiques ont été introduits.
 
Dans un souci de '''rationalisation''' et '''d'homogénéité''' de la traduction, les lexiques ont été introduits.
 +
 
On peut créer un lexique par thème lexical (trésorerie par exemple)
 
On peut créer un lexique par thème lexical (trésorerie par exemple)
  
 
====Ajouter un mot dans le lexique====
 
====Ajouter un mot dans le lexique====
 
 
On ajoute une expression dans le lexique sur le clic droit. (sélectionner l'expression si elle comporte plus d'un mot)
 
On ajoute une expression dans le lexique sur le clic droit. (sélectionner l'expression si elle comporte plus d'un mot)
  
Ligne 55 : Ligne 60 :
  
 
[[Image:Lexique2.jpg]]
 
[[Image:Lexique2.jpg]]
 
  
 
====Exploiter le lexique lors de la traduction====
 
====Exploiter le lexique lors de la traduction====
 +
Les expressions présentes dans les lexiques apparaissent en gras dans l'éditeur.
  
Les expressions présentes dans les lexiques apparaissent en gras dans l'éditeur.
+
Parle clic droit dans la zone de traduction, on peut :
Parle clic droit dans la zone de traduction, on peut
+
*Copier l'expression
- copier l'expression
+
*Remplacer toutes les occurrences de l'expression par sa traduction
- remplacer toutes les occurrences de l'expression par sa traduction
+
*Remplacer toutes les occurrences des expressions trouvées dans le message (remplacer tous)
- remplacer toutes les occurrences des expressions trouvées dans le message (remplacer tous)
+
  
 
[[Image:Lexique3.jpg]]
 
[[Image:Lexique3.jpg]]
 
  
 
====Exploiter le lexique pour un travail global de qualité====
 
====Exploiter le lexique pour un travail global de qualité====
  
"Marquer les messages concernés" : marque les messages qui contiennent au moins une expression des lexiques sélectionnés.
+
*Marquer les messages concernés
 +
:Marque les messages qui contiennent au moins une expression des lexiques sélectionnés.
  
"Marquer les messages non conformes" : marque les messages qui contiennent au moins une expression des lexiques sélectionnés et dont la traduction ne contient '''pas''' les expressions traduites du lexique.
+
*Marquer les messages non conformes
 +
:Marque les messages qui contiennent au moins une expression des lexiques sélectionnés et dont la traduction ne contient '''pas''' les expressions traduites du lexique.
  
 
[[Image:Lexique4.jpg]]
 
[[Image:Lexique4.jpg]]
 
  
 
===La recherche===
 
===La recherche===
Ligne 82 : Ligne 86 :
  
 
[[Image:search_replace2.jpg]]
 
[[Image:search_replace2.jpg]]
 
 
 
  
 
===L'aide à la traduction===
 
===L'aide à la traduction===
 
  
 
[[Image:Aide_a_la_traduction_2.jpg‎]]
 
[[Image:Aide_a_la_traduction_2.jpg‎]]
Ligne 93 : Ligne 93 :
 
L'aide à la traduction permet de proposer un traduction à partir de plusieurs sources de messages :  
 
L'aide à la traduction permet de proposer un traduction à partir de plusieurs sources de messages :  
  
- Fichiers xml
+
* Fichiers xml
- Dictionnaires internes
+
- Dictionnaires externes
+
- Traduction Google
+
 
+
 
+
- Fichiers xml
+
 
+
 
[[Image:Ressource_xml.jpg]]
 
[[Image:Ressource_xml.jpg]]
 
+
* Dictionnaires internes
'''- Dictionnaires internes'''
+
:Utile pour récupérer des traductions déjà effectuées
 
+
* Dictionnaires externes
Utile pour récupérer des traductions déjà effectuées
+
:Fichier *.dut.  
 
+
'''- Dictionnaires externes'''
+
 
+
Fichier *.dut.  
+
 
+
'''- Traduction Google'''
+
 
+
Peut être long.
+
 
+
  
 
L'aide à la traduction utilise une méthode pour augmenter ses chances de réussite.
 
L'aide à la traduction utilise une méthode pour augmenter ses chances de réussite.
Ligne 129 : Ligne 113 :
 
De même, ''"je suis un tailleur"'' sera traduit par ''"i am a tailor"'' (il manque la majuscule)
 
De même, ''"je suis un tailleur"'' sera traduit par ''"i am a tailor"'' (il manque la majuscule)
  
C'est pourquoi il existe une option pour désactiver cette méthode :
+
C'est pourquoi il existe une option pour désactiver cette méthode :
'''Recherche du message exact'''
+
'''Recherche du message exact'''
  
 
==Que traduire==
 
==Que traduire==
 
+
===Les messages ordinaires===
=== Les messages ordinaires ===
+
 
+
 
Les messages sont extraits bruts. C'est à dire qu'ils ne subissent aucune modification.
 
Les messages sont extraits bruts. C'est à dire qu'ils ne subissent aucune modification.
 
"code" et "Code" sont deux messages différents.
 
"code" et "Code" sont deux messages différents.
Ligne 144 : Ligne 126 :
 
Charge au traducteur de vérifier ensuite.
 
Charge au traducteur de vérifier ensuite.
  
=== Les messages à ne pas traduire ===
+
===Les messages à ne pas traduire===
 
+
 
La mécanique d'extraction concerne des éléments qui ne sont parfois pas formulés correctement.
 
La mécanique d'extraction concerne des éléments qui ne sont parfois pas formulés correctement.
 
Il est alors inutile de traduire ces messages.
 
Il est alors inutile de traduire ces messages.
Ligne 153 : Ligne 134 :
 
Certains libellé court ''"RoleTiersList"''
 
Certains libellé court ''"RoleTiersList"''
  
En revanche on doit les cocher comme traduits pour les statistiques.
+
{{tip|En revanche on doit les cocher comme traduits pour les statistiques.}}
 
+
=== Les messages à considérer avec attention ===
+
  
 +
===Les messages à considérer avec attention===
 
Certaines chaines contiennent des paramètres ''"Le montant %d concernant le tiers %s ..."''.
 
Certaines chaines contiennent des paramètres ''"Le montant %d concernant le tiers %s ..."''.
  
Il est important de conserver ces paramètres '''dans l'ordre dans lequel ils apparaissent'''.
+
{{tip|Il est important de conserver ces paramètres '''dans l'ordre dans lequel ils apparaissent}}
  
 
En effet une erreur de paramètre peut provoquer une erreur d'exécution du programme.
 
En effet une erreur de paramètre peut provoquer une erreur d'exécution du programme.
Ligne 170 : Ligne 150 :
  
 
Ce cas ne devrait pas être rencontré fréquemment.  
 
Ce cas ne devrait pas être rencontré fréquemment.  
 
 
  
 
On trouvera également ce type de paramètre : ''"Le @code@ est erroné"''
 
On trouvera également ce type de paramètre : ''"Le @code@ est erroné"''
Ligne 193 : Ligne 171 :
  
 
==Un processus itératif==
 
==Un processus itératif==
 
 
Afin d'effectuer en parallèle le travail de traduction et de validation, un batch lancé chaque soir est prévu.
 
Afin d'effectuer en parallèle le travail de traduction et de validation, un batch lancé chaque soir est prévu.
 
Le batch reconstruit le dictionnaire application afin que les équipes de qualité bénéficient des traductions effectuées dans la journée.
 
Le batch reconstruit le dictionnaire application afin que les équipes de qualité bénéficient des traductions effectuées dans la journée.

Version du 30 juin 2011 à 14:04

Sommaire

Où traduire

Il existe trois façons de traduire des message dans La Ligne 1000 :

1. Traduire les dictionnaires objets

C'est la méthode recommandée.

2. Traduire le dictionnaire application.

Cette méthode n'est pas recommandée car le dictionnaire d'application est un dictionnaire de travail qui est écrasé dès qu'on le reconstruit.

3. Traduire depuis les écrans

Cette méthode n'est pas recommandée car les traductions sont intégrées au dictionnaire application et peuvent donc être perdues.

Comment traduire

L'écran de traduction

Traduction2.jpg

Ergonomie

Cet écran a été conçu pour pouvoir travailler uniquement au clavier et faciliter ainsi la traduction.

Une fois le focus positionné sur la zone de traduction les raccourcis clavier suivant s'appliquent :

  • Flèche bas
Passe au message suivant
  • Flèche haut
Passe au message précédent
  • CTRL + T
Déclare le message comme traduit
  • CTRL + F
Inverse le statut "à confirmer"
  • CTRL + P
Permuter la sélection et normaliser
  • CTRL + N
Normaliser (retirer les majuscules sauf si tout le mot est en majuscule (acronyme); mettre le premier caractère en majuscule et le premier caractère après un point)
  • CTRL + O
Remplacer tous les termes trouvés dans le lexique
  • CTRL + L
Supprimer le mot suivant le curseur dans la phrase.

Les lexiques

Dans un souci de rationalisation et d'homogénéité de la traduction, les lexiques ont été introduits.

On peut créer un lexique par thème lexical (trésorerie par exemple)

Ajouter un mot dans le lexique

On ajoute une expression dans le lexique sur le clic droit. (sélectionner l'expression si elle comporte plus d'un mot)

Lexique1.jpg

On peut choisir le lexique (parmi les lexiques sélectionnés) dans lequel insérer l'expression. Si l'expression existe déjà dans le lexique, sa traduction est affichée pour modification.

Lexique2.jpg

Exploiter le lexique lors de la traduction

Les expressions présentes dans les lexiques apparaissent en gras dans l'éditeur.

Parle clic droit dans la zone de traduction, on peut :

  • Copier l'expression
  • Remplacer toutes les occurrences de l'expression par sa traduction
  • Remplacer toutes les occurrences des expressions trouvées dans le message (remplacer tous)

Lexique3.jpg

Exploiter le lexique pour un travail global de qualité

  • Marquer les messages concernés
Marque les messages qui contiennent au moins une expression des lexiques sélectionnés.
  • Marquer les messages non conformes
Marque les messages qui contiennent au moins une expression des lexiques sélectionnés et dont la traduction ne contient pas les expressions traduites du lexique.

Lexique4.jpg

La recherche

Search replace.jpg

Search replace2.jpg

L'aide à la traduction

Aide a la traduction 2.jpg

L'aide à la traduction permet de proposer un traduction à partir de plusieurs sources de messages :

  • Fichiers xml

Ressource xml.jpg

  • Dictionnaires internes
Utile pour récupérer des traductions déjà effectuées
  • Dictionnaires externes
Fichier *.dut.

L'aide à la traduction utilise une méthode pour augmenter ses chances de réussite. Ainsi, elle retire les caractères non alphabétiques de début et de fin de phrase avant de comparer les chaines. Par exemple, je cherche à traduire la chaine brute " - Le contrat : ". J'applique la méthode et je l'applique aussi au messages sources avant de comparer. Le message recherché est donc "le contrat". Si je trouve ce message dans les sources (qui pouvait être à l'origine "*le contrat ..." d'ailleurs), je prends la traduction "the contract" et je restitue les éléments retirés avant la recherche pour retrouver " - The contract : "

Cette méthode est utile pour augmenter le succès de traduction mais elle présente des inconvénients.

Ainsi, en Anglais, il ne faut pas d'espace avant ":". Avec cette méthode, si dans ma source j'ai "Le code : " traduit par "The code: " (ce qui est correct), on obtiendra la chaine "The code : " (avec un espace en trop). De même, "je suis un tailleur" sera traduit par "i am a tailor" (il manque la majuscule)

C'est pourquoi il existe une option pour désactiver cette méthode : Recherche du message exact

Que traduire

Les messages ordinaires

Les messages sont extraits bruts. C'est à dire qu'ils ne subissent aucune modification. "code" et "Code" sont deux messages différents. Les mécanismes pour extraire l'idée du message afin de stocker moins de messages s'avèrent trop complexes.

En revanche, l'aide à traduction peut traduire des messages ressemblants. Si "code" est traduit, la traduction automatique traduira "Code", "-Code : ", "code..." etc... Charge au traducteur de vérifier ensuite.

Les messages à ne pas traduire

La mécanique d'extraction concerne des éléments qui ne sont parfois pas formulés correctement. Il est alors inutile de traduire ces messages.

Par exemple, un message de règle d'erreur "erreur_codeTiers".

Certains libellé court "RoleTiersList"

Tip-20px.png Tip : En revanche on doit les cocher comme traduits pour les statistiques.

Les messages à considérer avec attention

Certaines chaines contiennent des paramètres "Le montant %d concernant le tiers %s ...".

Tip-20px.png Tip : Il est important de conserver ces paramètres dans l'ordre dans lequel ils apparaissent

En effet une erreur de paramètre peut provoquer une erreur d'exécution du programme. On peut aussi numéroter les paramètres ; par exemple : "nom : %s ; prénom %s" => "last name : %1:s ; first name %0:s"

attention : la numérotation des paramètres commence à zéro 
ShowMessage(Format('Reposition after 3 strings = %s %s %s %1:s %s',['Zero', 'One', 'Two', 'Three']))
Reposition after 3 strings = Zero One Two One Two

Ce cas ne devrait pas être rencontré fréquemment.

On trouvera également ce type de paramètre : "Le @code@ est erroné"

Ces paramètres ne peuvent pas provoquer d'erreurs et leur ordre n'importe pas.

Le travail de qualité

Les problèmes qu'on est susceptible de rencontrer lors de l'utilisation du produit :

  • Un message non traduit car non extrait
  • Un message non traduit car non restitué (mais extrait)


Les problèmes qu'on est susceptible de rencontrer lors de la traduction :

  • Un message extrait abusivement
  • Un message extrait mais non traduisible ("erreur_code")

Ces problèmes sont à signaler.

Un processus itératif

Afin d'effectuer en parallèle le travail de traduction et de validation, un batch lancé chaque soir est prévu. Le batch reconstruit le dictionnaire application afin que les équipes de qualité bénéficient des traductions effectuées dans la journée. Ensuite on procède à une sauvegarde de chaque dictionnaires objets, par soucis de sécurité et de traçabilité. Enfin, on effectue une mise à jour du dictionnaire application, ce qui consiste en

  • une actualisation des dictionnaires objets (pour diffuser les traductions dans les autres dictionnaires objets contenant les mêmes messages)
  • une extraction afin de récupérer les éventuels nouveaux messages ajoutés par l'équipe projet ou outil.
  • une reconstruction du dictionnaire application

Ainsi, la qualité peut constater rapidement les problèmes et les dictionnaires sont à jours.

Guide de la traduction (trans)Développement DSM

Outils personnels