Guía de tradución de aplicativos

Guía de tradución de aplicativos

Fundamentos do estándar Gettext

O estándar Gettext
baséase en que o código fonte do aplicativo inclúe separadamente as súas
mensaxes en inglés e as correspondentes traducións, nun ficheiro de
texto independente, logo a tradución só precisa este ficheiro
(descargarase dende aquí na maioría dos casos).A extensión dos
ficheiros de texto Gettext é:

  • *.pot para os planteis onde se atopan as mensaxes orixinais en inglés
  • *.po para os ficheiros onde ademais das mensaxes orixinais se atopan as súas correspondentes traducións

Unha vez se ten o ficheiro de texto traducido (coa extensión *.po ) este compílase co resto do aplicativo e se xera un ficheiro binario *.mo
que contén as mensaxes traducidas para que o aplicativo as poida
interpretar en tempo de execución. A nós só nos interesará obter os
planteis *.pot correspondentes a un aplicativo determinado, traducilos e gravalos coa extensión *.po
e enviar este ficheiro ao coordinador do grupo de tradución
correspondente ou, no caso de ser un aplicativo individual non
pertencente a ningunha suite como KDE, Gnome, FSF … enviarllo ao
propio autor do aplicativo. O coordinador ou o autor do aplicativo, segundo
o caso, incluirá a tradución feita na distribución oficial do aplicativo.

Estes ficheiros teñen unha sintaxe específica bastante doada de
entender. Ademais, lonxe de ser totalmente preciso entendela para
desenvolver as traducións (aínda que si convínte para os aspectos
avanzados do proceso de tradución) existen na actualidade aplicativos
gráficos que simplifican moito o traballo. Falarase despois destes aplicativos, pero antes vaise a explicar a sintaxe básica dos ficheiros
gettext e o uso dalgunhas ferramentas para manipulalos.

Se abres un destes ficheiros poderás ver en primeiro lugar a cabeceira:

 # TÍTULO DESCRITIVO do APLICATIVO TRADUCIDO.
 # Autor da tradución <autor@datradución.com>, ANO.
 #
 #, fuzzy
 msgid ""
 msgstr ""
 Project-Id-Version: Versión do aplicativon"
 POT-Creation-Date: 1999-08-21 08:11+0200n"
 PO-Revision-Date: YEAR-MO-DA HO:MI+ZONEn"
 Last-Translator: Derradeiro Tradutor <derradeiro@tradutor.org>n"
 Language-Team: Lingua <enderezo@dogrupodetradución.org>n"
 MIME-Version: 1.0n"
 Content-Type: text/plain; charset=CHARSETn"
 Content-Transfer-Encoding: UTF-8n"

Aquí van datos xerais sobre a tradución, como se pode ver: autor,
datas, equipo de tradución, codificación, nome do aplicativo … Todos
os datos que non se verán na execución do aplicativo. O resto do ficheiro
consta de moitas entradas semellantes a esta:

 #: src/getopt.c:582 ''
 #, c-format ''
 msgid "%s: option %s' is ambiguousn" 
 msgstr ""

Cada unha destas entradas consta dunha mensaxe orixinal no msgid e un campo msgstr
onde ti manualmente ou a través dun aplicativo de tradución meterás a correspóndente versión en galego da mensaxe. No noso caso quedaría:

 #: src/getopt.c:582
 #, c-format'
 msgid "%s: option %s' is ambiguousn"
 msgstr "%s: a opción %s' é ambiguan"

Que son eses caracteres especiais? Os caracteres coma %s, %1, %2
adoitan substituír un termo que o aplicativo introducirá a modo de
variábel de execución, e polo tanto se deixan como están. Tamén se
presenta acotío o símbolo & intercalado nunha palabra. Este
símbolo substitúe ao guión subíndice que se coloca nas entradas dos
menús dos aplicativos debaixo dunha letra, para indicar o atallo de
teclado correspondente (Ctrl+Letra) a esa entrada de menú. Polo tanto,
unha palabra como “G&o” traduciríase como “&Ir” (véxase que se
pode mudar a posición do & e polo tanto hai que coidar que nun
mesmo menú non coincidan as letras dos atallos de teclado).

Escolle o aplicativo e tradúceo

Unha vez se entra a formar parte do grupo de colaboradores dun dos
subproxectos de Trasno (contacta co coordinador do grupo que che
interesa) xa estás listo/a para pórte a traducir un aplicativo (suponse
que se ten feito xa unha asignación por parte do coordinador dun
grupo). Tamén é posíbel que só te interese traducir algún aplicativo
solto que non se inscriba en ningún dos grupos de tradución xa
existentes. En calquera xeito, o que aquí se tenta explicar serve para
calquera tipo de aplicativo que ature a súa “internacionalización” polo
método Gettext (na maioría dos aplicativos da actualidade úsase este
estándar).

Se estás pensando en traducir un aplicativo dalgúns dos grupos de
tradución como Gnome, KDE, FSF ou das distribucións, estes ficheiros xa
se atopan na páxina correspondente a cada un deles para seren
descargados. No caso de que desexes traducir un aplicativo non adscrito a
estes apartados terás que descargar o seu código fonte: o ficheiro de
texto onde se inclúen as mensaxes para seren traducidas adoita atoparse
nos cartafoles Aplicativo-v1.1/po/, coas extensións anteriormente ditas.

Supoñamos que xa temos descargado o ficheiro *.pot* (se é unha tradución nova) ou o ficheiro *.po
(se se anova unha tradución ou se revisa). Neste suposto, hai que
decantarse por dúas vías: facer a tradución manualmente con editor de
textos ou usar un aplicativo específico como KBabel, GTranslator ou poEdit.
Recoméndase usar un dos últimos aplicativos porque, ademais de
simplificar moito o proceso (máis comodidade) adxuntan funcións
especiais (compilación, corrección ortográfica, xestor de catálogos) que
posibilitan un uso máis avanzado que o que podería fornecer un editor
de textos sinxelo.

Revisa, proba e manda a tradución

No caso de que se estea a empregar un aplicativo gráfico como KBabel ou GTranslator, non é preciso compilar o ficheiro *.po
traducido e logo probar coa instalación do aplicativo asociado, xa que
KBabel e GTranslator fornecen unha serie de validacións que supervisan
a validez do traballo feito: a verificación ortográfica (se se dispón
de corrector ortográfico), a comprobación da sintaxe e outras
comprobacións (aceleradores, puntuación, formas plurais, copias do
inglés, mensaxes en branco …) que se poden executar, por exemplo no
caso do KBabel, dende o menú Ferramentas e Validación. Unha vez feitas
todas estas verificacións e corrixidos os posíbeis erros, xa se pode
enviar o ficheiro *.po ao coordinador do grupo (se o aplicativo está dentro dun dos proxectos de tradución) ou ao autor do aplicativo (se o aplicativo é independente).

Non obstante, tamén é posíbel facer unha compilación do ficheiro *.po para obter un ficheiro *.mo
que se poderá usar para comprobar en tempo real (executando o aplicativo)
a validez da tradución. Isto recoméndase se existen dúbidas de
interpretación, por exemplo, ou para acurtar oracións que destrúan as
proporcións dos menús, entre outras cousas (tamén se queres ter
inmediatamente a versión galega instalada no teu computador, sen agardar
á publicación). Para facer isto, has de ter instalado o paquete GNU
Gettext. Nel inclúese o aplicativo msgfmt, que é o que vas empregar.
Seguindo coa suposición de que o paquete é o chamado ficheiro.po, para
probar este paquete escribe a orde:

 msgfmt -vvv -c ficheiro.po -o /dev/null

Deste xeito, se hai algún fallo, dirache cal é, en que liña está,
etc. Cando xa teñas probada a tradución, podes compilala, para
instalala no teu computador e usala activamente. Para iso, executa estes
dous comandos (o segundo coma root, a non ser que teñas configurado o
teu computador de forma que o poidas evitar):

 msgfmt ficheiro.po -o ficheiro.mo
 mv ficheiro.mo /usr/share/locale/gl/LC_MESSAGES

Se o cartafol
/usr/share/locale/gl/LC_MESSAGES/
non existe, créao no teu computador. Despois, para emprega-lo novo ficheiro, escribe a orde:

 export LC_MESSAGES=gl_ES

Pódela poñer nos scripts de inicio do teu usuario (.bash_profile,
.login, etc…), para non a ter que escribir cada vez que queiras
emprega-la versión traducida.

Mantén anovada a tradución

Os aplicativos están en continuo desenvolvemento, polo que as
traducións non fican estáticas e precísase anovalas con asiduidade de
xeito que se adapten ás novas funcionalidades que lle foran engadidas
ao aplicativo. Para manter as súas traducións anovadas recoméndase
empregar un repositorio local con todos os aplicativos do grupo de
tradución co que colabore (vaia ás instrucións específicas de cada
grupo para máis información) ou no seu canto descargar os ficheiros
novos ficheiros *.pot
de forma individual e manual. Se quere usar o repositorio, acuda á
axuda específica de cada grupo para aprender a configuralo e executar
as anovacións cando lle sexa convínte.

Se non pode usar o repositorio e precisa obter manualmente a nova
versión ficheiro dende a rede, entón precisará facer o seguinte.
Imaxine que ten o ficheiro traducido de nome ficheiro.po e desexa anovalo para adaptalo ás novas versións do aplicativo. Descargue o ficheiro plantel ficheiro.pot
dende a páxina do grupo de tradución ou dende a páxina do aplicativo se é
un aplicativo alleo a estes grupos. Queremos xerar un ficheiro que
chamaremos ficheironovo.po que conterá a versión nova do aplicativo pero que recicle, dentro do posíbel, as mensaxes antigas que
xa tiveramos traducidas e sexan aínda aproveitabeis. Executaremos
entón:

 msgmerge  ficheiro.po ficheiro.pot -o ficheironov.po

Xerarase un ficheironovo.po que contén todas as
mudanzas que se fixeran durante o desenvolvemento do aplicativo dende a
derradeira tradución. Neste proceso inseriranse posibelmente novas
mensaxes e, asemade, aparecerán unhas mensaxes antigas marcadas coa
etiqueta fuzzy (confusas), o que significa que mudaron o
seu contido e polo tanto precísase revisar a tradución para adaptala de
novo. O resto das mensaxes serán reutilizadas e non precisarán
revisión.

Leave a Reply

O teu enderezo electrónico non se publicará Os campos obrigatorios están marcados con *

*