Warning, /sdk/pology/lang/sr/doc/trapnakron.docbook is written in an unsupported language. File is not indexed.
0001 <?xml version="1.0" encoding="UTF-8"?> 0002 <!DOCTYPE chapter PUBLIC "-//OASIS//DTD DocBook XML V4.5//EN" 0003 "http://www.oasis-open.org/docbook/xml/4.5/docbookx.dtd"> 0004 0005 <chapter id="ch-trapnakron"> 0006 <title>Трапнакрон — транскрипције и преводи назива и акронима</title> 0007 0008 <para>Стране именичке синтагме које имају делимичан до потпун карактер личног имена, у текстовима на српском обично се преносе транскрибовањем, а понекад се и преводе (нпр. у оквирима фикције). Који год ова два <emphasis></emphasis> <emphasis>неизворна</emphasis> начина преношења да се изабере, постоји потреба да се читалац снабде и изворним облицима, односно појединим страним транскрипцијама и преводима. На пример, да би могао да истражује одређену тему и изван оквира матерњег језика.</para> 0009 0010 <para>Постоји неколико традиционалних начина да се читаоцу приложе парови прилагођених и изворних облика. Један је да се изворни облик наведе у загради при <emphasis>првом помињању</emphasis>, због чега је подесан најпре за информативне текстове који се секвенцијално читају (нпр. чланке у часописима). Други начин је да се изворни облик да <emphasis>у фусноти</emphasis>, што је погодно за дуже текстове у којим нагласак није на именима самим (нпр. у уџбеницима). Треће, најтемељније решење, јесте да се изворни и прилагођени облици дају <emphasis>појмовником</emphasis> (глосаром) у прилогу, што је потребно у литератури где су стране синтагме многобројне и која се често не прати секвенцијално (нпр. референтни приручници).</para> 0011 0012 <para>У добу опште рачунарске умрежености, међутим, претходно поменути трећи начин може се проширити тако да буде свеобухватнији и изврсно доступан свим читаоцима. Идеја је проста и очигледна: списак прилагођених и изворних облика постави се на странице на Интернету, временом се допуњавајући.<footnote> 0013 <para>Могло би се рећи да су традиционални транскрипциони речници нешто налик овоме. Међутим, њих поседује само узак круг људи, попут преводилаца и лектора, а не опште читалаштво. Затим, приређују их само лингвисти, што значи да су у сталном заостанку за новообјављеним текстовима, и не могу ни покушати да испрате сву бројност прилагођеница у њима.</para> 0014 </footnote>Тиме ће облици аутоматски постати доступни кроз упите у интернетским претраживачима, у оба смера, и управо на првом путу којим читаоци данас крећу у истраживање. Такав списак би одржавали они који то желе као услугу својим читаоцима, писци и преводиоци, на основу текстова које приређују.</para> 0015 0016 <para>Јасно је да овакав списак нема стручну лингвистичку тежину, без обзира на то што ће се они који га одржавају сами водити лингвистичким правилима и препорукама. Зато, да му не бисмо придавали тежину коју нема, назовимо га „транскрипције и преводи назива и акронима“ (без „речника“!), скраћено <emphasis>трапнакрон</emphasis>. Намерна предност нове кованице је та што ће се додавањем ње у упит претраживачу, поред синтагме која се тражи, већ међу првим резултатима добити жељени супротни (изворни или прилагођени) облик.</para> 0017 0018 <para>Што се тиче традиционалних текстова, трапнакрон је само ефикаснији начин од традиционалних за давање изворних облика. Међутим, постаје и једини практичан начин када се дође до текстова самосвојних рачунарским окружењима, попут програмских сучеља: такви текстови су високо несеквенцијални („прво појављивање“ губи смисао), тесно повезани са функционалним графичким елементима (не постоје фусноте), и кориснику рачунара пристижу из разнородних извора (нема јединственог „прилога“ где би се могли дати изворни облици). Зато не треба да изненади то што се овај трапнакрон одржава у окриљу <ulink url="../../../doc/html/pology-module.html">Пологије</ulink>, збирке алатки за превођење путем рачунара и за рачунарска окружења.</para> 0019 0020 <sect1 id="s-usage"> 0021 <title>Употреба</title> 0022 0023 <para>Трапнакрон у Пологији може се користити на два начина. Први је проста претрага, где читаоци траже изворне облике ради даљег истраживања, а аутори прилагођене облике ради употребе у својим текстовима. Други начин је програмско уметање прилагођених облика из трапнакрона у крајњи текст, пре свега намењен преводиоцима добро упућеним у рачунарски потпомогнуто превођење.</para> 0024 0025 <sect2 id="s-usref"> 0026 <title>Налажење прилагођених и изворних облика</title> 0027 0028 <para>Трапнакрон је изникао у оквиру пројекта превођења рачунарског окружења КДЕ на српски, због чега се из њега изведене веб странице за сада налазе на веб сајту преводилачке радионице КДЕ-а: <ulink url="http://sr.l10n.kde.org/trapnakron/index.php">http://sr.l10n.kde.org/trapnakron/index.php</ulink>. Ово свакако више није најсмисленије место с обзиром на предложени шири дохват трапнакрона, али и такво већ изврсно испуњава основну замисао — лако тражење супротних облика кроз интернетски претраживач. На примеру два упита Гуглу: 0029 <figure id="f-srchtrap"> 0030 <title>Обосмерна претрага Гуглом</title> 0031 <graphic fileref="google-query-trapnakron-t2o.png" align="center"/> 0032 <graphic fileref="google-query-trapnakron-o2t.png" align="center"/> 0033 </figure> 0034 Са ових снимака следе два важна запажања: прво, уз додату кључну реч <literal>трапнакрон</literal> или <literal>trapnakron</literal> већ први погодак је онај прави, и друго, понуђена веза уопште и не мора да се испрати да би се дознао тражени супротни облик.</para> 0035 0036 <para>Овакав веб поглед на трапнакрон би се у будућности могао изместити на неку погоднију локацију, али ће основни вид претраге свеједно остати општенаменски претраживач.</para> 0037 0038 </sect2> 0039 0040 <sect2 id="s-usprog"> 0041 <title>Програмско захтевање и уметање деклинација</title> 0042 0043 <para>Трапнакрон у Пологији не дефинише само номинативе прилагођених назива и акронима, већ и њихове косе падеже; затим, описне и присвојне придеве где су потребни, такође с променом кроз падеж, род и број. Ово омогућава аутору (писцу или преводиоцу) непосредно наслањање на уносе у трапнакрону у <emphasis>изворном</emphasis> тексту, од којег се гради <emphasis>крајњи</emphasis> текст са разрешеним прилагођеним облицима. Пологија пружа наменски <ulink url="../../../doc/html/pology.l10n.sr.trapnakron-module.html">програмски модул трапнакрона</ulink>, којим се ово разрешавање лако може уградити у поступак добијања крајњег из изворног текста.</para> 0044 0045 <para>На пример, аутор би могао позивати деклинације из трапнакрона по угледу на ИксМЛ ентитете: 0046 <programlisting> 0047 …на предлог &tsienhsueshen-g;, оца кинеског ракетног програма,… 0048 </programlisting> 0049 <literal>&...;</literal> је обележје почетка и краја ентитета, а текст између име ентитета; оно је састављено од кључа уноса у трапнакрону (<literal>tsienhsueshen</literal> за Ћена Сјуесена<footnote> 0050 <para>Прво амерички, затим кинески ваздухокосмопловни инжењер и научник. Оснивач кинеског свемирског програма. 1911–2009.</para> 0051 </footnote>) и кључа деклинације (<literal>g</literal> за генитив), раздвојених цртицом. Ако је изворни текст у неком од формата обичног текста (или се тако може захватити у ланцу градње крајњег текста), онда се ИксМЛ ентитети могу разрешити питонском скриптом састављеном на основу следећег примера: 0052 <programlisting> 0053 $ python 0054 >>> from pology.l10n.sr.trapnakron import trapnakron_plain 0055 >>> from pology.misc.resolve import resolve_entities_simple 0056 >>> t = trapnakron_plain() 0057 >>> s = u"…на предлог &tsienhsueshen-g;, оца кинеског ракетног програма…" 0058 >>> print resolve_entities_simple(s, t) 0059 …на предлог Ћена Сјуесена, оца кинеског ракетног програма,… 0060 </programlisting> 0061 Да би ово овако радило, потребно је само да Пологија буде <ulink url="../../../doc/html/pology-module.html">присутна и правилно подешена</ulink>. Конструисани објекат <literal>t</literal> у многоме се понаша као стандардни питонски речник: 0062 <programlisting> 0063 >>> print t["changzheng-n"] 0064 чангџенг 0065 >>> print t["foobarxyz-n"] # не постоји 0066 ... 0067 KeyError: 'foobarxyz-n' 0068 >>> print t.get("foobarxyz-n") 0069 None 0070 </programlisting> 0071 Управо ово омогућава да <literal>t</literal> буде други аргумент функције <function>resolve_entities_simple</function>, која на том положају очекује речник ентитета.</para> 0072 0073 <para>Аутоматско уметање погодује ситуацијама када је прилагођеница много и када више аутора сарађује на истом тексту, како би се прилагођавање централизовало и ускладило. Ово је случај, на пример, при превођењу и одржавању превода рачунарских окружења, на коме се и просторно и временски смењују многобројни преводиоци. Пример где аутоматско уметање практично није од користи, био би када један преводилац преводи заокружено дело научне или епске фантастике, у коме су сва имена и називи измишљени, а можда ни овоземаљски.</para> 0074 0075 <sect3 id="s-usprogkeys"> 0076 <title>Кључеви уноса и деклинација</title> 0077 0078 <para>При аутоматском уметању, потребно је задати кључ уноса и деклинације. Програмски модул трапнакрона изведен је тако да су ови кључеви обавезно чист аски текст, састављен само од слова, цифара и подвлака. На тај начин се могу користити као идентификатори у највећем броју примена, попут оне са ИксМЛ ентитетима.</para> 0079 0080 <para>Кључ уноса у трапнакрону добија се избацивањем свих размака и интерпункције из изворног (или романизованог) облика, свођењем свих слова на визуелно најприближније аски парњаке, те њиховом деверзализацијом. Ако резултујући кључ почиње цифром, испред се додаје подвлака. Примери: <foreignphrase>Stanisław Lem</foreignphrase> → <literal>stanislavlem</literal>, <foreignphrase>R. Daneel Olivaw</foreignphrase> → <literal>rdaneelolivaw</literal>, <foreignphrase>Commodore 64</foreignphrase> → <literal>commodore64</literal>, <foreignphrase>9WM</foreignphrase> → <literal>_9wm</literal>.</para> 0081 0082 <para>Применом овог свођења, може се догодити да два различита уноса спадну на исти кључ. Тада се у трапнакрону ручно дефинишу различити кључеви за те уносе, по обрасцу основни кључ плус неки наставак. У том случају, жељени кључ могуће је потражити ручно, претраживањем изворних датотека трапнакрона, али и помоћу скрипте за оверу трапнакрона <command>traplint</command> (која је део Пологије): 0083 <programlisting language="bash"> 0084 $ traplint -erk georgia 0085 # georgiactry 0086 Georgia: н=Грузија, г=Грузије, … 0087 # georgiafont 0088 Georgia: н=Џорџија, г=Џорџије, … 0089 </programlisting> 0090 Овде се види да је кључ за <foreignphrase>Georgia</foreignphrase> као име државе <literal>georgiactry</literal>, а за име фонта <literal>georgiafont</literal>. 0091 </para> 0092 0093 <para>Кључеви деклинација су ниске појединачних слова, у којима свако слово одређује једну граматичку категорију. Кључеви именица по падежима у једнини су: <literal>n</literal>, <literal>g</literal>, <literal>d</literal>, <literal>a</literal>, <literal>i</literal>, <literal>v</literal>, <literal>l</literal>. Именице у множини добијају се додавањем <literal>k</literal>, нпр. <literal>gk</literal> је генитив множине. Кључеви описних придева у једнини састављени су од слова за падеж и слова за род: <literal>m</literal>, <literal>z</literal>, <literal>s</literal>, и технички род „мушки живи“ <literal>u</literal> за случајеве где је акузатив једнак генитиву; нпр. <literal>dz</literal> је описни придев у дативу женског рода. Кључеви описних придева у множини добијају се додавањем <literal>k</literal>, нпр. <literal>gmk</literal> за генитив мушки множине. Кључеви присвојних придева у једнини добијају се додавањем <literal>p</literal> а у множини <literal>kp</literal>, нпр. <literal>dsp</literal> и <literal>dskp</literal> за присвојни придев у дативу средњег рода у једнини и множини.</para> 0094 0095 <para>Не мора сваки унос имати све деклинације. На пример, неки уноси немају множине именица, други немају описне односно присвојне придеве. Ово зависи од природе уноса, с намером да ако одређена деклинација не постоји, онда је не треба ни користити. Наравно, могуће је да недостаје случајно или услед погрешне процене, када треба дојавити да се дода у трапнакрон. Када деклинација не постоји, питонски програмски позив ће подићи изузетак (индексни приступ) или вратити <literal>None</literal> (метод <function>get</function>).</para> 0096 0097 <para>У случају да је описни придев непроменљив, може се позвати празним кључем деклинације. Ово је посебно згодно за акрониме, који су увек непроменљиви као придеви а могу бити чести у одређеним текстовима, па би било замашно и сасвим непотребно увек давати пун кључ придева. Пример: 0098 <programlisting> 0099 >>> print t["fortran-dz"] 0100 фортранској 0101 >>> print t["fortran-"] # није дозвољено 0102 ... 0103 KeyError: 'fortran-' 0104 >>> print t["pdf-dz"] 0105 ПДФ 0106 >>> print t["pdf-"] # дозвољено 0107 ПДФ 0108 </programlisting> 0109 </para> 0110 0111 </sect3> 0112 0113 <sect3 id="s-usprogalts"> 0114 <title>Алтернативни прилагођени облици</title> 0115 0116 <para>Неки уноси имају алтернативна прилагођења, у виду два различита превода или две различите транскрипције. Као посебан случај, ту је и разликовање укорењене и системске транскрипције. Подразумевано прилагођење добија се на основни кључ уноса, а алтернативна на кључ уноса са одређеним наставком, и то: <literal>_a</literal>, <literal>_a2</literal>, <literal>_a3</literal> за опште алтернативе, а <literal>_s</literal> за системску транскрипцију. На примеру: 0117 <programlisting> 0118 >>> print t["alien-n"] # филм 0119 Туђин 0120 >>> print t["alien_a-n"] 0121 Осми путник 0122 >>> print t["isaacasimov-n"] # писац 0123 Исак Асимов 0124 >>> print t["isaacasimov_s-n"] 0125 Ајзак Асимов 0126 </programlisting> 0127 Уколико унос не дефинише тражено алтернативно прилагођење, позив ће вратити подразумевано прилагођење (а не рецимо <literal>None</literal>).</para> 0128 0129 </sect3> 0130 0131 <sect3 id="s-usproghyb"> 0132 <title>Хибридизација на разлике у наречју и писму</title> 0133 0134 <para>Подразумевано, облици који се добијају на упит су на чистом екавском наречју и ћирилицом само у случајевима када не постоје разлике између писама и наречја, тј. када је ијекавска варијанта иста а латиничка се добија простим пресловљавањем. У супротном, упит враћа <emphasis>хибридизовани</emphasis> текст: 0135 <programlisting> 0136 >>> print t["startrek-n"] 0137 Зв›јездане стазе 0138 >>> print t["firefox-n"] 0139 ~@¦Фајерфокс¦Firefox¦ 0140 </programlisting> 0141 Намера иза овога је темељна подршка превођењу текстова на оба наречја и оба писма, са устаљеним разликама међу њима (на пример, иако се транскрипције по Правопису увек могу корисити у латиничком тексту, у неким миљеима устаљена је употреба изворних облика). При градњи крајњег текста на различитим наречјима и писмима, за растављање хибридизованог на четири чиста текста може се употребити функција <function>hictoall</function> из модула <literal>pology.l10n.sr.hook.wconv</literal>.</para> 0142 0143 <para>Хибридизацију је могуће онеспособити при конструкцији објекта трапнакрона, тако што се три од четири варијанте пониште постављањем параметара <literal>envec</literal> (ек. ћир.), <literal>envel</literal> (ек. лат.), <literal>envic</literal> (ије. ћир.) и <literal>envil</literal> (иј. лат.) на <literal>None</literal>. На пример, за добијање само ијекавског латиницом: 0144 <programlisting> 0145 >>> t = trapnakron_plain(envec=None, envel=None, envic=None) 0146 >>> print t["startrek-n"] 0147 Zvjezdane staze 0148 >>> print t["firefox-n"] 0149 Firefox 0150 </programlisting> 0151 </para> 0152 0153 </sect3> 0154 0155 </sect2> 0156 0157 </sect1> 0158 0159 <sect1 id="s-editing"> 0160 <title>Уређивање</title> 0161 0162 <para>Трапнакрон се налази у поддиректоријуму <filename class="directory">l10n/sr/trapnakron/</filename> Пологије, што значи да је присутност и функционалност ризничке копије Пологије једини технички захтев за уређивање трапнакрона. Локација ризнице и подешавање Пологије описани су у уводу њене <ulink url="../../../doc/html/pology-module.html">документације</ulink>.</para> 0163 0164 <para>Грађу трапнакрона чини већи број обичних текстуалних датотека, са наставком <filename class="extension">.sd</filename>, у формату <emphasis>дериватора синтагми</emphasis>. Зато је први корак ка уређивању трапнакрона упознавање овог формата, <ulink url="../../../doc/html/pology.misc.synder-module.html">документованог</ulink> у оквиру Пологијиног програмског модула <literal>synder</literal>.</para> 0165 0166 <para>Формат дериватора синтагми садржи многе детаље, али је основна идеја проста. Сваки ред у датотеци дефинише пар изворне и прилагођених синтагми, при чему су прилагођене синтагме раздвојене на „технички“ корен и суфикс. Један овакав унос назива се <emphasis>извођењем</emphasis>. Неколико примера извођења: 0167 <programlisting> 0168 KAtomic: К-атомик|а, К-атомик|ин 0169 Sokoban: Сокобан|, Сокобан|ов 0170 Minesweeper: Минолов|ац, Миноловч|ев 0171 Penguin Command: Пингвинск|а> команд|а 0172 </programlisting> 0173 <itemizedlist> 0174 <listitem> 0175 <para>У извођењу <literal>KAtomic</literal>, технички корен прилагођене (овде: преведене) именице је <literal>К-атомик</literal> а суфикс <literal>а</literal>. Корен и суфикс су раздвојени усправном цртом, <literal>|</literal>. Састав црте и техничког корена <literal>|а</literal> назива се <emphasis>проширењем</emphasis>; ово ће произвести све именичке облике („К-атомика“, „К-атомике“…). Зарезом се одваја више независних синтагми с проширењима, па ће тако <literal>К-атомик|ин</literal> произвести све облике присвојног придева.</para> 0176 </listitem> 0177 <listitem> 0178 <para>Извођење <literal>Sokoban</literal> посебно је само по томе што је технички суфикс празна ниска („Сокобан“, „Сокобана“…). Овако се изводи већина именица мушког рода.</para> 0179 </listitem> 0180 <listitem> 0181 <para>Празан суфикс не одговара извођењу <literal>Minesweeper</literal>, јер је ‘а’ у „Миноловац“ непостојано (генитив једнине је „Миноловца“ а не „Миноловаца“). Зато је за овакве случајеве дефинисан технички корен <literal>ац</literal>.</para> 0182 </listitem> 0183 <listitem> 0184 <para>У прилагођењу <literal>Penguin Command</literal>, реч „Пингвинска“ је атрибут, па се мења по придевској промени. Зато њен технички суфикс није могао бити <literal>а</literal>, као у <literal>команд|а</literal>, већ се уводи суфикс <literal>а></literal> за атрибуте пред именицама женског рода. Овом извођењу недостаје присвојни придев, јер граматички и не постоји.</para> 0185 </listitem> 0186 </itemizedlist> 0187 </para> 0188 0189 <para>Из примера̂ се види да уредник, поред тога што треба да упозна формат дериватора синтагми, треба да зна и који технички суфикси постоје и када се користе. Њихова извођења дата су у датотеци <filename>l10n/sr/trapnakron/base/aff.sd</filename>, са упутним коментаром. На пример, неки од суфикса из претходних примера дати су овако: 0190 <programlisting> 0191 # Именица мушког рода у једнини, основна 0192 |: _род!=м, н=, г=а, д=у, а=, и=ом, л=у 0193 0194 # Именица мушког рода -ац са непостојаним -а- у једнини 0195 |ац, |ac: _род!=м, н=ац, г=ца, д=цу, а=ац, и=цем, л=цу 0196 0197 # Именица женског рода у једнини, основна 0198 |а, |a: _род!=ж, н=а, г=е, д=и, а=у, и=ом, л=и 0199 0200 # Атрибут уз именицу женског рода у једнини 0201 |а>, |a>: _род!=ж, н=а, г=е, д=ој, а=у, и=ом, л=ој 0202 </programlisting> 0203 Суфикса је немали број, али то не треба да забрињава. Уредник увек може потражити кроз трапнакрон како су решена друга извођења синтагми са истом деклинацијом, а може и развити извођење до репрезентативних облика како би се уверио у исправност своје дефиниције (о чему говори <link linkend="s-edverif">одељак о оверавању</link>).</para> 0204 0205 <sect2 id="s-edgen"> 0206 <title>Опште смернице</title> 0207 0208 <para>Следи преглед смерница које важе за сва извођења у трапнакрону, независно од врсте појма који покривају.</para> 0209 0210 <sect3 id="s-edgencat"> 0211 <title>Категоризација</title> 0212 0213 <para>Трапнакрон је подељен у категорије на три нивоа; свако извођење има велику категорију, малу категорију и поткатегорију. Велика и мала категорија одређене су именима датотека, по обрасцу <filename>velika-mala.sd</filename>. На пример, сва имена људи су у датотекама <filename>people-*.sd</filename>, а имена научника у датотеци <filename>people-scientists.sd</filename>. У оквиру датотеке, поткатегорије су прости коментари који раздвајају блокове извођења̂. У категорији <literal>people-scientists</literal> тако постоји блок физичара, математичара, биолога… Унутар једног блока, извођења су поређана абецедно по изворним или романизованом облицима.</para> 0214 0215 <para>Категоризација постоји најпре да би се материјал разделио на мање целине којима је технички лакше руковати, и да би се за поједине категорије могле одредити додатне смернице. Ово значи да не треба посвећивати превише пажње томе под којом категоријом завести које извођење („да ли је Вернер фон Браун научник или инжењер?“), већ брзо одлучивати према тренутној инспирацији. Ако је значење неке синтагме потпуно непознато, ту је категорија <literal>misc-*</literal>.</para> 0216 0217 <para>У сваком тренутку могуће је успоставити нову велику или малу категорију (тј. додати нову датотеку), или поткатегорију, како се уочи потреба за тиме.</para> 0218 0219 </sect3> 0220 0221 <sect3 id="s-edgenuniq"> 0222 <title>Јединственост извођења</title> 0223 0224 <para>Уколико је неки појам знан под више имена, било изворних (романизованих) или прилагођених, поставља се питање с колико извођења то покрити. Иста недоумица важи и обрнуто, када су два различита појма знана под истим именима. Ово се разрешава на основу употребне вредности имена, а не јединствености и разликовања појмова самих, како ће бити изложено у наредном.</para> 0225 0226 <para>Када се исти појам изворно помиње под два имена, а исто тако и прилагођено, тада се дефинишу и два независна извођења. Ово је случај, на пример, са Ејдом Бајрон односно Ејдом Лавлејс<footnote> 0227 <para>Викторијанска математичарка, данас често сматрана и првом програмерком односно програмером уопште. 1815–1852.</para> 0228 </footnote>, која се и у изворним и у домаћим текстовима помиње или по девојачком или по удатом презимену, према личном осећају писца. Зато се за њу уводе два извођења: 0229 <programlisting> 0230 Ada Byron: Ејд|а Бајрон 0231 Ada Lovelace: Ејд|а Лавлејс 0232 </programlisting> 0233 (Имена људи се заправо не изводе овако просто, већ су овде дата скраћено да се не би оптерећивао пример. Како се заиста изводе, говори одељак <link linkend="s-edspecpn">посебних смерница о именима људи</link>.)</para> 0234 0235 <para>Уколико је појам познат под више страних имена — типично када се зна и изворно нелатиничко и једно или више романизованих имена — а само под једним домаћим, дефинише се кроз једно извођење са нанизаним свим страним именима: 0236 <programlisting> 0237 Юрий Гагарин, Yuri Gagarin: Јуриј|2 Гагарин| 0238 龙芯, lóngxīn, Loongson: лунгсин|, лунгсин|ов 0239 </programlisting> 0240 </para> 0241 0242 <para>Обрнуто, када је појам познат под једним изворним именом али више домаћих, опет се дефинише једно извођење, али са <emphasis>алтернативним</emphasis> прилагођењима: 0243 <programlisting> 0244 Alien: Туђин|!, Туђин|ов 0245 @алт: Осм|и!> путник|! 0246 </programlisting> 0247 Једно прилагођење мора се изабрати као подразумевано, овде „Туђин“, а друго као алтернативно, овде „Осми путник“. Алтернативно прилагођење задаје се под <emphasis>окружењем</emphasis> <literal>@алт</literal>, а могућа су и <literal>@алт2</literal>, па и <literal>@алт3</literal>, за сасвим ретке случајеве. 0248 </para> 0249 0250 <para>Претходна два случаја могу бити и комбинована, када се и изворни и домаћи облици колебају између транскрипције и превода: 0251 <programlisting> 0252 长征系列运载火箭, Changzheng, Long March: чангџенг|, чангџенг|ов 0253 @алт: дуг|и> марш| 0254 </programlisting> 0255 Да ли ће овде подразумевано прилагођење бити транскрипција или превод, зависи од случаја. 0256 </para> 0257 0258 <para>Посебан случај алтернативног прилагођења је тренутна системска транскрипција, коју вреди навести када је у општој употреби укорењена нека ранија. Она се даје под окружењем <literal>@сист</literal>: 0259 <programlisting> 0260 Isaac Newton: Исак| Њутн| 0261 @сист: Ајзак| Њутон| 0262 </programlisting> 0263 </para> 0264 0265 <para>Уколико је за ијекавско наречје потребно другачије прилагођење, а уредник га познаје, додаје га под окружењем <literal>@иј</literal>. До разликовања у наречју не може доћи код транскрипција, али може код превода: 0266 <programlisting> 0267 Star Trek: Звездан|е-> стаз|е- 0268 @иј: Звјездан|е-> стаз|е- 0269 </programlisting> 0270 </para> 0271 0272 </sect3> 0273 0274 <sect3 id="s-edgensrc"> 0275 <title>Деклинације изворних облика</title> 0276 0277 <para>Остављање изворних облика у тексту латиницом је устаљена пракса у неким областима, и то може бити потребно подржати при аутоматском уметању облика из трапнакрона. Другим речима, тада крајњи ћирилички текст треба да садржи транскрибоване, а латинички изворне облике. Како би се ово омогућило, за већину категорија синтагми у трапнакрону изводе се и деклинације изворних облика (или страних транскрипција). То се чини под окружењем <literal>@л</literal>, као и <literal>@ијл</literal> када постоји разликовање са ијекавским наречјем. На примерима: 0278 <programlisting> 0279 Cyborg: сајборг|, сајборг|ов 0280 @л: Cyborg|, Cyborg|ov 0281 Adobe: Адоуб|и, Адоуб|ијев 0282 @л: Adob|e-ij, Adob|ejev 0283 Maple: Мејпл|, Мејпл|ов 0284 @л: Maple|, Maple|ov 0285 Blowfish: блоуфиш|, блоуфиш|ов 0286 @л: Blowfish|, Blowfish|ov 0287 </programlisting> 0288 Деклинације изворних облика не дефинишу се ако се изворни облик може добити простим пресловљавањем транскрибованог, нити када је прилагођење извршено преводом: 0289 <programlisting> 0290 Epson: Епсон|, Епсон|ов 0291 Amarok: Амарок|, Амарок|ов 0292 KGoldRunner: К-златобој|ац, К-златобојч|ев 0293 KMail: К-пошт|а, К-пошт|ин 0294 </programlisting> 0295 </para> 0296 0297 <para>За следеће категорије <emphasis>не треба</emphasis> дефинисати деклинације изворних облика, јер се у латиничким текстовима још увек најчешће транскрибују: <literal>languages-*</literal> (осим <literal>languages-prog</literal>), <literal>people-*</literal>, <literal>*-fiction</literal>.</para> 0298 0299 <para>Постојање изворних деклинација у трапнакрону не значи да се обавезно морају наћи у латиничком тексту при аутоматском уметању. Ако се желе прилагођени облици (наравно, пресловљени на латиницу), то се може постићи позивањем конструктора трапнакрона са одговарајућим параметрима.</para> 0300 0301 </sect3> 0302 0303 <sect3 id="s-edgenprop"> 0304 <title>Непосредно задавање својстава</title> 0305 0306 <para>Некада са̂мо проширење (тј. технички суфикс) није довољно да дефинише све деклинације и својства у датом извођењу. Тада се потребна својства задају ручно, после проширења и раздвојена зарезима.</para> 0307 0308 <para>Понеки суфикс не дефинише род именице, јер га користе именице два различита рода при чему се за један не може рећи да је много бројнији од другог. Тада се род задаје ручно, својством <literal>_род!</literal>. На пример, суфикс <literal>о</literal> често се примењује и на именице мушког и на именице средњег рода: 0309 <programlisting> 0310 Apolo: Апол|о, Апол|ов, _род!=м 0311 Marble Madness: Кликерск|о> лудил|о, _род!=с 0312 </programlisting> 0313 </para> 0314 0315 <para>Када суфикс пак аутоматски дефинише род, у неким случајевима тај род не мора одговарати. Чест пример су мушка имена и презимена која се завршавају на -а и мењају као именице женског рода. Тада се род опет ручно задаје: 0316 <programlisting> 0317 Edsger Dijkstra: Едсгер| Дајкстр|а, _род!=у 0318 </programlisting> 0319 У овом примеру треба уочити и три споредна детаља. Мушкарци добијају „мушки род живи“, означен словом <literal>у</literal> (код кога је акузатив једнак генитиву), уместо обичног, <literal>м</literal> (акузатив једнак номинативу). Затим, прво проширење, са празним суфиксом, дефинисало би род правилно, али га потискује друго проширење, суфикс <literal>а</literal>; другим речима, последњи сусретнути род постаје укупан род синтагме. Коначно празан суфикс нормално дефинише обичан мушки род, не живи, али су специјално у датотекама с именима људи сви мушки суфикси предефинисани да дају мушки род живи.</para> 0320 0321 <para>Уколико постоји двоумљење око правилности транскрипције, то се бележи својством <literal>_тр=!</literal>. Уколико је познат ИПА запис имена, наводи се као својство <literal>_ипа</literal>.</para> 0322 0323 </sect3> 0324 0325 <sect3 id="s-edgeninh"> 0326 <title>Наслањање извођења на претходна</title> 0327 0328 <para>Многе вишечлане синтагме садрже мање синтагме које саме по себи имају извођења у трапнакрону. Тада, да би се избегло понављање истог прилагођеног облика на више места, треба <emphasis>наслонити</emphasis> дужу на краћу синтагму. Ово се чини кроз исти метод проширивања, само што проширење више није техничким суфиксом, већ циљном краћом синтагмом: 0329 <programlisting> 0330 Emacs: Емакс|, Емакс|ов 0331 @л: Emacs|, Emacs|ov 0332 Lucid Emacs: Лусид|ов> |Emacs 0333 @л: Lucid|ov> |Emacs 0334 </programlisting> 0335 У извођењу <literal>Lucid Emacs</literal> биће проширени сви именички облици дефинисани извођењем <literal>Emacs</literal>, управо како се очекује („Лусидов Емакс“, „Лусидовог Емакса“…). Некад, међутим, потребан је само један прилагођени облик, типично као део непроменљиве подсинтагме: 0336 <programlisting> 0337 Gnome: Гном|, Гном|ов 0338 @л: Gnome|, Gnome|ov 0339 Eye of Gnome: Ок|о |Gnome~г, _род!=с 0340 </programlisting> 0341 Проширење <literal>|Gnome~г</literal> даје само генитив, резултујући жељеним облицима („Око Гнома“, „Ока Гнома“, „Оку Гнома“,…); део <literal>~г</literal> је <emphasis>маска проширења</emphasis>, која издваја потребне облике из свих могућих (како тачно маска функционише, описано је у документацији формата).</para> 0342 0343 <para>При наслањању извођења, често је случај да извођење које се користи у проширењу није у истој датотеци као извођење које се дефинише. У горњем примеру, извођење <literal>Eye of Gnome</literal> је у датотеци <filename>software-graphics.sd</filename>, a <literal>Gnome</literal> у <filename>software-system.sd</filename>. Тада треба <emphasis>укључити</emphasis> датотеку прошириваног извођења у датотеку онога које га проширује, додавањем директиве укључивања при врху: 0344 <programlisting> 0345 # Врх датотеке software-graphics.sd 0346 >base/aff.sd # основна извођења, по техничким суфиксима 0347 >software-system.sd # извођења у наслањањима 0348 </programlisting> 0349 Када их је више, укључивања се ређају абецедним редоследом.</para> 0350 0351 </sect3> 0352 0353 </sect2> 0354 0355 <sect2 id="s-edspec"> 0356 <title>Посебне смернице по категоријама</title> 0357 0358 <para>За неке категорије извођења, поред деклинација корисно је дефинисати и извесне друге податке. Наредни одељци дају преглед таквих случајева.</para> 0359 0360 <sect3 id="s-edspecpn"> 0361 <title>Имена људи</title> 0362 0363 <para>Код имена људи треба означити име, презиме и средње име, и у извору и у транскрипцијама, и скраћено навести народност: 0364 <programlisting> 0365 ~i Arthur ~s C. ~p Clarke: ~и Артур| ~п Кларк|, _нр=брит 0366 </programlisting> 0367 <literal>~i</literal> и <literal>~и</literal> су равноправне ознаке за име, <literal>~p</literal> и <literal>~п</literal> за презиме, а <literal>~s</literal> и <literal>~с</literal> за средње име. Својство <literal>_нр</literal> наводи народност; ако се разликује народност на рођењу и каснија, проценити која је битнија.</para> 0368 0369 <para>Ако стварно изворно име није латиничко, и зна се, наводи се испред романизација: 0370 <programlisting> 0371 ~и Сергей ~п Королёв, ~i Sergey ~p Korolyov: ~п Сергеј| ~п Корољов|, _нр=рус 0372 </programlisting> 0373 Уколико је познато више романизација, поређати их по учесталости, почев од најучесталије.</para> 0374 0375 <para>Ако изворно име јесте латиничко, али садржи бар једно неаски слово које није настало додавањем дијакритика, треба изричито навести приближни аски кључ под којим ће се водити, и то скривен: 0376 <programlisting> 0377 ~i Stanisław ~p Lem, |stanislavlem: ~и Станислав| ~п Лем|, _нр=пољ 0378 </programlisting> 0379 </para> 0380 0381 <para>Уколико народност није позната, ставља се знак питања: <literal>_нр=?</literal>.</para> 0382 0383 <para>Имена треба ређати абецедним редоследом по изворном <emphasis>презимену</emphasis>, односно романизованом ако изворно није латиничко.</para> 0384 0385 </sect3> 0386 0387 <sect3 id="s-edspecfict"> 0388 <title>Извори у фикцији</title> 0389 0390 <para>Многе велике категорије имају мале категорије које обрађују фикционе појмове те врсте, тј. ради се о категоријама <literal>*-fiction</literal>. За фикциона извођења корисно је пратити одакле потичу: од ког аутора, из ког филма, из ког фантазијског универзума… Порекло се задаје својством <literal>_из</literal>: 0391 <programlisting> 0392 Discovery: Открић|е3, _род!=с, _из=|пис-кларк~н 0393 Quenya: квениј|а, квениј|ски, _из=|пис-толкин~н 0394 </programlisting> 0395 Вредност својства <literal>_из</literal> је проширени номинатив извора, на који се упућује за ту намену дефинисаним кратким унутрашњим кључем (да би се избегло понављање потенцијално замашне пуне синтагме извора): 0396 <programlisting> 0397 ~i Arthur ~s C. ~p Clarke, |пис-кларк: ~и Артур| ~п Кларк|, _нр=брит 0398 ~i J.R.R. ~p Tolkien, |пис-толкин: ~и Џ.Р.Р. ~п Толкин|, _нр=брит 0399 </programlisting> 0400 </para> 0401 0402 </sect3> 0403 0404 </sect2> 0405 0406 <sect2 id="s-edverif"> 0407 <title>Оверавање и пробни развоји</title> 0408 0409 <para>Уредник може лако да провери дефиниције које додаје помоћу скрипте <command>traplint</command>. Ако је Пологија подешена по упутству, ова је скрипта већ у путањи и спремна за извршавање. У најосновнијем режиму рада, када се позове без аргумената: 0410 <programlisting language="bash"> 0411 $ traplint 0412 </programlisting> 0413 скрипта ће оверити све постојеће уносе у трапнакрону. То значи да ће бити откривене пре свега синтаксне грешке и грешке у проширивањима (нпр. непостојећи технички суфикс), али и неке логичке грешке које се могу аутоматски пресрести (нпр. недостајање својства рода, или непозната вредност рода). Провере на логичке грешке временом се допуњавају, како се уочи могућност за њихово дефинисање.</para> 0414 0415 <para>Оверавање целог трапнакрона може потрајати, што је незгодно када уредник жели да овери само један или неколико новододатих извођења. Тада може да позове скрипту са опцијом <option>-m</option>: 0416 <programlisting language="bash"> 0417 $ traplint -m 0418 </programlisting> 0419 У овом режиму, биће оверени само измењени и додати уноси, на основу разлике у датотекама коју пријављује подложни систем за управљање верзијама.</para> 0420 0421 <para>Напокон, уредник може желети да овери неке конкретне датотеке и појединачна извођења, и они се могу задати као слободни аргументи: 0422 <programlisting language="bash"> 0423 $ traplint alien nostromo sulaco # појединачна извођења по кључу 0424 $ traplint l10n/sr/trapnakron/mech-fiction.sd # цела датотека по путањи 0425 $ traplint :mech-fiction # цела датотека по основи имена 0426 </programlisting> 0427 Када се задају појединачна извођења, кључ извођења одређује се како је описано у <link linkend="s-usprogkeys">одељку о кључевима</link> при програмском потраживању облика из трапнакрона. Кључеви се подразумевано поклапају тачно, што је могуће променити на поклапање регуларним изразом издавањем опције <option>-r</option>.</para> 0428 0429 <para>Претходно изложени позиви оверавају извођења, али не исписују ништа када нема грешака. Недостатак грешака на аутоматској провери наравно не значи да грешака и нема, па уредник може желети да види развоје извођења, са крајњим деклинацијама, како би се уверио да је све на месту. То постиже издавањем опције <option>-e</option> уз било који од претходних позива, када се за изабрана извођења исписују репрезентативни развоји: 0430 <programlisting language="bash"> 0431 $ traplint -e alien nostromo sulaco 0432 Alien: н=Туђин, г=Туђина, д=Туђину, а=Туђина, и=Туђином, … 0433 @алт: н=Осми путник, …, а=Осмог путника, … 0434 Nostromo: н=Ностромо, г=Нострома, д=Нострому, …, нмп=Ностромов 0435 Sulaco: н=Сулако, г=Сулака, д=Сулаку, …, нмп=Сулаков 0436 </programlisting> 0437 После сеансе уређивања, пре него што се преда или пошаље закрпа, типичан позив за оверавање и прегледање пробних развоја за измењена и додата извођења био би: 0438 <programlisting language="bash"> 0439 $ traplint -me 0440 </programlisting> 0441 </para> 0442 0443 <para>У могућности оверавања, путем назнака при уређивању, може се убројати и истицање синтаксе. Тренутно је дефинисано за КДЕ уређиваче К-писање и Кејт, у стаблу Пологије смештено под <filename>syntax/kate/synder.xml</filename>; у погон се ставља убацивањем (најбоље симвезом) у директоријум <filename class="directory">~/.kde/share/apps/katepart/syntax/</filename>. Истицање овако изгледа у акцији: 0444 <figure id="f-katesyn"> 0445 <title>Истицање формата дериватора синтагми у Кејт</title> 0446 <graphic fileref="kate-syntax-synder.png" align="center"/> 0447 </figure> 0448 </para> 0449 0450 </sect2> 0451 0452 <sect2 id="s-edcoop"> 0453 <title>Сарадња</title> 0454 0455 <para>Уредници могу на више начина обезбедити да њихове допуне и измене трапнакрона буду увршћене у ризницу Пологије. У основи свих је, наравно, прослеђивање закрпе коју пријављује систем за управљање верзијама (СУВ) на праву адресу.</para> 0456 0457 <para>Ако је променљива окружења <envar>TRAPDIR</envar> постављена на корени директоријум трапнакрона, нпр. <filename class="directory">/home/pperic/repos/pology/l10n/sr/trapnakron/</filename>, онда се закрпа која укључује све измене прави једноставним: 0458 <programlisting language="bash"> 0459 $ cd $TRAPDIR 0460 $ svn diff >patch.diff 0461 </programlisting> 0462 (Уколико је додата цела нова датотека, треба је прво пријавити СУВ-у помоћу <code>svn add datoteka.sd</code>). Потом се закрпа може послати е-поштом на једну од ових адреса: 0463 <itemizedlist> 0464 <listitem> 0465 <para>директно Чаславу Илићу <email>caslav.ilic@gmx.net</email>, одржаваоцу трапнакрона у Пологији;</para> 0466 </listitem> 0467 <listitem> 0468 <para>на поштанску листу Сорти <email>sorta@googlegroups.com</email>, која се бави питањима рачунарске терминологије на српском језику. Ово је боља варијанта, јер поред одржаваоца и други могу прокоментарисати измене (нпр. ваљаност транскрипција).</para> 0469 </listitem> 0470 </itemizedlist> 0471 </para> 0472 0473 <para>Уместо простог дописивања е-поштом, може се употребити и <ulink url="http://codereview.appspot.com/">Гуглов Преглед кода</ulink>. Овај начин обједињује претходне (шаљу се поруке и одржаваоцу и Сорти), али и омогућава брже и прецизније коментарисање измена и ажурирање предлога. Да би се овоме приступило, прво треба отворити налог на Гуглу (уколико већ није отворен другом приликом), а затим преузети и убацити у путању скрипту <ulink url="http://code.google.com/p/rietveld/wiki/UploadPyUsage"><command>upload.py</command></ulink>, за слање захтева за преглед непосредно из командне линије. Ако је Пера Перић изменио датотеку <filename>people-scientists.sd</filename>, закрпу може послати на преглед овиме: 0474 <programlisting language="bash"> 0475 $ cd $TRAPDIR 0476 $ svn status 0477 M people-scientists.sd 0478 $ upload.py -e pera.peric@negde.net \ 0479 -r caslav.ilic@gmx.net --cc sorta@googlegroups.com --send_mail \ 0480 -m "Допуне трапнакрона." 0481 Upload server: codereview.appspot.com (change with -s/--server) 0482 Loaded authentication cookies from /home/pperic/.codereview_upload_cookies 0483 Issue created. URL: http://codereview.appspot.com/141054 0484 Uploading base file for people-scientists.sd 0485 </programlisting> 0486 Опција <option>-e</option> задаје уредникову адресу е-поште са којом је отворио налог на Гуглу. Опција <option>-r</option> задаје адресу одржаваоца, а <option>--cc</option> Сорте, који треба да буду обавештени о захтеву за преглед. <option>--send_mail</option> чини да им поруке буду одмах послате, насловљене текстом уз опцију <option>-m</option> и са садржајем закрпе. У излазу се добија веза ка захтеву за преглед (горе <literal>http://codereview.appspot.com/141054</literal>), где се налази веб сучеље за даљу обраду захтева. Ако се закрпа накнадно измени, на основу коментара размењених са одржаваоцем и другима, за слање је довољно: 0487 <programlisting language="bash"> 0488 $ cd $TRAPDIR 0489 $ upload.py -e pera.peric@negde.net -i 141054 --send_mail \ 0490 -m "Поправке према коментарима." 0491 Upload server: codereview.appspot.com (change with -s/--server) 0492 Loaded authentication cookies from /home/pperic/.codereview_upload_cookies 0493 Issue updated. URL: http://codereview.appspot.com/141054 0494 </programlisting> 0495 Опција <option>-i</option> задаје број постојећег захтева за предлог, како би се нова закрпа надовезала на стару.</para> 0496 0497 <para>Опција <option>--send_mail</option> може и да се не изда, с намером да се поруке пошаљу касније, преко веб сучеља. Ово је корисно када уредник жели додатно да опише измене, у глобалу или додајући коментаре уз неке од њих.</para> 0498 0499 </sect2> 0500 0501 </sect1> 0502 0503 </chapter>