Closed gagalago closed 3 years ago
J'y ai pensé ... mais ne l'ai jamais fait.
Il y a 2 choses :
goal.txt
, et éventuellement quelque autres trucs (changer "chat" en "cat" ou similaire) dans les scripts de la missionbashrc
: il y a quelques trucs "globaux" qui sont effectivement en français et que je pourrais sortirJe vais réfléchir un peu plus, mais s'il y a des gens intéressés, je peux probablement implémenter le second point. (Libre à chacun d'internationaliser les missions par la suite...)
En plus ça n'a pas l'air trop compliqué: https://www.linuxjournal.com/content/internationalizing-those-bash-scripts.
Tu connaissais déjà les commandes msgfmt
et gettext
? J'en n'avais jamais entendu parler!
Je connaissais, mais ne l'ai jamais utilisé.
Pour les missions, c'est probablement plus simple de les réécrire complètement.
Pour les sources de GameShell, c'est par là que je commencerais, mais ça fait une dépendance supplémentaire. (Je ne sais pas si gettext
est installé par défaut.)
Je ne pense pas qu'il soit installé par défaut, mais il doit être assez commun car il est installé sur toutes les machines auxquelles j'ai accès (Debian et Archlinux). Et a priori il peut aussi être installé avec brew
sur MacOS.
Pour les missions l'idéal serait que chaque dossier de mission ait un sous-dossier locale
avec des fichiers .po
pour chaque langue supportée, et que GameShell s'occupe de faire ce qu'il faut pour les utiliser au lancement des missions. Comme ça ce serait vraiment facile pour d'autres personnes de s'occuper de la traduction.
Par contre je ne sais pas ce qui se passe si tu définis deux messages avec la même clé, donc il faut faire attention que les messages des missions n'aient pas la même clé qu'un message de GameShell.
Ouch!
Je viens de passer quelques heures à essayer de faire des tutoriels sur gettext
, et c'est plus compliqué que ce que je pensais.
J'ai pu faire un "hello world", mais ça n'a pas été facile. Je pense voir un peu ce que je pourrais faire dans GameShell, mais j'ai du mal à estimer la robustesse de tout ça. Si on suppose que gettext
est installé, et que le système a une locale UTF-8 fr_FR
, en_US
(ou en_GB
), ça devrait passer.
Je ferais peut-être une branche pour essayer tout ça.
OK cool. Je veux bien aider si besoin.
Je regarde !
Solved by #22.
Avez-vous déjà pensé à traduire ce jeu? Êtes-vous ouvert a ce genre de fonctionnalités? Si oui, comment le l'envisageriez-vous?