Line filter that transliterate between the two Serbian scripts.
Линијски филтер који врши пресловљавање писама која се користе у српском језику.
Преузима текст са стандардног улаза, пресловљава га и шаље на стандардни излаз.
Доста тога је преузето из одличног алата Ћирилизатор Јована Турањанина.
Програм прихвата две обавезне заставице. Једнoм се дефинише смер пресловљавања:
- -l2c латиница у ћирилицу
- -c2l ћирилица у латиницу
а другом се наводи формат улаза:
- -text прости (чисти) текст
- -html (X)HTML
Постоје још две заставице које нису обавезне. Оне наводе путању улазног и излазног фајла:
- -i путања до фајла из којег се чита текст који треба да се преслови
- -o путања до фајла у који се уписује пресловљени улазни текст
Обавезно морају да се наведу две заставице, једна за смер и једна за формат улаза. У сваком другом случају, исписује се кратка порука о употреби.
Програм очекује да је улазни текст 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" .
Проверите изграђени фајл:
./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 -txt <`putanja_do_ulaznog_fajla` >`putanja _do__izlaznog_fajla`
На пример:
./translit -c2l -txt <~/Downloads/nabavka.txt >~/Downloads/preslovljeno/nabavka_lat.txt
Ово је софтвер отвореног кода, који се слободно може користити у оквиру MIT лиценце.