msguntypot - aktualizuje pliki PO, jeżeli w pliku POT poprawiono
literówki
msguntypot -o stary_pot -n nowy_pot
pliki_po ...
Jeżeli w pliku POT poprawiony zostanie banalny błąd,
który na pewno nie ma wpływu na tłumaczenia (np.
literówka), to powinno się usunąć znaczniki
"fuzzy" w odpowiadających wpisach msgstr
przetłumaczonych plików PO, aby oszczędzić
tłumaczom dodatkowej pracy.
Wykonanie tego zadania ręcznie jest trudne i podatne na
błędy. To narzędzie pomaga poprawnie go wykonać.
Należy podać dwie wersje pliku POT: przed zmianami i po nich,
tak jak to podano w powyższej sekcji "SKŁADNIA", i
wszystko wykona się automatycznie.
W skrócie, po odkryciu literówki w [angielskim] komunikacie,
wykonaj następujące czynności:
- - Ponownie wygeneruj pliki POT i PO.
-
make -C po/ update-po # dla tłumaczeń komunikatów programów
debconf-updatepo # dla tłumaczeń szablonów debconfa
po4a po4a.conf # dla tłumaczeń opartych na po4a
albo w inny sposób, w zależności od ustawień
budowania Twojego projektu. Przecież wiesz najlepiej, jak
zaktualizować pliki POT i PO, nieprawdaż?
- - Stwórz kopię pliku POT.
-
cp mój_plik.pot mój_plik.pot.orig
- - Stwórz kopie wszystkich plików PO.
-
mkdir po_kopia; cp *.po po_kopia
- - Popraw literówkę.
- $EDITOR plik_w_którym_jest_literówka
- - Ponownie wygeneruj pliki POT i PO.
- Patrz wyżej.
W tym momencie, poprawienie literówki spowodowało oznaczenie
wszystkich tłumaczeń jako niepewne ("fuzzy") i jest to
niestety jedyna różnica między plikami PO w
głównym katalogu a plikami PO skopiowanymi wcześniej do
innego katalogu. Poniżej objaśniono, jak ten problem
rozwiązać.
- - Wyrzuć niepewne tłumaczenia,
zastępując je wcześniej zachowanymi
tłumaczeniami.
-
cp po_kopia/*.po .
- - Ręcznie scal pliki PO z nowym plikiem POT,
biorąc pod uwagę niepotrzebne znaczniki
"fuzzy".
-
msguntypot -o mój_plik.pot.orig -n mój_plik.pot *.po
- - Porządki.
-
rm -rf mój_plik.pot.orig po_kopia
I to wszystko. Literówka została wyeliminowana zarówno z
plików POT, jak i PO, a tłumaczenia w plikach PO nie są
zaznaczone jako niepewne. Tłumacze już Cię
uwielbiają!
Mimo swojej nazwy, to narzędzie nie jest częścią
pakietu gettext. Jest częścią po4a. Mówiąc
dokładniej, jest to przypadkowy skrypt w Perlu używający
modułów po4a. Więcej informacji o po4a można
znaleźć w:
po4a(7)
Martin Quinson (mquinson#debian.org)
Robert Luberda <[email protected]>
Copyright 2005 by SPI, inc.
Program jest wolnym oprogramowaniem; można go redystrybuować i/lub
modyfikować zgodnie z warunkami licencji GPL (patrz plik
COPYING).