Gettext/msgmerge

En Galilibros, o Wikibooks en galego.


msgmerge [opcións] vello.po novo.pot

O programa msgmerge úsase para mesturar dous ficheiros .po de estilo uniforme. O ficheiro vello.po é un ficheiro PO que xa foi traducido e que vai fundirse no novo que se creo sempre e cando aínda cadren. Os comentarios e traducións manteranse, pero as posicións das cadeas de texto cambiarán. O ficheiro novo.pot é o último ficheiro PO creado e coas referencias orixinais actualizadas pero coas con traducións desactualizadas, ou un ficheiro PO modelo (normalmente xerado mediante xgettext). Os comentarios e traducións descartaranse, e manteranse as posicións das cadeas de texto, así coma as cadeas orixinais.Nos casos en que non se poida obter unha coincidencia exacta, as cadeas marcaranse coma dubidosas.

Introducir a situación dos ficheiros[editar]

Ficheiro PO vello coas traducións máis actuais (xeralmente):

vello.po

Novo ficheiro PO coas cadeas orixinais -na lingua orixinal que posteriormente se vai traducir- actualizadas:

novo.pot

Logo tamén se pode indicar un ou varios directorios nos que o programa debería buscar os ficheiros, aínda que o ficheiro .po resultante crearase no directorio en que nos atopemos. Basta con substituír directorio pola ruta ao directorio que queiramos nunha destas opcións:

-D directorio
--directory=directorio

Mesturar os ficheiros[editar]

A seguinte opción permite actualizar o ficheiro vello.po, aínda que de estar xa actualizado o comando non fai nada:

-U
--update

Especificar a localización do ficheiro resultante[editar]

Para escribir os datos resultantes nun ficheiro concreto, é dicir, para especificar o nome que terá o ficheiro resultante, utilizaremos unha das seguintes opcións, substituíndo ficheiro polo nome que lle queiramos dar. Para introducir espacios no nome, debemos escribilo entre comiñas dobres ("):

-o ficheiro
--output-file=ficheiro

Velaquí un exemplo no que o ficheiro resultante terá un nome con espacios:

msgmerge -o "nome do ficheiro resultante.po" vello.po novo.pot

Se non se especifica ficheiro algún ou o ficheiro especificado chámase "-", utilizarase o ficheiro de saída por defecto.