MotoresGuíasFAQPatreonDiscordDescargar
Iniciar sesión
RuneTranslate · traduce juegos de japonés y más de 30 idiomas
MotoresGuíasCompararTexto en imágenesEditor de partidasModo trucosFAQDescargarCambiosTrustpilotPatreonDiscordYouTubePrivacidadTérminosContacto
Todos los motores

Motor compatible · Gettext (.po / .mo)

Completo — reconstruido y jugado

Traductor de archivos PO — traduce catálogos gettext .po y .mo de juegos

Gettext es la forma en que se localiza la mayoría de los juegos indie no japoneses: juegos en Python y pygame, Solarus, juegos SDL y GTK, y todo lo que pasa por Poedit, Weblate o Crowdin. Los textos viven en una carpeta locale como fuentes .po y catálogos .mo compilados. RuneTranslate los detecta al crear el proyecto, traduce cada cadena y reescribe un .mo funcional, que es el archivo que el juego lee en ejecución.

Consejo de glosario para este motor

Los catálogos gettext son sobre todo interfaz: menús, botones, tooltips y líneas de estado que se repiten en muchas pantallas. Añade tus sustantivos, nombres de objetos y verbos clave al glosario una vez y cada aparición se traducirá igual — algo que importa aún más que en los diálogos, porque un menú que dice «Guardar» en un sitio y «Almacenar» en otro se lee como un error. Glosario 101 →

Descargar RuneTranslate para Windows

Cómo traducir Gettext (.po / .mo)

  1. PASO 1

    Abre la carpeta del juego

    Apunta RuneTranslate al directorio del juego: el que contiene una carpeta locale/, lang/ o i18n/. La detección busca catálogos por sus bytes reales, no por su extensión, así que un .mo que en realidad es una escena 3D se ignora. Una carpeta de archivos .po sueltos también funciona.

  2. PASO 2

    Revisa lo encontrado

    El diálogo de nuevo proyecto indica cuántos catálogos se leyeron, cuántos son .mo compilados frente a .po fuente, qué idiomas incluye ya el juego y el total de cadenas, antes de que crees el proyecto.

  3. PASO 3

    Elige idioma y proveedor

    Elige un idioma de destino y un proveedor: Google o DeepL gratis, o tu propia clave de DeepL, OpenAI, Claude o DeepSeek. Los marcadores de formato — %s, %d, %(player)s, {count} — se enmascaran antes de traducir y se restauran después, para que ningún proveedor pueda eliminarlos ni reescribirlos.

  4. PASO 4

    Revisa en el editor

    Las cadenas se agrupan por archivo de catálogo. Cada entrada conserva su contexto gettext (msgctxt), que es la desambiguación que el desarrollador escribió para esa cadena concreta, así que puedes ver por qué la misma palabra aparece dos veces y traducir cada una correctamente.

  5. PASO 5

    Exporta una compilación jugable

    La exportación escribe una copia completa del juego con un catálogo locale/<tu idioma>/LC_MESSAGES/ correcto Y una versión actualizada del catálogo que el juego ya cargaba, para que la traducción aparezca sea cual sea la forma en que el juego elige idioma. Se escriben tanto .po como .mo compilado.

Admite

  • Catálogos .mo compilados — lectura y escritura, en ambos órdenes de bytes, verificados contra 43 catálogos reales y 93.717 entradas
  • Archivos .po fuente, incluidas formas plurales, contextos msgctxt, marcas y comentarios del traductor
  • El diseño canónico locale/<idioma>/LC_MESSAGES/<dominio>.mo y diseños planos como lang/tr.po
  • Formas plurales ajustadas al idioma de destino (inglés 2 formas → ruso 3 → japonés 1) con la cabecera reescrita en consecuencia
  • Marcadores printf y de llaves (%s, %d, %(player)s, {count}, {0}) enmascarados durante la traducción y restaurados después
  • La exportación escribe tanto el nuevo idioma como una sobrescritura del catálogo que el juego ya carga

Limitaciones

  • Comprueba que el juego exportado arranca y se lee bien antes de confiar en él
  • Solo se traduce el texto que ya está en un catálogo: las cadenas que el desarrollador nunca pasó por gettext no están en el .po/.mo y no pueden encontrarse ahí
  • El msgid se toma como texto fuente, que es el contrato de gettext; un catálogo con msgids en inglés y el idioma original en msgstr se traducirá desde el inglés
  • Los juegos hechos con un motor que RuneTranslate ya soporta (Godot, Unity, Ren’Py…) se gestionan con ese motor, para que también sea accesible el resto de su texto
  • Las entradas sin traducir conservan la traducción que el juego ya incluía en lugar de vaciarse

Lecturas relacionadas

La guía completa de traducción de Gettext (.po / .mo)
Leer la guía →

Lecturas relacionadas

RuneTranslate vs Translator++
Leer la guía →

Otros motores compatibles

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