To polecenie po4ap, które można uruchomić w darmowym dostawcy hostingu OnWorks, korzystając z jednej z wielu naszych darmowych stacji roboczych online, takich jak Ubuntu Online, Fedora Online, emulator online systemu Windows lub emulator online systemu MAC OS
PROGRAM:
IMIĘ
po4a – aktualizuj pliki PO i przetłumaczone dokumenty za jednym razem
STRESZCZENIE
po4a [Opcje] plik_konfiguracyjny
OPIS
Celem projektu po4a (PO for any) jest ułatwienie tłumaczeń (i, co ciekawsze,
utrzymanie tłumaczeń) przy użyciu narzędzi gettext w obszarach, w których się ich nie spodziewano
jak dokumentacja.
po4a program jest przydatny jeśli chcesz uniknąć dzwonienia po4a-gettextize(1)
po4a-updatepo(1), a po4a-tłumacz(1) w złożonych plikach Makefile, gdy masz wiele plików
do przetłumaczenia, inny format lub konieczność określenia różnych opcji dla różnych
dokumentów.
Stół of zawartość
Niniejszy dokument jest zorganizowany w następujący sposób:
OPIS
WPROWADZENIE
KONFIGURACJA FILE SKŁADNIA
Określanie dotychczasowy szablon języki
Określanie dotychczasowy ścieżki do tłumacz Wejścia
Automatyczne wykrywanie of dotychczasowy ścieżki oraz języki
Określanie dotychczasowy dokumenty do tłumaczyć
Określanie Opcje dla dotychczasowy Moduły
Określanie aliasy
Split tryb
OPCJE
PRZYKŁAD
NIEDOCIĄGNIĘCIA
ZOBACZ TAKŻE
AUTORSKI
PRAWA AUTORSKIE ROLNICZE LICENCJA
WPROWADZENIE
po4a program odpowiada za aktualizację obu plików PO (aby zsynchronizować je z oryginałem)
dokumenty) i przetłumaczone dokumenty (aby je zsynchronizować z plikami PO). Najważniejsze jest to,
aby ułatwić korzystanie z po4a bez konieczności pamiętania opcji wiersza poleceń.
Umożliwia także łączenie dokumentów o różnych formatach w tym samym pliku POT, dzięki czemu
że możesz mieć tylko jeden taki plik na projekt.
To zachowanie można naśladować za pomocą innych narzędzi pakietu po4a (np.
Makefiles), ale jest to dość trudne i wyczerpujące, aby powtarzać te same skomplikowane
Pliki Makefile dla każdego projektu używającego po4a.
Przepływ danych można podsumować następująco. Wszelkie zmiany w dokumencie głównym zostaną
odzwierciedlone w plikach PO oraz wszelkie zmiany w plikach PO (zarówno ręczne, jak i spowodowane przez
poprzedni krok) zostaną uwzględnione w dokumentach tłumaczeniowych.
dokument główny --> pliki PO --> tłumaczenia
W tym narzędziu nie można odwrócić przepływu danych, a zmiany w tłumaczeniach są nadpisywane
przez zawartość plików PO. W rzeczywistości, to narzędzie nie może być użyte do konwersji
istniejących tłumaczeń do systemu po4a. W tym celu zapoznaj się z
po4a-gettextize(1).
KONFIGURACJA FILE SKŁADNIA
(Obowiązkowy) argument to ścieżka do pliku konfiguracyjnego, który ma zostać użyty. Jego składnia ma na celu
będąc prostym i zbliżonym do plików konfiguracyjnych używanych przez projekty intl-tools.
Komentarze w tym pliku są oznaczone znakiem '#'. Komentuje wszystko aż do końca
wiersz. Wiersze można kontynuować, uciekając z końca wiersza. Wszystkie niepuste wiersze muszą
zacznij od polecenia [], po którym następują jego argumenty. (brzmi to trudno, ale
Mam nadzieję, że to dość łatwe ;)
Określanie dotychczasowy szablon języki
Uwaga: Zaleca się używanie [katalog_po] zamiast [języki po4a] oraz [ścieżki_po4a].
Patrz sekcja Automatyczne wykrywanie of dotychczasowy ścieżki oraz języki poniżej.
Jest to opcjonalne polecenie, które może uprościć cały plik konfiguracyjny i uczynić go bardziej przejrzystym.
skalowalny. Musisz określić listę języków, na które chcesz przetłumaczyć
dokumenty. To jest tak proste jak:
[po4a_langs] fr de
Dzięki temu będziesz mógł się rozwijać Język do wszystkich określonych języków w pozostałej części
plik konfiguracyjny.
Określanie dotychczasowy ścieżki do tłumacz Wejścia
Uwaga: Zaleca się używanie [katalog_po] zamiast [języki po4a] oraz [ścieżki_po4a].
Patrz sekcja Automatyczne wykrywanie of dotychczasowy ścieżki oraz języki poniżej.
Najpierw musisz określić, gdzie znajdują się pliki wejściowe tłumacza (czyli pliki używane przez
tłumacze do wykonywania swojej pracy) są zlokalizowani. Można to zrobić za pomocą takiej linii:
[po4a_paths] doc/l10n/project.doc.pot
fr:doc/l10n/fr.po de:doc/l10n/de.po
Polecenie brzmi tak [ścieżki_po4a]Pierwszy argument to ścieżka do pliku POT, który ma zostać użyty.
Wszystkie kolejne argumenty mają oczywistą formę:
:
Jeśli zdefiniowałeś języki szablonów, możesz przepisać powyższy wiersz w następujący sposób:
[po4a_paths] doc/l10n/project.doc.pot $lang:doc/l10n/$lang.po
Można również użyć Mistrz aby odwołać się do nazwy pliku dokumentu. W tym przypadku, po4a użyje
tryb podziału: dla każdego dokumentu zostanie utworzony jeden POT i jeden PO (dla każdego języka)
określone w po4a plik konfiguracyjny. Zobacz Split tryb
[po4a_paths] doc/$master/$master.pot $lang:doc/$master/$lang.po
Automatyczne wykrywanie of dotychczasowy ścieżki oraz języki
Można użyć innego polecenia, aby określić nazwę katalogu, w którym znajdują się pliki PO i POT
znajdują się. Kiedy jest używany, po4a wykryje plik POT jako jedyny *.garnek plik z
podany katalog. po4a wykorzysta również listę *.po pliki do definiowania listy
języków (poprzez usunięcie rozszerzenia). Te języki będą używane do
zastąpienie Język zmienna w pozostałej części pliku konfiguracyjnego.
Tego polecenia nie należy używać łącznie z [języki po4a] or [ścieżki_po4a] Polecenia.
Podczas korzystania z tego polecenia należy utworzyć pusty plik POT przy pierwszym wywołaniu
po4a aby poznać nazwę pliku POT.
[katalog_po] po4a/po/
Określanie dotychczasowy dokumenty do tłumaczyć
Teraz musisz oczywiście określić, które dokumenty są tłumaczone, jaki jest ich format i gdzie
aby umieścić tłumaczenia. Można to zrobić za pomocą takich linii:
[type: sgml] doc/my_stuff.sgml fr:doc/fr/mon_truc.sgml
de:doc/de/mein_kram.sgml
[type: pod] script fr:doc/fr/script.1 de:doc/de/script.1
dodaj_fr:doc/l10n/script.fr.add
To również powinno być dość oczywiste. Zauważ, że w drugim przypadku,
doc/l10n/script.fr.add jest dodatkiem do francuskiej wersji tego dokumentu.
Sprawdź po4a(7) aby uzyskać więcej informacji na temat dodatków.
Bardziej formalnie format wygląda następująco:
[type: <format>] <master_doc> (<lang>:<localized_doc>)*
(dodać_ : * )*
Jeżeli nie ma modyfikatora, ścieżka_dodatku jest ścieżką do dodatku. Modyfikatory to
? Zawierać ścieżka_dodatku jeśli plik istnieje, w przeciwnym wypadku nie rób nic.
@ ścieżka_dodatku nie jest zwykłym dodatkiem, lecz plikiem zawierającym listę dodatków, po jednym
wiersz. Każdy dodatek może być poprzedzony modyfikatorami.
! ścieżka_dodatku jest odrzucany, nie jest ładowany i nie będzie ładowany w żadnym innym miejscu
specyfikacja dodatkowa.
Jeśli zdefiniowałeś języki szablonów, możesz przepisać powyższy wiersz w następujący sposób:
[type: pod] script $lang:doc/$lang/script.1
dodaj_fr:doc/l10n/script.fr.add
Gdyby wszystkie języki miały dodatki z podobnymi ścieżkami, można by też napisać coś takiego:
[type: pod] script $lang:doc/$lang/script.1
dodaj_$lang:doc/l10n/script.$lang.add
Określanie Opcje dla dotychczasowy Moduły
po4a akceptuje opcje, które zostaną przekazane do modułu. Opcje te są specyficzne dla modułu
i są określone za pomocą -o przełącznik.
Jeśli potrzebujesz konkretnej opcji dla jednego z dokumentów, które chcesz przetłumaczyć, możesz również
określ to w pliku konfiguracyjnym. Opcje są wprowadzane przez optować słowo kluczowe. ten
argument optować słowo kluczowe musi być ujęte w cudzysłów, jeżeli zawiera spację (np.
jeśli określisz wiele opcji lub opcję z argumentem). Możesz również określić
opcje, które będą miały zastosowanie tylko w określonym języku, korzystając z optować_lang słowo kluczowe.
Oto przykład:
[type:man] data-05/test2_man.1 $lang:tmp/test2_man.$lang.1
opcja:"-k 75" opcja_w:"-L UTF-8" opcja_w_fr:-v
Argumenty mogą zawierać spacje, jeśli używasz pojedynczych cudzysłowów lub ukrytych cudzysłowów podwójnych:
[po4a_alias:man] man opt:"-o \"mdoc=NAZWA,ZOBACZ TAKŻE\" -k 20"
Jeśli chcesz określić te same opcje dla wielu dokumentów, możesz użyć aliasu
(Patrz Określanie aliasy sekcji poniżej).
Można również ustawić opcje dla wszystkich dokumentów określonych w pliku konfiguracyjnym:
[opcje] opt:"..." opt_fr:"..."
Określanie aliasy
Jeśli musisz określić te same opcje dla wielu plików, możesz chcieć je zdefiniować
alias modułu. Można to zrobić w ten sposób:
[po4a_alias:test] man opt:"-k 21" opt_es:"-o debug=splitargs"
Definiuje alias modułu o nazwie test, na podstawie mężczyzna moduł, z -k 21 dotyczyło
wszystkie języki i z -o debugowanie=podziel zastosowano do tłumaczenia hiszpańskiego.
Tego aliasu modułu można używać jak zwykłego modułu:
[type:test] data-05/test2_man.1 $lang:tmp/test2_man.$lang.1
opt_it:"-L UTF-8" opt_fr:-v
Należy pamiętać, że można określić dodatkowe opcje dla każdego pliku z osobna.
Split tryb
Tryb podziału jest używany, gdy Mistrz jest używany w [ścieżki_po4a] Linia.
Gdy używany jest tryb podziału, używany jest tymczasowy duży POT i tymczasowe duże PO.
umożliwia współdzielenie tłumaczeń pomiędzy wszystkimi PO.
Jeżeli dwa PO mają różne tłumaczenia tego samego ciągu, po4a oznaczy ten ciąg jako
rozmyte i prześle oba tłumaczenia we wszystkich PO, które zawierają ten ciąg. Następnie,
gdy tłumacz aktualizuje tłumaczenie i usuwa niejasny znacznik w jednym z PO,
Tłumaczenie tego ciągu będzie automatycznie aktualizowane w każdym zamówieniu.
Jeżeli występują konflikty nazw, ponieważ kilka plików ma taką samą nazwę, nazwa pliku
plik główny można określić, dodając „master:file="Nazwa opcja:
[po4a_langs] de fr ja
[po4a_paths] l10n/po/$master.pot $lang:l10n/po/$master.$lang.po
[typ: xml] foo/gui.xml $lang:foo/gui.$lang.xml master:file=foo-gui
[typ: xml] bar/gui.xml $lang:bar/gui.$lang.xml master:file=bar-gui
OPCJE
-k, --trzymać
Minimalny próg procentu tłumaczenia, aby zachować (tzn. zapisać) plik wynikowy
(domyślnie: 80). Oznacza to, że domyślnie pliki muszą zostać przetłumaczone w co najmniej 80%, aby je otrzymać
napisany.
-h, --help
Pokaż krótką wiadomość pomocy.
-M, --master-charset
Zestaw znaków plików zawierających dokumenty do przetłumaczenia. Należy zauważyć, że wszystkie główne
dokumenty muszą na razie używać tego samego zestawu znaków. Jest to znane ograniczenie i jesteśmy
Pracujemy nad rozwiązaniem tego problemu.
-L, --zlokalizowany zestaw znaków
Zestaw znaków plików zawierających zlokalizowane dokumenty. Należy zauważyć, że wszystkie przetłumaczone
dokumenty będą na razie używać tego samego zestawu znaków. Jest to znane ograniczenie i jesteśmy
Pracujemy nad rozwiązaniem tego problemu.
-A, --dodatek-zestaw znaków
Zestaw znaków dodatków. Pamiętaj, że wszystkie dodatki powinny znajdować się w tym samym zestawie znaków.
-V, --wersja
Wyświetl wersję skryptu i wyjdź.
-v, --gadatliwy
Zwiększ szczegółowość programu.
-q, --cichy
Zmniejsz ilość informacji w programie.
-d, --odpluskwić
Wyprowadź niektóre informacje debugowania.
-o, --opcja
Dodatkowe opcje do przekazania do wtyczki formatu. Określ każdą opcję w polu „Nazwa=wartość'
format. Zobacz dokumentację każdej wtyczki, aby uzyskać więcej informacji na temat valid
Opcje i ich znaczenie.
-f, --siła
Zawsze generuj pliki POT i PO, nawet jeśli po4a uważa, że nie jest to konieczne.
Domyślne zachowanie (gdy --siła nie jest określony) jest następujący:
Jeżeli plik POT już istnieje, zostanie on wygenerowany ponownie, jeżeli dokument główny lub
plik konfiguracyjny jest nowszy. Plik POT jest również zapisywany w tymczasowym
dokument i po4a sprawdza, czy zmiany są rzeczywiście potrzebne.
Tłumaczenie jest generowane ponownie tylko wtedy, gdy jego dokument główny, plik PO,
jego dodatków lub plik konfiguracyjny jest nowszy. Aby uniknąć próby
regenerować tłumaczenia, które nie przejdą testu progowego (patrz --trzymać), plik
z .po4a-znaczek można utworzyć rozszerzenie (zobacz --pieczęć).
Jeżeli dokument główny zawiera pliki, należy użyć --siła flaga, ponieważ
czas modyfikacji dołączonych plików nie jest brany pod uwagę.
Pliki PO są zawsze generowane ponownie na podstawie pliku POT z msgmerge -U.
--pieczęć
mówi po4a aby utworzyć pliki znaczków, gdy tłumaczenie nie jest generowane, ponieważ tak nie jest
nie osiągnąć progu. Te pliki znaczków są nazwane zgodnie z oczekiwanym
przetłumaczony dokument, z .po4a-znaczek rozbudowa.
Uwaga: Ta opcja aktywuje tylko tworzenie .po4a-znaczek pliki. Pliki znaczków są
zawsze używane, jeśli istnieją i są usuwane --rm-tłumaczenia lub kiedy
plik został ostatecznie przetłumaczony.
--bez-tłumaczeń
Nie generuj przetłumaczonych dokumentów, zaktualizuj jedynie pliki POT i PO.
--rm-tłumaczenia
Usuń przetłumaczone pliki (oznacza to --bez-tłumaczeń).
--brak kopii zapasowych
Ta flaga nie robi nic od wersji 0.41 i może zostać usunięta w późniejszych wersjach.
--rm-kopie zapasowe
Ta flaga nie robi nic od wersji 0.41 i może zostać usunięta w późniejszych wersjach.
--tylko-tłumacz przetłumaczony plik
Przetłumacz tylko określony plik. Może to być przydatne do przyspieszenia przetwarzania, jeśli
plik konfiguracyjny zawiera wiele plików. Należy zauważyć, że ta opcja nie aktualizuje PO
i pliki POT. Ta opcja może być używana wielokrotnie.
--zmienny było=wartość
Zdefiniuj zmienną, która zostanie rozwinięta w po4a plik konfiguracyjny. Każdy
występowanie $(zmienna) zostanie zastąpiony przez wartość. Opcję tę można stosować wielokrotnie
razy.
--srcdir SRCDIR
Ustaw katalog bazowy dla wszystkich dokumentów wejściowych określonych w po4a konfiguracja
plik.
--katalog docelowy ZNISZCZYĆ
Ustaw katalog bazowy dla wszystkich dokumentów wyjściowych określonych w po4a
plik konfiguracyjny.
OPCJE KTÓRY MODYFIKOWAĆ POT ZŁĄCZE
--pory rodzaj[,owinąć|teraz rapuj]
Określ format odniesienia. Argument rodzaj może być jednym z Żaden żeby nic nie produkować
odniesienie, nolina aby nie podawać numeru linii (dokładniej wszystkie numery linii to
zastąpiony przez 1), licznik zastąpić numer linii rosnącym licznikiem, oraz pełny do
zawierać pełne referencje.
Po argumencie może nastąpić przecinek i jedno i drugie owinąć or teraz rapuj słowo kluczowe. Referencje są
domyślnie zapisywane w jednej linii. The owinąć opcja zawija odniesienia do kilku
linie, naśladować gettext narzędzia (xgettekst oraz msgmerge). Ta opcja stanie się
domyślnie w przyszłej wersji, ponieważ jest to rozsądniejsze. The teraz rapuj Jest opcja
dostępne, aby użytkownicy chcący zachować stare zachowanie mogli to zrobić.
--msgid-bugs-adres adres e-mail
Ustaw adres raportu o błędach msgid. Domyślnie utworzone pliki POT nie mają
Pola Report-Msgid-Bugs-To.
--właściciel praw autorskich ciąg
Ustaw właściciela praw autorskich w nagłówku POT. Wartość domyślna to „Bezpłatne oprogramowanie
Fundacja spółka z ograniczoną odpowiedzialnością.”
--nazwa-pakietu ciąg
Ustaw nazwę pakietu dla nagłówka POT. Wartość domyślna to „PAKIET”.
--wersja-pakietu ciąg
Ustaw wersję pakietu dla nagłówka POT. Wartość domyślna to „WERSJA”.
OPCJE DO MODYFIKOWAĆ PO AKTA
--msgmerge-opc Opcje
Dodatkowe opcje dla msgmerge(1).
Uwaga: Język zostanie rozszerzony na obecny język.
--nie-poprzednie
Ta opcja usuwa --Poprzedni z opcji przekazanych do msgmerge. To pozwala
wersje wsparcia gettext wcześniej niż 0.16.
--Poprzedni
Ta opcja dodaje --Poprzedni do przekazanych opcji msgmerge. To wymaga gettext
0.16 lub nowsza i jest domyślnie aktywowana.
PRZYKŁAD
Załóżmy, że utrzymujesz program o nazwie bla który ma stronę podręcznika człowiek/foo.1 który
naturalnie jest utrzymywany tylko w języku angielskim. Teraz ty jako upstream lub downstream maintainer
chcesz utworzyć i utrzymać tłumaczenie. Najpierw musisz utworzyć plik POT
konieczne do wysłania do tłumaczy za pomocą po4a-gettextize(1).
Więc w naszym przypadku nazwalibyśmy to
cd man && po4a-gettextize -f man -m foo.1 -p foo.pot
Następnie możesz wysłać ten plik na odpowiednie listy językowe lub udostępnić go do pobrania
gdzieś na Twojej stronie internetowej.
Załóżmy teraz, że otrzymałeś trzy tłumaczenia przed kolejną publikacją: de.po
(wraz z dodatkiem de.add), sv.po oraz cz.poPonieważ nie chcesz zmieniać swojego
Makefile(s) zawsze, gdy pojawi się nowe tłumaczenie, możesz z niego skorzystać po4a z odpowiednim
plik konfiguracyjny w twoim Makefile. Nazwijmy to po4a.cfgW naszym przykładzie wyglądałoby to
jak poniżej:
[katalog_po] man/po4a/po/
[type: man] man/foo.1 $lang:man/translated/$lang/foo.1
dodaj_$lang:?man/po4a/add_$lang/$lang.add opt:"-k 80"
W tym przykładzie zakładamy, że wygenerowane przez Ciebie strony podręcznika (oraz wszystkie pliki PO i dodatki)
powinien być przechowywany w człowiek/przetłumaczony/$lang/ (odpowiednio w człowiek/po4a/po/ oraz
man/po4a/add_$lang/) poniżej bieżącego katalogu. W naszym przykładzie człowiek/po4a/po/
katalog będzie zawierał de.po, cz.po oraz sv.poi człowiek/po4a/add_de/ katalog by
zawierać de.add.
Zwróć uwagę na użycie modyfikatora ? ponieważ tylko tłumaczenie niemieckie (de.po) towarzyszy
Uzupełnienie.
Aby faktycznie zbudować przetłumaczone strony podręcznika, należy (raz!) dodać następujący wiersz
budować cel właściwy Makefile:
po4a po4a.cfg
Po skonfigurowaniu nie musisz już niczego dotykać Makefile kiedy pojawi się nowe tłumaczenie,
tzn. jeśli francuska drużyna cię wyśle fr.po oraz fr.dodaj następnie po prostu je odpowiednio upuść
in człowiek/po4a/po/ oraz człowiek/po4a/add_fr/ a następnym razem, gdy program będzie budowany po francusku
tłumaczenie jest również automatycznie wbudowywane mężczyzna/przetłumaczone/fr/.
Należy pamiętać, że nadal potrzebny jest odpowiedni cel do instalacji zlokalizowanych stron podręcznika.
Angielskie.
Wreszcie, jeśli nie zapiszesz wygenerowanych plików w swoim systemie kontroli wersji,
potrzebuję linii w twoim kleń cel również:
-rm -rf man/przetłumaczony
NIEDOCIĄGNIĘCIA
· Duplikuje część kodu z po4a-* programy.
Łatka mile widziana ;)
Użyj po4ap online korzystając z usług onworks.net