Vou empezar explicando como funciona o sistema gettext, que se usa nas
textutils, fileutils, bash, gcc, etc...

 No código fonte do programa tedes un directorio chamado po/, que contén os
ficheiros de internacionalización do programa. Cada un deses ficheiros
(extensión .po) correspóndese a un idioma: de.po, fr.po, es.po... Os nomes
escóllense polo código ISO 631 (se non recordo mal), e o código do idioma
galego é GL.

 Atoparedes nese directorio un ficheiro con extensión .pot; ese é o ficheiro
mestre, cos textos en inglés (ou francés, ou neerlandes, ou o idioma
orixinal do programa), que segue un formato parecido a este:

# Isto é un comentario
#. Isto era un comentario "especial" no código fonte do programa
#: isto/e/o/nome/do/ficheiro/no/que/estaba/esta/cadea
msgid "Esta é a cadea orixinal"
msgstr "Esta é a cadea traducida"

 No ficheiro .pot, as sucesivas cadeas msgstr están baleiras; é o noso
traballo enchelas ;-)

 Tamén, en www.iro.umontreal.ca/contrib/po/pot (creo) están os .pot de
algúns programas GNU (da FSF).

 Imos supor que traducimo-lo hello (que xa está traducido, e podedes atopar
en http://ceu.fi.udc.es/~jtarrio/gl-po).

 Para poder traduci-lo ficheiro, primeiro teredes que crea-lo .po; para iso
mirade-las primeiras liñas do hello.pot (por exemplo, co comando "head
ficheiro.pot") e mirade-la liña que comeza por Project-Id-Version:, por
exemplo:

"Project-Id-Version: hello 1.3.22\n"

 Renombrade ou copiade o ficheiro hello.pot a hello-1.3.22.gl.po (é dicir,
paquete-versión.idioma.po) :-) Se a liña fora algo coma:

"Project-Id-Version: bash 2.0\n"

 O ficheiro sería bash-2.0.gl.po

 Para traducir, a cousa é moi sinxela; cólledes o editor joe, ou o emacs, ou
o vi, ou o xfte, ou o pico, a idea cóllese, ¿non? ;-) e enchedes cada msgstr
cun texto que sexa a versión traducida do que aparece no msgid, que NON
debedes modificar, porque serve para identificar cada cadea en inglés.

 Finalmente, cando o voso ficheiro .po esté rematado, hai que compilar un
ficheiro de idioma binario (os ficheiros .mo que podedes atopar en
/usr/share/locale/es/LC_MESSAGES). Para iso utilizade-la ferramenta 'msgfmt'
/que podedes atopar no paquete 'gettext' da vosa distribución:

   $ msgfmt hello-1.3.22.gl.po

 Isto xera un ficheiro chamado 'messages' que inmediatamente copiaredes ao
directorio /usr/share/locale/gl/LC_MESSAGES, co nome do paquete e coa
extensión .mo, por exemplo:

   $ cp messages /usr/src/locale/gl/LC_MESSAGES/hello.mo

 Se o directorio non existe, creádeo :-)

 Para que o idioma que se empregue sexa a galega, só tedes que usa-lo
comando:

   $ export DISPLAY=gl_ES

 Ben, ben... O QUE NUNCA DEBEDES FACER:

 - Traduci-lo es.po: queda fatal, provoca castelanismos e ademáis a
                     traducción non é todo o boa que se quixera (ningunha o
                     é, pero en fin...)
 - Usar sintaxe inglesa: 'file could not be opened' non se traduce por
                         'o ficheiro non puido ser aberto', senón por
                         'non se puido abri-lo ficheiro'.

 E, por suposto, non empreguedes castelanismos, formas compostas (non
existen en galego: 'rompeu', non 'ha roto'), non empreguedes formas
reintegracionistas (suponse que estamos traducindo ao galego normativo-Xunta
:-)), e procurade usar formas enxebres (pero non hiperenxebrismos: empregar
'agás' está moi ben; empregar 'esceto' noooon)...

-- 

   Tarrío                                          Fidonet: 2:348/102.11
(Compostela)
--
Para sair desta lista, manda un mail a gpul-traduccion-requ...@ceu.fi.udc.es
poñendo "unsubscribe" na mesaxe

Reply via email to