PO4A.1P(1) User Contributed Perl Documentation PO4A.1P(1) po4a -- PO po4a [] _ po4a (<> < >>) gettext. po4a . , po4a(7), . po4a , . PO (, ) , ( PO) . , PO , . , po4a. , , , po4a PO <<>> . , <<>>, , , , , . ---+---->-------->---------+ () | | V ( po4a) >-----+--> | | | PO -->-> PO >-+ | ^ | | | V | +----------<---------<-------+ ^ ( ) | | --->--------------------------------------+ po4a , , . . PO. po4a, , - PO . , , 80% . . , , . 80%, --keep, . , 100% , , <<>>, , . , , . PO, -. , -, weblate, , , . , foo, man/foo.1, ( , po4a - - ). , man/foo.de.1, . , , , , , , , . , , , . po4a, . , - , , , . : po4a . po4a-gettextize, . po4a-gettextize(1), , , de.po, , po4a. po4a-gettextize --format man --master foo.1 --localized foo.de.1 --po de.po po4a. , : [po_directory] man/po4a/ [type: man] man/foo.1 $lang:man/translated/foo.$lang.1 It specifies that all PO files (containing the work of the translators) are in the man/po4a/ directory, and that you have only one master file, man/foo.1. If you had several master files, you would have several lines similar to the second one. Each such line also specify where to write the corresponding translation files. Here, the German translation of man/foo.1 is in man/translated/foo.de.1. po4a POT, , , . .pot po_directory ( man/po4a/foo.pot), po4a . : man/ | foo.1 <- | po4a/ | | de.po <- PO | | foo.pot <- POT ( ) | translated/ <- , po4a.cfg <- po4a , POT, PO . : po4a --verbose po4a.cfg . po4a . man/foo.1 . , , , , . , PO , . , , foo.pot ja.po . , man/po4a/po/. ' man/translated/foo.ja.1 ( ), po4a. -k, --keep , , ( : 80). , , , 80%. -h, --help . -M, --master-charset , . , . -L, --localized-charset , . , . -A, --addendum-charset . , . -V, --version . -v, --verbose . -q, --quiet . -d, --debug . -o, --option , . . , <<-o tablecells>> AsciiDoc, <<-o tabs=split>>. -f, --force POT PO, po4a . ( --force) : POT , , POT ( --no-update). , POT , po4a , . , , , PO, . , (. --keep), .po4a-stamp (. --stamp). , --force, . PO POT msgmerge -U. --stamp po4a , , . .po4a-stamp. : .po4a-stamp. , , , --rm-translations . --no-translations , POT PO. --no-update POT PO, , , . --keep-translations , , --keep. , , . : po4a : , . , , . --rm-translations ( --no-translations). --no-backups 0.41, . --rm-backups 0.41, . --translate-only - . , . , PO POT. . --variable = , po4a. $() . . --srcdir __ , po4a. destdir srcdir, , : destdir, srcdir. destdir, , . --destdir _ , po4a (. --srcdir ). POT --porefs . never, ; file, ; counter, ; full, ( : full). --wrap-po no|newlines| ( : 76) po. , git, , , . , gettext po , 77- , . po4a. , po4a po . newlines, po4a msgid msgstr . no, po4a po . gettext, . , , msgid msgstr, , . --master-language , . , . --msgid-bugs-address @. msgid ( ). , POT Report- Msgid-Bugs-To. --copyright-holder POTr. <> --package-name POT. <>. --package-version POT. <>. PO --msgmerge-opt msgmerge(1). : $lang . --no-previous --previous , msgmerge. gettext 0.16. --previous --previous , msgmerge. , gettext 0.16 . . po4a . : o PO ; o ', , ; o , , . , . <<#>> . . . "t/cfg" . PO POT POT PO, : [po4a_paths] man/po/project.pot de:man/po/de.po fr:man/po/fr.po POT, PO . : [po4a_langs] fr de [po4a_paths] man/po/project.pot $lang:man/po/$lang.po $lang . . , . . [po_directory] man/po/ PO, XX.po, "XX" -- ISO 639-1. POT ".pot". , (po4a , ). , , "po_directory" "po4a_paths". ("po_directory") , , . ("po4a_paths") , , , , po4a. PO? , po4a PO . . . weblate ( msgid) , , , , , . PO , $master PO "[po4a_paths]", . [po4a_paths] doc/$master/$master.pot $lang:doc/$master/$lang.po , po4a POT PO , . , 3 5 , 3 POT 15 PO. "po4a_paths", $master , . , POT, , , , "pot = ". POT. 2 POT: l10n/po/foo.pot ( foo/gui.xml) l10n/po/bar.pot ( bar/gui.xml bar/cli.xml). [po4a_langs] de fr ja [po4a_paths] l10n/po/$master.pot $lang:l10n/po/$master.$lang.po [type: xml] foo/gui.xml $lang:foo/gui.$lang.xml pot=foo [type: xml] bar/gui.xml $lang:bar/gui.$lang.xml pot=bar [type: xml] bar/cli.xml $lang:bar/cli.$lang.xml pot=bar po4a PO, PO. PO , po4a PO, . PO, PO . , . , , , , ', . , . : [type: sgml] "doc/my stuff.sgml" "fr:doc/fr/mon truc.sgml" de:doc/de/mein\ kram.sgml [type: man] script fr:doc/fr/script.1 de:doc/de/script.1 [type: docbook] doc/script.xml fr:doc/fr/script.xml \ de:doc/de/script.xml , , , , . $lang : [type: sgml] doc/my_stuff.sgml $lang:doc/$lang/my_stuff.sgml [type: man] script.1 $lang:po/$lang/script.1 [type: docbook] doc/script.xml $lang:doc/$lang/script.xml : po4a po4a, . po4a, , --keep 50% 80%. , , Locale::Po4a::Xml(3pm). , , nostrip XML . "opt:" "opt_XX:" "XX". nostrip XML ( ), 0% ( , ). [type:xml] toto.xml $lang:toto.$lang.xml opt:"-o nostrip" opt_fr:"--keep 0" - , . , , (. ), . , . : [type:xml] toto.xml $lang:toto.$lang.xml opt:"--keep 20" opt:"-o nostrip" opt_fr:"--keep 0" [type:xml] toto.xml $lang:toto.$lang.xml opt:"--keep 20 -o nostrip" opt_fr:"--keep 0" [type:xml] toto.xml $lang:toto.$lang.xml opt:--keep opt:20 opt:-o opt:nostrip opt_fr:--keep opt_fr:0 , POT. , nostrip , POT . , , , , "--keep". , . , "--keep 0" "test", "man". [po4a_alias:test] man opt_it:"--keep 0" [type: test] man/page.1 $lang:man/$lang/page.1 . . [po4a_alias:man] man opt_it:"--keep 0" [type: man] man/page.1 $lang:man/$lang/page.1 "[options]" , , . [options] --keep 20 --option nostrip , , : [options] -k 20 -o nostrip . . : o "[options]" , - . o , . , . o , , , , . , , . o , , po4a - . , , : [po_directory] man/po/ [options] --master-charset UTF-8 [po4a_alias:man] man opt:"-o \"mdoc=NAME,SEE ALSO\"" [type:man] t-05-config/test02_man.1 $lang:tmp/test02_man.$lang.1 \ opt:"-k 75" opt_it:"-L UTF-8" opt_fr:--verbose : , , , , . , (man) po4a(7), . [type: pod] script fr:doc/fr/script.1 \ add_fr:doc/l10n/script.fr.add : [type: pod] script $lang:doc/$lang/script.1 \ add_$lang:doc/l10n/script.$lang.add , . , . -- , . ? __, , , . @ __ , , , . . ! __ , , - . , . , . [type: pod] script $lang:doc/$lang/script.1 add_$lang:?doc/l10n/script.$lang.add - : [type: pod] script $lang:doc/$lang/script.1 add_$lang:@doc/l10n/script.$lang.add , . "pot_in" , POT. : [type:docbook] book.xml \ pot_in:book-filtered.xml \ $lang:book.$lang.xml , book-filtered.xml ( po4a), book.xml. , , book.xml, book-filtered.xml PO, , . . , , , "--keep" . po4a-gettextize(1), po4a(7). Denis Barbier Nicolas Francois Martin Quinson (mquinson#debian.org) (C) SPI, inc., 2002-2023. ; / GPL 2.0 (. COPYING). perl v5.38.2 2024-04-28 PO4A.1P(1)