Adaptación de Pology ao galego

From Proxecto Trasno
Revision as of 00:16, 15 January 2013 by Mvillarino (talk | contribs) (Erros pendendes de arranxar nas regras)

Pology é unha biblioteca e un conxunto de ferramentas de liña de ordes para o traballo e procesamento de ficheiros PO, o formato de tradución que emprega o sistema de tradución de software GNU Gettext. Pology é capaz de realizar operacións de precisión nun único ficheiro PO así como operacións complexas en grandes grupos de ficheiros PO.

Instalación

Para instalar pology debes descargar o código desde o repositorio subversion. Isto é por mor de obter a última versión das regras para o galego.

svn co svn://anonsvn.kde.org/home/kde/trunk/l10n-support/pology 

Documentación

A documentación de Pology pódese consultar no enderezo http://pology.nedohodnik.net/doc/user/en_US/index-mono.html. Ademais ao copiar o repositorio tamén se dispón dunha copia de toda a documentación no subdirectorio doc.

Uso de Posieve

Pology ten ferramentas bastante interesantes, se ben aquí centrarémonos en posieve. Posieve é unha ferramenta que nos permite mediante unhas regras predefinidas filtrar un ficheiro po e obter información do mesmo. Entre os usos principais están:

  • Obtención de estatísticas dun ficheiro PO
  • Revisión terminolóxica dun ficheiro PO (segundo regras)
  • Revisión estilística dun ficheiro PO (segundo regras)
  • Corrección ortográfica dun ficheiro PO
  • Corrección gramatical dun ficheiro PO
  • Comprobación de etiquetas nun ficheiro PO (etiquetas XML)

Exemplos de uso

Revisión con regras

A revisión con regras utilízase para evitar que nas traducións aparezan castelanismos, lusismos, ... así como para asegurarse de que se aplican os acordos estilísticos e os acordos terminolóxicos acordados no Proxecto Trasno.

  • Revisión con aceleradores, comprobación con msgfmt --check e sen regras inversas
posieve -b --msgfmt-check --no-skip check-rules -slang:gl -saccel:"_" -srulerx:"^PT*" -snorulerx:"dual" FICHEIRO
  • Revisión con aceleradores, comprobación con msgfmt --check, apertura das liñas con erros en Lokalize e con regras inversas (incluídas as que non seguen estritamente os acordos do Proxecto Trasno)
posieve -b --msgfmt-check --no-skip check-rules -slang:gl -saccel:"_" -srulerx:"^(no)?PT*" -slokalize FICHEIRO
Corrección ortográfica
  • Corrección ortográfica con aceleradores
posieve -b check-spell-ec -sprovider:myspell -slang:gl -saccel:"_" FICHEIRO

Uso en lote

O uso en GNOME é bastante automatizado tentando que o revisor non perda tempo. A continuación explicarei o sistema empregado para revisar o core de GNOME. A vantaxe que ten GNOME é que podemos descargar un tarball cos últimos pofiles de todo o proxecto. Que podemos descargar desde [1], cambiando o 3-0 pola versión que desexe.

para traballar crearemos un cartafol chamado GNOME e dentro del crearemos dous cartafoles chamados po e errors. Logo de ter os ficheiros e os cartafoles preparados extraeremos os ficheiros to tarball no cartafol po. Este será o noso cartafol de traballo.

Para xerar ficheiros de erros nas traducións para todos os pofiles executamos:

for i in `ls -1`; do ../pology/bin/posieve -b --msgfmt-check --no-skip check-rules -slang:gl -saccel:"_" -srulerx:"^PT*" -snorulerx:"dual" $i  > ../errors/$i.errors; done

Isto creará un ficheiro de texto que contén os erros correspondentes ao mesmo ficheiro po correspondente co nome.

Para revisar cada ficheiro debemos cargar o ficheiro de texto de erros no gedit, activando o resaltado de sintaxe en traducións Gettext, e o ficheiro po no gtranslator. Agora teremos que revisar cada erro do ficheiro de erros e ir aplicando os cambios no gtranslator segundo corresponda.

Cando tenha rematada a revisión do ficheiro simplemente pase ao seguinte ficheiro até rematar con todos.

Adaptación ao galego

A adaptación de Pology ao galego consiste maiormente na creación de ficheiros de regras para o galego.

Erros nas regras

Como informar de erros nas regras

Recoméndase que os informes de erros nas regras vaian acompañados da liña de ordes aplicada. Recoméndase que a liña de ordes aplicada inclúa o parámetro "showfmsg", así: posieve.py -b check-rules -sshowfmsg ..... Recoméndase que os erros se comuniquen á vez por correo electrónico e nesta páxina wiki.

Recoméndase que cando se informen os erros na wiki, todos aqueles atribuíbeis a unha regra vaian seguidos, pero cada un por separado.

Posibles melloras

Erros pendendes de arranxar nas regras

Varios =
      • 1

Cando poidas mira este fallo frecuente: avisa da tradución plugin>engadido a pesar de que é así como está traducido.


desktop_extragear-kdevelop_kdevplatform.po:528(#91)

  1. plugins/snippet/kdevsnippet.desktop:5

msgctxt "Comment" msgid "" "This plugin allows to store code snippets and insert them into open files"

msgstr ""

"Este engadido permite gardar fragmentos de código e inserilos en ficheiros " "abertos" [note] rule [id=PT-2010_plugin] ==> [ «Plugin» tradúcese como «Complemento» ou «engadido»

        • 2

Tamén hai que ter en conta esta aparición de «infraestructure»:

kdevelop.po:402(#83)

  1. main.cpp:147

msgid "Help with KParts infrastructure" msgstr "Axuda coa infraestrutura de KParts"

[note] rule [id=PT-2011-dual_backend] ==> [ «infraestrutura» traduce a «backend» e «framework»
        • 3

Neste caso non sei se será un problema coa maiúscula inicial:

kdevexecute.po:89(#11)

  1. nativeappconfig.cpp:273
msgid "Configure Native Application"

msgstr "Configurar un aplicativo nativo" [note] rule [id=PT-2011_application] ==> [ «application» tradúcese como «aplicativo» rule [id=PT-2011-dual_application] ==> [ «aplicativo» traduce a «application» e a «app»


        • 4

Aqui, por outra parte, hai que conxugar.

kdevplatform.po:919(#186)

  1. language/duchain/repositories/itemrepository.cpp:265
  2. , kde-format

msgid "Session crashed %1 time in a row"

msgid_plural "Session crashed %1 times in a row"

msgstr[0] "A sesión quebrou %1 vez seguida" msgstr[1] "A sesión quebrou %1 veces seguidas" [note] rule [id=noPT-2011_crash] ==> [ «crash» tradúcese como «quebra»

rule [id=noPT-2011-dual_track2] ==> [ «seguir» traduce a «track» (e a «follow»)
Erro: grid

Hai que cambiar a regra "noPT-2010_grid" para que admita «grade» como tradución válida. O acordo é que «grade» é a recomendada e que se admite «grella». Tamén hai que cambiar o hint por algo como:

hint="«grid» tradúcese como «grade» (recomendada) ou «grella» (admitida)"

Se non sabes cales son os acordos das Trasnadas recoméndoche que utilices a páxina de consulta dinámica que podes obter en http://trasno.net/ficheiros/upload/resultados_trasnadas/Prontuario_trasnadas.tar.gz e que unha vez descomprimida se pode consultar con calquera navegador que teña Javascript activado.

Erro: clipboard

Antes de nada, e sen querer parecer pesado, por favor corrixe xa, pero xa mesmiño a regra "PT-2011_clipboard" para que só acepte «portapapeis» como tradución válida. Creo que falabas de admitir para determinados proxectos outras traducións, pero iso limitaría a reutilización de memorias de tradución dun proxecto para traducir outros. De paso tamén podes cambiar a regra "PT-2011-dual_clipboard" para evitar problemas ao realizar a comprobación inversa. Moitas grazas por adiantado.

Se non sabes cales son os acordos das Trasnadas recoméndoche que utilices a páxina de consulta dinámica que podes obter en http://trasno.net/ficheiros/upload/resultados_trasnadas/Prontuario_trasnadas.tar.gz e que unha vez descomprimida se pode consultar con calquera navegador que teña Javascript activado.

Erros nas regras xa arranxados

Regras non correspondentes a acordos

2012-11-01: Existe o grupo de regras aaPT, con esta finalidade

Erro: mouse/mice

2012-11-01: Agora admite «rato» como tradución tanto de «mouse» como de «mice».

Erro: rename (renaming)

Non pilla «renomeando» como tradución para «renaming». 2012-11-01: Agora si (creo).

Erro: rename

Non acepta «renomea»: 2012-11-01: Agora si (creo)

Erro: renaming (substantivo)

A seguinte regra parece que non acepta que no texto orixinal apareza «renaming»: 2012-11-01: Agora si (creo). RECORDAR que en pology non hai substantivos nin verbos nin ostias, só secuencias de números aos que se lles dá un significado convencional especial (caracteres).

Erro: quit (quits)

A seguinte regra falla cando «quits» se traduce como «sae» 2012-11-01: Agora non (creo).

Erro: exit (exiting)

A seguinte regra tampouco debería saltar: 2012-11-01: Creo que acougou.

Erro: track (tracking)

Outra que non sei por que salta: 2012-11-01: Coláraseme un «env="kde"», que facía que só rulase ben nos ficheiros de KDE. Agora non debería saltar.

Erro: check (compróbeo)

Parece ser que no seguinte caso a regra non admite «compróbeo»: 2012-11-01: Feito.

Erro: Fallo inexplicábel 1

Non teño nin idea de por que salta o seguinte fallo (a instrución de execución foi $ ./pology/bin/posieve -b --no-skip check-rules -slang:gl -saccel:"_" -srulerx:"^(no)?PT*" -snorule:"noPT-2010_hide" -snorulerx:"PT-2011_clipboard" -slokalize pos_gnome/brasero.master.gl.po ): 2012-11-01: Porque «inservíbel» comeza con «inser», e isto é típico da conxugacion do verbo inserir. Agora engadin unha excepción para que valide as palabras nas que «inser» vaia seguido de «víbel».

Erro: offline/off line/off-line

Faltan as regras para «offline» (e «off line» e «off-line»). Ter en conta que saltan regras como "noPT-2010-dual_attachment2" e "noPT-2010-dual_attach2" polo que igual hai que modificalas para considerar esta nova regra. 2012-11-01: Feito (creo; pendente de comprobación)

Erro: online/on line/on-line

Faltan as regras para «online» (e «on line» e «on-line»). Ter en conta que saltan regras como "noPT-2010-dual_attachment2" e "noPT-2010-dual_attach2" polo que igual hai que modificalas para considerar esta nova regra. 2012-11-01: Feito (creo;pendente de comprobación)