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

Locale::Po4a::Man - двосмерна конверзија страна упутства и PO фајлова

=head1 ОПИС

Циљ po4a (PO for anything – PO за било шта) пројекта је да поједностави
превођење (и што је још интересантније, одржавање превода) употребом gettext
алата на деловима на којима се не очекује њихова употреба, као што је
документација.

Locale::Po4a::Man је модул који помаже превођење документације у nroff
формату (језик страница упутства) на друге [људске] језике.

=head1 ПРЕВОЂЕЊЕ ПОМОЋУ PO4A::MAN

Овај модул се заиста својски труди да олакша живот преводиоцу. Текст који се
представља преводиоцима није дословна копија текста који се налази у man
страни. Наравно, грубљи делови nroff формата су скривени, тако да преводиоци
не могу да се петљају са њима.

=head2 Обмотавање текста

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

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

=head2 Спецификација фонта

Прва измена је у вези спецификација за промену фонта. У nroff, постоји
неколико начина да се наведе да ли одређена реч треба да се испише малим
словима, подебљано или курзивом. У тексту који се преводи, постоји само
један начин, позајмљен из POD (Perl online documentation) формата:

=over

=item IE<lt>текстE<gt> -- курзивни текст

еквивалентно са \fIтекст\fP или ".I текст"

=item BE<lt>текстE<gt> -- подебљани текст

еквивалентно са \fBтекст\fP или ".B текст"

=item RE<lt>текстE<gt> -- латинични текст

еквивалентно са \fRтекст\fP

=item CWE<lt>текстE<gt> -- текст са карактерима константне ширине

еквивалентно са \f(CWтекст\fP или ".CW текст"

=back

Опаска: CW писмо није доступно за све groff уређаје. Његова употреба се не
препоручује. Понуђено је да би вама било једноставно.

=head2 Аутоматско пресловљавање карактера

Програм po4a аутоматски пресловљава неке карактере како би се олакшало
превођење или лекторисање превода. Ево листе пресловљавања:

=over

=item цртице на крају реда

У PO фајлу се цртице на крају реда (-) и минус знаци (\-) у man страницама
све пресловљавају у просте цртице (-). Затим се све црте пресловљавају у
roff минус знаке (\-) када се превод умеће у излазни документ.

Преводиоци могу да форсирају цртице на крају реда употребом roff глифа
’\[hy]’ у својим преводима.

=item размаци на којима нема прелома реда

Преводиоци у својим преводима могу да користе непреламајуће размаке. Ови
непреламајући размаци (0xA0 у latin1 кодној страни) ће да се преслове у roff
непреламајући размак (’\ ’).

=item пресловљавања навода

`` и '' се пресловљавају у \*(lq и \*(rq респективно.

Ако желе да спрече ова пресловљавања, преводиоци могу да уметну roff
карактер нулте ширине (нпр. употребом `\&` или '\&' респективно).

=back

=head2 Стављање ’E<lt>’ и ’E<gt>’ и преводе

Пошто се ови карактери користе за одвајање делова под изменом фонта, не
можете да их користите дословно. Употребите уместо њих EE<lt>ltE<gt> и
EE<lt>gtE<gt> (као у POD, још једном).

=head1 ОПЦИЈЕ КОЈЕ ПРИХВАТА ОВАЈ МОДУЛ

Ово су опције везане само за овај модул:

=over

=item B<debug>

Активира дибаговање за неке интерне механизме овог модула. Погледајте
изворни код да сазнате за који делове може да се користи дибаг.

=item B<verbose>

Повећава количину информација.

=item B<groff_code>

Ова опција контролише понашање модула када наиђе на .de, .ie или .if
одељке. Може да има следеће вредности:

=over

=item I<fail>

Ово је подразумевана вредност. Модул ће прекинути са извршавањем када се
наиђе на .de, .ie или .if одељак.

=item I<verbatim>

Назначава да .de, .ie или .if одељци морају да се копирају из оригинала у
преведени документ онакви какви су.

=item I<translate>

Назначава да ће .de, .ie или .if одељци да се предложе за превођење. Ову
опцију би требало да користите само ако се стринг за превођење налази у
једном од ових одељака. У супротном, бољи избор је I<verbatim>.

=back

=item B<generated>

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

=item B<mdoc>

Ова опција је корисна само за mdoc странице.

Она одабира стриктнију подршку mdoc формата наводећи програм po4a да не
преводи ’NAME’ одељак. mdoc странице чији је ’NAME’ одељак преведен уопште
неће генерисати заглавље или подножје.

Према groff_mdoc страници, одељци NAME, SYNOPSIS и DESCRIPTION
су обавезни.
Нема познатих проблема за превођењем одељака SYNOPSIS или DESCRIPTION,
мада ове одељке можете да наведете и на следећи начин:
 -o mdoc=NAME,SYNOPSIS,DESCRIPTION

Овај mdoc проблем такође може да се реши са додатком, као што је овај:
 PO4A-HEADER:mode=before;position=^.Dd
 .TH DOCUMENT_TITLE 1 "Month day, year" OS "Section Name"

=back

Опције које следе наводе понашање кориснички дефинисаног макроа (.de
захтевом), или класичног макроа који програм po4a не подржава. Они као
аргумент узимају листу макроа раздвојених зарезима. На пример:

 -o noarg=FO,OB,AR -o translate_joined=BA,ZQ,UX

Напомена: ако програм po4a не подржава макро, а ви сматрате да је то
стандардни roff макро, требало би да га доставите развојном тиму програма
po4a.

=over

=item B<untranslated>

B<untranslated> наводи да овај макро (као и његови аргументи) не морају да
се преведу.

=item B<noarg>

B<noarg> је као B<untranslated>, осим што ће програм po4a проверити да
ниједан аргумент није додат макроу.

=item B<translate_joined>

B<translate_joined> наводи да програм po4a мора да предложи превођење
аргумената макроа.

=item B<translate_each>

Са B<translate_each>, аргументи ће такође бити предложени за превод, осим
што ће сваки од њих да се преводи одвојено.

=item B<no_wrap>

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

Напомена: не ради се никакав тест да се осигура подударање команде I<крај>
са својом командом I<почетак>; било која команда уређивања зауставља no_wrap
режим. Ако имате I<почетак> (и одговарајући I<крај>) макро који нема I<крај>
(и одговарајући I<почетак>), можете да наведете неки постојећи I<крај> (као
fi) или I<почетак> (као nf) као његов пар. Ови макрои (и њихови аргументи)
неће бити превођени.

=item B<inline>

Ова опција наводи листу макроа раздвојених зарезима који не смеју да преломе
текући пасус. Тада ће стринг који треба да се преведе садржати I<foo
E<lt>.bar baz quxE<gt> quux>, где је I<bar> команда која би требало да се
налази унутар текста, а I<baz qux> су њени аргументи.

=item B<unknown_macros>

Ова опција одређује како би програм po4a требало да се понаша када се наиђе
на непознат макро. Подразумева се да програм po4a прекине извршавање са
упозорењем. Може да има следеће вредности: B<failed> (подразумевана
вредност), B<untranslated>, B<noarg>, B<translate_joined>, или
B<translate_each> (погледајте изнад за објашњење ових вредности).

=back

=head1 ПИСАЊЕ MAN СТРАНИЦА САГЛАСНИХ СА PO4A::MAN

Овај модул је и даље веома ограничен, и увек ће бити, јер он није прави
nroff интерпретер. Било би могуће да се направи прави nroff интерпретер,
чиме би аутори могли да користе све постојеће макрое, или да чак у својим
страницама дефинишу и нове, али нисмо хтели то да урадимо. Било би сувише
тешко, и мислили смо да није неопходно. Сматрамо да ако аутори man страница
желе да виде своја дела преведена, морали би мало да се прилагоде како би
олакшали посао преводиоцима.

Дакле, man парсер имплементиран у програм po4a има нека позната ограничења
која баш и не желимо да исправимо, и која ће проузроковати неке проблеме
које ћете морати да избегнете ако желите да видите преводиоце како се
старају о вашој документацији.

=head2 Немојте да програмирате у nroff

nroff је комплетан програмски језик, са дефиницијом макроа, кондиционалима и
тако даље. Пошто овај парсер није комплетан nroff интерпретер, он неће
успети да се изврши над странама које користе ове конструкције (на мојој
машини има око 200 таквих страница).

=head2 Користите прости скуп макроа

Постоји још макроа које po4a::man не подржава. То је само због тога јер
нисам успео да пронађем документацију за њих. Ево листе макроа који нису
подржани, а користе на мојој машини. Имајте на уму да листа није потпуна
пошто програм прекида са извршавањем чин наиђе на први макро који не
подржава. Ако имате било какве информације у вези неких од ових макроа, радо
ћу да додам подршку за њих. Јер због ових макроа, око 250 страница на мојој
машини нису доступне модулу po4a::man.

 ..               ."              .AT             .b              .bank
 .BE              ..br            .Bu             .BUGS           .BY
 .ce              .dbmmanage      .do                             .En
 .EP              .EX             .Fi             .hw             .i
 .Id              .l              .LO             .mf
 .N               .na             .NF             .nh             .nl
 .Nm              .ns             .NXR            .OPTIONS        .PB
 .pp              .PR             .PRE            .PU             .REq
 .RH              .rn             .S<             .sh             .SI
 .splitfont       .Sx             .T              .TF             .The
 .TT              .UC             .ul             .Vb             .zZ

=head2 Скривање текста од po4a

Аутор понекад зна да неки делови не треба да се преводе и програм po4a не би
требало да их издваја. На пример, опција би могла да прихвата аргумент
I<other>, а I<other> такође може да се појави као последња ставка листе. У
првом случају, I<other> не би требало да се преводи. А у другом случају,
I<other> би требало да се преведе.

Користећи неке специјалне groff конструкције, аутор у том случају може да
постићи да po4a не издвоји неке стрингове:

 .if !'po4a'hide' .B other

(за ово је неопходна опција B<-o groff_code=verbatim>)

Ово може да се аутоматизује дефинисањем новог макроа:
 .de IR_untranslated
 .    IR \\$@
 ..

 .IR_untranslated \-q ", " \-\-quiet

(за ово су неопходне опције B<-o groff_code=verbatim> и B<-o
untranslated=IR_untranslated>; уз ову конструкцију, кондиционал B<.if
!'po4a'hide'> није стриктно неопходан јер програм po4a неће парсирати
интерну дефиницију макроа)

или коришћењем алијаса:
 .als IR_untranslated IR

 .IR_untranslated \-q ", " \-\-quiet

За ово је неопходна опција B<-o untranslated=als,IR_untranslated>.

=head2 Закључак

Да укратко поновимо поенту овог одељка, нека буде једноставно, и немојте да
се правите паметни када пишете своје man странице. У nroff је могуће урадити
много ствари које овај парсер не подржава. На пример, не покушавајте да се
петљате са \c како бисте прекинули процесирање текста (као што 40 страница
на мојој машини ради). Или, будите сигурни да сте ставили аргументе макроа у
исту линију у којој је и сам макро. Знам да је то исправно у nroff, али би
сувише искомпликовало парсер ако би се применило.

Наравно, друга могућност је да користите неки други формат, погоднији за
преводиоца (као што је POD који користи po4a::pod, или неки из XML породице
као што је SGML), мада захваљујући po4a::man то више није неопходно. Дакле,
ако је изворни формат ваше документације POD, или XML, паметније би било да
преведете изворни формат, а не овај генерисани. po4a::man ће у већини
случајева моћи да детектује генерисане странице и издаће упозорење. Чак ће и
одбити да обради POD генерисане стране, јер po4a::pod савршено ради са њима,
а и због тога што њихови одговарајући nroff еквиваленти дефинишу пуно нових
макроа, нисам желео да напишем подршку за то. На мојој машини, 1432 од 4323
странице су генерисане из POD и po4a::man ће да их игнорише.

У већини случајева, po4a::man ће открити проблем и одбиће да обради
страницу, издајући прилагођену поруку. У неким ретким случајевима, програм
ће да се изврши без упозорења али излаз неће бити исправан. Такви случајеви
се зову „багови” ;) Ако наиђете на такав случај, обавезно га пријавите, ако
је могуће заједно са исправком…

=head1 СТАТУС ОВОГ МОДУЛА

Овај модул може да се користи за већину постојећих man страница.

Неки тестови се редовно врше на Linux машинама:

=over 4

=item *

одбија се обрада једне трећине страница јер су генерисане из другог формата
који програм po4a подржава (нпр. POD или SGML).

=item *

10% осталих страница се не обрађује услед неке грешке (нпр. groff макро који
није подржан).

=item *

Затим, програм po4a без обавештења прихвата мање од 1% страница, али са
озбиљним проблемима (нпр. речи које недостају, или уметнуте нове речи)

=item *

Остале странице се обично обрађују без неких значајнијих разлика, осим на
пример разлике у размацима или поново обавијене линије (проблеми са фонтом у
мање од 10% обрађених страница).

=back

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

L<Locale::Po4a::Pod(3pm)>, L<Locale::Po4a::TransTractor(3pm)>,
L<po4a(7)|po4a.7>

=head1 АУТОРИ

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

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

Права умножавања © 2002-2008 SPI, Inc.

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