Locale::Po4a::Po.3pm

Autres langues

Langue: pl

Version: 2008-11-05 (ubuntu - 08/07/09)

Section: 3 (Bibliothèques de fonctions)

NAZWA

Locale::Po4a::Po - moduA°X manipulujA.Xcy plikami po

SKA°XADNIA

     use Locale::Po4a::Po;
     my $pofile=Locale::Po4a::Po->new();
 
     # Czytanie pliku po
     $pofile->read('plik.po');
 
     # Dodanie wpisu
     $pofile->push('msgid' => 'Hello', 'msgstr' => 'bonjour',
                   'flags' => "wrap", 'reference'=>'file.c:46');
 
     # WyciA.XgniA.Xcie tA°Xumaczenia
     $pofile->gettext("Hello"); # zwraca 'bonjour'
 
     # Zapisanie z powrotem do pliku
     $pofile->write('inny_plik.po');
 
 

OPIS

Locale::Po4a::Po jest moduA°Xem pozwalajA.Xcym manipulowaA.X katalogami wiadomoA°Xci. MoA°Xna zaA°XadowaA.X i zapisaA.X plik po (ktA~Xrego rozszerzeniem czA.Xsto jest po), moA°Xna zbudowaA.X nowe wpisy w locie albo zaA°XA.XdaA.X przetA°Xumaczenia komunikatu.

Bardziej caA°XoA°Xciowy opis katalogA~Xw wiadomoA°Xci w formacie po i ich uA°Xycia moA°Xna znaleA°XA.X w dokumentacji programu gettext.

Ten moduA°X jest czA.XA°XciA.X projektu PO4A, ktA~Xrego celem jest uA°Xycie plikA~Xw po (z zaA°XoA°Xenia przeznaczonych do uA°Xatwienia tA°Xumaczenia komunikatA~Xw programu) do tA°Xumaczenia wszystkiego, wA°XA.XczajA.Xc dokumentacjA.X (strony podrA.Xcznika man, strony info), opisy pakietA~Xw, szablony debconfa i wszystkiego, co moA°Xe korzystaA.X z tego.

OPCJE AKCEPTOWANE PRZEZ TEN MODUA°X

porefs
OkreA°Xla format odnoA°Xnika. MoA°Xe to byA.X: ``none'' - nie dodaje A°Xadnych odnoA°XnikA~Xw, ``noline'' - nie dodaje numeru linii, ``full'' - dodaje kompletne odnoA°Xniki.

Funkcje caA°Xego katalogu wiadomoA°Xci

new()
Tworzy nowy katalog wiadomoA°Xci. JeA°Xli podano argument, jest on nazwA.X pliku po, ktA~Xry powinien byA.X zaA°Xadowany.
read($)
Czyta plik po (o nazwie podanej jako argument). WczeA°Xniej istniejA.Xce wpisy nie sA.X usuwane, a nowe wpisy sA.X dodawane na koA°Xcu katalogu.
write($)
Zapisuje bieA°XA.Xcy katalog do podanego pliku.
write_if_needed($$)
Podobne do write, ale jeA°Xeli pliki PO lub POT juA°X istniejA.X, to wynik zostanie zapisany do pliku tymczasowego, ktA~Xry bA.Xdzie porA~Xwnany z istniejA.Xcym plikiem, aby sprawdziA.X, czy aktualizacja jest rzeczywiA°Xcie potrzebna (pozwala to uniknA.XA.X zmieniania pliku POT tylko po to, by zaktualizowaA.X odnoA°Xniki lub pole POT-Creation-Date).
gettextize($$)
Funkcja tworzy jeden katalog przetA°Xumaczonych wiadomoA°Xci z dwA~Xch katalogA~Xw - oryginaA°Xu i tA°Xumaczenia. Proces tej jest opisany w sekcji Proces przeksztaA°Xcania do formatu gettext: jak to dziaA°Xa? podrA.Xcznika po4a(7).
filter($)
Funkcja wyodrA.Xbnia katalog wiadomoA°Xci z istniejA.Xcego katalogu. W pliku wynikowym bA.XdA.X umieszczone tylko te wpisy, do ktA~Xrych istnieje odniesienie w podanym pliku.

Funkcja przetwarza swoje argumenty, generuje z nich definicjA.X funkcji Perla, ewaluuje tA.X definicjA.X i filtruje pola, dla ktA~Xrych ta wygenerowana funkcja zwrA~Xci wartoA°XA.X true.

Czasami uwielbiam Perla ;)

to_utf8()
Zmienia kodowanie wpisA~Xw msgstr pliku po do utf-8. Nic nie robi, jeA°Xli w pliku po nie jest podane kodowanie znakA~Xw (wartoA°XA.X ``CHARSET'') albo gdy jest ono ustawione na utf-8 lub ascii.

Funkcje uA°XywajA.Xce katalogu wiadomoA°Xci do tA°XumaczeA°X

gettext($%)
A°XA.Xda przetA°Xumaczenia przez bieA°XA.Xcy katalog komunikatu podanego jako argument. JeA°Xli nie znaleziono tA°Xumaczenia, funkcja zwrA~Xci oryginalny (nieprzetA°Xumaczony) komunikat.

Po komunikacie do przetA°Xumaczenia moA°Xna przekazaA.X hasha z dodatkowymi argumentami. PoniA°Xej podano poprawne wpisy:

wrap
wartoA°XA.X logiczna, okreA°XlajA.Xca, czy biaA°Xe znaki w tekA°Xcie majA.X znaczenie. JeA°Xli tak, to funkcja kanonizuje tekst przed wyszukaniem tA°Xumaczenia oraz zawija tekst wynikowy.
wrapcol
Kolumna, w ktA~Xrej tekst powinien byA.X zawijany (domyA°Xlnie: 76).
stats_get()
Zwraca statystyki dotyczA.Xce stosunku trafieA°X od ostatniego wywoA°Xania funkcji stats_clear(). ProszA.X zauwaA°XyA.X, A°Xe to nie sA.X te same statystyki, ktA~Xre wypisuje msgfmt --statistic. Tutaj, statystyki dotyczA.X bieA°XA.Xcego uA°Xycia pliku po, a msgfmt podaje stan pliku. PrzykA°Xad uA°Xycia:
     [klika uA°XyA.X pliku po do tA°Xumaczenia rzeczy]
 
     ($percent,$hit,$queries) = $pofile->stats_get();
     print "Do tej pory znaleA°XliA°Xmy tA°Xumaczenia $percent\% ($hit z $queries) komunikatA~Xw.\n";
 
 
stats_clear()
CzyA°Xci statystyki dotyczA.Xce trafienia gettexta.

Funkcje budujA.Xce katalog wiadomoA°Xci

push(%)
Dodaje nowy wpis na koniec bieA°XA.Xcego katalogu. Argumenty powinny byA.X przekazane w hashu. DostA.Xpne klucze:
msgid
A°XaA°Xcuch znakA~Xw w oryginalnym jA.Xzyku.
msgstr
tA°Xumaczenie.
reference
wskazanie, gdzie dany komunikat zostaA°X znaleziony. PrzykA°Xad plik.c:46 (w linii 46 pliku ``plik.c''). W razie wielokrotnych wystA.XpieA°X moA°Xe byA.X to lista rozdzielona znakami spacji.
comment
komentarz dodany tutaj rA.Xcznie (przez tA°Xumaczy). Format jest dowolny.
automatic
komentarz dodany automatycznie przez program wyciA.XgajA.Xcy komunikaty. SzczegA~XA°Xy w opisie opcji --add-comments programu xgettext.
flags
rozdzielona spacjami lista wszystkich zdefiniowanych flag dla tego wpisu.

Poprawne flagi: c-text, python-text, lisp-text, elisp-text, librep-text, smalltalk-text, java-text, awk-text, object-pascal-text, ycp-text, tcl-text, wrap, no-wrap i fuzzy.

Ich znaczenie moA°Xna znaleA°XA.X w dokumentacji pakietu gettext.

type
Jest to w wiA.XkszoA°Xci argument wewnA.Xtrzny uA°Xywany podczas przeksztaA°Xcania dokumentA~Xw do formatu gettext. IdeA.X jest przetworzenie do obiektu po zarA~Xwno oryginaA°Xu, jak i tA°Xumaczenia, scalenie ich, uA°XywajA.Xc msgid jednego jako msgstr drugiego i msgid drugiego jako msgstr pierwszego. Aby mieA.X pewnoA°XA.X, A°Xe wszystko jest OK, kaA°Xdy msgid w obiekcie ma przypisany typ, oparty na strukturze dokumentu (jak ``chap'', ``sect1'', ``p'' w formacie docbook). JeA°Xli typy komunikatA~Xw nie sA.X takie same, oznacza to, A°Xe struktura obu plikA~Xw jest rA~XA°Xna i proces koA°Xczy siA.X bA°XA.Xdem.

Ta informacja jest zapisywana jako automatyczny komentarz w pliku po, poniewaA°X dostarcza tA°Xumaczom kontekstu o komunikatach, ktA~Xre tA°XumaczA.X.

wrap
wartoA°XA.X logiczna, okreA°XlajA.Xca, czy biaA°Xe znaki mogA.X byA.X scalane. JeA°Xli tak, komunikat przed uA°Xyciem bA.Xdzie ujednolicony.

Ta informacja jest zapisywana do pliku po z uA°Xyciem flagi ``wrap'' lub ``no-wrap''.

wrapcol
Kolumna, w ktA~Xrej tekst powinien byA.X zawijany (domyA°Xlnie: 76).

Ta informacja nie jest zapisywana w pliku po.

RA~XA°Xne funkcje

count_entries()
Zwraca liczbA.X wpisA~Xw w katalogu (nie liczA.Xc nagA°XA~Xwka).
count_entries_doc()
Zwraca liczbA.X wpisA~Xw w dokumencie. Komunikaty pojawiajA.Xce siA.X wiele razy w tym dokumencie bA.XdA.X policzone wiele razy.
msgid($)
Zwraca msgid o zadanym numerze.
msgid_doc($)
Zwraca msgid znajdujA.Xce siA.X w dokumencie na podanej pozycji.
get_charset()
Zwraca kodowanie znakA~Xw okreA°Xlone w nagA°XA~Xwku pliku po. JeA°Xli nie zostaA°Xo ustawione, to zwraca tekst ``CHARSET''.
set_charset($)
Ustawia kodowanie znakA~Xw nagA°XA~Xwka pliku po na wartoA°XA.X okreA°XlonA.X przez pierwszy argument. JeA°Xli ta funkcja nie zostanie nigdy wywoA°Xana (i nie bA.Xdzie przeczytany A°Xaden plik majA.Xcy podane kodowanie znakA~Xw), zostanie pozostawiona domyA°Xlna wartoA°XA.X, czyli ``CHARSET''. Ta wartoA°XA.X nie zmienia zachowania moduA°Xu, jest uA°Xywana tylko do wypeA°Xnienia odpowiedniego pola nagA°XA~Xwka; zostanie takA°Xe zwrA~Xcona przez get_charset().

AUTORZY

  Denis Barbier <barbier@linuxfr.org>
  Martin Quinson (mquinson#debian.org)
 
 

TA°XUMACZENIE

  Robert Luberda <robert@debian.org>