Skip to content

Preguntas frecuentes (ES)

¿Cómo ejecuto la extracción de cadenas?

  • Selecciona uno o varios assets traducibles en Unity.
  • Ejecuta Tools/Hyper PO Localization/Extract Strings.
  • También puedes usar el menú contextual de la ventana Project (clic derecho): Assets/Hyper PO Localization/Extract Strings.
  • La extracción depende de la selección: solo se procesan los assets seleccionados en ese momento.

¿Dónde confirmo el resultado de la extracción?

  • Revisa la Consola de Unity.
  • La extracción escribe un log resumen con conteos y ruta del manifiesto.

¿Qué conviene usar: flujo POT o Update from Code en Poedit?

  • Ambos están soportados.
  • El flujo POT (Extract Strings -> Create/Update POT) es el flujo principal basado en plantilla.
  • Update from Code es válido para iteración diaria cuando escaneas Temp/*.php.

¿Poedit puede escanear llamadas runtime en C# directamente?

Si. Usa *.cs y configura estas keywords:

  • GetString:1
  • GetStringContext:1c,2
  • GetPlural:1,2
  • GetPluralContext:1c,2,3

¿Se puede mezclar escaneo C# y escaneo PHP generado en el mismo proyecto de Poedit?

  • Si las claves son idénticas (msgctxt + msgid + msgid_plural), gettext las fusiona.
  • Aún así, se recomienda usar una sola fuente por proyecto de Poedit para reducir referencias ruidosas y casi-duplicados por diferencias de extracción.

¿Por qué faltan algunas cadenas runtime en Poedit?

  • El parseo estático solo detecta argumentos literales.
  • GetString("Quest Title") se puede extraer.
  • GetString(dynamicKey) no se puede descubrir de forma estática.

Para claves dinámicas, agrega entradas en un asset ManualTranslations:

  • Create/Hyper/Language/Manual Translations

¿Cómo incluyo contexto y plurales?

  • Usa métodos runtime de contexto/plural (GetStringContext, GetPlural, GetPluralContext) con claves literales cuando sea posible.
  • En flujos de extracción de assets, puedes aportar metadata con atributos como TranslationContext y TranslationPlural.
  • Referencia completa de atributos: Documentation/ExtractionAttributes_ES.md.

¿Dónde se guardan los archivos de localización?

  • Archivos generados de extracción (para escaneo de fuentes en Poedit): Assets/HyperMegaPixel/POLocalization/Temp
  • Archivos de idioma en runtime: Assets/StreamingAssets/Languages

Limitaciones conocidas

  • Extract Strings depende de la selección. Solo procesa los assets seleccionados en cada ejecución.
  • El parseo estático no puede inferir claves runtime dinámicas (por ejemplo GetString(dynamicKey)).
  • Mezclar fuentes de escaneo en un mismo proyecto de Poedit (C# + PHP generado) puede añadir referencias ruidosas, incluso cuando las claves idénticas se fusionan.