¿Cuál es la diferencia entre los archivos de localización .po .mo y .pot?

25 may 2016, 18:21:25
Vistas: 57.5K
Votos: 34

Estoy traduciendo un sitio de WordPress y necesito más claridad sobre estos términos. ¿Alguien puede ayudarme a entender las definiciones y diferencias entre los archivos .po .mo y .pot en la localización de WordPress?

0
Todas las respuestas a la pregunta 1
11
45

Estos no son ningún tipo de formato propio de WP, sino simplemente tipos de archivos gettext que WP implementa.

El Manual de Traducción tiene las siguientes definiciones en su Glosario:

Archivos MO: MO, o Machine Object (Objeto de Máquina) es un archivo de datos binarios que contiene datos de objeto referenciados por un programa. Normalmente se utiliza para traducir código de programa y puede cargarse o importarse en el programa GNU gettext.

Archivos PO: Los archivos PO son los archivos que contienen las traducciones reales. Cada idioma tendrá su propio archivo PO, por ejemplo, para francés habría un archivo fr.po, para alemán un de.po, y para inglés estadounidense podría haber un en-US.po.

Archivo POT: Los archivos POT son los archivos plantilla para los archivos PO. Tendrán todas las cadenas de traducción vacías. Un archivo POT es esencialmente un archivo PO vacío sin las traducciones, solo con las cadenas originales.

Los detalles técnicos de los formatos de archivo se pueden encontrar en la documentación de gettext:

25 may 2016 19:25:02
Comentarios

Entonces, para entenderlo mejor, en resumen, los archivos mo y pot se dejan intactos (el archivo mo esencialmente se genera automáticamente usando un programa, por ejemplo poedit)? Todavía no entiendo cuándo necesitamos un archivo pot..

Yannis Dran Yannis Dran
27 feb 2018 02:41:20

El archivo POT se usa cada vez que alguien comienza un nuevo archivo PO para traducir a un nuevo idioma. Entonces el flujo de trabajo es POT (cadenas originales) a PO (cadenas originales y su traducción a un idioma específico) a MO (resultado binario compilado).

Rarst Rarst
27 feb 2018 08:42:12

¿Quieres decir que para que funcionen las traducciones en un tema, debe haber una traducción que comience importando a poedit un archivo .pot? Yo estaba ignorando el archivo pot (porque el tema que estaba viendo solo está preparado para localización, no listo para idiomas y no tenía archivos pot provistos) y no podía ver ningún cambio en el idioma después de personalizar los archivos en-EN.po y .mo a mi idioma preferido.

Yannis Dran Yannis Dran
27 feb 2018 14:45:16

Te aconsejaría que simplemente hagas una nueva pregunta. :) Estás arrastrando tu problema muy específico (personalización que no funciona) a una pregunta muy general (cuáles son los formatos de archivo).

Rarst Rarst
27 feb 2018 15:11:21

alguna buena referencia en línea sobre estos archivos

Er. Amit Joshi Er. Amit Joshi
7 dic 2018 09:19:37

@Er.AmitJoshi He añadido enlaces a detalles técnicos, por si tienes curiosidad sobre los aspectos internos. :)

Rarst Rarst
11 dic 2018 10:19:33

Estoy recibiendo un par de archivos .mo que se agregan y pensé que podría ser un hack debido al 'basura' codificada dentro. ¿Podrían estos archivos generarse de manera inocente? La ruta es /wp-content/languages/themes/twentytwenty-en_GB.mo

landed landed
19 nov 2019 12:48:27

@landed sí, los archivos mo están en formato binario, no están diseñados para ser legibles por humanos.

Rarst Rarst
19 nov 2019 13:23:16

¿Podrían los archivos .mo contener código de hackers? Estoy perplejo porque incluso desinstalé este tema, entonces ¿qué está creando estos archivos?

landed landed
20 nov 2019 14:10:39

¿Qué significa "PO"?

Aaron Franke Aaron Franke
17 jun 2020 02:20:12

Eso significa Objeto Portable.

Rarst Rarst
17 jun 2020 14:23:48
Mostrar los 6 comentarios restantes