BL Traduire Bannerlord, le futur outil de traduction

Users who are viewing this thread

Status
Not open for further replies.
Mon aparté sur la VF de Native Expansion terminé, j'ai repris aujourd'hui le travail sur mon programme pour préparer l'avenir.

Car qu'on ne s'y trompe pas. Si aujourd'hui tout le monde se précipite sur des VF faites sous Crowdin, solution payante (et pas qu'un peu !) de traduction coopérative qui n'aura qu'un temps vu son coût, le temps viendra bientôt où il faudra reprendre la bonne vieille méthode de travail à la main sur les fichiers fait par quelques fidèles traducteurs qui devront suivre au cours du temps les évolutions permanentes des fichiers à traduire. Il faudra aussi, dans un an seulement peut-être, mais ce moment viendra, pouvoir mettre à jour régulièrement la VF officielle qui, comme ce fut le cas pour Warband, ne suivra jamais les évolutions du jeu une fois celui-ci sorti pour de bon. Et il y aura les mods, évidemment, qu'il faudra aussi traduire...

C'est pour ce futur pas si lointain, mais certain, que je travaille aujourd'hui. :xf-smile:
 
Hello

... le temps viendra bientôt où il faudra reprendre la bonne vieille méthode de travail à la main sur les fichiers fait par quelques fidèles traducteurs qui devront suivre au cours du temps les évolutions permanentes des fichiers à traduire...

Tout à fait d'accord avec toi !
Je suis sûr que tu continues à y travailler, comme je le fais en travaillant sur une VF perso que je pourrai utiliser dans le futur, voire les mods qui arriveront un jour.

Bon courage.
Tchin !
?
 
Un petit état d'avancement en passant sur le chantier que j'ai entrepris de puis trois semaines dans mon programme.

C'était devenu nécessaire, c'est fait : la fonction d'initialisation des VF de Traduire Bannerlord mouline désormais en parcourant automatiquement les fichiers contenus dans les différents modules de Bannerlord. Exit donc la longue liste de fichiers à traiter, l'interface d'exécution ressemble aujourd'hui à ça :
3tcWR5F.png
Pour ne pas perdre les résultats individuels sur chaque fichier, ceux-ci sont désormais écrits dans un fichier log qui donne les résultats détaillés dans le dossier de la VF générée.

J'ai aussi implémenté la deuxième fonction que je souhaitais : la création directe d'une bibliothèque de traduction à partir de l'ensemble des fichiers de la VF d'une version. L'intérêt ? Pouvoir réinjecter très facilement les textes traduits d'une version à l'autre de Bannerlord sans devoir se taper la longue mise à jour nécessaire à coups de Winmerge par exemple pour suivre les évolutions des textes à traduire de bannnerlord. Vous avez la VF adaptée à la 1.1, vous voulez passer vos traductions dans la version 1.2 ? Fastoche ! Vous balancez votre VF 1.1 dans une bibliothèque, vous initialisez une VF 1.2 à l'aide de ladite bibliothèque, et vous voilà avec une VF adaptée à la 1.2 où tous les textes déjà traduits dans la 1.1 sont à leur place ! Les deux opérations prennent moins d'une minute, et comme les bibliothèques ne se préoccupent pas des ID des textes dans les fichiers, même si des textes ont changé d'ID ou de fichier, ça fonctionne quand même. Les seules choses qui restent en anglais sont les textes pas encore traduits dans la VF de départ et les nouveautés de la version d'arrivée de Bannerlord, rien que de très normal en somme.

Jusqu'à présent je me suis concentré sur la mécanique interne des algorithmes, donc l'interface des nouvelles fonctions est plutôt spartiate et pas très soignée. Les barres de progression que vous voyez sur la capture ne sont pas encore actives, par exemple, même si vu la vitesse d'exécution des algorithmes qui moulinent les 61 fichiers de Bannerlord (10 à 15 secondes max pour l'ensemble des fichiers), faire fonctionner correctement les barres de progression ralentirait l'exécution générale pour qu'on ait le temps d'y voir quelque chose, un comble ! Je vais donc maintenant travailler à essayer de rendre l'interface moins bordélique et plus agréable. Comme je ne suis pas spécialement doué pour ce genre de chose, ça ne sera jamais super joli, mais je vais essayer de rendre ça suffisamment propre pour que ça soit acceptable pour d'autres que moi.:xf-smile:

Je repasserai vous en parler quand l'interface sera au point, mais en attendant TW peut à nouveau changer ses fichiers dans la future 1.3 par rapport à ceux de la 1.2, je suis prêt ! Enfin, ça ne sert à rien puisque je ne travaille sur aucune VF, mais un jour, sûrement, tout cela sera utile à quelqu'un. Comme je l'ai déjà dit, je prépare l'avenir. :xf-cool:
 
Last edited:
Bonjour,

Un peu de papotage après trois jours sans accès à internet : je remercie mon fournisseur d'accès qui m'a permis de me désintoxiquer un peu... :xf-wink:

Sans rapport aucun avec le petit problème ci-dessus, il y a trois jours je me disais qu'il serait bien de copier la nouvelle fonction de création de bib à partir d'un mod complet dans Traduire M&B pour Warband, mais je me demandais si ça serait vraiment utile et tout ça... quand brutalement une idée a forcé mon cerveau et s'est imposée : plutôt que de perdre mon temps à reporter du code dans l'outil pour Warband (ce que j'ai déjà fait une ou deux fois en petite quantité) et devoir continuer à maintenir deux programmes, pourquoi ne pas rendre tout simplement Traduire Bannerlord compatible de Warband ?

En effet, si on excepte le cœur des routines de lecture et écriture des fichiers avec leurs structures spécifiques (.csv d'un côté, .xml de l'autre), grosso modo tous les algorithmes de fonctionnement des deux programmes sont les mêmes une fois les fichiers chargés en mémoire, vu que j'utilise les même structures internes pour les deux programmes. Tous les algos, traitements et vérifications sont exactement les mêmes ! Il "suffit" donc de mettre quelques tests de style "si Warband alors... sinon ..." dans les routines de lecture et écriture de fichiers, et le tour est joué !

Après avoir soigneusement mis de côté mon code "pur Bannerlord" par sécurité, j'ai donc attaqué la transformation de Traduire Bannerlord pour qu'il devienne à nouveau Traduire Mount&Blade, mais pour M&B I et M&B II cette fois-ci. Et a priori ça va le faire ! J'ai mis en place une option qui permet de switcher le programme entre "Traduire Warband" et "Traduire Bannerlord", j'ai réimplanté des fonctions spécifiques Warband comme "Traiter menus.txt" et "Ajouter lignes anti-bug" que j'avais retirées pour Bannerlord, mais ces fonctions ne sont visibles qu'en mode Warband. Le mode Warband n'accepte que des fichiers .csv alors qu'en mode Bannerlord on n'accepte que des fichiers .xml, etc.

Bien entendu c'est un tout petit peu plus compliqué que le simple "y a qu'à adapter les routines de lecture et écriture", donc j'en ai encore pour plusieurs jours de codage et surtout de tests intensifs pour m'assurer que toutes les fonctions continuent de faire ce qu'elles doivent faire dans les deux mondes. J'en profite au passage pour rationaliser un peu mon code qui résulte de dix ans d'ajouts successifs, également pour le robustifier en ajoutant des tests et des récupérations d'erreurs dans les cas, rares mais qui arrivent, où les fichiers à lire ne sont pas constitués exactement comme ils devraient l'être, ce qui entraînait jusqu'à présent des crashs du programme dans ces rares cas de fichiers incorrects. Je modifie un peu l'interface, je déplace quelques boutons et je change des fonctions de place... Bref, je profite de ce chantier pour faire un peu le ménage !

Ça avance bien, je vous en dirai plus une autre fois. :xf-cool:
 
Last edited:
Super! T'es en train de rendre ça vraiment polyvalent. C'est certain que c'est mieux de même, après il va y avoir moins de casse-têtes. Mais c'est surtout l'utilisateur qui gagne ici car en un clique, donc en un téléchargement, on obtient une application qui peut faire le travaille de deux et ça c'est presque toujours bon (car certains diront de ne pas utiliser toujours).
 
Le travail se poursuit, lentement, parce que, comme beaucoup, je commence à me lasser de faire la même chose tous les jours, donc je ne passe que deux ou trois heurs par jour sur ce sujet.

Quelques captures d'avancement, quand même. D'abord, les nouvelles options, qui permettent d'une part de choisir le jeu ciblé, d'autre part de choisir la langue de l'interface utilisateur :

bVpytxu.png


Puis la version pour Warband en anglais :
28UY4og.png
Et enfin la version pour Bannerlord en français :
Isyyjiv.png
On constate que la fonction de correction du fichier menus.txt n'apparait qu'en mode Warband et que la fonction de correction de ponctuation (ajout d'espaces si manquants devant : ; ! ? et %) n'apparait que quand l'interface est en langue française.

C'est tout pour aujourd’hui, les tests et l'adaptation à Warband du code de Traduire Bannerlord continuent... :xf-smile:
 
Bonjour,

La réunification des traitements pour Bannerlord et Warband va apporter un effet de bord non négligeable sur les bibliothèques de traduction pour Warband : au lieu d'une bibliothèque par fichier à traduire, il n'y en aura désormais plus qu'une, globale, qui regroupera les contenus des 17 bibliothèques. En effet, vu la grosse soixantaine de fichiers à traduire pour Bannerlord, j'étais d'entrée passé à une bibliothèque unique pour Bannerlord parce que je ne me voyais pas gérer soixante bibliothèques, je vais donc faire de même pour Warband. De toute façon celle-ci existe déjà puisque je l'avais réalisée en octobre dernier afin de faire les premières initialisations de traduction des fichiers de la Beta de Bannerlord qui contenaient environ 5000 lignes directement issues de Warband.

Par contre, même si leurs structures seront identiques, les bibliothèques pour Bannerlord et Warband resteront strictement séparées car les syntaxes des variables sont nettement différentes et les textes de Bannerlord et Warband sont de ce point de vue incompatibles.

De ce fait je continue de taper au burin dans le code de Traduire Bannerlord pour éliminer les restes du traitement d'une bibliothèque par fichier à traduire et m'assurer qu'on utilise bien une bib adaptée à chaque programme, ce qui va à terme simplifier le code mais va demander, of course, des tests intensifs pour m'assurer que les traitements restent conformes à l'attendu. Pour l'instant, à chaque test suivant une avancée je tombe sur des petites siouxeries que je n'avais pas prévues, je débugge, je corrige, je reteste... une vie normale de développeur, quoi. :xf-wink:
 
Merci.

Oui, je m'accroche, même si casser, refaire et tester n'est pas ce qu'il y a de plus drôle en développement : la création, c'est quand même beaucoup mieux !

Hips!
:party:
 
Salut !

Petit avancement hebdomadaire. J'ai pas mal secoué le soft et à chaque fois les petits bugs sont tombés quand je m'y attendais le moins, mais petit à petit l'ensemble commence à bien se tenir. Les pièges inhérents au traitement conjoint des fichiers de Warband et Bannerlord se sont refermés, et maintenant le tout a l'air de fonctionner à peu près correctement. Vous ne pouvez imaginer les petits cas particuliers qui se sont fait jour dans le code ici et là à chaque nouvel essai dans de nouvelles conditions et avec de nouveaux fichiers, mais je vous ferai grâce des détails qui, finalement, n'intéressent que moi.

Le programme s'est enrichi de petits détails comme des fichiers log qui donnent le détail des traitements d'initialisation des VF et des bibliothèques car je me suis rendu compte qu'après coup je n'avais pas toutes les informations désirées et qu'avec le temps je ne savais plus à partir de quoi j'avais produit ceci et cela. Les fichiers log seront désormais là pour ça.

Histoire de varier les plaisirs, j'ai attaqué cet après-midi la rédaction du nouveau manuel utilisateur qui sera, logiciel bilingue oblige, en anglais exclusivement. De toute façon, les utilisateurs français de mon programme devant traduire de l'anglais, ils sont sensés maîtriser cette langue, donc ça ne les dérangera pas. :xf-wink:

Je pense mettre bientôt en ligne une première version de ce programme unifié pour traduire Warband et Bannerlord. Je ne garantis pas encore qu'il soit totalement bug free, mais si certains veulent commencer à l'utiliser et me faire des retours, ce sera avec plaisir. :xf-smile:

A suivre...
 
Pour être complètement honnête, l'anglais me dérange et il me démange même si je comprend parfaitement la langue. C'est toujours plus agréable de pouvoir lire les instructions en français. Mais bon, moi je ne suis pas traducteur, alors ma perspective est probablement différente :wink:

Je ne te dis pas que tu dois écrire une version en français, car le seul bénéficiaire que je peux identifié est moi-même et cette personne ne fera jamais de traduction. Je trouve juste que ton raisonnement, il généralise les situations possibles et moi, je suis un bûcheron qui n'a que le manche de sa hache. Alors quand je vois un petit arbre fragile, j'en fais du bois. Avec du bois on peut faire du feu. Cependant, ce n'est pas mon but. Car avec du bois on peut construire aussi.
 
Si j'ai décidé de rendre l'interface de mon programme bilingue, c'est parce que j'aimerais que celui-ci puisse être utilisé aussi par des traducteurs dans d'autres langues que le français, comme l'allemand ou l'espagnol par exemple. Et pour eux, un manuel en français est parfaitement inutilisable, donc je dois absolument rédiger un manuel en anglais, sinon tout cela n'a pas de sens.

Or rédiger un manuel utile et complet est quelque chose de très long à faire comme j'ai pu m'en rendre compte en mettant à jour le manuel précédent de nombreuses fois suite à l'ajout des nouvelles fonctions. Donc je ne veux pas doubler ce temps de rédaction et me retrouver avec deux documents à maintenir au lieu d'un seul. Déjà qu'en mettre un à jour, ce n'est pas marrant à faire, alors deux !

Je vais évidemment repartir du manuel précédent et l'adapter, mais je vois déjà que ça va être un travail très très long. Surtout qu'en fait pour Traduire M&B c'est deux documents que j'ai rédigés, il va falloir compacter tout ça en un seul mais rallonger la sauce avec les spécificités des fichiers de Bannerlord par rapport à ceux de Warband. L'avantage de l'anglais, c'est que je me rend compte qu'on est naturellement poussé à être plus concis, là où j'avais tendance à être très expansif en français.

Quoiqu'il en soit, il faudra probablement deux mois de travail en pointillés pour obtenir un premier manuel utilisateur acceptable.
 
Oh, p'tain ! ?

Je poursuivais tranquillement mon manuel utilisateur et j'en étais au début à la description des fichiers à traduire... parce que pour les newbies, il faut bien en passer par là. Déjà que c'était pas drôle parce que j'ai l'impression de réécrire ce que j'ai déjà écrit dix fois, puis j'écris benoîtement la phase suivante The files to translate for Mount&Blade I are files with extension .csv whose structure is very simple. Let’s look for example at the first line of the first file, dialogs.csv:... et là tout à coup je réalise que je ne peux pas écrire cela. Pourquoi ? Mais parce que les fichiers .csv anglais de Warband ne sont pas disponibles dans le jeu ! Ils ne sont pas là, il faut les faire générer par la fameuse commande View -> Create Language Template -> Default, donc il faut commencer par expliquer comment les faire générer avant même de pouvoir parler de leur structure. Oh, p'tain !

J'ai vraiment l'impression d'être à nouveau parti dans un truc de durée infinie où je vais passer mon temps à écrire ce que j'ai déjà écrit de nombreuses fois ici et là, bref un truc franchement chiant dont je ne suis pas sûr d'avoir encore la vista pour aller au bout. Mais comment se passer de manuel utilisateur pour tous les nouveaux qui vont essayer d'utiliser mon programme sur les fichiers de Bannerlord ou Warband et pour qui la traduction de mods va être une totale découverte ? Enfin, s'il y a des nouveaux.

J'ai un gros coup de mou, là... Une grosse impression de perdre mon temps pour des trucs qui peut-être n'intéresseront personne. Déjà que je me suis fait jeter deux fois de suite avec ma VF partielle de Bannerlord, alors ce programme d'aide à la traduction et son manuel... franchement, ça va intéresser quelqu'un ?

Je crois que je vais aller regarder une connerie sur Netflix. ?
 
Non, merci, ça ira. Le texte précédent en français est là, c'est juste un coup de blues devant la colline à franchir, ça passera.
 
Status
Not open for further replies.
Back
Top Bottom