MoteursGuidesFAQPatreonDiscordTélécharger
Se connecter
RuneTranslate · traduisez des jeux du japonais et de 30+ langues
MoteursGuidesComparerTexte des imagesÉditeur de sauvegardeMode tricheFAQTéléchargerChangementsTrustpilotPatreonDiscordYouTubeConfidentialitéConditionsContact
Tous les moteurs

Moteur pris en charge · Gettext (.po / .mo)

Complet — reconstruit et testé

Traducteur de fichiers PO — traduire les catalogues gettext .po et .mo

Gettext est la façon dont la plupart des jeux indépendants non japonais sont localisés : jeux Python et pygame, Solarus, jeux SDL et GTK, et tout ce qui passe par Poedit, Weblate ou Crowdin. Les textes vivent dans un dossier locale sous forme de sources .po et de catalogues .mo compilés. RuneTranslate les détecte à la création du projet, traduit chaque chaîne et réécrit un .mo fonctionnel — le fichier que le jeu lit réellement à l'exécution.

Astuce glossaire pour ce moteur

Les catalogues gettext sont surtout de l'interface : menus, boutons, infobulles et lignes d'état qui reviennent d'un écran à l'autre. Ajoutez une fois vos noms, objets et verbes clés au glossaire et chaque occurrence sera rendue à l'identique — ce qui compte encore plus qu'en dialogue, car un menu qui dit « Enregistrer » ici et « Sauver » là se lit comme un bug. Le glossaire : les bases →

Télécharger RuneTranslate pour Windows

Comment traduire Gettext (.po / .mo)

  1. ÉTAPE 1

    Ouvrez le dossier du jeu

    Pointez RuneTranslate vers le répertoire du jeu — celui qui contient un dossier locale/, lang/ ou i18n/. La détection cherche les catalogues d'après leurs octets réels, pas leur extension : un .mo qui est en fait une scène 3D est ignoré. Un dossier de fichiers .po isolés fonctionne aussi.

  2. ÉTAPE 2

    Vérifiez ce qui a été trouvé

    La fenêtre de nouveau projet indique combien de catalogues ont été lus, combien sont des .mo compilés plutôt que des .po sources, quelles langues le jeu propose déjà et le nombre total de chaînes — avant que vous ne créiez le projet.

  3. ÉTAPE 3

    Choisissez la langue et le fournisseur

    Choisissez une langue cible et un fournisseur : Google ou DeepL gratuits, ou votre propre clé DeepL, OpenAI, Claude ou DeepSeek. Les marqueurs de format — %s, %d, %(player)s, {count} — sont masqués avant la traduction puis restaurés, afin qu'aucun fournisseur ne puisse les supprimer ou les reformuler.

  4. ÉTAPE 4

    Relisez dans l'éditeur

    Les chaînes sont regroupées par fichier de catalogue. Chaque entrée conserve son contexte gettext (msgctxt), c'est-à-dire la désambiguïsation écrite par le développeur pour cette chaîne précise : vous voyez pourquoi le même mot apparaît deux fois et pouvez traduire chacun correctement.

  5. ÉTAPE 5

    Exportez une version jouable

    L'export écrit une copie complète du jeu avec un catalogue locale/<votre langue>/LC_MESSAGES/ correct ET une version mise à jour du catalogue que le jeu chargeait déjà, pour que la traduction apparaisse quelle que soit la façon dont le jeu choisit sa langue. Le .po et le .mo compilé sont tous deux écrits.

Prend en charge

  • Catalogues .mo compilés — lus et écrits, dans les deux ordres d’octets, vérifiés sur 43 catalogues réels et 93 717 entrées
  • Fichiers .po sources, y compris formes plurielles, contextes msgctxt, drapeaux et commentaires de traduction
  • La disposition canonique locale/<langue>/LC_MESSAGES/<domaine>.mo et les dispositions plates comme lang/tr.po
  • Formes plurielles réajustées à la langue cible (anglais 2 formes → russe 3 → japonais 1), en-tête réécrit en conséquence
  • Marqueurs printf et accolades (%s, %d, %(player)s, {count}, {0}) masqués pendant la traduction puis restaurés
  • L'export écrit à la fois la nouvelle langue et un remplacement du catalogue déjà chargé par le jeu

Limites

  • Vérifiez que la version exportée se lance et s’affiche correctement avant de vous y fier
  • Seul le texte déjà présent dans un catalogue est traduit : les chaînes que le développeur n’a jamais passées par gettext ne sont pas dans le .po/.mo et ne peuvent pas y être trouvées
  • Le msgid est considéré comme le texte source, ce qui est le contrat de gettext ; un catalogue dont les msgid sont en anglais et la langue d'origine dans msgstr sera traduit depuis l'anglais
  • Les jeux bâtis sur un moteur déjà pris en charge (Godot, Unity, Ren’Py…) sont traités par ce moteur, afin que le reste de leur texte reste accessible
  • Les entrées non traduites conservent la traduction déjà livrée par le jeu au lieu d’être vidées

À lire aussi

Le guide complet de traduction Gettext (.po / .mo)
Lire le guide →

À lire aussi

RuneTranslate vs Translator++
Lire le guide →

Autres moteurs pris en charge

RPG MakerRPG Maker XP/VX/AceRen'PyKirikiriWolf RPGTyranoBuilderElectron VNUnityBakinSRPG StudioNScripterGodotArtemisYU-RISAliceSoftUnrealLiveMaker