Line filter and file converter that transliterate between the two Serbian scripts.
Линијски филтер и конвертор фајлова који врши пресловљавање писама која се користе у српском језику.
Преузима текст са стандардног улаза, пресловљава га и шаље на стандардни излаз. Може и да прихвати улазни фајл, да га преслови и упише у излазни директоријум.
Као инспирација је послужио програм Вучко Александра Веселиновића. Доста тога је преузето из одличног алата Ћирилизатор Јована Турањанина.
Програм може да ради у три режима. У зависности од тога који режим желите да користите, приликом позива је потребно да наведете одговарајуће заставице.
У овом режиму програм чита линију по линију са стандардног улаза, врши пресловљавање и исписује пресловљену линију на стандардни излаз.
Овај режим се активира када наведете две обавезне заставице. Једном се дефинише смер пресловљавања:
-l2cлатиница у ћирилицу-c2lћирилица у латиницу
а другом се наводи формат улаза:
-textпрости (чисти) текст-html(X)HTML
У овом режиму програм чита подешавања за рад из конфигурационог фајла. Режим конфигурације се активира ако наведете заставицу -c.
Није дозвољено навођење било које друге заставице.
У овом режиму програм чита путању до фајла, смер претварања и уписује пресловљени фајл у излазни директоријум. Мора да се наведе једна од заставица за смер пресловљавања:
-l2cлатиница у ћирилицу-c2lћирилица у латиницу
и заставица -i иза које следи путања до улазног фајла.
У сваком другом случају, исписује се кратка порука о употреби.
Програм очекује да је улазни текст UTF-8 кодиран, што је данас углавном тако за текстове на српском језику. У режиму линијског филтера може да се користи самостално, преусмеравањем улаза и излаза у командној линији, или из текст едитора као што је Vim
Целе речи у простом тексту које се налазе између <| и |> се не пресловљавају. Ови маркери морају да се поставе на почетак
прве речи која се не пресловљава и на крај последње речи која се не пресловљава. Маркери се уклањају из резултата.
Чак и у деловима текста означеним тако да се не пресловљавају, програм врши преправку интерпункцијских знакова тако да задовољавају правопис. Било које комбинације знакова навода постају „овакви”, а полунавода ’овакви’.
Приликом пресловљавања простог текста, задржава се увлачење линија које постоји у улазном тексту. Међутим, сав празан простор између речи у линији се своди на по један размак између сваке речи. Тако се омогућава и пресловљавање простог текста означеног са Markdown.
Када се (X)HTML пресловљава са латинице на ћирилицу, lang (односно xml:lang у XHTML 1.1) атрибут html ознаке се
поставља на "sr-Cyrl-t-sr-Latn". Ово означава да је текст на српској ћирилици, пресловљен са оригиналног текста на српској
латиници. Слично је и за супротни смер, само се атрибут поставља на "sr-Latn-t-sr-Cyrl". Ако желите да се нека реч или део
текста не пресловљава, уоквирите га у span елемент чији lang (односно xml:lang у XHTML 1.1) атрибут поставите на
ознаку писма које треба да остане. Погледајте пример у наредном одељку.
Прости текст који се пресловљава са латинице на ћирилицу:
Ovo se preslovljava, <|a ovo ostaje na latinici.|> I ovo je preslovljeno.
Резултат је:
Ово се пресловљава, a ovo ostaje na latinici. И ово је пресловљено.
Улазни XHTML 1.1 фрагмент (означавање које се користи у EPUB2 е-књигама) који се пресловљава са латинице не ћирилицу:
<p class="text">Ovo se preslovljava, <span xml:lang="sr-Latn">a ovo ostaje na latinici.</span> I ovo je preslovljeno.</p>Резултат је:
<p class="text">Ово се пресловљава, <span xml:lang="sr-Latn">a ovo ostaje na latinici.</span> И ово је пресловљено.</p>Претпоставља се да сте инсталирали Go на свој систем. Ако нисте, пратите упутства на овој страници.
Направите један празан директоријум и распакујте у њега архиву изворног кода, или употребите гит да клонирате репозиторијум
git clone https://github.com/eevan78/translit.git
cd translitПреузмите зависности:
go mod tidyПа затим изградите бинарни извршни фајл:
go build -compiler gc -ldflags="-w -s" cmd/translit/translit.goПроверите изграђени фајл:
./translit
или на Windows систему:
.\translit.exe
Ако је све у реду, приказаће се кратко упутство за употребу.
Претпоставимо да je програм изграђен наредбом која је дата у одељку Изградња. Следећом командом се врши пресловљавање html фајла из латинице у ћирилицу. Овом командом се улазни фајл преусмерава на стандардни улаз translit програма, а његов стандардни излаз се преусмерава на излазни фајл.
./translit -l2c -html <`putanja_do_ulaznog_fajla` >`putanja _do__izlaznog_fajla`
На пример:
./translit -l2c -html <~/Downloads/vest.html >~/Downloads/preslovljeno/vest_cir.html
Следећом командом се врши пресловљавање txt фајла из ћирилице у латиницу.
./translit -c2l -text <`putanja_do_ulaznog_fajla` >`putanja _do__izlaznog_fajla`
На пример:
./translit -c2l -text <~/Downloads/nabavka.txt >~/Downloads/preslovljeno/nabavka_lat.txt
Овај пример приказује како се Vim едитором пресловљава XHTML фајл:
Ово је софтвер отвореног кода, који се слободно може користити у оквиру MIT лиценце.
