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

Users who are viewing this thread

Status
Not open for further replies.
Allez, j'ai pris mon courage à deux mains et j'ai enclenché la rédaction d'un nouveau paragraphe de mon Manuel Utilisateur qui montre l'utilisation de la fonction Init Traduction.

Avec les préparatifs des fêtes de fin d'année (la course aux cadeaux) et mon prochain déplacement dans la famille, pas sûr d'arriver à finir en 2018, mais maintenant que c'est commencé, ça verra le jour bientôt.  :cool:

Édit 1 :

C'est bien de faire le MU pas à pas : je viens de détecter un petit bug d'interface. Quand le fichier VF est vide, les boutons Copier et Coller VF sont inhibés (normal). Mais quand le fichier VF est rempli ensuite par la fonction Init Traduction, les deux boutons ne sont pas activés : bug !
Bon, ben je n'ai plus qu'à corriger ça et mettre en ligne la version 1.6.1.1.  :grin:
En attendant, il suffit de sortir du programme, le relancer et tout recharger avec "Ouvrir Tous Fichiers".  :wink:

Edit 2 : Le Manuel est complété, je mettrai tout ça en ligne ce soir avec la 1.6.1.1.

 
Voilà, c'est fait, j'ai mis en ligne un nouveau package Traduire M&B 1.6.1.1 en date du 20 décembre 2018 avec :
  • La version 1.6.1.1 de Traduire M&B qui corrige le bug d'interface sur les Copier et Coller.
  • Un Manuel Utilisateur avec enfin un exemple d'utilisation de la fonction "Init Traduction".
  • Le Tutoriel de traduction des mods.
  • Le fichier LisezMoi.
Pour bien voir l'intérêt de la fonction "Init Traduction" en comparaison avec la méthode traditionnelle du Mark Non-translated Lines de TaleWorlds, j'ai laissé en place dans le Manuel Utilisateur l'exemple déjà écrit et j'ai ajouté la même chose faite avec la fonction d'initialisation de mon programme pour bien montrer l'avantage de cette dernière.
Je sais que je risque de paraitre lourd, mais je comprend bien que les anciens de la traduction de mods qui ont fait générer les squelettes de VF avec la méthode TaleWorlds depuis bientôt dix ans (!), chose que j'ai moi-même faite à de nombreuses reprises jusqu'à ce début d'année 2018, risquent d'avoir du mal à admettre que cette méthode a des défauts et que la fonction de mon programme est meilleure et plus puissante. Alors j'enfonce le clou, jusqu'à ce que cela soit bien entendu et compris :

Il ne faut plus générer les squelettes de VF par la fonction Mark Non-translated Lines de Warband mais utiliser la fonction "Init Traduction" de Traduire M&B !

Toutes les explications nécessaires sont dans mes manuels.

Bonnes traductions !  :smile:
 
Décidément  !  :mrgreen:

J'étais en train d'essayer de générer la bibliothèque la plus longue, celle de dialogs, pour aider notre ami Bilskirnir et j'ai trouvé un bug dans la fonction de suppression de doublons dans les bibliothèques : lors de la sauvegarde, après avoir enlevé des doublons, je n'écris pas la première ligne d'identification du type de bibliothèque, ce qui fait qu'ensuite on ne peut plus la lire (sauf à rajouter la ligne identifiante à la main).

Bon, ben je devrai mettre en ligne la version 1.6.1.2 qui corrige ça. C'est déjà corrigé, mais je mettrai en ligne demain, là il se fait tard !

A demain.
 
Je viens de regarder à l'instant ton exemple et c'est très explicite.
(et dire que j'utilisais pas cette option...)

Une bibliothèque pour dialogs serait vraiment super, car oui, ce fichier est vraiment long !

Merci de nouveau et bonne nuit. :grin:

 
Une bibliothèque pour dialogs serait vraiment super
Je sais, mais c'est aussi la plus longue à mettre au point vu les milliers de lignes contenus dans dialogs. Là j'ai juste mis les textes de ACOK 6.2 et je trouve déjà des dizaines de doublons : le nombre de lignes fait que l'on n'a pas traduit de la même façon tel ou tel jour (la traduction s'est étalée sur une semaine).

Traite les autres fichiers, je te tiens au courant de mon avancée, je voudrais mettre au moins ACOK 6.2 et Native dans la bibliothèque.
 
Il faut savoir corriger ses bugs !

Je viens de remplacer la version 1.6.1.1 par Traduire M&B version 1.6.1.2 en date du 21 décembre 2018.

J'ai non seulement corrigé le problème de sauvegarde de bibliothèque après traitement des doublons, mais j'ai aussi ajouté un message d'information qui donne le nombre de doublons au chargement avant traitement. Cela me dérangeait de me lancer dans une session d'élimination de doublons sans savoir combien il y en a.

Le lien de téléchargement est inchangé : lien effacé
 
Last edited:
Oh, p*tain ! :facepalm:

En essayant de générer la bib pour dialogs je me suis aperçu qu'il y a encore un cas où le type de bib est mal renseigné en première ligne...

Il me faut donc débugger, trouver la cause du problème et générer une nouvelle version. Un peu marre, là. Faut dire que ces fonctions étant neuves, je ne suis pas plus surpris que ça de trouver des bugs, m'enfin c'est chiant ! En attendant la correction, cette première ligne peut toujours être renseignée à la main. Pour dialogs, c'est "BibliothèqueWarband dlga".

A part ça j'ai généré une bib avec seulement ACOK 6.2 : 185 doublons. J'y ajoute Native 1.174 : 1399 doublons !!! Le pire est que souvent la formulation de Native me parait meilleure, donc mélanger les deux mods est utile. Mais j'imagine le temps nécessaire au nettoyage de la bibliothèque finale après ajout de Nova Aetas et L'Aigle !

J'ajouterai que parfois, sur deux propositions, aucune ne me convient et j'en voudrais une troisième qui n'existe pas. J'envisage donc des interventions manuelles dans la bib pour mettre la bonne formulation.

On n'est pas rendus !  :dead:

Édit :

Super vicieux le bug ! Il m'a fallu du temps pour comprendre, vu qu'en relisant le code et en refaisant des essais je ne trouvais aucune raison logique pour que ça ne fonctionne pas, et d'ailleurs ça fonctionnait parfaitement, je n'arrivais pas à le reproduire. Jusqu'à ce que je pense à... fermer le panneau des bibliothèques et le réouvrir. Dans la manip certaines variables publiques sont effacées, dont le type de bibliothèque issu du fichier VA. Ah ah ! Je ne l'avais encore jamais eu, celui-là ! Décidément le codage est une source infinie de découvertes.  :smile: 
Bon, je vais corriger ça...  :roll:
 
Ah cool !
La bibliothèque sera peut être du coup bientôt prête à être utilisée !  :grin:

Créer une bibliothèque, surtout de ce volume, j'imagine le travail que ça représente... je te tire mon chapeau.

Sinon une question par rapport à ça:
J'avais déjà commencé à traduire dialogs (comme tu le sais il est maintenant en pause, je m'occupe de fichiers moins volumineux pour l'instant), du coup, lorsque je vais reprendre la trad, si je sélectionne la bibliothèque, je vais perdre les +500 lignes déjà traduites ?
 
si je sélectionne la bibliothèque, je vais perdre les +500 lignes déjà traduites ?
Ça dépend... Es-tu parti d'un dialogs avec déjà du français (celui de ACOK 6.2 par exemple) et l'as-tu révisé jusqu'à la ligne 500, ou es-tu parti uniquement du fichier anglais ? Quoi qu'il en soit il y aura un moyen de ne pas perdre tes modifs.

Pour l'instant il reste 1400 doublons à traiter sur les 1700 qu'il y avait à l'origine, je doute d'avoir fini demain soir et après je pars pour une petite semaine.

Si tu veux bien, on continuera cette conversation en MP demain pour ne pas polluer le présent sujet.
 
Bonjour,

Comme je vais bientôt partir quelques jours, je viens de mettre en ligne la version 1.6.1.3 de Traduire M&B en lieu et place de la 1.6.1.2, version qui corrige le bug vu hier après-midi.

Lien de téléchargement inchangé.  :smile:

Il reste 1000 doublons à traiter dans la bibliothèque dialogs. Suite début 2019...  :cool:
 
Bonjour,

Deux informations cet après-midi.

1 - La bibliothèque pour dialogs

D'abord, la bibliothèque pour dialogs est terminée, j'ai fini d'enlever tous les doublons. Bien entendu je me suis empressé de la tester sur le dialogs de A World of Ice and Fire 4.1, la VF que Bilskirnir est en train de réaliser. Dans la foulée j'ai voulu comparer avec l'initialisation qui est faite quand on part uniquement des VF de Native, ACOK, Nova Aetas ou L'aigle et voici ce que ça donne :
  • Native 1.174 (2669 lignes) : reste 3366 lignes à traiter sur les 5242 lignes de AWOIAF
  • L'Aigle (2760 lignes) : reste 3383 lignes à traiter
  • Nova Aetas 5.0 (3849 lignes) : reste 3353 lignes à traiter
  • ACOK 6.2 (5935 lignes) : reste 3177 lignes à traiter
  • Bibliothèque dialogs (6659 lignes) : reste 3003 lignes à traiter
Constat 1 : Bilskirnir avait bien vu en partant de ACOK 6.2, c'est bien le mod qui possède le plus grand nombre de phrases identiques à celles de AWOIAF par rapport aux trois autres.
Constat 2 : La bibliothèque permet bien de minimiser le nombre de lignes restant à traduire. Ouf ! Mais pas dans des proportions folles puisque 57 % des lignes de AWOIAF sont totalement nouvelles et ne peuvent profiter des VF des autres mods, ce qui n'est finalement pas très étonnant pour un mod dont l'univers et les personnages sont totalement différents de ceux de Warband. Et ACOK n'est pas beaucoup plus utile : bien que ce soit le même univers, les auteurs sont différents, donc les textes originaux aussi.

2 - Nouvelle version de Traduire M&B

En faisant mes essais j'ai trouvé un nouveau petit bugounet relatif à l'option d'initialisation à partir d'une bibliothèque dans le panneau des options. Je l'a corrigé, ce qui fait que je viens de mettre en ligne la version 1.6.1.4 de Traduire M&B en date du 31 décembre 2018 (lien de téléchargement inchangé).

J'en ai profité pour glisser dans l'archive la bibliothèque dialogs.bib qui peut donc être utilisée par Bilskirnir pour initialiser le dialogs de AWOIAF comme je l'ai fait ce matin. La technique est facile :
  • Charger dans VA le dialogs.csv de AWOIAF.
  • Laisser vide la VF.
  • Cocher dans le panneau des options les options "Traduire à l'aide d'une bibliothèque" et "Fichier jamais initialisé".
  • Aller dans le panneau de gestion des bibliothèques et indiquer le répertoire où se trouve la bib, sélectionner dialogs.bib.
  • Revenir au panneau principal et appuyer sur "Init Traduction". Après une quinzaine de secondes, le résultat sera affiché : 3003 lignes restantes à vérifier.
  • Sauvegarder le fichier VF initialisé par "Sauvegarder VF".
  • Et c'est parti pour la traduction des 3003 lignes restées en anglais, on saute de ligne à traduire à ligne à traduire avec le bouton {***}. On peut quand même mettre ACOK en F3 et F2 et la VF de Native en F1, il se peut que certaines lignes soient à peine modifiées dans AWOIAF par rapport aux lignes de ces deux mods.
Bon passage à l'année 2019 !

Hips!
:party:
 
Last edited:
Salut,

Les travaux continuent en 2019 et je me suis cette fois-ci lancé dans la bibliothèque de l'autre gros morceau à traduire, game_strings. Je me retrouve à nouveau avec plus de 1700 doublons que j'ai commencé à éradiquer, ça devrait être fini à la fin de la semaine.

Au passage j'ai ajouté deux ou trois trucs à mon programme, mais comme il n'y a rien de fondamental (pas de correction de bug), je garde la version 1.6.2 sous le coude et je la sortirai plus tard, quand game_strings.bib sera finie, comme ça je livrerai les deux ensemble.

Je ne sais pas si c'est l'effet des nombreuses bulles des fêtes de fin d'année, mais j'ai eu une illumination cette nuit et une nouvelle fenêtre s'est imposée à mon esprit. En effet, que faire quand toutes les bibliothèques existeront et qu'on se trouvera face à un nouveau mod à traduire ? Il faudra préinitialiser les quatorze fichiers un par un. Un par un...?  :idea:

Je sens que quelques bonnes journées de programmation se préparent !  :twisted:

Si certains se demandent à quoi je pense :

1546472797-traduire-m-b-1-6-2-0-2019-01-03-00-45-48.png
Pour l'instant c'est une coquille vide, reste à écrire tout le code pour faire fonctionner ça. C'est pas pour demain !  :fruity:
 
Bonsoir,

Comme c'est quand même chiant d'éradiquer du doublon, j'alterne mes travaux : moitié doublons, moitié programmation.

Côté doublons, j'ai ramené le nombre de doublons dans game_strings.bib de plus de 1700 à 1070. Encore quatre ou cinq heures de travail pour finir ça.

Côté programmation de la fonction d'initialisation globale, contrairement à ce qu'on pourrait penser, j'ai commencé par les fonctions périphériques : sélection des dossiers VA et VF, vérification de la présence des fichiers et des bibliothèques, sauvegarde et récupération des options, gestion des erreurs... Cette phase touche à sa fin, il me reste maintenant à entrer dans le vif du sujet, à savoir relier le code de la fonction existante d'initialisation simple à partir d'une bibliothèque à l'enchainement automatique des quatorze initialisations lancées depuis la nouvelle fenêtre.

Ce ne sera pas si évident que ça en a l'air, vu que cette fois les noms de fichiers vont changer quatorze fois, il faudra agiter successivement les quatorze barres d'avancement alors qu'il n'y en a pas dans le code existant, il faudra écrire les quatorze fichiers VF résultant là où aujourd'hui le seul fichier initialisé reste en mémoire pour affichage (la sauvegarde se fait plus tard à la main avec le bouton dédié)... Bref, le code existant aura besoin d'être beaucoup torturé pour devenir capable de traiter quatorze fichiers différents avec quatorze bibliothèques et non un seul.

Cette phase va être délicate, il faudra avoir les idées claires et du temps libre en continu car ce genre de modif de code doit se faire en sessions prolongées pour ne pas se perdre en route, et non par petites sessions de moins d'une heure comme cela a été possible pour les travaux préliminaires. Mais c'est justement ça qui est passionnant dans la programmation quand on aime ça !  :twisted:

A suivre...
 
Bon, je n'ai pas beaucoup avancé sur la bibliothèque game_strings.bib, mais pendant que j'y étais j'ai ajouté dans Traduire M&B une fonction qui ajoute d'un seul coup les lignes anti-bug de première ligne à tous les fichiers anglais générés par la fonction View->Create Language Template->Default de Warband.

Quel plaisir de faire tout ça en un clic au lieu de devoir éditer un par un les quatorze fichiers ! Non, ne me remerciez pas, c'est avant tout à moi que ça fait plaisir tant il y a longtemps que coder cette fonction me démangeait.  :smile:

Sur ce je replonge dans le code, la fonction d'initialisation de tous les fichiers VF d'un coup à partir des bibliothèques n'est pas loin d'être finie.

Édit :
Le cœur de la fonction est fini, les fichiers VF sont générés les uns derrière les autres et sont corrects !  :fruity: 
Il me reste à finir un peu de cosmétique pour rendre tout ça plus agréable à utiliser et à tester encore pour trouver tous les cas d'erreur que j'aurais oublié de traiter : fichiers manquants, vides, pas les bonnes bibliothèques, etc. Ça devrait être fini demain soir.

Après ça il me restera à finir de fabriquer les bibliothèques !  :???:

Sur ce, au dodo !  :dead:
 
Ça devrait être fini demain soir.
C'est le genre de truc précis qu'on devrait éviter d'écrire... Hier une très longue panne d'électricité dans mon quartier a rendu toute utilisation du PC impossible et aujourd'hui j'étais surbooké. On remet ça à un peu plus tard cette semaine ?  :cool:
 
Daneel53 said:
Ça devrait être fini demain soir.
C'est le genre de truc précis qu'on devrait éviter d'écrire... Hier une très longue panne d'électricité dans mon quartier a rendu toute utilisation du PC impossible et aujourd'hui j'étais surbooké. On remet ça à un peu plus tard cette semaine ?  :cool:

Bon courage!
Et meilleurs vœux pour la nouvelle année.
Cordialement.
 
Status
Not open for further replies.
Back
Top Bottom