Pology

De KDE Català
Dreceres ràpides: navegació, cerca
Logo KDE.png

 cat >> KDE

  Ubicació: cat >> KDE Inici

Pology


El Pology és un conjunt d'eines que serveixen per tractar els fitxer de traducció en format «PO», el format de fitxer de traducció del sistema de traduccions Gettext de GNU. Al lloc oficial hi ha el programa, les instruccions d'instal·lació, i el manual, que explica amb molt detall totes les seves funcionalitats.


Introducció al Pology


El Pology és un conjunt de biblioteques i scripts escrits en Python que permeten tractar fitxers PO de traduccions, tant fitxers individuals com col·leccions de fitxers PO. Inclou diverses eines:

  • Posieve: Permet treure estadístiques (stats), comprovar regles (check-rules), comprovar missatges (chek-tp-kde), normalitzar o definir capçaleres (normalize/set-header), eliminar missatges obsolets (remove-obsolete), etc. Com que permet treballar amb col·leccions senceres de fitxers PO, estalvia molta feina.
  • Poediff i poepatch: Permet crear fitxers «diff» i «patch» de fitxers PO
  • Posummit: Permet crear un pou comú de missatges de diferents branques (stable+trunk) i després traslladar els missatges del pou a cada una de les branques. Els missatges comuns entre les diferents branques només es tradueixen una vegada.
  • Poascribe: Permet adscriure missatges o fitxers PO a persones i rols (traductors, revisors, etc.), generant un flux de treball.
  • Altres eines: porewrap (per ajustar les línies dels fitxers PO), poselfmerge (per fusionar fitxers PO amb la seva plantilla, de manera més eficient que el msgmerge), pomtrans (per fer traduccions automàtiques mitjançant ordinador -machine translation-), etc.


Posieve

El gran avantatge del Posieve és que permet treballar amb els missatges originals (msgid), els missatges traduïts (msgstr), els dos a la vegada, els comentaris, les capçaleres, i altres elements dels fitxers PO.

El nostre equip utilitza el check-rules del Posieve per tal de comprovar que les traduccions del KDE són homogènies i coherents. Softcatalà també l'utilitza per fer una part dels informes de qualitat de les memòries dels diferents projectes de traducció al català.

Per tal de conèixer com funcionen les regles (check-rules) del Posieve, tot seguit hi ha un parell d'exemples:


1r exemple de regla

# «Advertisement» es tradueix per «Anunci».

{\badvertisements?\b}i 

id="ff-advertisement" 

valid msgstr="anuncis?" 

valid !msgstr="advertènci(a|es)" 

valid !msgstr="advertiments?" 

hint="«Advertisement» es tradueix per «Anunci», no per «Advertència» (fals amic)"

En primer lloc hi ha un comentari de la regla, que comença per #.

Seguidament hi ha l'activador (trigger) de la regla, format per una expressió regular en Python. Com que està entre claus «{}», vol dir que actua sobre el missatge original msgid. Per actuar sobre la traducció cal que estigui entre claudàtors «[]». A l'exemple anterior, l'expressió regular està entre límits de paraula (\b), i pot acabar amb una «s» opcional. La «i» final indica que l'activador no distingeix entre majúscules/minúscules.

Després hi ha un identificador (id) de la regla. Aquest identificador s'utilitza per definir excepcions a la regla en les traduccions (via un comentari skip-rule: ff-advertisement al missatge afectat). A sota hi ha tres subdirectives valid, que cancel·len l'activador. La primera admet l'expressió regular anuncis? a la traducció; la segona no admet l'expressió regular advertènci(a|es); la tercera no admet l'expressió regular advertiments?.

Finalment, si es compleix l'activador i no es compleix cap subdirectiva valid, es mostra el missatge hint a l'usuari.

És a dir, si en el fitxer PO el missatge original és Advertisement i la traducció és Advertència, es mostrarà el missatge «Advertisement» es tradueix per «Anunci», no per «Advertència» (fals amic). I el traductor hauria de modificar la traducció, o bé posar una excepció si pel context la traducció és correcta.


2n exemple de regla

[\s\s+]

id="t-sp_x2"

valid msgid="\s\s+"

valid after="V\sI\sS\sT\sA"

hint="No s'ha de posar més d'un espai consecutiu (tipografia)"

En aquest exemple, l'activador de la regla actua sobre els missatges traduïts msgstr, ja que està entre claudàtors []. L'expressió regular cerca dos espais (\s\s) o més (+). Els espais estan escapts amb una barra inversa, per no confondre amb una «s».

Després hi ha l'identificador (id) de la regla. Aquest identificador s'utilitza per definir excepcions a la regla en les traduccions (via un comentari skip-rule: t-sp_x2). A sota hi ha dues subdirectives valid, que cancel·len l'activador. La primera admet l'expressió regular \s\s+ al missatge original (és a dir, s'admet l'expressió de l'activador e la traducció si també està a l'original); la segona admet dos espais després de l'expressió regular V\sI\sS\sT\sA. Finalment, si es compleix l'activador i no es compleix cap subdirectiva valid, es mostra el missatge hint a l'usuari.

És a dir, si en el fitxer PO el missatge original és Date time i la traducció és Data hora (amb dos espais entre «Data» i «hora»), es mostrarà el missatge No s'ha de posar més d'un espai consecutiu (tipografia). I el traductor hauria de modificar la traducció, o bé posar una excepció si pel context la traducció és correcta.


A on trobar les regles vigents

Hi ha diversos conjunts de regles en català pel Posieve. Estan al directori /pology/lang/ca del Pology. Però això no impedeix que es puguin utilitzar part de les regles (activant-les i desactivant-les segons convingui) o tenir fitxer alternatius de regles. Tot això està explicat al manual.

Eines de l'usuari