Utilisateur:Rical/TranslatorHelper

La bibliothèque libre.
Aller à la navigation Aller à la recherche

Dans cette page, nous cherchons comment aider concrètement les traducteurs, de l'organisation générale à la pratique détaillée de cette tâche.

  • Quels outils existent déjà dans mediawiki ou ailleurs ?
  • Que peuvent apporter les techniques existantes et comment les combiner ?
  • De quoi peut se composer une page de traduction ? Comment la disposer ?
  • Quelle synthèse peut le mieux guider un traducteur ou l'ensemble d'un groupe de traducteur ?

Exemple de module central actuel[modifier]

{{#invoke:CentralTry | doc | dockey = tools_missing_translations_title | itemid = Q535 }} Erreur Lua dans package.lua à la ligne 80 : module 'Module:Central' not found.

Proposition de Module:TranslatorHelper[modifier]

Aider les utilisateurs et les aidants est une des bases de la conception des modules centraux. Voir le contexte.

Dans le Module:CentralTry les traductions servent dans le module principal pour les noms d'arguments, messages d'erreurs, catégories et textes divers, les images.

Les modules ne sont pas interactifs, il faut un preview de la page que l'on modifie pour voir le nouvel état.

On peut envisager un Module:TranslatorHelper dédié au soutien des traducteurs qui :

  • comptabilise et liste les différences :
* des langues traduites ou non
* des manques de traductions dans certaines langues par rapport aux autres
* des traductions modifiées entre 2 ou plusieurs versions de traductions dans des wikis différents ou après évolutions de pages ou de modules.
  • qui fait cela pour les i18n de n'importe quel module et de son sous module /I18N,
  • mais aussi pour 2 ou plusieurs pages mises en paramètres à traduire ou comparer.
  • qui sert à chaque traducteur pour faciliter et mesurer l'avancement de sa tâche.
  • qui sert aussi à l'organisateur des traductions pour piloter un groupe de traducteurs.

Utilisation du Module:TranslatorHelper[modifier]

Une page de pilotage invoque le module TranslatorHelper et définit :
  • La page à traduire,
  • Une configuration de traduction,
  • Un profil utilisateur.
Le traducteur signale son intervention par des balises placées dans la page traduite, en commentaires.
À chaque prévisualisation, le TranslatorHelper lit le wikicode de la page à traduire et les pages de configuration, puis synthétise l'état de traduction, puis l'affiche.

Pour organiser le travail d'un traducteur ou d'un groupe, il faut des enregistrements mis à jour chaque fois qu'un traducteur valide son travail.

Ces enregistrements peuvent être :

  • soit dans des modules de données ne contenant que des synthèses de traductions, des configurations de traductions ou des profils de traducteurs.
  • soit dans des items de Wikidata dédiés et contenant ces mêmes données.

Composer une configuration de traduction[modifier]

Le TranslatorHelper met à jour tout l'affichage à chaque preview.
Chaque traducteur compose sa propre configuration de traduction.

Une configuration de traduction contient :

  1. un entete de synthèse du groupe de traduction
  2. un entete de synthèse de la tache du traducteur
  3. un état de la traduction en cours
  4. une liste de traductions de la langue d'origine, choisie par le traducteur
  5. un liste de traductions d'une autre langue d'origine, choisie par le traducteur, pour aider à préciser les ambiguités.
  6. les dernières lignes traduites, comme repère visuel pour le traducteur
Tous les parametres (ou un pointeur vers eux) peuvent être dans le profil centralisé du traducteur

Une gestion d'un groupe de traductions contient :

  • Des demandes de traductions : langues, tailles, wiki, déjà fait, reste à faire ...
  • Les dernières participations : traducteurs, langues, pages, nombre de traductions, dates ...

Présentation en situation[modifier]

On ne traduit pas de la même manière un paragraphe d'aide, un message d'erreur avec des paramètres, un nom d'argument ou de catégorie.
Il est donc très utile pour le traducteur de voir sa traduction en situation aussi réelle que possible.
  • Soit dans une présentation générique qui montre chaque traduction dans les situations les plus courantes pour la plupart des modules.
  • Soit dans un mode d'affichage spécial à un module particulier. Il y a déjà, dans le Module:Central de base, les modes read, edit, doc, tests, auquel on peut ajouter le mode translate par défaut et chaque module peut apporter sa propre version.
Les identifiants de traduction sont déjà groupés en catégories (..._cat pour les catégories, ..._header pour les entêtes de colonnes de tableaux, etc).

{{#invoke:Author3 | doc | dockey = list_all_categories_title | itemid = Q535 }} Erreur Lua dans package.lua à la ligne 80 : module 'Module:Centralizer-s-fr' not found. {{#invoke:Author3 | doc | dockey = list_all_errors_title | itemid = Q535 }} Erreur Lua dans package.lua à la ligne 80 : module 'Module:Centralizer-s-fr' not found.

Outils existants[modifier]

Techniques Mediawiki[modifier]

Les JavaScripts de mediawiki, Gadgets et Modules divers.

Pages de Wikisource[modifier]

L'extension ProofreadPage compare un texte à une image de référence.

Exemple d'un texte comparé à une image pour une fidélité au caractère près :

  • Présente le wikitexte "traduit" à gauche et le résultat à obtenir à droite.
  • Il y a toute une collection de { { modèles } } pour affiner les styles de colonnes, titres et même caractères particuliers.

Google Trad[modifier]

Exemple translate.google.fr :

  • Présente le texte à traduire et le texte traduit.
  • Propose trois langues et une détection automatique de la langue.
  • Chaque mot peut être remplacé par une série d'alternatives.
  • Pour chaque mot, un dictionnaire propose les significations des verbes noms...
  • Pour chaque mot, propose des traductions alternatives, leur probabilité et les traductions possibles en retour.

Traduction/Référence[modifier]

Pour la traduction de contenu, voir : { {Traduction/Référence} } Si la traduction est balisée par le modèle dans le wikitexte, le module peut :

  • lire le wikitexte lors de toutes les ouvertures de la page.
  • lister les traductions présentes dans la page.
  • inclure cette liste dans la page, là où le module est appelé, dans l'ordre de la page, comme pour les références classiques.
  • En temps que module central ou centralisable ce module serait par construction capable de s'afficher dans la langue du wiki et/ou celle de l'utilisateur, ou toute autre choisie par paramètre.

Motivation d'origine[modifier]

Le 28/04/2016 20:21, Benoît Evellin (Trizek) a écrit :

Oops, I forgot... euh, on va le faire en français hein :)
J'avais oublié, la journée a été très dense. Désolé de ne pas avoir racroché les wagons.
Pour le contexte : je travaille à la Fondation et, quand je ne travaille pas, je contribue (mais pas que). Dans mon travail, avec mon collègue (suédois) Johan, nous travaillons à améliorer les traductions de documentation ou d'éléments logiciels pour permettre au plus grand nombre de contribuer. Je travaille également sur l'éditeur visuel (un peu), notamment pour améliorer tout ce qui touche à la traduction. T127354 est donc dans mon scope.
Je suis donc très intéressé par une présentation de ce que tu (vous?) as développé.
Merci d'avance !
Benoît Evellin (Trizek), Community Liaison, Wikimedia Foundation