Consejos para la utilización de gettext

Revisión de formato

Para revisar el formato de un fichero de un fichero PO se puede utilizar la herramienta msgfmt. Se recomienda crear los siguientes alias para consola:

alias msgstat='msgfmt --stat -c -v -o /dev/null'
alias msgstatdir='for i in *po; do [ -f "$i" ] && { echo -n "$i: "; msgstat $i; }; done'

De esa forma, si se quiere comprobar un fichero PO se utilizaría: msgstat es.po. El resultado son las estadísticas de traducción así como cualquier error que pueda tener el fichero (cabeceras mal definidas, terminaciones incorrectas, etc..)

Revisión ortográfica

A continuación se dan algunos consejos para la revisión ortográfica de ficheros PO de gettext.

En general, será necesario instalar primero las herramientas gettext-lint, si no está el paquete disponible puedes obtenerlo en https://people.debian.org/~jfs/gettext-lint

Revisión con Ispell

Para hacer la revisión ortográfica con ispell debes instalar ispell, wspanish y gettext-lint. Se recomienda crear los siguientes alias para consola:

alias msgspell-lat1='POFileSpell --command="ispell -l" -i'
alias msgspell-u8='POFileSpell --command="iconv -f utf8 -t latin1 | ispell -l" -i'

Así, si el fichero PO está codificado en página de caracteres latin1 utilizarías: msgspell-lat1 es.po y si está codificado en utf8: msgspell-u8 XX.po. Para identificar la codificación mira la cabecera del fichero PO:

NOTA: El soporte con ispell y ficheros UTF-8 no funciona correctamente dado que la información introducida en las cabeceras contendrá los caracteres codificados en ISO-8859-1. Puede ser mejor recodificar el fichero primero a ISO-8859-1, utilizar luego msgspell-lat1 y volverlo a codificar como UTF-8 una vez pasado el corrector.

Revisión con Emacs

Para hacer una revisión ortográfica de los ficheros PO utilizando emacs e ispell necesitarás tener instalado el paquete ispell así como la lista de palabras wspanish. Para facilitar la revisión pon el siguiente fragmento en tu fichero de configuración ~/.emacs:

(defun po-mode-ispell-pattern ()
    "Add ispell patterns so that only translated messages are checked."
    (make-variable-buffer-local 'ispell-skip-region-alist)
    (add-to-list 'ispell-skip-region-alist '("^msgid" . "^msgstr"))
    (add-to-list 'ispell-skip-region-alist '("^#[:,]" . "\n")))
(add-hook 'po-mode-hook 'po-mode-ispell-pattern)

Si haces esto al llamar a ispell sólo se revisará la ortografía de los comentarios y de los contenidos traducidos. Ten en cuenta que como el modo PO de emacs pone el búfer en sólo lectura no se podrán hacer cambios, sólo revisar si la ortografía está bien.

Revisión con Kbabel

La herramienta Kbabel utilizada para la edición gráfica de ficheros PO tiene la capacidad de hacer revisión ortográfica de estos ficheros.

Revisión con Aspell

Instala el paquete aspell y aspell-es. Aspell se supone que tiene soporte de gettext a partir de la versión 0.60.

NOTA: El soporte de gettext no parece funcionar bien. Para ficheros codificados en UTF-8 se tiene que especificar la codificación (con la opción --enconding) para que funcione correctamente.