Програм „Вучко“
Програм [Вучко] се може користити за пребацивање текста и HTML странице из латинице у ћирилицу, и обратно. Ради са текстом/HTML документима написаним у било ком кодном распореду. Пресловљена страница је дата у Unicode UTF-8 распореду што је чини читљивом на свим рачунарским платформама.
За разлику од већине програма те намене, он препознаје велики број изузетака, на пример неће пребацити речи које у себи садрже слово Q, W, X или Y. Нажалост, за разлику од Рас-а не препознаје речи као "надживети" у којима латиничне двословне знаке треба очувати као два слова а не пребацити у једно ћирилично слово. Такође се труди се да преуреди наводнике тако да буду исправни по правопису ("Вучко" постаје „Вучко")
Пример: страница пресловљена у ћирилично писмо
Пример странице која је пребачена у ћирилицу уз помоћ програма [Вучко]:
Брзо упутство:
Windows
- Windows корисници могу користити
bvucko.bat
датотеку и позивати програм и на следећи начин:bvucko -cp1250 -in index.html -out index-c.html
- Windows корисници могу користити и
bc2l.bat
датотеку и позивати програм и на следећи начин:bc2l -iso8859-5 -in index.html -out index-c.html
Linux
- Пример позива:
(програмhtmlany2utf -cp1250 -in index.html | vucko -out index-c.html
htmlany2utf
улазну датотекуindex.html
која је уcp1250
кодном распореду пребацује у UnicodeUTF-8
распоред и шаље је наstdout
-стандардни излаз (пошто-out
датотека није наведена) који даље прихвата „Вучко“ са stdin-стандардног улаза (пошто-in
датотека није дата) и резултат, текст пребачен у ћирилицу, уписује у датотекуindex-c.html
). - Пример позива за пребацивање странице из ћирилице у латиницу:
(ћирилични HTML документhtmlany2utf -iso8859-5 -in index.html | c2l -out index-l.html
index.html
се уз помоћ програмаhtmlany2utf
пребацује изiso8859-5
распореда уUTF-8
распоред и шаље на стандардни излаз одакле га прихвата програмc2l
, пребацује у латиницу и уписује у датотекуindex-l.html
).c2l
такође познаје<code></code>
тагове и текст који се у њима налази не пребацује у латинично писмо.
Основне карактеристике:
htmlany2utf
може да пребаци интернет странице из било ког распореда у стандардни UnicodeUTF-8
распоред без пребацивања текста у ћирилицу. Може се искористити да се поправе странице које су грешком записане у распореду где нема ни наших латиничних слова већ је за њих коришћен децимални или хексадецимални Unicode HTML запис (&#xxx;
).- Препознаје мејл и интернет адресе и не пребацује их у ћирилицу.
- Текст између
<lang></lang>
и<code></code>
тагова не пребацује у ћирилицу! Интернет читачи игноришу непознате тагове (<lang>
) па је њихова употреба безбедна, а при пребацивању у ћирилицу „Вучко“ уклања<lang></lang>
тагове. - Реч која у себи садржи неко од слова qwyx се не пребацује у ћирилицу (треба имати у виду да програм не разуме енглески и друге језике па ће стране речи без тих слова ипак бити пребачене у ћирилицу; у тим случајевима делове текста претходно ставити у
<lang></lang>
тагове — што је коришћено при пребацивању неких од тест страница на ћирилицу). - Труди се да преуреди наводнике тако да буду исправни по правопису ("Вучко" постаје „Вучко“)
- Ако треба спречити стапање слова, n и j у слово њ онда треба поставити празан таг између,
<!>
ће послужити. - Ради из командне линије (DOS-а, UNIX терминала). Може да ради и као филтер текста, за пребацивање текста „у лету“. Програм долази са помоћним програмом
htmlany2utf
који представља предфилтар и омогућава рад са великим бројем кодних распореда:
htmlany2utf 0.801 (2003-10-26) Program that converts HTML file from given encoding to UTF-8 encoding replacing HTML decimal and hex unicode encoded characters to single unicode character. Usage: htmlany2utf -inputencoding [-in inputfile] [-out outputfile] If inputfile is omitted stdin is used. If outputfile is omitted stdout is used. Inputencoding is one of: cp850, cp852, cp855, cp866, cp1250, cp1251, cp1252,iso8859-1 (latin1), iso8859-2 (latin2), iso8859-3 (latin3), iso8859-4, iso8859-5, iso8859-6, iso8859-7, iso8859-8, iso8859-9, iso8859-10, iso8859-11, iso8859-13, iso8859-14, iso8859-15 (latin9), iso8859-16, koi8-r, utf8.
Vucko 0.989 (2003-11-10) Program that transliterates Serbian HTML/TXT documents written in Latin alphabet to Cyrillic alphabet. Works only for pages in UTF-8 encoding! For HTML/TXT pages in other encodings first use program 'htmlany2utf'. Usage: vucko [-text] [-in inputfile] [-out outputfile] If inputfile is omitted stdin is used. If outputfile is omitted stdout is used. -text Process file as text, ignore HTML tags. Useful for emails, agency news...
c2l 0.01 (2003-10-26) Program that transliterates Serbian HTML/TXT documents written in Cyrillic alphabet to Latin alphabet. Works only for pages in Unicode UTF-8 encoding! For HTML/TXT pages in other encodings first use program 'htmlany2utf'. Usage: c2l [-in inputfile] [-out outputfile] If inputfile is omitted stdin is used. If outputfile is omitted stdout is used.
Како је настао?
Програм је настао на Електротехничком факултету у Београду као део подухвата „Рачунарски алати за српски језик“, а у склопу акција „Националног већа за српски језик и писмо“. Овај мали лични пројекат је за сада удомљен на овој страници и рад на њему се наставља
Програм ради са HTML страницама и чистим текстом у следећим кодним распоредима: cp850
, cp852
, cp855
, cp866
, cp1250
, cp1251
, cp1252
,iso8859-1 (latin1)
, iso8859-2 (latin2)
, iso8859-3 (latin3)
, iso8859-4
, iso8859-5
, iso8859-6
, iso8859-7
, iso8859-8
, iso8859-9
, iso8859-10
, iso8859-11
, iso8859-13
, iso8859-14
, iso8859-15 (latin9)
, iso8859-16
, koi8-r
и utf8
(текстови на српском језику у латиничном писму су углавном писани у cp1250
и iso8859-2
кодном распореду). Програм „Вучко“ интерно ради као Unicode, а подаци му се достављају преко другог модула, htmlany2utf
који улазну страницу/текст из било ког кодног распореда пребацује у Unicode. Нова ћирилична страница је такође у Unicode UTF-8 распореду и то омогућава читљивост и едитовање текста на свим оперативним системима!
За пребацивање текста из ћирилице у латиницу на располагању је програм c2l
. И овај програм као и „Вучко“ ради само са HTML/TXT датотекама у Unicode UTF-8 распореду. Ако у латинично писмо треба пребацити текст писан у неком другом распореду податке програму треба доставити преко htmlany2utf
програма — на исти начин као и за „Вучка“.
Страница/текст која је пребачена у ћирилицу/латиницу је у Unicode UTF-8
Тест странице - ћириличне:
- Би-Би-Си на српском (оригинал)
- Глас јавности (оригинал)
- Политика (оригинал)
- Вечерње новости (оригинал)
- Б92 (оригинал)
- РТС (оригинал)
- Дневник (оригинал)
- Независне новине (оригинал)
- Ekonomist online (оригинал)
- Интернет огледало (оригинал)
- Linux Србија (оригинал)
- Microsoft Србија и Црна Гора (оригинал)
- Електротехнички факултет, Београд (оригинал)
- Министарство просвете и спорта (оригинал)
- СезамПро (оригинал)
- Пошта (оригинал)
- Часопис „Пи-Си“ (оригинал)
- Часопис Микро (оригинал)
Преузимање програма:
Преузмите нову верзију (0.989) програма
Windows верзија (84kb) Linux верзија (54kb) UNIX-Solaris верзија (55kb)
Повратна информација о програму „Вучко“ је пожељна: шта мислите да би требало да се дода или одузме, шта за сада ваља а шта не...
Ауторска права - да ли и под којим условима могу користити програм?
За личну употребу: За ваше личне стране коришћење програма је слободно и бесплатно. На личном сајту који је пребачен на ћирилицу уз помоћ „Вучка" ставити линк на http://galeb.etf.bg.ac.yu/~alexa/ и послати е-пошту .
За употребу за сајтове група, установа, предузећа и држава, те друге сајтове који имају службену или полуслужбену сврху: контактирати ради једноставног договора и регистрације!
Пресловљавање целих интернет презентација
За пребацивање целих сајтова се може искористити Perl скрипт:
#!/usr/bin/perl -w # Аутор: Александар Веселиновић # Користити за пресловљавање свих докумената у директоријуму и свим # директоријумима изнад у ћирилично писмо. use strict; use File::Find; my $filename; my $VUCKO = "~/bin/vucko"; # где се налази програм „Вучко“ my $HTMLANY = "~/bin/htmlany2utf"; # где се налази програм за пребацивање у UTF-8 распоред my $encoding = "utf8"; my $extension; my $html_page; my $FILE; @ARGV = qw(.) unless @ARGV; # Кодни распоред докумената (cp1250, iso8859-5, utf8..., за цео списак # погледати Вучко документацију. print "Enter encoding: "; chomp($encoding = <STDIN>); # Унети екстензију датотека које треба пресловити (рецимо: htm, html, txt...) print "Enter default extension: "; chomp($extension = <STDIN>); find(\&vucko, @ARGV); sub vucko { return unless -f $_; $filename = $_; print "Processing: $File::Find::name\n"; if ($_ =~ /.\.*${extension}/) { unlink("vucko_tmp"); rename ($filename, "vucko_tmp"); ############################################################################# # Изузеци: ако неки део текста треба да остане у латиничном писму, а # појављује се на свакој страници интернет презентације коју треба # пресловити: ############################################################################# # open (FILE, "<vucko_tmp"); # $html_page = join("",<FILE>); # $html_page =~ s#Designed by Miloje#<lang>$&</lang>#g; # close(FILE); # open (FILE, ">vucko_tmp"); # print FILE $html_page; # close (FILE); ############################################################################# system("$HTMLANY -$encoding -in vucko_tmp | $VUCKO -out $filename"); unlink("vucko_tmp"); } return; }
Уколико се сајт налази на мрежи, а желели би да га пресловите можете га снимити у локалу на ваш диск уз помоћ програма [wget], Хрвоја Никшића, командом:
wget -m -k -p http://некисајт/
Програм wget можете наћи на мрежи за све оперативне системе. Windows корисници могу погледати следећу [страницу].