
        *****************************************************
        *           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 ИМЕ

po4a - у једном кораку ажурира и PO фајлове и преведене документе

=head1 СИНОПСИС

B<po4a> [I<опције>] I<конфиг_фајл>

=head1 ОПИС

po4a (PO for anything [PO за било шта]) олакшава одржавање превода докумената употребом класичних gettext алата. Главна особина po4a је да раскида везу између садржаја превода и структуре његовог документа. Молимо да погледате страницу L<po4a(7)> у којој је изложен прости увод у овај пројекат.

Када по први пут покренете програм B<po4a>, само са конфигурационим фајлом и документима који треба да се преведу (такозваним мастер документима), он ће креирати POT фајл (који се такође зове и шаблон превода) који садржи све преводиве стрингове у документу дате у облику који преводиоцима олакшава рад.

Ови POT фајлови могу или да се преведу одређеним едитором као што је B<GNOME Translation Editor>, KDE-ов B<Lokalize> или B<poedit>, или могу да се интегришу у платформу за локализацију на мрежи као што су B<weblate> или B<pootle>. Резултат превода је скуп PO фајлова, по један за сваки језик.

Када програм B<po4a> покренете заједно са мастер документима и са PO фајловима, он креира преведене документе уметањем превода садржаја (који се проналази у PO фајловима) у структуру оригиналног мастер документа.

Ако су се у међувремену мастер документи изменили, po4a ће сагласно са тим да измени PO и POT фајлове, тако да преводиоци једноставно могу да открију измене и ажурирају свој рад. У зависности од ваших подешавања po4a ће или да одбаци делимично преведене документе, или ће да направи документ мешајући енглески (за нове или измењене пасусе) и циљни језик (за пасусе за које у PO фајлу већ постоји превод).

Подразумевано се преведени документи израђују онда када је барем 80% њиховог садржаја преведено (погледајте опцију I<--keep> испод). Одбацивање превода чим проценат преведених стрингова није 100% може да буде обесхрабрујуће за преводиоце, док приказивање „превода” који је далеко од завршеног може да представља проблем за крајње кориснике.

=head2 Графички преглед



 мастер документи ------+-------->-------->---------+
  (писање док)          |                           |
                        V       (po4a извршавања)   >-----+--> преводи
                        |                           |     |
 постојећи PO фајлови -->--> ажурирани PO фајлови >-+     |
      ^                                 |                 |
      |                                 V                 |
      +----------<---------<------------+                 ^
          (ручни процес превођења)                        |
                                                          |
 додатак -->----------------------------------------------+

Мастер документе креирају писци документације. Програм po4a било какве измене у њима аутоматски рефлектује у PO фајлове, које преводиоци затим ажурирају. Све измене у PO фајловима (било ручне, било оне које направи po4a), аутоматски се рефлектују у преведена документа. Овај процес можете да опонашате употребом L<po4a-updatepo(1)> и L<po4a-translate(1)> скрипти у makefiles, али то брзо постаје незграпно и понављајуће (погледајте L<po4a(7)>). Стога се топло препоручује да у свом процесу изградње користите програм B<po4a>.

=head1 ОПЦИЈЕ

=over 4

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

Најмањи ниво преведености који је потребан да се резултујући фајл задржи (тј. запише) (подразумевано: 80). То значи да је подразумевано потребно да барем 80% неког фајла буде преведено како би се његов превод записао на диск.

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

Приказује кратку поруку помоћи.

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

Скуп карактера којим су записани фајлови који садрже документе за превод. Имајте на уму да сви мастер документи морају да користе исти скуп карактера.

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

Скуп карактера који користе фајлови локализованих докумената. Имајте на уму да ће сви преведени документи користити исти скуп карактера.

=item B<-A>, B<--addendum-charset>

Скуп карактера додатка. Имајте на уму да би сви додаци требало да буду записани употребом истог скупа карактера.

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

Приказује верзију скрипте и завршава извршавање.

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

Увећава детаљност извештавања програма.

=item B<-q>, B<--quiet>

Умањује детаљност извештавања програма.

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

Исписује неке информације битне за отклањање грешака.

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

Додатна опција (или више њих) које се прослеђују додатку формата. Погледајте документацију сваког од додатака да сазнате више информација о важећим опцијама и њиховом значењу. На пример, AsciiDoc парсеру бисте могли да проследите '-o tablecells', док би текст парсер прихватио '-o tabs=split'.

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

POT и PO фајлови се увек генеришу, чак и у случају када B<po4a> сматра да то није неопходно.

Подразумевано понашање (када није наведено B<--force>) је као што следи:

=over 

У случају да POT фајл већ постоји, он се регенерише из мастер документа или ако је конфигурациони фајл новији (само ако није наведено B<--no-update>). POT фајл се такође уписује у привремени документ и B<po4a> проверава да ли су измене заиста неопходне.

Такође, превод се регенерише само у случају када је његов мастер документ, PO фајл, један од његових додатака или конфигурациони фајл новији. Како би се спречио покушај регенерације превода који не пролазе тест потребног минималног процента завршетка (погледајте B<--keep>), може да се креира фајл са F<.po4a-stamp> екстензијом (погледајте B<--stamp>).

=back

У случају да мастер документ укључује фајлове, требало би да користите заставицу B<--force> јер се време модификације ових фајлова не узима обзир.

PO фајлови се увек регенеришу сагласно POT фајлу са B<msgmerge -U>.

=item B<--stamp>

Наводи B<po4a> да креира печат фајлове у случају да се превод не генерише јер проценат завршености није прешао задату границу. Ови печат фајлови се именују сагласно са очекиваним преведеним документом, и имају F<.po4a-stamp> екстензију.

Напомена: ово само активира креирање F<.po4a-stamp> фајлова. Печат фајлови се увек користе ако постоје, и могу да се обришу помоћу B<--rm-translations> или када се фајл комплетно преведе.

=item B<--no-translations>

Не генеришу се преведени документи, само се ажурирају POT и PO фајлови.

=item B<--no-update>

POT и PO фајлови се не мењају, могуће је само да се ажурира превод.

=item B<--keep-translations>

Задржава постојеће фајлове превода чак и у случају када превод не задовољава критеријум задат са B<--keep>. Ова опција не креира нове фајлове превода са мало садржаја, али ће да сачува постојеће преводе који постају застарели услед измена над мастер фајловима.

УПОЗОРЕЊЕ: ова заставица на прилично драстичан начин мења понашање програма po4a: ваши преведени фајлови се уопште неће ажурирати све док се превод не побољша. Користите ову заставицу само у случају да вам више одговара да достављате застарели превод документације него да достављате прецизну али непреведену документацију.

=item B<--rm-translations>

Уклања преведене фајлове (имплицира B<--no-translations>).

=item B<--no-backups>

Ова заставица нема никакву функцију почевши од верзије 0.41, и може бити уклоњена у наредним издањима програма.

=item B<--rm-backups>

Ова заставица нема никакву функцију почевши од верзије 0.41, и може бити уклоњена у наредним издањима програма.

=item B<--translate-only> I<преведени-фајл>

Преводи само наведени фајл. Може да буде корисно за убрзавање обраде у случају када конфигурациони фајл садржи доста фајлова. Имајте на уму да ова опција не ажурира PO и POT фајлове. Ова опција може да се употреби више пута.

=item B<--variable> I<пром>B<=>I<вредност>

Дефинише променљиву која ће да се развије у B<po4a> конфигурационом фајлу. Свако појављивање I<$(пром)> ће да се замени са I<вредност>. Ова опција може да се користи више пута.

=item B<--srcdir> I<ИЗВОРНИДИР>

Поставља базни директоријум за све улазне документе наведене у B<po4a> конфигурационом фајлу.

Ако су наведени и I<циљнидир> и I<изворнидир>, улазни фајлови се траже у следећим директоријумима, према редоследу: I<циљнидир>, текући директоријум и I<изворнидир>. Излазни фајлови се записују у I<циљнидир> ако је наведен, или у текући директоријум.

=item B<--destdir> I<ЦИЉНИДИР>

Поставља базни директоријум за све излазне документе наведене у B<po4a> конфигурационом фајлу (погледајте B<--srcdir> изнад).

=back

=head2 Опције које мењају POT заглавље

=over 4

=item B<--porefs> I<тип>

Наводи форамт референци. Аргумент I<тип> може да буде једно од: B<never> да се не креирају никакве референце, B<file> да се наведе само фајл без броја линије, B<counter> да се број линије замени растућим бројачем, и B<full> да се креирају комплетне референце (подразумевано: full).

=item B<--wrap-po> B<no>|B<newlines>|I<број> (подразумевано: 76)

Наводи како би po фајл требало да се обавија. Овим вам се даје избор између фајлова који су лепо обавијени али би могли да доведу до git конфликата, или фајлова који се лакше обрађују аутоматски, али су компликованији за читање.

Раније је gettext свита програма реформатирала po фајлове на 77ој колони ради лепшег изгледа. Ова опција одрешује понашање програма po4a. Ако се постави на нумеричку вредност, po4a ће да обавије po након колоне под тим бројем и након прелома линија у садржају. Ако се постави на B<newlines>, po4a ће само да раздели msgid и msgstr након прелома линија у садржају. Ако се постави на B<no>, po4a уопште неће да обавија po фајл. gettext алати које интерно користимо увек обавијају референтне коментаре.

Имајте на уму да ова опција не утиче на то како се msgid и msgstr обавијају, тј. на то како се додају преломи линија у садржај ових стрингова.

=item B<--master-language>

Језик изворних фајлова који садрже документе који се преводе. Водите рачуна да сви мастер документи морају да буду написани истим језиком.

=item B<--msgid-bugs-address> I<имејл@адреса>

Поставља адресу за пријаву msgid багова. Подразумевано, креирани POT немају Report-Msgid-Bugs-To поља.

=item B<--copyright-holder> I<стринг>

Поставља власника права умножавања у POT заглавље. Подразумевана вредност је "Free Software Foundation, Inc."

=item B<--package-name> I<стринг>

Поставља име пакета у POT заглавље. Подразумевано је "PACKAGE".

=item B<--package-version> I<стринг>

Поставља верзију пакета у POT заглавље. Подразумевано је "VERSION".

=back

=head2 Опције за измену PO фајлова

=over 4

=item B<--msgmerge-opt> I<опције>

Додатне опције за B<msgmerge>(1).

Напомена: B<$lang> ће да се развије у текући језик.

=item B<--no-previous>

Ова опција уклања B<--previous> из опција које се прослеђују програму B<msgmerge>. Тиме се дозвољава подршка за верзије програма B<gettext> старије од 0.16.

=item B<--previous>

Ова опција додаје B<--previous> опцијама које се прослеђују програму B<msgmerge>. Захтева да је верзија програма B<gettext> 0.16 или каснија, и подразумевано је активирана.

=back

=head1 КОНФИГУРАЦИОНИ ФАЈЛ

Програм po4a очекује конфигурациони фајл као свој аргумент. Овај фајл мора да садржи следеће елементе:

=over 

=item 

Путању до PO фајлова и листу језика који постоје у пројекту;

=item 

Необавезно, неке глобалне опције и такозване конфигурационе алијасе који се користе као шаблони за конфигурисање појединачних мастер фајлова;

=item 

Листу сваког од мастер фајлова који се преводи, заједно са специфичним параметрима.

=back

Све линије садрже команду унутар великих заграда, иза које следе њени параметри. Коментари почињу карактером '#' и протежу се до краја линије. Можете да означите крај линије како бисте развукли команду на неколико линија.

На овој страници су приказани неки комплетни примери, док остале можете да пронађете у C<t/cfg> директоријуму дистрибуције изворног кода.

=head2 Проналажење 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

C<$lang> компонента се аутоматски развија помоћу наведене листе језика, чиме се смањује ризик грешке при копирању/налепљивању онда када се додаје нови језик.

Исте информације можете додатно да скратити навођењем само путање директоријума који садржи ваш пројекат превода, као што следи.

 [po_directory] man/po/

Наведени директоријум мора да садржи скуп PO фајлова, сваки назван F<XX.po> где је C<XX> ISO 639-1 језика који се користи у том фајлу. Директоријум такође мора да садржи један POT фајл, са C<.pot> екстензијом фајла. Приликом првог покретања овај фајл може да буде празан, али мора да постоји (po4a не може да погоди име које треба да користи испред екстензије).

Имајте на уму да морате изабрати само једно од C<po_directory> и C<po4a_paths>. Прво (C<po_directory>) је компактније, додатно умањује ризик грешака приликом копирања/убацивања, али вас приморава да користите очекивану структуру пројекта, као и имена фајлова. Друго (C<po4a_paths>), је експлициније, вероватно и читљивије, и пожељно да се користи када подешавате свој први пројекат са po4a.

=head3 Централизовани или подељени PO фајлови?

Програм po4a подразумевано креира један јединствени PO фајл за сваки циљни језик, који садржи комплетан садржај вашег пројекта превода. Како ваш пројекат расте, величина ових фајлова може да постане проблематична. Када се користи веблејт, могуће је да се наведу приоритети за сваки сегмент превода (тј. msgid) тако да се прво преведу они битнији. Ипак, неки преводилачки тимови радије деле садржај на неколико фајлова.

Ако желите да имате један PO фајл за сваки мастер фајл, потребно је само да користите стринг C<$master> у имену ваших PO фајлова у C<[po4a_paths]> линији, као што следи.

 [po4a_paths] doc/$master/$master.pot $lang:doc/$master/$lang.po

Овом линијом ће po4a да произведе одвојене POT и PO фајлове за сваки документ који се преводи. На пример, ако имате 3 документа и 5 језика, добићете 3 POT фајлова и 15 PO фајлова. Они добијају име наведено C<po4a_paths> шаблоном, у којем се C<$master> замењује са базним именом сваког документа који се преводи. У случају да дође до конфликта, на следећи начин можете навести POT фајл који треба да се користи, параметром C<pot=>. Ова могућност такође може да се користи за груписање неколико преведених фајлова у исти POT фајл.

 [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-gui
 [type: xml] bar/gui.xml $lang:bar/gui.$lang.xml pot=bar
 [type: xml] bar/cli.xml $lang:bar/cli.$lang.xml pot=bar

У подељеном режиму, програм B<po4a> креира привремени компендијум током ажурирања PO фајлова, како би се делили преводи из свих PO фајлова. Ако два PO files фајла имају различите преводе за исти стринг, програм B<po4a> ће да означи стринг као fuzzy и поставиће оба превода у све PO фајлове који садрже тај стринг. Када преводилац уклони fuzzy ознаку и изабере један од превода, тај превод се аутоматски користи у сваком PO фајлу.

=head2 Навођење фокумената за превођење

Такође морате да наведете листу докумената који треба да се преведу. За сваки мастер фајл морате да наведете који парсер формата ће да се користи, локацију произведеног преведеног документа, и необавезно, нека подешавања. Ево примера:

 [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

Али опет, читање и измена ових компликованих линија није једноставна, нпр. када се додаје нови језик. Много је једноставније да се ствари реорганизују употребом C<$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

=head2 Навођење опција

Постоје два типа опција: I<po4a опције> су подразумеване вредности за опције командне линије програма po4a док се I<формат опције> користе за промену понашања парсера формата. Као I<po4a опције> бисте могли на пример да у свом конфигурационом фајлу наведете да је подразумевана вредност параметра командне линије B<--keep> 50% уместо 80%. I<Формат опције> су документоване на одређеној страници сваког модула за парсирање, нпр. L<Locale::Po4a::Xml(3pm)>. На пример, могли бисте да XML парсеру проследите B<nostrip> како не би уклонио размаке око стрингова које пронађе.

Ове опције можете да проследите одређеном мастер фајлу, или чак одређеном преводу тог фајла употребом C<opt:> и C<opt_XX:> за језик C<XX>. У наредном примеру, опција B<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 фајл. Тако је, на пример, немогуће да се B<nostrip> проследи парсеру само када се изграђује француски превод, јер се исти POT фајл користи за ажурирање сваког језика. Дакле, једине опције које могу да буду специфичне за језик су оне које се користе када се прави превод, као што је опција C<--keep>.

=head3 Конфигурациони алијаси

Када желите да се исте опције проследе већем броју фајлова, најбоље је да дефинишете алијас типа, на начин како је објашњено у наставку. У следећем примеру, C<--keep 0> се прослеђује сваком италијанском преводу употребом типа C<test>, који је проширење типа C<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

=head3 Глобалне подразумеване опције

C<[options]> линије можете такође да употребите за дефинисање опција које морају да се користе за све фајлове, без обзира на њихов тип.

  [options] --keep 20 --option nostrip

Као и са опцијама командне линије, и у конфигурационом фајлу можете да скратите параметре који се прослеђују:

  [options] -k 20 -o nostrip

=head3 Приоритет опција

Опције свих извора се спајају, чиме се једноставно обезбеђује да детаљније опције могу преиначити подразумеване вредности. Редослед је као што следи:

=over 

=item 

C<[options]> линије постављају подразумеване вредности које било који други извор може да преиначи.

=item 

Затиме се користе алијаси типа. Подешавања за одређени језик преиначују подешавања која се примењују за све језике.

=item 

Подешавања која су посебна за дати мастер фајл преиначују и подразумевана и она која долазе од алијаса типа. И у овом случају такође, подешавања специфична за језик преиначују глобална подешавања.

=item 

Коначно, параметри који се задају у командној линији програма B<po4a> преиначују било која подешавања из конфигурационог фајла.

=back

=head3 Пример

Ево примера који показује на који начин се обележавају размаци и знаци навода:

 [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

=head2 Додатак: додавање допунског садржаја у превод

Ако желите да превод допуните додатним одељком, не пример, да изјавите захвалност преводиоцу, онда морате да дефинишете додатак линији која дефинише ваш мастер фајл. Молимо вас да погледате страницу L<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

У случају да додатак не може да се примени превод се одбацује.

=head3 Модификатори за декларацију додатка

Модификатори додатка могу да поједноставе конфигурациони фајл у случају када сви језици не нуде додатак, или када се листа додатака мења од језика до језика. Модификатор је један карактер који се налази испред имена фајла.

=over 2

=item B<?>

Укљчује I<addendum_path> у случају да овај фајл постоји, у супротном не ради ништа.

=item B<@>

I<addendum_path> није регуларан додатак већ фајл који садржи листу додатака, по један у свакој линији. Испред сваког додатка могу да се наведу модифкатори.

=item B<!>

I<addendum_path> се одбацује, не учитава се и ниједна каснија спецификација додатка га неће учитати.

=back

Оно што следи укључује додатак у било који језик, али само у случају да постоји. Ако додатак не постоји, не пријављује се грешка.

 [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

=head2 Филтрирање преведених стрингова

Понекад неке стрингове желите да сакријете од процеса превођења. У том циљу, вашем мастер фајлу можете да додате параметар C<pot_in> када се изграђује POT file. Ево примера:

  [type:docbook] book.xml          \
          pot_in:book-filtered.xml \
          $lang:book.$lang.xml

Са овим подешавањем, стрингови који треба да се преведу биће извучени из F<book-filtered.xml> (који мора да се креира пре позивања програма B<po4a>) док ће преведени фајлови да се изграде из F<book.xml>. Као резултат, било који стринг који је део F<book.xml> али се не налази у F<book-filtered.xml> неће постати део PO фајлова, чиме се преводиоци спречавају да их преведу. Тако да ће ови стрингови остати неизмењени када се буде креирали преведени документи. Наравно да ово смањује ниво преведености, тако да ће вам вероватно бити потребна опција C<--keep> како би обезбедили да се документи ипак креирају.

=head2 ПРИМЕР КОНФИГУРАЦИЈЕ

ДАЉИРАД: Да ли је овај одељак заиста користан?

Претпоставимо да одржавате програм под именом B<foo> који има man страницу F<man/foo.1> која се природно одржава само на енглеском језику. Сада ви као узводни или низводни одржавалац желите да креирате и одржавате превод. Најпре програмом L<po4a-gettextize(1)> морате да креирате POT фајл који обавезно мора да се пошаље преводиоцима.

Тако да бисмо у нашем случају позвали

 cd man && po4a-gettextize -f man -m foo.1 -p foo.pot

Затим бисте овај фајл послали одговарајућим језичким листама или га понудили за преузимање негде на свом вебсајту.

Претпоставимо сада да сте пре следећег издања програма примили три превода: F<de.po> (заједно са додатком F<de.add>), F<sv.po> и F<pt.po>. Пошто не желите да мењате свој F<Makefile> (или више њих) сваки пут када вам стигне нови превод, можете да у свом F<Makefile> искористите програм B<po4a> са погодним конфигурационим фајлом. Назовимо га F<po4a.cfg>. У нашем примеру би то изгледало овако:

 [po_directory] man/po4a/po/

 [type: man] man/foo.1 $lang:man/translated/$lang/foo.1 \
            add_$lang:?man/po4a/add_$lang/$lang.add opt:"-k 80"

У овом примеру се претпоставља да би све ваше генерисане man странице (и сви PO и фајлови додатака) требало да се чувају у F<man/translated/$lang/> (респективно у F<man/po4a/po/> и F<man/po4a/add_$lang/>) под текућим директоријумом. У нашем примеру би директоријум F<man/po4a/po/> укључивао F<de.po>, F<pt.po> и F<sv.po>, а директоријум F<man/po4a/add_de/> би укључивао F<de.add>.

Приметите употребу модификатора B<?> јер додатак долази само уз немачки превод (F<de.po>).

Да бисте заиста изградили преведене man странице тада бисте (једном!) додали следећу линију у B<build> циљ одговарајућег F<Makefile>:

        po4a po4a.cfg

Једном када је ово постављено више не морате да дирате F<Makefile> када стигне нови превод, нпр. ако вам француски тим пошаље F<fr.po> и F<fr.add> ви их једноставно сместите у F<man/po4a/po/> и F<man/po4a/add_fr/> респективно, па када се програм следећи пут изгради, аутоматски ће да се изгради и француски превод и смести у F<man/translated/fr/>.

Имајте на уму да вам је и даље потребан одговарајући циљ да инсталирате локализоване странице приручника, заједно са енглеским.

Коначно, ако не сместите генерисане фајлове у ваш систем за контролу верзија,
биће вам потребна и линија у вашем B<clean> циљу:
        -rm -rf man/translated

=head1 ПОГЛЕДАЈТЕ ТАКОЂЕ

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

=head1 АУТОРИ

 Дени Барбије <barbier@linuxfr.org>
 Никола Франсоа <nicolas.francois@centraliens.net>
 Мартин Квинсон (mquinson#debian.org)

=head1 ПРАВА УМНОЖАВАЊА И ЛИЦЕНЦА

Права умножавања 2002-2020 by SPI, inc.

Овај програм је слободан софтвер; можете да га редистрибуирате и/или мењате под условима GPL (погледајте фајл COPYING).

