
        *****************************************************
        *           GENERATED FILE, DO NOT EDIT             *
        * THIS IS NO SOURCE FILE, BUT RESULT OF COMPILATION *
        *****************************************************

This file was generated by po4a(7). Do not store it (in VCS, for example),
but store the PO file used as source file by po4a-translate.

In fact, consider this as a binary, and the PO file as a regular .c file:
If the PO get lost, keeping this translation up-to-date will be harder.

=encoding UTF-8

=head1 NUME

po4a-gettextize - convertește un fișier original (și traducerea sa) într-un
fișier PO

=head1 SINOPSIS

B<po4a-gettextize> B<-f> I<fmt> B<-m> I<principal.doc> B<-l> I<XX.doc> B<-p>
I<XX.po>

(I<XX.po> este ieșirea, toate celelalte sunt intrările)

=head1 DESCRIERE

po4a (PO pentru orice) facilitează întreținerea traducerii documentației
utilizând instrumentele clasice gettext. Principala caracteristică a po4a
este că decuplează traducerea conținutului de structura documentului. Vă
rugăm să consultați pagina L<po4a(7)> pentru o introducere ușoară în acest
proiect.

Scriptul B<po4a-gettextize> vă ajută să convertiți traducerile existente
anterior într-un flux de lucru bazat pe po4a. Acest lucru trebuie făcut o
singură dată pentru a salva o traducere existentă în timpul conversiei în
po4a, nu în mod regulat după conversia proiectului dvs. Acest proces
anevoios este explicat în detaliu în secțiunea „Conversia unei traduceri
manuale în po4a” de mai jos.

Trebuie să furnizați atât un fișier principal (de exemplu, sursa în limba
engleză), cât și un fișier tradus existent (de exemplu, o încercare
anterioară de traducere fără po4a). Dacă furnizați mai multe fișiere
principale sau de traducere, acestea vor fi utilizate în succesiune, dar
poate fi mai ușor să „gettextizați” fiecare pagină sau capitol separat și
apoi să utilizați B<msgmerge> pentru a fuziona toate fișierele PO
produse. După cum doriți.

Dacă documentul principal are caractere non-ASCII, noul fișier PO generat va
fi în UTF-8. Dacă documentul principal este complet în ASCII, PO generat va
utiliza codificarea documentului de intrare tradus.

=head1 OPȚIUNI

=over 4

=item B<-f>, B<--format>

Formatul documentației pe care doriți să o gestionați. Utilizați opțiunea
B<--help-format> pentru a vedea lista de formate disponibile.

=item B<-m>, B<--master>

Fișier care conține documentul principal de tradus. Puteți utiliza această
opțiune de mai multe ori dacă doriți să „gettextizați” mai multe documente.

=item B<-M>, B<--master-charset>

Setul de caractere al fișierului care conține documentul de tradus.

=item B<-l>, B<--localized>

Fișier care conține documentul localizat (tradus). Dacă ați furnizat mai
multe fișiere principale, este posibil să doriți să furnizați mai multe
fișiere localizate prin utilizarea acestei opțiuni de mai multe ori.

=item B<-L>, B<--localized-charset>

Setul de caractere al fișierului care conține documentul localizat.

=item B<-p>, B<--po>

Fișier în care ar trebui scris catalogul de mesaje. Dacă nu este dat,
catalogul de mesaje va fi scris la ieșirea standard.

=item B<-o>, B<--option>

Opțiuni suplimentare pe care să le transmiteți modulului de
format. Consultați documentația fiecărui modul pentru mai multe informații
despre opțiunile valide și semnificațiile acestora. De exemplu, ați putea
transmite „-o tablecells” analizatorului AsciiDoc, în timp ce analizatorul
de text ar accepta „-o tabs=split”.

=item B<-h>, B<--help>

Afișează un scurt mesaj de ajutor.

=item B<--help-format>

Enumeră formatele de documentație înțelese de po4a.

=item B<-k> B<--keep-temps>

Păstrează fișierele principale temporare și fișierele POT localizate
construite înainte de fuzionare. Acest lucru poate fi util pentru a înțelege
de ce aceste fișiere se desincronizează, ducând la probleme de gettextizare.

=item B<-V>, B<--version>

Afișează versiunea scriptului și iese.

=item B<-v>, B<--verbose>

Crește nivelul de detaliere al programului.

=item B<-d>, B<--debug>

Afișează unele informații de depanare.

=item B<--msgid-bugs-address> I<adresă@poștă.electronică>

Definește adresa de raportare pentru erori din msgid. În mod implicit,
fișierele POT create nu au câmpuri Report-Msgid-Bugs-To.

=item B<--copyright-holder> I<șir>

Definește deținătorul drepturilor de autor în antetul POT. Valoarea
implicită este „Free Software Foundation, Inc.”

=item B<--package-name> I<șir>

Definește numele pachetului pentru antetul POT. Valoarea implicită este
„PACKAGE”.

=item B<--package-version> I<șir>

Definește versiunea pachetului pentru antetul POT. Valoarea implicită este
„VERSION”.

=back

=head2 Conversia unei traduceri manuale în po4a

B<po4a-gettextize> sincronizează fișierele principale și localizate pentru a
extrage conținutul acestora într-un fișier PO. Conținutul fișierului
principal dă B<msgid>, în timp ce conținutul fișierului localizat dă
B<msgstr>. Acest proces este oarecum fragil: al N-lea șir din fișierul
tradus ar trebui să fie traducerea celui de-al N-lea șir din original.

Gettextizarea funcționează cel mai bine dacă reușiți să recuperați versiunea
exactă a documentului original care a fost utilizat pentru traducere. Chiar
și așa, este posibil să fie nevoie să vă descurcați atât cu fișierele
principale, cât și cu cele localizate pentru a le alinia structura dacă
aceasta a fost modificată de traducătorul original, astfel încât este
recomandat să lucrați pe copii ale fișierelor.

La nivel intern, fiecare analizator po4a raportează tipul sintactic al
fiecărui șir de caractere extras. Acesta este modul în care sunt detectate
desincronizările în timpul gettextizării. În exemplul prezentat mai jos,
este foarte puțin probabil ca al 4-lea șir din traducere (de tip „capitol”)
să fie traducerea celui de-al 4-lea șir din original (de tip
„paragraf”). Este mai probabil ca un nou paragraf să fi fost adăugat la
original sau ca două paragrafe originale să fi fost fuzionate în traducere.

    Original         Traducerea

  capitol            capitol
    paragraf           paragraf
    paragraf           paragraf
    paragraf         capitol
  capitol              paragraf
    paragraf           paragraf

B<po4a-gettextize> va diagnostica foarte detaliat orice desincronizare a
structurii. Atunci când se întâmplă acest lucru, ar trebui să editați manual
fișierele pentru a adăuga paragrafe false sau pentru a elimina unele
conținuturi ici și colo până când structura ambelor fișiere se potrivește cu
adevărat. Mai jos sunt prezentate câteva trucuri pentru a salva cea mai mare
parte din traducerea existentă în acest timp.

Dacă sunteți suficient de norocos să aveți o potrivire perfectă în
structurile de fișiere din cutie, construirea unui fișier PO corect este o
chestiune de secunde. În caz contrar, veți înțelege în curând de ce acest
proces are un nume atât de urât :) Chiar și așa, „gettextizarea” rămâne
adesea mai rapidă decât traducerea din nou a tot. Am „gettextizat”
traducerea în franceză a întregii documentații Perl într-o singură zi, în
ciuda I<multor> probleme de sincronizare. Având în vedere cantitatea de text
(2 Mo de text original), reînceperea traducerii fără a salva mai întâi
vechile traduceri ar fi necesitat mai multe luni de muncă. În plus, această
muncă brută este prețul de plătit pentru a obține confortul po4a. Odată
convertită, sincronizarea între documentele principale și traduceri va fi
întotdeauna complet automată.

După o gettextizare reușită, documentele produse ar trebui să fie verificate
manual pentru disparități nedetectate și erori silențioase, după cum se
explică mai jos.

=head3 Sfaturi și trucuri pentru procesul de „gettextizare”

Gettextizarea se oprește imediat ce este detectată o desincronizare. Când se
întâmplă acest lucru, trebuie să editați fișierele atât cât este necesar
pentru a realinia structurile fișierelor. B<po4a-gettextize> este destul de
„guraliv” atunci când lucrurile merg prost. Acesta raportează șirurile care
nu se potrivesc, pozițiile lor în text și tipul fiecăruia dintre ele. În
plus, fișierul PO generat până acum este transferat ca
F<gettextization.failed.po> pentru o inspecție ulterioară.

Iată câteva trucuri pentru a vă ajuta în acest proces anevoios și pentru a
vă asigura că salvați cea mai mare parte din traducerea anterioară:

=over

=item

Eliminați tot conținutul suplimentar al traducerilor, cum ar fi secțiunea
care oferă credite (recunoașterea meritelor, mulțumiri, ș.a.)
traducătorilor. Acestea ar trebui adăugate separat la B<po4a> ca addenda (a
se vedea L<po4a(7)>).

=item

Când editați fișierele pentru a le alinia structurile, preferați editarea
traducerii, dacă este posibil. Într-adevăr, dacă modificările aduse
originalului sunt prea intruzive, versiunile veche și nouă nu vor fi
comparate în timpul primei execuții po4a după „gettextizarea” (a se vedea
mai jos). Orice traducere nepotrivită va fi oricum abandonată. Acestea fiind
spuse, doriți în continuare să editați documentul original în cazul în care
este prea greu să obțineți „gettextizarea” pentru a continua altfel, chiar
dacă aceasta înseamnă că un paragraf din traducere este aruncat. Important
este să obțineți un prim fișier PO pentru a începe.

=item

Nu ezitați să eliminați orice conținut original care nu ar exista în
versiunea tradusă. Acest conținut va fi reintrodus automat ulterior, la
sincronizarea fișierului PO cu documentul.

=item

Probabil că ar trebui să informați autorul original cu privire la orice
modificare structurală în traducere care pare justificată. Problemele din
documentul original ar trebui raportate autorului. Rezolvarea lor în
traducerea dvs. le rezolvă doar pentru o parte a comunității. În plus, este
imposibil să faceți acest lucru atunci când utilizați po4a ;) Dar probabil
doriți să așteptați până la sfârșitul conversiei la B<po4a> înainte de a
modifica fișierele originale.

=item

Uneori, conținutul paragrafelor se potrivește, dar nu și tipurile
lor. Rezolvarea depinde mai degrabă de format. În POD și man, aceasta
provine adesea din faptul că unul dintre ele conține un rând care începe cu
un spațiu alb, în timp ce celălalt nu. În aceste formate, un astfel de
paragraf nu poate fi încadrat și devine astfel un tip diferit. Îndepărtați
spațiul și sunteți în regulă. De asemenea, poate fi vorba de o greșeală de
dactilografiere a numelui etichetei în XML.

De asemenea, două paragrafe pot fi îmbinate în POD atunci când linia de
separare conține câteva spații sau când nu există o linie goală între linia
B<=item> și conținutul articolului.

=item

Uneori, mesajul de desincronizare pare ciudat deoarece traducerea este
atașată la paragraful original greșit. Acesta este semnul unei probleme
nedetectate mai devreme în proces. Căutați punctul real de desincronizare
prin inspectarea fișierului F<gettextization.failed.po> care a fost produs
și rezolvați problema acolo unde este cu adevărat.

=item

Alte probleme pot proveni din șiruri de caractere duplicate, fie în
original, fie în traducere. Șirurile duplicate sunt fuzionate în fișierele
PO, cu două referințe. Acest lucru constituie o dificultate pentru
algoritmul de gettextizare, care este o simplă împerechere unu la unu între
B<msgid>-urile din fișierele principale și cele localizate. Cu toate
acestea, se crede că versiunile recente ale po4a tratează în mod
corespunzător șirurile duplicate, astfel încât ar trebui să raportați orice
problemă rămasă pe care o puteți întâlni.

=back

=head2 Revizuirea fișierelor produse de B<po4a-gettextize>

Orice fișier produs de B<po4a-gettextize> trebuie revizuit manual, chiar și
atunci când scriptul se încheie cu succes. Ar trebui să treceți cu vederea
fișierul PO, asigurându-vă că B<msgid> și B<msgstr> corespund efectiv. Nu
este încă necesar să vă asigurați că traducerea este perfect corectă,
deoarece toate intrările sunt oricum marcate ca traduceri neclare. Trebuie
doar să verificați dacă există probleme evidente de potrivire, deoarece
traducerile cu potrivire proastă vor fi abandonate în etapele următoare, în
timp ce ceea ce doriți, este să le salvați.

Din fericire, acest pas nu necesită cunoașterea limbilor țintă, deoarece
doriți doar să recunoașteți elemente similare în fiecare B<msgid> și
B<msgstr> corespunzător. În calitate de vorbitor de franceză, engleză și
ceva germană, pot face acest lucru cel puțin pentru toate limbile europene,
chiar dacă nu pot spune un cuvânt din majoritatea acestor limbi. Uneori
reușesc să detectez probleme de potrivire în limbile non-latine uitându-mă
la lungimea șirurilor de caractere, la structura frazelor (se potrivește
cantitatea de semne de interogație?) și la alte indicii, dar prefer ca
altcineva să revizuiască aceste limbi.

Dacă detectați o nepotrivire, editați fișierele original și de traducere ca
și cum B<po4a-gettextize> ar fi raportat o eroare și încercați din
nou. Odată ce aveți un fișier PO decent pentru traducerea dvs. anterioară,
faceți o copie de rezervă a acestuia până când po4a funcționează corect.

=head2 Rulând B<po4a> pentru prima dată

Cel mai simplu mod de a configura po4a este să scrieți un fișier de
configurare B<po4a.conf> și să utilizați programul integrat B<po4a>
(B<po4a-updatepo> și B<po4a-translate> sunt depreciate). Vă rugăm să
consultați secțiunea „FIȘIERUL DE CONFIGURARE” din documentația L<po4a(1)>
pentru mai multe detalii.

Când B<po4a> rulează pentru prima dată, versiunea curentă a documentelor
principale va fi utilizată pentru a actualiza fișierele PO care conțin
traducerile vechi pe care le-ați salvat prin „gettextizare”. Acest lucru
poate dura destul de mult timp, deoarece multe dintre B<msgid>-urile de la
„gettextizare” nu corespund exact elementelor din fișierul POT construit din
fișierele principale recente. Acest lucru forțează gettext să caute cel mai
apropiat folosind un algoritm costisitor de proximitate a șirurilor. De
exemplu, prima rulare a traducerii în franceză a documentației Perl (fișier
PO de 5,5 MB) a durat aproximativ 48 de ore (da, două zile), în timp ce cele
ulterioare durează doar câteva secunde.

=head2 Trecerea traducerilor dvs. în producție

După această primă execuție, fișierele PO sunt gata pentru a fi revizuite de
traducători. Toate intrările au fost marcate ca aproximative (fuzzy) în
fișierul PO de către B<po4a-gettextization>, forțând revizuirea lor atentă
înainte de utilizare. Traducătorii trebuie să examineze fiecare intrare
pentru a verifica dacă traducerea salvată corespunde de fapt textului
original actual, să actualizeze traducerea în funcție de necesități și să
elimine marcajele de traducere aproximativă.

Odată ce sunt eliminate suficiente marcaje „fuzzy” (de traducere
aproximativă), B<po4a> va începe să genereze fișierele de traducere pe disc
și sunteți gata să treceți fluxul de lucru de traducere la producție. Unele
proiecte consideră că este util să se bazeze pe weblate pentru coordonarea
între traducători și întreținători, dar acest lucru depășește domeniul de
aplicare al B<po4a>.

=head1 CONSULTAȚI ȘI

L<po4a(1)>, L<po4a-normalize(1)>, L<po4a-translate(1)>, L<po4a-updatepo(1)>,
L<po4a(7)>.

=head1 AUTORI

 Denis Barbier <barbier@linuxfr.org>
 Nicolas François <nicolas.francois@centraliens.net>
 Martin Quinson (mquinson#debian.org)

=head1 DREPTURI DE AUTOR și LICENȚĂ

Drepturi de autor 2002-2023 pentru SPI, inc.

Acest program este software liber; îl puteți redistribui și/sau modifica în
conformitate cu termenii GPL v2.0 sau o versiune ulterioară (consultați
fișierul COPYING).
