WB TRADUIRE M&B : Un programme pour aider les traducteurs

正在查看此主题的用户

状态
不接受进一步回复。
Bonjour Sindhay,

Comme je l'ai dit, les solutions semblent disponibles facilement pour utiliser Google Trad dans un site web (comme le lien que m'as indiqué) et même dans une appli Android sur smartphone. Mais les solutions pour intégrer un appel à Google Trad depuis un programme autonome sous Windows sont loin d'être évidentes à trouver. Il semblerait qu'il ait existé il y a quelques années une API (interface de programmation) pour Google Trad mais qu'elle ne soit plus disponible et qu'en plus elle était payante.

J'ai quand même trouvé un ou deux vieux trucs, j'essaierai ça dans un petit programme de test un de ces jours.
 
Voilà, je pense avoir terminé mes essais complémentaires. La nouvelle initialisation de traduction à l'aide d'un mod de référence déposé dans F3 et F2 fonctionne bien, même quand des textes anglais ont changé de clé ce qui n'était pas le cas auparavant.

Le fonctionnement du bouton "Trad FR trouvée" est toujours en place et garde son utilité, mais il est moins utile qu'avant quand on est passé par une initialisation de traduction. Je voudrais quand même supprimer cet enchainement clic pour voir puis clic pour prendre la proposition, devoir cliquer deux fois en deux endroits différents est un peu chiant. Je vais voir ce que je peux faire... demain !  :smile:
 
La version 1.5.0 de mon programme est prête.

Vu que je ne l'avais pas fait pour la 1.4 malgré les nombreux ajouts fonctionnels, je dois maintenant mettre à jour le manuel utilisateur, sinon les nouvelles fonctionnalités ne seront pas expliquées. Dans la foulée il me faudra aussi mettre à jour mon tutoriel général de traduction des mods de M&B.

Tout ceci me prendra plusieurs jours, je ne sais pas quand je finirai les docs vu qu'il y a de nombreuses captures d'écran à refaire et du texte explicatif sur les nouvelles fonctions à écrire. J'aimerais tout mettre en ligne en même temps, mais si quelqu'un est pressé et désire utiliser cette version au plus tôt pour profiter de la nouvelle fonction d'initialisation de traduction, dites-le moi et je mettrai en ligne Traduire M&B 1.5.0:grin:
 
J'ai bien nettoyé mes deux documents hier soir, le Manuel utilisateur de Traduire M&B et le Tutoriel de traduction, qui explique toutes les bases sans utiliser le programme.

Il me faut maintenant introduire correctement la nouvelle fonction d'initialisation de traduction, qui fait en beaucoup mieux la fonction de warband View->Create Language Template->Mark Non-translated lines. C'est ce qui sera le plus long car je vais sûrement devoir créer un ou deux nouveaux chapitres, trouver les bons exemples didactiques (!) et remanier le découpage du manuel utilisateur pour expliquer comment ça marche et l'intérêt qu'on en tire par rapport à la façon dont on procédait avant.

Une chose est certaine, je ne pourrais plus attaquer une nouvelle VF sans passer par mon programme : la correction de menus.txt et l'initialisation automatique de la VF (y compris quand elle a déjà été commencée) sont deux fonctions totalement incontournables !  :smile:
 
Il m'avait pris l'idée hier, histoire de changer du manuel utilisateur (qui avance), de faire rapido une VF pour la version 1.174 de Warband. Et puis je me suis dit que c'était l’occasion de nettoyer encore la VF de Native parce que j'avais vu en traduisant les mods Nova Aetas et L'Aigle que finalement il y avait encore pas mal d'erreurs ou d'imprécisions dans le fichier dialogs par exemple. Alors j'ai attaqué la revue des 2500 lignes de dialogs avec la VF de Nova Aetas en référence.

Ça avançait bien grâce à la colorisation contextuelle : deux lignes jaunes et deux lignes roses, les VA et les VF sont identiques, tout est correct, des lignes blanches, faut vérifier, et souvent la trad de Nova Aetas était meilleure que le trad historique de Native. Normal, j'avais corrigé beaucoup de choses en faisant Nova Aetas. Et puis vers minuit et demi, les yeux à moitié clos, patatras ! Je ferme Traduire M&B par la croix Windows en haut à droite de la fenêtre, je réponds bêtement Oui à la question qu'on me pose sans la lire... et je perd deux heures pleines de travail !  :evil:

Ceci parce que la question que je pose à la sortie est "Le fichier VF a été modifié, on quitte quand même l'application ?" et donc la réponse Oui génère une sortie sans sauvegarde. Et pourquoi me suis-je fais avoir sur mon propre programme que j'utilise depuis huit ans ? Parce qu'en ce moment j'utilise beaucoup Word pour des documents d'utilisation et que quand on sort de cette manière avec Word, celui-ci pose la question "Voulez-vous enregistrer les modifications apportées à xxx ?", et si on répond Oui il enregistre le fichier avant de sortir. Hier soir ce fut une réponse réflexe : je clique sur Oui, la VF va être enregistrée... et non !

Donc je vais faire deux choses dans Traduire M&B aujourd'hui.

1 - Modifier la logique de sortie de Traduire M&B pour faire comme avec Word... et tous les autres éditeurs de texte d'ailleurs. Je me souviens vaguement pourquoi j'avais choisi cette logique là il y a huit ans, mais finalement elle est trop dangereuse. Ce n'est d'ailleurs pas la première fois que je fais ça, mais jamais après deux heures de travail sans sauvegarde.
2 - Je vais implémenter une proposition de sauvegarde toutes les N lignes modifiées. L'erreur ci-dessus sera toujours possible en répondant Non après le changement de logique, et il est stupide de perdre l'édition d'environ 1000 lignes comme hier soir juste à cause d'une erreur de bouton à la sortie du programme. Donc maintenant on proposera de sauvegarder toutes les 100 lignes modifiées par exemple (la valeur sera modifiable dans les options et la fonction débrayable).

Et zut, encore des choses nouvelles à ajouter au manuel utilisateur !  :sad:
 
Aïe, aie, aie! Moi aussi je me suis fait avoir.
Pourquoi ne pas ajouter une fenêtre de confirmation après la réponse oui ou non en expliquant les conséquences?

Merci.
 
Je vais quand même changer la logique (c'est en cours), mais c'est vrai que j'enfoncerai peut-être le clou par une demande de confirmation quand on choisira de sortir sans sauvegarder alors qu'on a fait des modifs.  :wink:
 
Bon, les évolutions de Traduire M&B sont terminées. J'ai repris un peu la correction du dialogs de la VF Warband 1.1174, pour l'instant ça se passe bien et le programme me propose de sauvegarder toutes les 10 lignes modifiées (valeur de test). Si je refuse il redemande à 20, puis 30, toutes les valeurs multiples de la valeur choisie en fait. La valeur par défaut dans le programme mis en ligne sera de 100, mais ça se change dans les options.  :smile:

Au dodo, je continuerai demain.
 
Ça y est, la VF de Warband 1.174 est en ligne ! Ce qui signifie que je vais pouvoir revenir à Traduire M&B et surtout son manuel utilisateur.

Vu que je vais bientôt devoir m'absenter quelques jours, je veux vraiment arriver à finir ce manuel pour balancer tout le paquet, programme et docs, avant de partir. Il ne reste pas beaucoup de temps, mais je ne désespère pas...  :cool:
 
Bonsoir,

Pas de long discours ce soir, je suis trop fatigué.

Je tenais à mettre en ligne avant de quitter le PC pour quelques jours un paquet cadeau contenant :
  • Le programme Traduire M&B (ex Fusion M&B) en version 1.5.0, avec plein de nouvelles fonctions.
  • Le Tutoriel de traduction des mods M&B, remanié pour tenir compte des évolutions de Traduire M&B.
  • Le Manuel Utilisateur de Traduire M&B 1.5.0.
  • Le fichier Readme150.rtf qui donne toutes les évolutions du programme.
Je n'ai pas eu le temps de terminer le Manuel Utilisateur comme je l'aurais voulu. Si j'ai bien réussi à décrire le fonctionnement de tous les ajouts de ces derniers mois et notamment de la fonction d'initialisation intelligente de la VF, je n'ai pas eu le temps de mettre en place au chapitre 8 un exemple complet prenant en compte cette fonction. Je ferai ça dans une semaine ou deux, mais soyez cependant assurés que toutes les informations nécessaires à l'utilisation de Traduire M&B 1.5.0 sont bien présentes dans ce Manuel Utilisateur.

L'ensemble est regroupé au sein d'un archive que vous pouvez télécharger directement depuis mon Google Drive avec le lien suivant :

N'hésitez pas à me faire des retours ici si vous trouvez des problèmes ou des améliorations souhaitables.

A bientôt. :smile:
 
最后编辑:
Bonsoir,

A défaut de refaire le chapitre 8 de mon manuel utilisateur, je suis reparti à fond depuis hier dans le code pour aller au bout de mon idée de traduction automatique.

La fonction actuelle marche très bien, mais son défaut est de s'appuyer sur une seule traduction de référence à déposer en F3-F2. Elle fait déjà beaucoup mieux que la simple fonction View->Create Template Language->Mark non-translated lines de Warband que nous utilisions jusqu'à présent pour initialiser les VF, mais le problème est que l'on n'est pas toujours sûr du mod à prendre en référence : Native, Nova Aetas, autre...?

Alors ce qui me trotte dans la tête depuis le début, c'est de pouvoir taper dans toutes les VF dont on est sûrs de la qualité de la traduction sans avoir à chercher quel mod est le plus proche de celui que l'on veut traduire. Et pour cela j'ai décidé de fabriquer ce que j'appelle des bibliothèques de traduction, afin d'utiliser leur contenu et non un seul mod. Dans ces bibliothèques, une par type de fichier (dialogs, game_strings...), je vais compiler la totalité des textes anglais différents et leurs traductions et pousser ensuite Traduite M&B à chercher automatiquement une traduction dans ces bibliothèques et non plus dans le seul mod en F3-F2. Autrement dit, on va chercher la traduction dans plusieurs mods d'un seul coup.

Dans un premier temps je vais compiler dans ces bibliothèques les VF des mods que j'ai révisés intégralement, à savoir Native, Nova Aetas 5.0, ACOK 6.2 et L'Aigle.

Là j'ai presque fini la première partie du truc, à savoir mettre au point tout le processus de génération de bibliothèque. Celui-ci élimine les doublons purs mais conserve plusieurs traductions d'un même texte s'il a été traduit différemment dans deux ou trois mods (résultat du temps qui passe et des différents traducteurs). Il faudra ensuite que j'écrive le code qui va permettre d'utiliser les bibliothèques générées dans le processus de traduction automatique au lieu d'utiliser le contenu de F3-F2.

Quand tout ceci sera fait, il faudra générer les 14 bibliothèques et les réviser pour, dans le cas de traductions multiples, n'en garder qu'une seule. La dernière étape consistera à mettre en ligne les 14 bibliothèques avec Traduire M&B pour faciliter la vie des autres traducteurs en herbe de mods de Warband.

Vaste programme, non ?  :twisted:
 
Quand on lit l'idée de la bibliothèque ça semble tellement évident et indispensable alors que jusqu'à présent je n'y avais jamais vraiment réfléchi.

Belle trouvaille qui devrait se révéler fort utile, par contre si tu n'y as pas pensé il serait intéressant d'avoir une option pour passer en priorité une VF au choix lorsque plusieurs choix de traductions sont disponibles afin d'éviter des incohérences comme par exemple lors d'une quête un brigand qui se transforme en bandit puis redevient brigand suivant les scènes.

Je ne suis pas sur d'être clair comme d'hab

Cette option en tout cas à l'avantage de me motiver un peu pour jeter un coup d'oeuil à la trad de certains mods. Si par miracle ça pouvait me donner la volonté et le courage de me remettre à traduire un peu
 
des incohérences comme par exemple lors d'une quête un brigand qui se transforme en bandit puis redevient brigand suivant les scènes
Je ne suis pas sur d'être clair comme d'hab
Si, si, je vois bien l'idée. Ce que tu racontes pourrait être un inconvénient du fait de ne conserver finalement en bibliothèque qu'une seule traduction sur plusieurs existantes car on risque de valider définitivement des errances de ce genre. Mais si je conserve en bibliothèque plusieurs traductions du même texte anglais, alors je ne peut plus faire tourner une initialisation de traduction entièrement automatique car à chaque traduction multiple il faudrait que le processus s'arrête pour demander à l’utilisateur de choisir. Sur plusieurs milliers de lignes, je te laisse imaginer le calvaire...  :smile:

Edit :
Pardon, en fait tu proposes de mettre une priorité en fonction du mod à l'origine des traductions. Ceci laisse supposer que le nom du mod à l'origine de chaque ligne de la bibliothèque soit conservé. Ça tombe bien, c'est le cas !  :grin:
Après, je ne sais quand même pas si je vais laisser plusieurs traductions pour le même texte. A priori, généralement il y en a une bonne et les autres sont moins bonnes, donc leur élimination se justifie.
Mais je verrai quand j'aurais les bibliothèques sous les yeux...
 
sindhay 说:
... ...

Cette option en tout cas à l'avantage de me motiver un peu pour jeter un coup d'oeuil à la trad de certains mods. Si par miracle ça pouvait me donner la volonté et le courage de me remettre à traduire un peu

Je suis dans la même situation que toi, le manque de participation sur le forum fr me laisse dubitatif... et la motivation pour continuer à traduire ou entreprendre une nouvelle traduction... n'est pratiquement plus là!
 
C'est vrai qu'on n'a pas de retour, mais certaines VF marchent très bien.

Le carton c'est Nova Aetas 5.0, qui a été téléchargé plus de 1530 fois depuis juin.
Ensuite il y a les VF des versions de ACOK : 770 pour la 5.0, 560 pour la 6.0, 216 pour la 6.2.
Puis L'aigle, 93 fois et Warband 1.173, 255 fois.

Donc finalement les VF sont utiles, même si on n'en a aucun retour (ou très peu).

Après il est certain qu'on peut se poser la question de l'utilité de traduire d'autres mods pour Warband, un jeu de 2010. D'un autre côté c'est pas demain la veille qu'on pourra jouer à un mod de Bannerlord : d’abord la date de sortie de Bannerlord est toujours inconnue, puis l'architecture du programme étant nouvelle, les moddeurs de Warband vont devoir apprendre de nouveaux outils pour faire des mods de Bannerlord.

Enfin, pour maintenant je vais aller au bout de mes modifs, on verra bien si elles servent. Quand j'aurai fini je testerai de toute façon tout ça sur un mod vierge, histoire de juger de l'utilité effective.  :smile:
 
C'est intéressant, quand même, dans voir dans un fichier unique toutes les traductions différentes !

Là je fais mes essais avec item-modifiers, un fichier simple de 44 lignes mais pourtant avec des traductions différentes sur certaines lignes d'une VF à une autre. Là j'ai empilé Native, ACOK et Nova Aetas. Je constate que finalement le bon item-modifiers.csv, valable pour les trois mods car toutes les lignes anglaises sont identiques, serait un mix du meilleur des trois mods. Ça donne envie de le générer et de le mettre dans chaque VF...  :grin:
 
Après avoir écrit (et beaucoup débuggé) le code qui permet de générer les bibliothèques, j'ai commencé à écrire le code qui les utilise pour l'initialisation automatique de la traduction. Comme prévu, il faut faire très attention, ne rien oublier, j'y vais doucement et très progressivement.

Pour l'instant cela semble fonctionner pour l'initialisation qui part de rien (c'est à dire que rien n'a encore été traduit), mais c'est le cas le plus facile : si on trouve dans la bib, on met le texte français de la bib, sinon on met le texte anglais avec {***}.

Pour le cas des VF déjà commencées, c'est plus touchy.  :???: Mais je vais m'inspirer de ce que j'ai déjà fait avec un mod de référence déposé en F3 et F2.

A suivre...
 
Bon, je me suis accordé quelques jours loin de ce programme. J'avais besoin de souffler et de faire autre chose sans avoir sans cesse en tête le nouveau code à écrire et les nombreux tests à faire.

Après quelques jours bien sportifs, une séance de ciné et du repos, l'envie est revenue et je me sens à nouveau prêt pour plonger dans les arcanes de la traduction automatique à partir de bibliothèques.  :cool:

Édit :

Après quelques essais, la traduction automatique depuis une bibliothèque d'une VF déjà entamée semble aussi fonctionner correctement. Je me pose donc désormais des questions sur le contenu des bibliothèques et leur impact sur les VF existantes.

En effet, si je décide de ne conserver dans la bibliothèque qu'une seule traduction quand il y en a deux ou trois dans la bib venant des divers mods ayant servi à la générer, alors il faudrait en toute rigueur régénérer les différentes VF de ces mêmes mods à partir de la bibliothèque finale pour ne plus avoir qu'une seule traduction du même texte anglais dans tous les mods, la meilleure.

Je me demande aussi comment détecter les doublons. En effet, j'ai fait mes essais avec item_modifiers, un fichier de 88 lignes très simples, donc c'est facile de voir les doublons dans la bib, mais quand je ferai pareil avec dialogs ou game_strings, des fichiers de plusieurs milliers de lignes, ça va être très problématique de détecter des doublons dans une bibliothèque de plusieurs dizaines de milliers de lignes. Je crains de ne devoir développer un morceau de programme dédié qui affichera le texte anglais, les doublons, demandera quelle traduction conserver et éliminera les autres.

De plus, à chaque fois que je mettrai un nouveau mod en bibliothèque, des doublons dus au nouveau mod réapparaitront et le travail d'élimination sera à refaire : pas glop ! Comment éviter cela ? Peut-être en me disant que de toute façon, après avoir fait le tri dans une bibliothèque générée à partir de quatre mods différents, le texte conservé en bib est obligatoirement bon et en changeant le code de fabrication des bibs pour que les traductions différentes trouvées dans un nouveau mod soient éliminées dès l'écriture en bibliothèque.

Bref, pas mal de questions philosophiques sur la façon non seulement d'utiliser tout ça mais aussi de faire vivre les bibliothèques en les enrichissant avec des traductions spécifiques de mods supplémentaires. Le code d'élaboration des bibliothèques et de traduction automatique est certes réalisé, mais le travail ne fait que commencer...  :ohdear:
 
Pour ceux qui se demandent de quoi je parle avec les traductions multiples du même texte anglais, voici deux extraits de la bibliothèque de item_modifiers réalisée à partir des VF de Native 1.174, ACOK 6.2, Nova Artas 5.0 et L'Aigle.

Balanced %s|%s d'un bon équilibre|ACOK 6.2
Balanced %s|%s d'un remarquable équilibre|Native 1.174
Battered %s|%s avec cabosses|Nova Aetas 5.0
Battered %s|%s avec des cabosses|Native 1.174
Bent %s|%s en mauvais état|Native 1.174
Champion %s|%s de champion|Native 1.174
Cheap %s|%s au rabais|Native 1.174
Cheap %s|%s bon marché|ACOK 6.2
Chipped %s|%s d'une grande usure|Native 1.174
Correctif bug langage|Correctif bug langage|Native 1.174
Cracked %s|%s avec des craquelures|Native 1.174
Cracked %s|%s avec des fissures|ACOK 6.2
Cracked %s|%s avec fissures|Nova Aetas 5.0
...
Tempered %s|%s ayant subi une trempe|Native 1.174
Tempered %s|%s en acier trempé|ACOK 6.2
Tempered %s|%s en métal trempé|L'Aigle
Étonnant pour quatre VF qui sont toutes passées entre mes mains et que j'ai toutes les quatre relues intégralement, non ? Mais logique : ces VF avaient été commencées par des gens différents, aucune des traductions prise individuellement n'est réellement mauvaise, et pour certaines c'est une simplification que j'ai faite en passant d'une VF à une autre.

Balanced : "d'un remarquable équilibre" dans Native, j'ai simplifié en "d'un bon équilibre" pour faire plus court dans ACOK.
Battered : de même le "avec des cabosses" de Native est devenu "avec cabosses" dans Nova Aetas.
Cracked : "avec des craquelures", puis "avec des fissures" puis "avec fissures", trois évolutions successives pour faire plus court dans l'inventaire.
Tempered : Trois formulations qui trahissent mon interrogation sur la bonne traduction de tempered. Le "ayant subi une trempe" de Native était trop long dans l'inventaire, j'ai donc mis "en acier trempé" dans ACOK car il me semble que seul l'acier est trempé en métallurgie pour augmenter la dureté. Mais dans L'Aigle je suis revenu à "en métal trempé" car je crois me souvenir que dans les objets il y des armes en fer avec l'attribut "tempered", ce qui est une aberration du point de vue de la métallurgie mais ça donnait à l'écran "épée en fer en acier trempé", ce qui est tout aussi stupide. Je devrais donc conserver finalement "en métal trempé" dans tous les mods.

Tout ceci pour montrer qu'il est normal de trouver des traductions différentes du même texte dans les différentes VF, cela est dû aux différentes personnes qui ont traduit et à l'évolution de pensée des traducteurs à travers l'histoire, mais que finalement il serait bien de choisir une "bonne" traduction et de ne conserver que celle là en bibliothèque si on veut une traduction automatique efficace. On comprend aussi pourquoi, une fois que j'aurai choisi pour de bon la traduction de "tempered" par exemple, je n'ai pas envie de voir revenir dans la bibliothèque les autres traductions du fait de l'introduction en bib d'un autre mod qui contiendrait une des deux autres formulations. D'où l'option à développer qui empêchera les doublons : si un texte anglais a déjà une traduction en bib, même si ce n'est pas la même que celle du nouveau mod, on laisse tomber et on passe à la lignes suivante.  :smile:

Pour finir, quand on voit le nombre de doublons pour un petit fichier comme item_modifiers, je n'ose penser à tous ceux qui vont suivre...
 
状态
不接受进一步回复。
后退
顶部 底部