#!/bin/sh # KOI8R E: 0xA3, 0xB3 òîãäà ÷òî òàêîå? # http://kiarchive.relcom.ru/pub/internet/rfc/rfc1489.txt # http://www.orgland.ru/~maxim/charsets.images.html#koi help=" ïÅÐÅÊÎÄÈÐÎÂÙÈÊ ÑÄÅËÀÍÍÛÉ ÈÇ tr $0 [-A | -a | -k | ... ] file1 file2 -A | -ALT - ÈÇ ÀËÜÒÅÐÍÀÒÈÂÍÎÉ Â áÅÑÒÎÂÑÊÓÞ -a | -alt - ÈÇ áÅÑÒÎÂÑÊÎÉ Â ÀËÜÒÅÐÍÀÒÈÂÍÓÞ -K | -KOI - Koi8 --> Besta -k | -koi - Besta --> Koi8 -I | -ISO - ISO  áÅÑÒÓ -i | -iso - Besta  ISO -W | -WIN - Windows  áÅÑÒÓ -w | -win - Besta  Windows -UTF8 - Word-8 UTF-8  Windows -utf8 - Windows â UTF-8 -MAC - Macintosh  áÅÑÒÓ -MACB - Macintosh ÈÌÅÍÈ áÅËßÅÂÀ  áÅÑÒÓ -MACYR - Macintosh ÈÌÅÍÈ ëÜÂÀ õÀÊÀÍÀ -mac - Besta  Macintosh -KOI7 - True KOI7 --> áÅÑÒÀ (ýÒÎ -- ÍÀÑÒÎßÙÈÉ ãîñò êîè7.) -KOI7T - KOI7 èìåíè Òàðàñîâà -koi7 - áÅÑÒÀ --> true KOI7 (|TO -- NASTOQ]IJ gost koi7.) -RKOI7 - Readable KOI7 --> áÅÑÒÀ (÷ÈÒÀÁÅËÜÍÛÉ ãîñò êîè7.) -rkoi7 - áÅÑÒÀ --> readable KOI7 (~itabelxnyj GOST KOI7.) -R | -rus - Transliteraciq --> áÅÑÒÀ -r | -lat - áÅÑÒÀ --> Transliteraciq -b | -down - áîëüøèå áóêâû  ÌÀËÅÍÜÊÈÅ ÁÓÊÂÛ -B | -UP - ÌÀËÅÍÜÊÈÅ ÁÓÊÂÛ Â áîëüøèå áóêâû -s | -sparc - KOI  SPARCprinter-russian -M | -CRLFLF - CRLF --> LF ( dos --> UNIX) -m | -lfcrlf - LF --> CRLF (UNIX --> dos ) -L | -LETTER - ïceÂÄoÊuÐuËËuÖa  ÊÈÐÈËËÈÖÓ ÃËÓÏÀß -TU - ^T^U  ASCII -FIDO - êÈÐÈËËÈÖÀ  ÏceÂÄoÊupuËËuÖy ÃËÓÏÀß -P - ïceÂÄoÊuÐuËËuÖa  ÊÈÐÈËËÈÖÓ ÓÌÍÀß -p - ïÅpÅÊÎÄÈpÎÂÊÀ "ÍÅpÓÑÑÊÎÉ" "Ð" -fido - êÈÐÈËÈÖÀ  ïÅpÅÊÎÄÈpÎÂÊÀ "í" --> "H", "Ð" --> "p" -rk ëÈÊÂÈÄÀÖÈß RK-ØÍÎÉ ÐÀÑÊÐÀÑÊÈ È ÐÀÌÎ×ÅÊ -altram ëÈÊÂÈÄÀÖÈß ALT-ØÍÛÕ ÐÀÌÎ×ÅÊ -altramwin ïÅÐÅÂÎÄ ALT-ØÍÛÕ ÐÀÌÎ×ÅÊ Â ÂÈÍÄÞÊÎÂÛÅ -koiram ëÈÊÂÈÄÀÖÈß KOI-ØÍÛÕ ÐÀÌÎ×ÅÊ -bach2rk ïÐÅÎÁÐÀÇÎÂÀÂÍÈÅ ÐÀÌÎ×ÅÊ È ÐÀÑÊÐÀÑÊÈ ÈÇ ÊÍÈÃÈ ìÎÐÈÑÀ áÀÕÀ -iwasi2rk ïÐÅÎÁÐÀÇÎÂÀÂÍÈÅ ÐÀÑÊÐÀÑÊÈ ÈÇ ÊÍÈÃÈ Ñ èÂÀÑßÌÈ -rk2pcl RK  HP laserjet II -mosaic2rk Nestscape Hex Encoding to besta -man2rk catman format  Rk-ØÍÓÞ ÐÀÑÊÐÀÑÊÓ -rtf2rk ÂÈÍÄÎÂÛÅ ÁÓÊÂÛ ÔÎÐÌÀÒÀ RTF  ÁÅÑÒÎÂÑÊÓÞ ÊÎÄÈÐÎÂÊÓ -GAK ÊÎÄÈÐÎÂÊÀ ÏÈÑÜÌÀ, ÊÎÒÎÐÎÅ ÌÍÅ ÎÄÍÀÆÄÛ ÏÐÈÑËÀË êÓØÍÈÐÅÍÊÎ -GOS ÏÎÕÎÆÀß ÍÀ GAK ÊÎÄÈÐÎÂÊÀ -  ÍÅÉ ÏÐÈØÅË ÔÀÉË Ñ ïÅËÅÂÈÍÛÌ -NNF ÍÈ ÍÀ ×ÒÎ ÍÅÏÎÕÎÆÀß ÊÎÄÈÐÎÂÊÀ ÏÐÈÑËÀÍÍÀß íÈÊ.íÈÊ.ôÅÄÎÒÎÂÛÌ -NNF2 ÏÎÕÎÆÀß ÍÀ ÍÅÅ ÊÎÄÈÐÎÂÊÀ ÎÒ êÀÒÈ äÛÌÀÊÎÂÎÉ -PRUD ÊÎÄÈÐÎÂÊÀ ÏÈÑÜÌÀ, ÊÎÒÎÐÎÅ ÌÍÅ ÎÄÍÀÆÄÛ ÏÐÈÑËÀË ïÐÓÄÍÈÊ -index2dir ÎÁÐÀÒÍÀß ÏÅÐÅÊÎÄÈÐÎÂÊÀ index.html  .dir -EOP ëÈÊÂÈÄÈÐÎÂÀÒÜ ÐÀÇÌÅÒÊÓ ÍÀ ÑÒÐÀÍÈÖÛ Â ÊÍÈÆÊÅ -ABZAC ðÀÇÄÅËÈÒÜ ÀÁÇÀÖÛ ÏÓÑÒÛÌÈ ÑÒÐÎÊÀÌÈ -abzac ñÏËÞÙÈÒÜ ÏÓÑÒÛÅ ÑÒÐÎÊÈ ÌÅÆÄÓ ÀÁÇÀÖÀÌÈ -REABZAC ÓÄÀËÈÒÜ ÀÁÇÀÖÍÛÉ ÎÒÑÒÓÏ Ñ ÌÀËÎÉ ÁÓÊÂÛ. -LINE ÂÛÒßÍÓÒÜ ÀÁÇÀÖÛ Â ÎÄÍÓ ÑÒÐÎÊÓ, ÄËß ÇÀÃÐÓÇÊÈ Â ÂÎÐÄ -OTSTUP âÎÑÑÒÀÍÎÂÈÒÜ ÑÁÈÒÛÉ ÀÁÇÀÖÍÛÉ ÎÒÑÒÓÏ -OTSTUP2 âÎÑÑÒÀÍÎÂÈÒÜ ÑÏËÞÙÅÍÍÛÉ ÀÁÇÀÖÍÛÉ ÎÒÑÒÓÏ -WW ÔÎÐÌÀÒÈÐÎÂÀÍÈÅ âÎÐÄ-6 ÄÎÊÓÌÅÍÒÀ  ÔÀÉË moshkow.txt -WWC ÔÎÐÌÀÒÈÐÎÂÀÍÈÅ âÎÐÄ-6-courier ÄÎÊÓÌÅÍÒÀ  ÔÀÉË moshkow.txt -WWID ×èñòèò Âîðäîâñêèå [Author ID...] -LYR ïÅÐÅÂÎÄ .lyr ÔÀÉËÀ ÑÈÑÒÅÌÛ äÈÌÛ çÀÉÖÅÂÀ  ðê -AKSRUS ëÀÒÈÍÈÖÀ Ñ ÐÎÌÀÍÎÌ àÊÑÅÍÎÂÀ  ðê -HEX ÈÇ ØÅÑÒÍÀÄÖÀÒÅÐÈ×ÊÈ 0xef --  ASCII -ANS ÈÑÏÐÀÂËßÅÒ Word DOC ÑÎÕÐÀÍÅÍÍÛÅ Â As text with layout -ASC ÈÑÏÐÀÂËßÅÒ Word DOC ÑÎÕÐÀÍÅÍÍÛÅ Â As text with layout -LEX èÇ ëÅÊÑÈÊÎÍÎÂÑÊÎÉ ÐÀÑÊÐÀÑÊÈ Â ðÊ -COM anticomma - ÐÀÑÑÒÀÍÎÂÊÀ ÏÐÎÁÅËΠÌÅÆÄÓ ÇÍÀÊÀÌÈ ÏÐÅÏÈÍÀÍÈß -CT1CU âÛÄÅËßÅÒ ÇÀÃÎËÎÂÊÀÌÈ ÎÒÄÅËÜÍÛÅ ÖÈÔÐÛ -psewdo ïÐÅÎÁÐÀÇÎÂÀÍÈÅ ÏÑÅÂÄÎÃÐÀÔÈÊÈ rk ÄËß ÏÅ×ÀÒÈ -preformat ðÀÑÒÀÙÈÒÜ ÒÈÐÅ Â "==" ÏÅÐÅÄ ÔÎÐÌÀÒÎÌ ðÊ-ÎÉ -PERENOS ëÈÊÂÈÄÈÐÎÂÀÒÜ ÏÅÐÅÍÎÑÛ -PREFORMAT ïÐÅÂÐÀÒÈÒÜ "=="  ÒÈÐÅ Â "--" ÏÎÑËÅ ÔÎÐÌÀÒÀ ðÊ -HARRY ïÎÄÍßÒÜ ÇÀÃÎËÎÂÊÈ ÏÎ ÕÀÐÐÈÔÀÍÎÂÑÊÈ -wfor îÒÑÒÓÏ È ÏÓÑÒÀß ÑÒÐÎÊÀ  ÊÀÆÄÎÌ ÀÁÇÀÖÅ ÄËß ÔÎÐÌÀÒÀÆÀ doc-ÔÀÉËÀ -hlebnikow óÄÀËÈÒÜ MS-ÑÍÛÅ ÇÀÊÈÄÎÍÛ ÈÇ html-ÔÀÉËÀ -MAN NROFF  RK -NAB âÎÐÄÎÂÑÊÈÉ html  ÊÎÒÎÐÎÌ ÌÍÅ ÏÐÈÑÛËÀÞÒ íÀÁÎÊÎÂÀ -NA óÏËÎÙÅÍÈÅ âÎÐÄÎÂÑÊÎÃÎ html -NA2 ñÓÐÎÂÎÅ ÏÐÅÑÑÎÂÀÍÈÅ âÎÐÄ-8-ÃÎ html  ÌÎÉ ÔÎÐÌÀÒ. -AKM àÍÒÈÐÅÌÎÂÑÊÀß ÃÐÛÇÍß ÄËß ÆÓÐÍÀËÀ "àêì" -AHREF "ïÎÄÍßÒÜ" ÂÑÅ http-ËÈÍÊÈ -SKRIZHALI âÎÐÄÎÂÑÊÈÉ html ÈÌÅÍÈ ñÅÐÃÅß ìÈÕÀÉËÎÂÀ -SH ïÎ×ÒÈ ÒÅÊÑÒÎÂÛÅ ÔÀÉËÛ ÎÒ àËÅÊÑÀ øÈËÎ -KRU ïÎ×ÒÈ ÒÅÊÑÒÎÂÛÅ ÔÀÉËÛ ÎÒ åÊÀÒÅÐÈÍÛ êÐÓÃËÎÂÎÉ -LIB ôÎÐÌÀÒ html-lib.ru  .txt -TEXTSHARE -MSHTML ÂÛ×ÈÑÒÈÒÜ MS-html ÎÒ ÌÓÑÎÐÀ -NOHTML ÓÄÀËÈÒÜ ÂÑÅ html ÒÀÃÈ -NOHTMLIB ÓÄÀËÈÒÜ ÂÑÅ html ÒÀÃÈ ÊÐÎÌÅ -UTFHTML aqute -  ÂÈÍÄÎÂÑ -UTFNUM [ÖÈÔÐÀ]  ÁÅÑÒÓ -mime To Nestscape Hex Encoding -MIME From Nestscape Hex Encoding -UNIW Äåñÿòè÷íàÿ UNICODE-windows à-ï-ÿ А П Я - 1040 + 192 -uni Windows â äâóõáàéòîâûé unicode -uniw  Äåñÿòè÷íàÿ UNICODE-windows à-ï-ÿ А П Я - 1040 + 192 -UNI Äåñÿòè÷íàÿ UNICODE asciià А èëè a -oct To octanumeric -LADA ÔÎÐÌÀÒÈÐÎÂÀÒÜ ÒÅÊÑÒ ÏÎÑËÅ ëÀÄÈÍÎÃÎ ÌÀÊÐÎÑÀ -KW ÔÎÐÌÀÒÈÐÎÂÀÒÜ ÂÎÐÄÎÂÛÉ ôàéë ïîñðåäñòâîì kword â RH 7.3 -NO íè×åãî íå ìåíÿòü -WH ïîëíàÿ çà÷èñòêà MS-õòìëíîãî ôàéëà -WHC ïîëíàÿ çà÷èñòêà MS-õòìëíîãî ôàéëà ñ ïðåôîðìàòîì -RTF âèíäîâñ-1251-rtf â plaintext " CAT=cat export CAT # ÏÐÅÄÊÎÄÈÐÎÂÙÈÊ. íÓÆÅÍ ÀËÜÒÅÐÍÀÒÈÂÊÅ - ÑÏÀÑÀÒÜ ÁÓÊÂÓ yo LC_CTYPE=C export LC_CTYPE # CAT=ALTYO export CAT KOI_help() { echo "$@ $help" } KBD='qwertyuiop[]asdfghjkl;'"'"'zxcvbnm,.QWERTYUIOP{}ASDFGHJKL:"ZXCVBNM<>''/=1567902' BEST='ÉÖÓÊÅÍÃØÙÇÕ¢ÔÛÂÀÏÐÎËÄÆ'"Ý"'ß×ÑÌÈÒÜÁÞéöóêåíãøùçõ�ôûâàïðîëäæýÿ÷ñìèòüáþ''e?!:,.()-' BESTA="àáâãäåæçèéêëìíîïðñòóôõö÷øù�ûüýþÿÀÁÂÃÄÅÆÇÈÉÊËÌÍÎÏÐÑÒÓÔÕÖ×ØÙ¢ÛÜÝÞß�" LATIN='ABWGDEVZIJKLMNOPRSTUFHC+{}�YX|~Qabwgdevzijklmnoprstufhc=\133\135¢yx\\`q�' RKOI7='ABWGDEVZIJKLMNOPRSTUFHC^[]_YX\\@Qabwgdevzijklmnoprstufhc~{}_yx|`q�' KOI7T='ABVGDE}ZIHKLMNOPRSTUFXC|WQ:{"+YJabvgde]zihklmnoprstufxc\\wq;['"'"'=yj�' KOI7='abwgdevzijklmnoprstufhc~{}_yx|`qABWGDEVZIJKLMNOPRSTUFHC^[]\177YX\\@Q�' SPARC="abcdefghijklmnopqrstuvwxyz¢ÛÜÝÞßABCDEFGHIJKLMNOPQRSTUVWXYZ�ûüýþÿ�" KOI="ÀÁÂÃÄÅÆÇÈÉÊËÌÍÎÏÐÑÒÓÔÕÖרÙ\377ÛÜÝÞßàáâãäåæçèéêëìíîïðñòóôõö÷øùúûüýþÿ�" ISO='¹€�¨ª½²¯£ŠŒŽ�¥¡�þàáöäåôãõèéêëìíîïÿðñòóæâüûçøýù÷úÞÀÁÖÄÅÔÃÕÈÉÊËÌÍÎ�' WIN="þàáöäåôãõèéêëìíîïÿðñòóæâüûçøýù÷úÞÀÁÖÄÅÔÃÕÈÉÊËÌÍÎÏßÐÑÒÓÆÂÜÛÇØÝÙ×\377�" ALTERNAT="\200\201\202\203\204\205\206\207\210\211\212\213\214\215\216\217\220\221\222\223\224\225\226\227\230\231\232\233\234\235\236\237\240\241\242\243\244\245\246\247\250\251\252\253\254\255\256\257\340\341\342\343\344\345\346\347\350\351\352\353\354\355\356\357¨" GAK="\200\201\202\203\204\205\206\207\210\211\212\213\214\215\216\217\220\221\222\223\224\225\226\227\230\231\232\233\234\235\236\237\232\241\242\243\244\245\246\247\263\277\252\253\254\255\256\257\301\302\327\307\304\305\326\332\311\312\352\314\315\355\317\320\300" GOS="\200\201\202\203\204\205\206\207\210\211\212\213\214\215\216\217\220\221\222\223\224\225\226\227\230\231\232\233\234\235\236\237\232\241\242\270\244\245\246\247\263\277\252\253\254\255\256\257\301\302\327\307\304\305\326\332\311\312\313\314\315\316\317\320\300" MAC="\200\201\202\203\204\205\206\207\210\211\212\213\214\215\216\217\220\221\222\223\224\225\226\227\230\231\232\233\234\235\236\237\340\341\342\343\344\345\346\347\350\351\352\353\354\355\356\357\360\361\362\363\364\365\366\367\370\371\372\373\374\375\376\377¨" BOLXSHIE="ABCDEFGHIJKLMNOPQRSTUVWXYZÀÁÂÃÄÅÆÇÈÉÊËÌÍÎÏÐÑÒÓÔÕÖרÙÚÛÜÝÞß�" malenxkie="abcdefghijklmnopqrstuvwxyzàáâãäåæçèéêëìíîïðñòóôõö÷øùúûüýþÿ�" LETTERS='acpyeuoxcnmETOPAHKXCBM' BUKWY='ÀÑÐÓÅÈÎÕÑÏÌåòîðàíêõñáì' NNF='óÂÀÆÅÌÛÉìÊÑÈ.áÏÁÎÍÒòÇÞêËßèÄâïÜÃÐÓÖôíר' nnf='¹òðöõüŽù\234ú¸ø.ñÿñþý�ƒ÷¡\232û�\230ô\222\237�󨀲º\235¯£' NNF2='ýçðãîåÉì÷ÿØÞïÕàòÂÆáèíÃñÁ×ÐÖÇÌÈÏÅÑÍÎÊÀÄäâË''ß''Ü''''Ó''Ò''''Û' nnf2='í×àÓÞÕùÜçï�ƒß¡ÐâòöÑØÝóáñ�Ѝ÷üøÿõ¸ýþúðôÔÒû\237\235\203\220\236' TRANSLATOR=tr UNIXORDOS=cat ECHO=echo case "$OSTYPE" in Linux|linux*) ECHO="echo -e" ;; SunOS*)case `uname -a` in *4.1*|SunOS4*) ECHO=/usr/5bin/echo ;; esac ;; "") case `uname -a` in SunOS*4.1*|SunOS4*) ECHO=/usr/5bin/echo ;; esac ;; esac LC_ALL=C export LC_ALL CTRL_M=`$ECHO "\015"` ESC=`$ECHO "\033"` # while # ðàçáîð è âûäåëåíèå ôëàãîâ # [ X != "X$*" ] # do case "$1" in -a|-alt) FROM="$KOI" INTO="$ALTERNAT" UNIXORDOS=unix2dos ; shift ;; -A|-ALT) CAT=ALTYO FROM="$ALTERNAT" INTO="$KOI" UNIXORDOS=dos2unix ; shift ;; -GAK) FROM="$GAK" INTO="$KOI" UNIXORDOS=dos2unix ; shift ;; -GOS) FROM="$GOS" INTO="$KOI" UNIXORDOS=dos2unix ; shift ;; -NNF) FROM="$nnf" INTO="$NNF" ; shift ;; -NNF2) FROM="$nnf2" INTO="$NNF2" ; shift ;; -k|-koi) FROM="$BESTA" INTO="$KOI" ; shift ;; -K|-KOI) FROM="$KOI" INTO="$BESTA" ; shift ;; -i|-iso) FROM="$KOI" INTO="$ISO" ; shift ;; -I|-iso) FROM="$ISO" INTO="$KOI" ; shift ;; -w|-win) FROM="$KOI" INTO="$WIN" ; shift ;; -W|-WIN) FROM="$WIN" INTO="$KOI" UNIXORDOS=dos2unix ; shift ;; -MAC) FROM="$MAC"'ðâãõú÷ÿ' INTO="$KOI"'""""ßÅ-' ; shift ;; -KOI7T) FROM="$KOI7T"'`%' INTO="$KOI"'e"' ; shift ;; -MACB) FROM="$MAC" INTO="$KOI" ; shift ;; -KBD) FROM="$KBD" INTO="$BEST" ; shift ;; -mac) FROM="$KOI" INTO="$MAC" ; shift ;; -KOI7) FROM="$KOI7" INTO="$KOI" ; shift ;; -koi7) FROM="$KOI" INTO="$KOI7" ; shift ;; -RKOI7) FROM="$RKOI7" INTO="$KOI" ; shift ;; -rkoi7) FROM="$KOI" INTO="$RKOI7" ; shift ;; -r|-lat) FROM="$KOI" INTO="$LATIN" ; shift ;; -R|-rus|-RUS) FROM="$LATIN" INTO="$KOI" ; shift ;; -s|-sparc) FROM="$KOI" INTO="$SPARC" ; shift ;; -L|-LETTER) FROM="$LETTERS" INTO="$BUKWY" ; shift ;; -b|-down) FROM="$BOLXSHIE" INTO="$malenxkie" ; shift ;; -B|-UP) FROM="$malenxkie" INTO="$BOLXSHIE" ; shift ;; -FIDO) FROM="$BUKWY" INTO="$LETTERS" ; shift ;; -UTF8) TRANSLATOR=cat UNIXORDOS=UTF8 ; shift ;; -utf8) TRANSLATOR=cat UNIXORDOS=utf8n ; shift ;; -TU) TRANSLATOR=cat UNIXORDOS=TU ; shift ;; -M|-CRLFLF) TRANSLATOR=cat UNIXORDOS=dos2unix ; shift ;; -m|-lfcrlf) TRANSLATOR=cat UNIXORDOS=unix2dos ; shift ;; -p) TRANSLATOR=cat UNIXORDOS=antip ; shift ;; -fido) TRANSLATOR=cat UNIXORDOS=tofido ; shift ;; -P) TRANSLATOR=cat UNIXORDOS=antiwse ; shift ;; -rk) TRANSLATOR=cat UNIXORDOS=anticolorramki; shift ;; -koiram) TRANSLATOR=cat UNIXORDOS=antikoiramki ; shift ;; -altram) TRANSLATOR=cat UNIXORDOS=altram ; shift ;; -altramwin) TRANSLATOR=cat UNIXORDOS=altramkiwin ; shift ;; -bach2rk) TRANSLATOR=cat UNIXORDOS=bach2rk ; shift ;; -iwasi2rk) TRANSLATOR=cat UNIXORDOS=iwasi2rk ; shift ;; -mosaic2rk) TRANSLATOR=cat UNIXORDOS=mosaic2rk ; shift ;; -rk2pcl) TRANSLATOR=cat UNIXORDOS=rk2pcl ; shift ;; -man2rk) TRANSLATOR=cat UNIXORDOS=man2rk ; shift ;; -RTF2RK) TRANSLATOR=cat UNIXORDOS=RTF2RK ; shift ;; -index2dir) TRANSLATOR=cat UNIXORDOS=index2dir; shift ;; -EOP) TRANSLATOR=cat UNIXORDOS=eop ; shift ;; -ABZAC) TRANSLATOR=cat UNIXORDOS=ABZAC ; shift ;; -abzac) TRANSLATOR=cat UNIXORDOS=abzac ; shift ;; -oTSTUP) TRANSLATOR=cat UNIXORDOS=oTSTUP ; shift ;; -OTSTUP) TRANSLATOR=cat UNIXORDOS=OTSTUP ; shift ;; -OTSTUP2) TRANSLATOR=cat UNIXORDOS=OTSTUP2 ; shift ;; -WW) TRANSLATOR=cat UNIXORDOS=WW ; shift ;; -WWC) TRANSLATOR=cat UNIXORDOS=WWC ; shift ;; -WWID) TRANSLATOR=cat UNIXORDOS=WWID ; shift ;; -KW) TRANSLATOR=cat UNIXORDOS=KW ; shift ;; -LYR) TRANSLATOR=cat UNIXORDOS=lyr ; shift ;; -AKSRUS) TRANSLATOR=cat UNIXORDOS=aksrus ; shift ;; -HEX) TRANSLATOR=cat UNIXORDOS=fromhex ; shift ;; -ANS) TRANSLATOR=cat UNIXORDOS=ANS ; shift ;; -ASC) TRANSLATOR=cat UNIXORDOS=ASC ; shift ;; -LEX) TRANSLATOR=cat UNIXORDOS=LEX ; shift ;; -COM) TRANSLATOR=cat UNIXORDOS=anticomma ; shift ;; -CT1CU) TRANSLATOR=cat UNIXORDOS=CT1CU ; shift ;; -PRUD) TRANSLATOR=cat UNIXORDOS=PRUD ; shift ;; -HRAM) TRANSLATOR=cat UNIXORDOS=HRAM ; shift ;; -PERENOS) TRANSLATOR=cat UNIXORDOS=PERENOS ; shift ;; -preformat) TRANSLATOR=cat UNIXORDOS=preformat; shift ;; -PREFORMAT) TRANSLATOR=cat UNIXORDOS=PREFORMAT; shift ;; -FORMAT) TRANSLATOR=cat UNIXORDOS=FORMAT ; shift ;; -wfor) TRANSLATOR=cat UNIXORDOS=wfor ; shift ;; -psewdo) TRANSLATOR=cat UNIXORDOS=psewdo ; shift ;; -hlebnikow) TRANSLATOR=cat UNIXORDOS=hlebnikow; shift ;; -MAN) TRANSLATOR=cat UNIXORDOS=MAN ; shift ;; -NAB) TRANSLATOR=cat UNIXORDOS=NAB ; shift ;; -NA) TRANSLATOR=cat UNIXORDOS=NA ; shift ;; -NA2) TRANSLATOR=cat UNIXORDOS=NA2 ; shift ;; -NA3) TRANSLATOR=cat UNIXORDOS=NA3 ; shift ;; -SKRIZHALI) TRANSLATOR=cat UNIXORDOS=SKRIZHALI; shift ;; -SH) TRANSLATOR=cat UNIXORDOS=SH ; shift ;; -KRU) TRANSLATOR=cat UNIXORDOS=KRU ; shift ;; -AHREF) TRANSLATOR=cat UNIXORDOS=AHREF ; shift ;; -HARRY) TRANSLATOR=cat UNIXORDOS=harry ; shift ;; -AKM) TRANSLATOR=cat UNIXORDOS=AKM ; shift ;; -LIB) TRANSLATOR=cat UNIXORDOS=LIB ; shift ;; -TEXTSHARE) TRANSLATOR=cat UNIXORDOS=TEXTSHARE; shift ;; -sort|-SORT) TRANSLATOR=cat UNIXORDOS=SORT ; shift ;; -REABZAC) TRANSLATOR=cat UNIXORDOS=REABZAC ; shift ;; -LINE) TRANSLATOR=cat UNIXORDOS=LINE ; shift ;; -MSHTML) TRANSLATOR=cat UNIXORDOS=MSHTML ; shift ;; -NOHTML) TRANSLATOR=cat UNIXORDOS=NOHTML ; shift ;; -NOHTMLIB) TRANSLATOR=cat UNIXORDOS=NOHTMLIB ; shift ;; -UTFHTML) TRANSLATOR=cat UNIXORDOS=UTFHTML ; shift ;; -UTFNUM) TRANSLATOR=cat UNIXORDOS=UTFNUM ; shift ;; -mime) TRANSLATOR=cat UNIXORDOS=mime ; shift ;; -MIME) TRANSLATOR=cat UNIXORDOS=MIME ; shift ;; -UNIW) TRANSLATOR=cat UNIXORDOS=UNIW ; shift ;; -uniw) TRANSLATOR=cat UNIXORDOS=uniw ; shift ;; -sx1) TRANSLATOR=cat UNIXORDOS=sx1 ; shift ;; -SX1) TRANSLATOR=cat UNIXORDOS=SX1 ; shift ;; -oct) TRANSLATOR=cat UNIXORDOS=oct ; shift ;; -LADA) TRANSLATOR=cat UNIXORDOS=LADA ; shift ;; -NO) TRANSLATOR=cat UNIXORDOS=cat ; shift ;; -WH) TRANSLATOR=cat UNIXORDOS=WH ; shift ;; -WHC) TRANSLATOR=cat UNIXORDOS=WHC ; shift ;; -RTF) TRANSLATOR=cat UNIXORDOS=RTF ; shift ;; -*|-*help) KOI_help ; exit 1 ;; *) FROM="$BESTA" INTO="$KOI" ;; esac ALTYO() { # ÀËÜÒÅÐÍÀÒÈÂÍÓÞ ÎÒÐÀÆÀÅÌ ÁÓËÂÓ e:  e # cat $1 | tr 'ß0xF00xF10xF20xF3' '\2450xAA0xBA0xAF0xBF' cat $1 | tr 'ß' '\245' } dos2unix() # ïÐÅÂÐÀÙÀÅÒ ^M^J  ^J { sed -e "s/$CTRL_M$//" #awk '{sub("\015+$","");print}' } unix2dos() # ïÐÅÂÐÀÙÀÅÒ ^J  ^M^J { # sed -e "/$CTRL_M$/ !s/^.*$/&$CTRL_M/" # sed -e "s/$/$CTRL_M/" awk '{print $0 "'$CTRL_M'"}' } antip() # ïpÅÂpÀÙÀÅÒ "p"  pÓÑÑÊÎÌ ÒÅÊÑÒÅ Â "Ð" { sed -e ' s/\([^ -~]\)p/\1Ð/g s/p\([^ -~]\)/Ð\1/g ' $1 } antiwse() { CTRL_I=`$ECHO "\011"` sed -e " s/¸/å/g s/\([^$CTRL_I-~]\)a/\1à/g s/a\([^$CTRL_I-~]\)/à\1/g s/\([^$CTRL_I-~]\)c/\1ñ/g s/c\([^$CTRL_I-~]\)/ñ\1/g s/\([^$CTRL_I-~]\)p/\1ð/g s/p\([^$CTRL_I-~]\)/ð\1/g s/\([^$CTRL_I-~]\)y/\1ó/g s/y\([^$CTRL_I-~]\)/ó\1/g s/\([^$CTRL_I-~]\)e/\1å/g s/e\([^$CTRL_I-~]\)/å\1/g s/\([^$CTRL_I-~]\)u/\1è/g s/u\([^$CTRL_I-~]\)/è\1/g s/\([^$CTRL_I-~]\)o/\1î/g s/o\([^$CTRL_I-~]\)/î\1/g s/\([^$CTRL_I-~]\)x/\1õ/g s/x\([^$CTRL_I-~]\)/õ\1/g s/\([^$CTRL_I-~]\)c/\1ñ/g s/c\([^$CTRL_I-~]\)/ñ\1/g s/\([^$CTRL_I-~]\)n/\1ï/g s/n\([^$CTRL_I-~]\)/ï\1/g s/\([^$CTRL_I-~]\)m/\1ì/g s/m\([^$CTRL_I-~]\)/ì\1/g s/\([^$CTRL_I-~]\)E/\1Å/g s/E\([^$CTRL_I-~]\)/Å\1/g s/\([^$CTRL_I-~]\)T/\1Ò/g s/T\([^$CTRL_I-~]\)/Ò\1/g s/\([^$CTRL_I-~]\)O/\1Î/g s/O\([^$CTRL_I-~]\)/Î\1/g s/\([^$CTRL_I-~]\)P/\1Ð/g s/P\([^$CTRL_I-~]\)/Ð\1/g s/\([^$CTRL_I-~]\)A/\1À/g s/A\([^$CTRL_I-~]\)/À\1/g s/\([^$CTRL_I-~]\)H/\1Í/g s/H\([^$CTRL_I-~]\)/Í\1/g s/\([^$CTRL_I-~]\)K/\1Ê/g s/K\([^$CTRL_I-~]\)/Ê\1/g s/\([^$CTRL_I-~]\)X/\1Õ/g s/X\([^$CTRL_I-~]\)/Õ\1/g s/\([^$CTRL_I-~]\)C/\1Ñ/g s/C\([^$CTRL_I-~]\)/Ñ\1/g s/\([^$CTRL_I-~]\)B/\1Â/g s/B\([^$CTRL_I-~]\)/Â\1/g s/\([^$CTRL_I-~]\)M/\1Ì/g s/M\([^$CTRL_I-~]\)/Ì\1/g " } tofido() { tr '[íÐ]' '[Hp]' } rk2pcl() { kommentarij=' [\]^ ^^D reverse ^^E ^T underline ^U ^\ dim ^] ' UND_S=`$ECHO "\024"` UND_E=`$ECHO "\025"` REV_S=`$ECHO "\036D"` REV_E=`$ECHO "\036E"` DIM_S=`$ECHO "\034"` DIM_E=`$ECHO "\035"` und_s="${ESC}\&dD" und_e="${ESC}\&d@" rev_s="" rev_e="" dim_s="" dim_e="" sed -e " s/${UND_S}/${und_s}/g s/${UND_E}/${und_e}/g s/${DIM_S}/${dim_s}/g s/${DIM_E}/${dim_e}/g s/${REV_S}/${rev_s}/g s/${REV_E}/${rev_e}/g " } antikoiramki() { #CTRL_KR=`$ECHO "\036"` #CTRL_KRASKI=`$ECHO "[\024\025\034\035]"` # ^T^U^\^] UGOLKI=`$ECHO "[\231\213\230\214\202\204\205]"` # pqbd p bd PEREKL=`$ECHO "[\234\211\237¼��\210]"` # ^|^ -| |- _|_ -| -|- WERT=`$ECHO "[\212\201]"` # | || GORIZ=`$ECHO "[\235 ]"` # - perekl=`$ECHO "[\206\207Ÿ�]"` # + goriz=`$ECHO "[\200]"` # - wert=`$ECHO "[\203]"` # | | sed -e " s/$UGOLKI/+/g s/$PEREKL/+/g s/$perekl/+/g s/$WERT/|/g s/$GORIZ/-/g s/$wert/|/g s/$goriz/-/g " } altramkiwin() { UGOLKI='[�ªûöþçèõ�Ž]' # pqbd p bd PEREKL='[ôáàåüíâïÿãêëðé½]' goriz="[äì]" # - werti="[Œ]" # | sed -e " s/$goriz/-/g s/$werti/|/g s/$UGOLKI/+/g s/$PEREKL/+/g " } altram() { UGOLKI='[�ªûçþèõŽ�]' # pqbd p bdpqbd PEREKL='[áàåö]' GORIZ="[ì]" # = goriz="[ä]" # - wert="[¨]" # | WERT="[Œ]" # |I sed -e " s/$goriz/-/g s/$GORIZ/=/g s/$WERT/I/g s/$wert/|/g s/$UGOLKI/+/g s/$PEREKL/+/g s%Ü%o%g " } bach2rk() { CTRL_T=`$ECHO "\024"` # ^T CTRL_U=`$ECHO "\025"` # ^U UGOLKI=`$ECHO "[\232\231\200�]"` # pqbd p bd PEREKL=`$ECHO "[\205\203\202\201ª]"` # ^|^ -| |- _|_ -| -|- WERT=`$ECHO "[¨]"` # | || GORIZ=`$ECHO "[\204¿]"` # - sed -e " s/${ESC}E/ $CTRL_T/g s/${ESC}F/$CTRL_U/g s/$UGOLKI/+/g s/$PEREKL/+/g s/$WERT/|/g s/$GORIZ/-/g " } iwasi2rk() { CTRL_A=`$ECHO "\001"` # CTRL_T=`$ECHO "\024"` # CTRL_Z=`$ECHO "\031"` # sed -e " s/[${CTRL_A}-${CTRL_Z}]//g s/${ESC}E/${CTRL_T}/g s/${ESC}.//g " } anticolorramki() { CTRL_KR=`$ECHO "\036"` CTRL_KRASKI=`$ECHO "[\024\025\034\035]"` # ^T^U^\^] UGOLKI=`$ECHO "\203[\201\202\203\204\221\222\223\224]"` # pqbd PEREKL=`$ECHO "\203[\205\206\207\210\211]"` # ^|^ -| |- _|_ -| -|- WERT=`$ECHO "\203[\212\232]"` # | || GORIZ=`$ECHO "\203[\213\233]"` # - perekl=`$ECHO "\205[\226]"` # + goriz=`$ECHO "\205[\202\204]"` # - wert=`$ECHO "\205[\201\203\205]"` # | | sed -e " s/$CTRL_KR.//g s/$CTRL_KRASKI//g s/$UGOLKI/+/g s/$PEREKL/+/g s/$perekl/+/g s/$WERT/|/g s/$GORIZ/-/g s/$wert/|/g s/$goriz/-/g " } mosaic2rk() { # s/%E1/þ/g - ÂÎÒ ÂÑÅ ×ÒÎ ÄÅËÀÅÒ ÝÒÎÒ AWK sed -e "`gawk 'BEGIN {for (i=192; i<=254 ; i=i+1) { printf ("s/[%%=]%2X/%c/g\n", i, i)}}' < /dev/null`" -e ' s/%22/"/g s/%20/ /g s/%3D/=/g s/%3F/?/g s/%5B/[/g s/%5D/]/g ' } man2rk() { UND_S=`$ECHO "\024"` UND_E=`$ECHO "\025"` REV_S=`$ECHO "\036D"` REV_E=`$ECHO "\036E"` Home=`$ECHO "\010"` # ñÈÌÂÎË Home sed -e " s/_$Home\([^_]\)/$UND_S\1$UND_E/g s/.$Home\(.\)/$REV_S\1$REV_E/g s/$UND_E$UND_S//g s/$REV_E$REV_S//g " } RTF2RK() { sed -e ' s/à/à/g s/á/á/g s/â/â/g s/ã/ã/g s/ä/ä/g s/å/å/g s/æ/æ/g s/ç/ç/g s/è/è/g s/é/é/g s/ê/ê/g s/ë/ë/g s/ì/ì/g s/í/í/g s/î/î/g s/ï/ï/g s/ð/ð/g s/ñ/ñ/g s/ò/ò/g s/ó/ó/g s/ô/ô/g s/õ/õ/g s/ö/ö/g s/÷/÷/g s/ø/ø/g s/ù/ù/g s/ü/ü/g s/û/û/g s/ú/ú/g s/ý/ý/g s/þ/þ/g s/ÿ/ÿ/g s/À/À/g s/Á/Á/g s/Â/Â/g s/Ã/Ã/g s/Ä/Ä/g s/Å/Å/g s/Æ/Æ/g s/Ç/Ç/g s/È/È/g s/É/é/g s/Ê/Ê/g s/Ë/Ë/g s/Ì/Ì/g s/Í/Í/g s/Î/Î/g s/Ï/Ï/g s/Ð/Ð/g s/Ñ/Ñ/g s/Ò/Ò/g s/Ó/Ó/g s/Ô/Ô/g s/Õ/Õ/g s/Ö/Ö/g s/×/×/g s/Ø/Ø/g s/Ù/Ù/g s/Ü/Ü/g s/Û/Û/g s/Ú/Ú/g s/Ý/Ý/g s/Þ/Þ/g s/ß/ß/g s/\[\[Atilde]]/Ã/g s/\[\[thorn]]/þ/g s/\[\[eth]]/ð/g s/\[\[Eth]]/Ð/g s/&iaute;/í/g ' $1 # awk 'BEGIN { for (i=128;i<256;i++) {printf ("s/\\\\'\''%x/%c/g\n",i,i)}}' rr } index2dir() { sed -e ' s%\(.*\)%\2 � \1 % ' } eop() { CTRL_I=`$ECHO "\011"` # ^I CTRL_L=`$ECHO "\014"` # ^L sed -e "s/$CTRL_L/\\ /g" | grep -v "^[$CTRL_I ]*-[$CTRL_I ]*[0-9]*[$CTRL_I ]*-[$CTRL_I ]*$" } ABZAC() { CTRL_I=`$ECHO "\011"` # ^I sed -e " s/^$CTRL_I/ / s/^ /\\ / " } abzac() { perl -e 'while(read(STDIN,$_,100000)){s%\n\n%\n%g;print;}' } lyr() { #$song #%text øÏÀËÈÊΠã. #%music #%title îñåííèé ëåñ #%first ìÅÍßÞÒ ËÞÄÈ ÀÄÐÅÑÀ... #;%alias #;%theme #%exec @NADEZHDA #%chords 3 #;% - ÝÒÈ ÊÎÌÌÅÍÒÀÐÈÈ ÌÛ ÍÅ ÐÀÇËÈ×ÀÅÌ #; - ÝÒÈ ÊÎÌÌÅÍÒÀÐÈÈ ÌÛ ÎÑÒÀÂËßÅÌ # perl -pe perl -e ' $inzagolowok=0; while() { s/\@ADELUNG/àÄÅËÓÍà ã.H./; s/\@BELETSKY_V/áÅËÅÖÊÈÉ â./; s/\@PIRATS/ïÈÐÀÒÛ/; s/\@TOURISM/òÓÐÈÇÌ/; s/\@MITYAEV_BRIGHT_PAST/ñÂÅÒËÎÅ ÏÐÎØËÎÅ.../; # if ($_ !~ /^[;%\$@]/) if ($_ !~ /^[%\$@]|^\;%|^\;$/) { if ( $inzagolowok ) { # ÒÎËÜÊÎ ×ÒÎ ÊÎÍ×ÈËÑß ÇÀÃÎËÎÂÎÊ if ($chords > 0) { $plus=""; } else { $plus="- ";} if (length ($title) < 2) { $title=$first; } if ($music eq $text) { $text=""; } if (length $music && length $text) { $authors="$music, $text"; } else { $authors="$music $text"; } print "\n $plus",$title," \t$authors\n"; $inzagolowok=0;$title="";$first="";$music="";$text=""; } print; } else { $inzagolowok=1; #s/^%exec.*// ; #s/^\;.*// ; #s/^\$song\n// ; /^%chords *(\d*)/ && do {$chords=$1;}; /^%text *(.*)/ && do { $text=$1;}; /^%music *(.*)/ && do { $music=$1;}; /^%first *(.*)/ && do { $first=$1;}; /^%title *(.*)/ && do { $title=$1;}; } } ' } aksrus() { # Ó ÍÈÕ ÂÅÑÜÌÀ ÍÅÒÐÈÂÈÀËÜÍÀß ÐÀÑÊËÀÄÊÀ ÐÓÑÑÊÈÕ ÁÓÊ ÏÎ ËÀÒÈÍÈÖÅ tr "_XxVv:;hH'"'"'"¸ýWw%[*@¹=" '\-õÕâÂüÜ×÷Ææ""øØ:Þ?!N¢' | KOI -rus } fromhex() { perl -e ' while() { s/0x([a-fA-F0-9][a-fA-F0-9])/pack("C", hex($1))/eg; print; } ' 2> /dev/null } ASC() { perl -e 'while(read(STDIN,$_,1000000)) { tr%\t% %; s%([\n\r\t ]*)([iub]>)%$2$1%sig ; s%(<[ibu]>)([\n\r\t ]*)%$2$1%sig ; s%( *)%$1%ig;s%( *)%$1%ig;s%( *)%$1%ig; print;}' |\ perl -e ' while() { tr/£\001\222\223\224žŽ\204/åå\047\"\"\"\"\"/; # çÄÅÑÜ ÌÛ ÍÅÑÊÎËÜÊÎ ÑÏÅÖÑÈÌÂÎËΠâÎÐÄÀ "ÎÏÓÑÒÈÌ" s%( *)%$1%ig;s%( *)%$1%ig; tr/\237\240\232\r/ß \n/; s/\205/.../g; s/\037//g; s/[\227\226]/--/g; s/â\200"/--/g; s/â"--/No/g; s/Š/No/g; print; } ' 2> /dev/null } LEX() { perl -e ' while() { s/Ú_([^Ú]*)Ú0/$1/g; s/Ú1([^Ú]*)Ú0/$1/g; s/Ú2([^Ú]*)Ú0/$1/g; s/Ú[_0-2]([^Ú\n]*)$/$1/g; print; } ' 2> /dev/null } ANS() { # ïÐÈ ÑÎÕÐÀÍÅÍÈÈ Save as text with layout  ÍÅÊÎÒÎÐÛÕ ÀÁÇÀÖÀÕ # ÏÅÐÂÎÅ ÑËÎÂÎ Â ÑÒÐÎÊÅ ÑÎÕÐÀÍßÅÒÑß ËÀÒÈÍÑÊÈÌÈ ÁÓÊÂÀÌÈ - # ÏÐÎÑÒÎ ÑÁÐÀÑÛÂÀÅÒÑß 8-É ÁÈÒ. perl -e ' while() { tr/\222\223\224/\047\"\"/; # çÄÅÑÜ ÌÛ ÍÅÑÊÎËÜÊÎ ÑÏÅÖÑÈÌÂÎËΠâÎÐÄÀ "ÎÏÓÑÒÈÌ" s/\205/.../g; s/\227/--/g; s/\226/--/g; if ( $_ =~ /^( *[a-z`\|{~@}]*)(.*)/i ) { $a=$1; $c=$1 ; $b=$2 ; $a =~ tr/@ABWGDEVZIJKLMNOPRSTUFHC+{}�YX|~Qabwgdevzijklmnoprstufhc=\133\135¢yx\\`q�/àáâ÷çäåö�éêëìíîïðòóôõæèãþÛÝ�ùøÜÞñÁÂ×ÇÄÅÖ¢ÉÊËÌÍÎÏÐÒÓÔÕÆÈÃÞûý¢ÙØüÀÑ�/; print "$a$b\n" ;} else { print ; } } ' 2> /dev/null } CT1CU() { # ÂÛÄÅËßÅÌ ÇÀÃÎËÎÂÊÈ Â ÒÅÊÑÒÅ. # îÒÄÅËÜÍÎ ÑÒÎßÙÅÅ ×ÈÑËÎ # ÎÑÒÀËÜÍÎÅ ÏÐÈÄÓÌÀÅÌ ÏÎ ÕÎÄÓ CTRL_T=`$ECHO "\024"` # ^T CTRL_U=`$ECHO "\025"` # ^U sed -e ' s/^ *\([0-9][0-9]*\)$/ '"$CTRL_T"'\1'"$CTRL_U"'/ ' } psewdo() { # KOI -rk2pcl | KOI -a | KOI -psewdo - ÏÐÅÂÐÀÙÀÅÒ ÐÊ-ÐÀÌÊÈ Â alt-ÏÑÅÂÄÎÃÐÀÔÈÊÓ perl -e ' while() { s/\203\201/\332/g; s/\203\202/\277/g; s/\203\203/\300/g; s/\203\204/\331/g; s/\203\205/\302/g; s/\203\206/\264/g; s/\203\207/\303/g; s/\203\210/\301/g; s/\203\211/\305/g; s/\203\212/\263/g; s/\203\213/\304/g; s/\203\214/\302/g; s/\203\215/\264/g; s/\203\216/\303/g; s/\203\217/\301/g; s/\203\220/\263/g; s/\203\221/\311/g; s/\203\222/\273/g; s/\203\223/\310/g; s/\203\224/\274/g; s/\203\225/\313/g; s/\203\226/\271/g; s/\203\227/\314/g; s/\203\230/\312/g; s/\203\231/\316/g; s/\203\232/\272/g; s/\203\233/\315/g; s/\205\201/\263/g; s/\205\202/\304/g; s/\205\203/\263/g; s/\205\204/\304/g; s/\205\205/\272/g; s/\205\206/\315/g; s/\205\207/\272/g; s/\205\210/\315/g; s/\205\213/\307/g; s/\205\215/\321/g; s/\205\216/\266/g; s/\205\217/\307/g; s/\205\220/\317/g; s/\205\225/\330/g; s/\205\226/\327/g; s/\205\227/\265/g; s/\205\230/\267/g; s/\205\231/\270/g; s/\205\232/\275/g; s/\205\233/\276/g; s/\205\234/\306/g; s/\205\235/\320/g; s/\205\236/\322/g; s/\205\237/\323/g; # s/\205\241/\324/g; s/\205\263/\324/g; s/\205\242/\325/g; s/\205\243/\326/g; print; } ' 2> /dev/null } PERENOS() { perl -e 'while(read(STDIN,$_,512000)){s/([^-])-\n/$1/sg;print;}' } preformat() { perl -e ' while() { s/ - / == /g; s/([ ,!.?])-{1,2}/$1==/g; s/^-{1,2}([^-])/== $1/; s/ -$/ ==/; s/^ /\n /; print; } ' } PREFORMAT() { perl -e ' while() { s/^==([^=])/--$1/g; s/([^=])==$/$1--/g; s/([^=])==([^=])/$1--$2/g; print; } ' | perl -e 'while(read(STDIN,$_,100000)){s%\n\n%\n%g;print;}' } wfor() { perl -e 'while(){s/^[ \t]*/\n /;print;}' } PRUD() { tr "\217Á²ƒ¼×\214\232žÂ²´¯ŸÚͨ�\221�¢¸ÇÌÅšÐ�Ï\215É\201\225¾Ë\210\212\203\237\202Ê\227\216\204\220\207\222\200" "ïÐÈÂÅÒìÀÊÑÈÌÏÎ×ÜÆÁñËÍÄÓÛÕÇßÉÞíØáõâèêãÿâÙ÷îäðçòà" } HRAM() { tr "ÈžŽðú Ž�ðò��éÑÃóåßþË¥�÷ÇõøœûŒ�ùÿýÛüöÞÌ" "âÎÏÐÑ ÏÈÐÒÊÈÉÂçÓïÄÞíËÍ×ÃÕØÆÛÇÌÙÅÝ×ÜÖåÁ" } hlebnikow() { sed -e ' s%%% s%]*>%% s%]*>%% s% FACE=[^>]*%% s% SIZE=[123]%% s%%% ' } MAN() { # Convertor abs-book.txt NROFF formatted to HTML H=`echo -e "\010"` T=`echo -e "\024"` U=`echo -e "\025"` Q=`echo -e "\021"` R=`echo -e "\022"` sed -e " s/_$H\(.\)/$T\1$U/g s/$U$T//g s/$U\( *\)$T/\1/g s%.$H\(.\)%$Q\1$R%g s/$R$Q//g s/$R\( *\)$Q/\1/g s/\</g s%$Q%%g s%$R%%g " } # � ~/bbs/moshkow.txt NA2() { LC_CTYPE=C export LC_CTYPE tr '\n' ' ' | perl -e ' while(read(STDIN,$_,1000000)){ # ÇÀ×ÈÑÒÊÀ s%.*%%i; s%]*]*>%%i; s%?html>%%i; s%%%i; s%\002%*%g; s% % %gi; s%<(p|br|div) [^>]*>%<$1>%gi; s% (face|size) *= *"[^"]*"%%gi; s%(.*?)%$1%gi; s%?b>( *)?b>%$1%gi; s%?u>( *)?u>%$1%gi; s%?i>( *)?i>%$1%gi; s%( +)([iub])>%$2>$1%sgi; # ïîäàðîê îò Ñòàðèíîâà s%\023 +XE +".*?" +\025%%sg; # ÔÎÐÌÀÒÀÆ s%%\n %sgi; s%%\n\n %sgi; print; } ' } # ÏÎÑÒ-ÀÑÊÈØÍÀß ÔÎÐÌÀÒÈÐÎÂÊÀ NA3() { LC_CTYPE=C export LC_CTYPE perl -e ' while(<>){ s%^ (.*)$% \024$1\025%i; print; } ' } NA() { LC_ALL=C LC_CTYPE=C export LC_CTYPE egrep -via 'charset=windows-12|meta http-equiv="Content-Type"' |\ perl -e ' while(){ s%]*>%% ; s% FACE="[A-Za-z, ]+"%%ig ; s% FACE=[^"> ,]*?%%ig ; s% SIZE=[12]%%ig ; s%<(p|b|i|div|br) .*?>%<$1>%ig ; s% % %ig; print; }' exit } NAB() { LC_ALL=C LC_CTYPE=C export LC_CTYPE # egrep -vi 'charset=windows-12|meta http-equiv="Content-Type"' ; exit egrep -v '^*HTML>$|^*HEAD>$|text/html; charset=windows-125' |\ perl -e 'while(read(STDIN,$_,100000)) {s%([^\n]{980,})!\n%$1%g; s%!\n!\n!\n!\n%%g;s%!\n!\n!\n%%g;s%!\n!\n%%g; s%!\n( *[Þ-Ç])%$1%g; s%\n(size=[-0-9]+)% $1%ig;print;}' |\ perl -e ' while(){ s%]*>\n%% ; s%]*>\n%% ; s%*BODY[^>]*>%% ; s%\227% %g; s%—%--%g ; s% % %g; s%“%"%g; s%”%"%g; s% %%g; s%[“”]%"%g ; s% SIZE="[-0-9]+"%%ig ; s% SIZE=[-+0-9]+%%ig ; s% FACE="[A-Za-z ]+"%%ig ; s% FACE="?[^"> ]*"?%%ig ; s% COLOR="[^"]*"%%ig ; s%^%\n %i ; s%%\n\n %ig ; s%%\n\n %ig ; s%\n%\n %igs; s%%\n %ig ; s%%\n %ig ; s%?FONT>%%ig ; s%?DIR>%%ig ; s%%\n %ig ; s%%%ig ; s%^([^<]*)% $1%g; s%--%-- %g ; s%"%"%ig ; print ; } ' |\ perl -e 'while(read(STDIN,$_,100000)) {s%(<[bi]>)([ \n]+)%$2$1%ig; s%([ \n]+)([bi]>)%$2$1%ig; print;}' } SKRIZHALI() { LC_ALL=C LC_CTYPE=C export LC_CTYPE perl -e ' while(){ s% SIZE="[0-9]*"%%ig ; s% SIZE=[0-9]*%%ig ; s% COLOR="[^"]*"%%ig ; s% FACE="[^"]*"%%ig ; s%%%ig ; s%%%ig ; print ; } ' } OTSTUP() { sed -e 's/^[ ][ ]*/ /' |\ perl -e 'while(read(STDIN,$_,100000)){ s%\n\n([^\n ])%\n\n $1%g; print;}' } OTSTUP2() { MINSIZE=56 sed -e 's/^[ ][ ]*/ /' |\ perl -e 'while(read(STDIN,$_,100000)){ s%\n-%\n -%g; s%\n([^\n]{0,'"$MINSIZE"'})\n%\n$1\n %g; print;}' } wyazh() { tmp=/tmp/$$mm cat $1 |\ egrep -v '*HTML>|*HEAD>|*BODY' |\ tr '[A-Z]' '[a-z]' |\ sed -e ' s% % % s%%\ \ %' > $tmp } WWID() { perl -e 'while(read(STDIN,$_,100000)){ s/\[Author.*?\]//sgi; print;}' } WW() { tmp=/tmp/ww$$.doc trap "rm -f $tmp" 0 1 2 3 9 10 15 cat > $tmp if file $tmp | grep "Rich Text Format" > /dev/null 2> /dev/null ; then rtf2html $tmp| KOI -W |KOI -ASC |KOI -MSHTML | KOI -NA | KOI -NA2 |KOI -NOHTMLIB |KOI -OTSTUP|KOI -FORMAT|KOI -ASC |KOI -NA3|KOI -PREFORMAT else # if egrep -i 'microsoft word' $tmp > /dev/null # then # mswordview -o moshkow.txt îòìåíåí LD_LIBRARY_PATH=/usr/local/lib wvHtml --charset=windows-1251 $tmp - |\ KOI -W |KOI -ASC |KOI -MSHTML |KOI -NA |KOI -NA2 |KOI -NOHTMLIB|KOI -ASC|KOI -ASC | KOI -WWID | KOI -OTSTUP |KOI -FORMAT|KOI -NA3|KOI -PREFORMAT|KOI -PREFORMAT # else # winword $tmp # for flag in -W -ASC -wfor -FORMAT -PREFORMAT ; do # KOI $flag moshkow.txt moshkow.txt # done # beep # fi fi } WWC() { tmp=/tmp/ww$$.doc trap "rm -f $tmp" 0 1 2 3 9 10 15 cat > $tmp if file $tmp | grep "Rich Text Format" > /dev/null 2> /dev/null ; then rtf2html $tmp| KOI -W |KOI -ASC |KOI -MSHTML | KOI -NA # | KOI -NA2 |KOI -NOHTMLIB | sed -e 's/^ //' -e 's/ *$//' else LD_LIBRARY_PATH=/usr/local/lib wvHtml --charset=windows-1251 $tmp - |\ KOI -W |KOI -ASC |KOI -MSHTML |KOI -NA # |KOI -NA2 |KOI -NOHTMLIB | KOI -OTSTUP |KOI -FORMAT|KOI -NA3|KOI -PREFORMAT|KOI -PREFORMAT fi } UTF8() { utf8 |\ perl -e ' while (<>){ s/]*src="?file[^>]*>//gi; s///gi; s/á[žŽ]/"/gi; s/Á\200[\234\235]/"/gi; s/Á\200\224/--/gi; s/Á\200ƒ//gi; s/Á\200[\236³]/.../gi; s/Á\200\231/'"'"'/gi; last if /Document converted from word/; print; } ' true perl -e ' while(1) { break if (!read(STDIN,$C,1)); $I = $C-0320; if( $I == 0 || $I == 1 ) { # ï,ÿ read(STDIN,$C,1); if( $I == 0 ) { if( $C >= 0220 && $C < 0300 ) {$C = $C-0220+0300;} } else { if ( $C >= 0200 ) { $C = $C+0160; } } } print $C; } ' } FORMAT() { LC_ALL=C LC_CTYPE=C formater.pl | sed 's/^ *$//' } SH() { CTRL_T=`$ECHO "\024"` # ^T CTRL_U=`$ECHO "\025"` # ^U egrep -v '^ *WWW: *$' |\ sed -e " s/WWW: *\([^| ]*\) *$/WWW: \1 | \1/; s/|/�/; s/^ *\^[Tò]/ $CTRL_T/; s/\^U/$CTRL_U/; " } AHREF() { sed -e 's%\(ftp://[-a-z0-9/_.~]*\)%\1% s%\(http://[-:a-zA-Z0-9/_.~]*\)%\1%' } AKM() { perl -e 'while(read(STDIN,$_,100000)){ s%.*?%%sgi; s%.*?%%sgi; # .* - ÌÈÍÈÌÀËÜÍÎÅ ÂÕÎÆÄÅÍÈÅ $MOSHKOWENCODING=< koi win lat iso alt mac rema.ru/akm EOF s%%$MOSHKOWENCODING%sio; print; }' } mime() { perl -e 'while(read(STDIN,$_,100000)){ s/([^0-9 A-Za-z])/sprintf("%%%02X",unpack("C", $1))/seg; print; }' } UNIW() { # À Ï ß # А П Я - 1040 + 192 # à ï ÿ # а п я perl -e 'while(read(STDIN,$_,100000)){ s/\&\#(\d+)\;/pack("C", $1 - 848 )/seg; print "$_"; }' | KOI -W } uniw() { # À Ï ß # А П Я - 1040 + 192 # à ï ÿ # а п я perl -e 'while(read(STDIN,$_,100000)){ s/([\300-\377])/sprintf("%d",848+unpack("C", $1))/seg; print "$_"; }' } SX1() # UNICODE äâóõáàéòîâûé äëÿ SX1: abc -- > à^@b^@c^@,ÀÁ-Þß -> 0^D1^D-N^DO^D { perl -e ' sub rec{$c=unpack("C",@_[0]); if (@_[1] eq "\04"){ if(16 <= $c && $c <= 79 ){return sprintf ("%c",$c+176);} else{ return @_[0]; } }else{ return @_[0]; } } while(read(STDIN,$_,100000)){ s/^Ú×//; s/(.)(.)/&rec($1,$2)/seg; print "$_"; }' } sx1() { perl -e ' sub rec{(192<=($c=unpack(C,@_[0])))?pack(C,$c-176)."\04":@_[0]."\0";} print "Ú×"; while(<>){ s/./&rec($&)/seg; print $_; }' } utf8n() { # � ../linlocal/C/utf8.c perl -e ' sub rec{(($c=unpack(C,@_[0]))<0360)?pack(C2,0320,$c-060):pack(C2,0321,$c-0160)} while(<>){s/[\300-\377]/&rec($&)/seg;print;} ' } MIME() { perl -e 'while(read(STDIN,$_,100000)){ s/[%=]([a-fA-F0-9][a-fA-F0-9])/pack("C", hex($1))/seg; print; }' } oct() { perl -e 'while(read(STDIN,$_,100000)){ s/(.)/sprintf("\\%03o",unpack("C", $1))/seg; print; }' } oTSTUP() { sed -e " s/^ *\([$malenxkie]\)/\1/ s/^ *- \([$malenxkie]\)/- \1/ " } KRU() { KOI -ASC |\ perl -e ' while(<>){ s/@@@/�/; s%^\s*/###\s*(.*)\s*###/% \024 * $1 * \025%; s%^\s*###\s*(.*)\s*###% \024$1\025%; print; } ' } LIB() { perl -e 'while(read(STDIN,$_,100000)){ s%\n\n%\n-----------------------------------------------------------\n%sgi; s%.*1%%; s%%\n \024%sgi; s%%\n \024%sgi; s%%\025%sgi; s%%\025%sgi; s%Last-modified:.*%%s; print ; } ' } TU() { perl -e 'while(read(STDIN,$_,100000)){ unless ($n){s/^\s*/ /s;} s/\^T/\024/sg; s/\^U/\025/sg; s/¿/\025/sg; s/²/\n \024/sg; print; $n++;}' } TEXTSHARE() { perl -e 'while (read(STDIN,$_,500000)){ s/\n(--+)\n( +\(.*?\n)*/\n\n $&\n\n/sg; s/\[\d+\]\n//sg; s/([^-])-\n([^\n])/$1$2/sg; print; }' 2> /dev/null } SORT() { KOI -a|sort|KOI -A } REABZAC() { perl -e 'while (read(STDIN,$_,500000)){ s/-\n ([àáâãäåæçèêëìíîïðñòóôõö÷øùüûúýþÿ])/$1/g; s/\n ([àáâãäåæçèêëìíîïðñòóôõö÷øùüûúýþÿ])/ $1/g; print; } ' } LINE() { perl -e 'while (read(STDIN,$_,500000)){ s/\n([^ \n])/ $1/g; s/([^ \n]) +/$1 /g; print; } ' } MSHTML() { perl -e ' while (read (STDIN,$_,3000000)){ s%%%sg; s% name=\".+?\"%%gsi; s%?(o|w):.*?>%%sgi; # s%]*>.*?]*>%%sgi; # s%]*>.*?]*>%%sgi; s%<\!.*?>%%sgi; s%<(p|b|div|br) .*?>%<$1>%sgi; s%%%sgi; s% style='\''.*?'\''%%sgi; s%(span|p)>%%sgi; s%—%--%sgi; s%…%...%sgi; s%&[lr]dquo;%"%sgi; s%"%"%sgi; s%%%sgi; print; } ' } NOHTML() { perl -e 'while (read (STDIN,$_,1000000)){s%<.*?>%%sg;print;}' } NOHTMLIB() { perl -e ' while (read (STDIN,$_,1000000)) { s%<(/?[ib])>%{$1}%sgi; s%<(/?(table|tr|td)).*?>%{$1}%sgi; s%<(/?sup)>%{$1}%sgi; s%<(li)>%{$1}%sgi; s%<(img .*?)>%{$1}%sgi; s%(.*?)%\n \024$1\025\n%sgi; s%<.*?>%%sg; s%\{(/?[ib])\}%<$1>%sgi; s%\{(/?sup)\}%<$1>%sgi; s%\{(li)\}% <$1>%sgi; s%\{(img .*?)\}%<$1>%sgi; s%\{(/?(table|tr|td)).*?\}%<$1>%sgi; print; } ' } UTFHTML() { sed -e ' s/Ô/Ô/g; s/Æ/Æ/g; s/Ø/Ø/g; s/Ý/Ý/g; s/Õ/Õ/g; s/Ó/Ó/g; s/×/×/g; s/ú/ú/g; s/Ð/Ð/g; s/Ë/Ë/g; s/Å/Å/g; s/Ä/Ä/g; s/À/À/g; s/Á/Á/g; s/Ç/Ç/g; s/Ò/Ò/g; s/ô/ô/g; s/ß/ß/g; s/Ê/Ê/g; s/Í/Í/g; s/Â/Â/g; s/Ã/Ã/g; s/Ì/Ì/g; s/Ñ/Ñ/g; s/Ï/Ï/g; s/Î/Î/g; s/ý/ý/g; s/ù/ù/g; s/È/È/g; s/ö/ö/g; s/þ/þ/g; s/ø/ø/g; s/õ/õ/g; s/æ/æ/g; s/é/é/g; s/÷/÷/g; s/á/á/g; s/û/û/g; s/ç/ç/g; s/ã/ã/g; s/ÿ/ÿ/g; s/ü/ü/g; s/ï/ï/g; s/ì/ì/g; s/ó/ó/g; s/ä/ä/g; s/ê/ê/g; s/ð/ð/g; s/ë/ë/g; s/â/â/g; s/ñ/ñ/g; s/ò/ò/g; s/è/è/g; s/í/í/g; s/à/à/g; s/å/å/g; s/î/î/g; s/ / /g; ' } UTFNUM() { sed -e ' s/ / /g; s/¸/e/g; s/À/À/g; s/Á/Á/g; s/Â/Â/g; s/Ã/Ã/g; s/Ä/Ä/g; s/Å/Å/g; s/Æ/Æ/g; s/Ç/Ç/g; s/È/È/g; s/É/É/g; s/Ê/Ê/g; s/Ë/Ë/g; s/Ì/Ì/g; s/Í/Í/g; s/Î/Î/g; s/Ï/Ï/g; s/Ð/Ð/g; s/Ñ/Ñ/g; s/Ò/Ò/g; s/Ó/Ó/g; s/Ô/Ô/g; s/Õ/Õ/g; s/Ö/Ö/g; s/×/×/g; s/Ø/Ø/g; s/Ù/Ù/g; s/Ú/Ú/g; s/Û/Û/g; s/Ü/Ü/g; s/Ý/Ý/g; s/Þ/Þ/g; s/ß/ß/g; s/à/à/g; s/á/á/g; s/â/â/g; s/ã/ã/g; s/ä/ä/g; s/å/å/g; s/æ/æ/g; s/ç/ç/g; s/è/è/g; s/é/é/g; s/ê/ê/g; s/ë/ë/g; s/ì/ì/g; s/í/í/g; s/î/î/g; s/ï/ï/g; s/ð/ð/g; s/ñ/ñ/g; s/ò/ò/g; s/ó/ó/g; s/ô/ô/g; s/õ/õ/g; s/ö/ö/g; s/÷/÷/g; s/ø/ø/g; s/ù/ø/g; s/ú/ú/g; s/û/û/g; s/ü/ü/g; s/ý/ý/g; s/þ/þ/g; s/ÿ/ÿ/g; ' } getmail=' [ -d ~moshkow/mmm ] || exit 1 cd /var/spool/mqueue /etc/rc.d/rc3.d/S80sendmail stop ; sleep 3 ; /etc/rc.d/rc3.d/S80sendmail stop ; sleep 3 ; /etc/rc.d/rc3.d/S80sendmail stop grep -lq moshkow q* | sed "s/^.//" | while read f ; do mv q$f d$f ~moshkow/mmm/ ; done cd ~moshkow/mmm tar czvf ~/mail.tgz * ls -al ~/mail.tgz /etc/rc.d/rc3.d/S80sendmail start ' LADA() { KOI -W|KOI -ASC|KOI -ASC|KOI -wfor|KOI -FORMAT|KOI -PREFORMAT } KW() { tmp=/tmp/ww$$.doc trap "rm -f $tmp" 0 1 2 3 9 10 15 cat > $tmp cd cd bbs kword $tmp ; # mv $tmp ~/bbs/moshkow.txt mv ~/bbs/aa ~/bbs/moshkow.txt for flag in -UTF8 -W -ASC -NA -NA2 -NAB -OTSTUP -FORMAT -NA3 -PREFORMAT; do KOI $flag moshkow.txt moshkow.txt done } WH() { KOI -M|KOI -ASC |KOI -MSHTML|KOI -ASC|KOI -NA|KOI -NAB|KOI -NOHTMLIB|KOI -ASC|KOI -OTSTUP|KOI -FORMAT|KOI -PREFORMAT } WHC() { KOI -ASC |KOI -MSHTML|KOI -ASC|sed 's/^ *//'|KOI -NA|KOI -NAB|KOI -NOHTMLIB|KOI -OTSTUP|KOI -FORMAT|KOI -PREFORMAT } RTF() { perl -e ' while (read (STDIN,$_,1000000)) { #s/\r//sg; s/\\\r\n/\n/sg; s/\\cf\d//sg; s%\{\\([a-z]+)\d*(.*?)\}%<$1>\{$2\}$1>%sg; s%\{\\([a-z]+)\d*(.*?)\}%<$1>\{$2\}$1>%sg; s%\{\\([a-z]+)\d*(.*?)\}%<$1>\{$2\}$1>%sg; s%\\([ib])0%$1>%sg; s/\\([ib])/<$1>/sg; s/\\q\w//sg; s/\\pard/\n\n/sg; s/\\emdash/--/sg; s/\\~/ /sg; s/[{}]//sg; print; }' } if [ -z "$2" ] ; then $CAT $1 | $TRANSLATOR $FROM $INTO | $UNIXORDOS else if [ "$1" = "$2" ] then TMP=/tmp/koi$$ $CAT "$1" | $TRANSLATOR $FROM $INTO | $UNIXORDOS > $TMP ; touch -r "$1" $TMP # ÑÎÕÐÀÍßÅÌ ÏÐÅÆÍÞÞ ÄÀÒÓ ÌÎÄÈÔÈÊÀÖÈÈ mv -f $TMP $2 || ( cp -f $TMP $2 && rm $TMP ) else $CAT "$1" | $TRANSLATOR $FROM $INTO | $UNIXORDOS > "$2" fi fi exit
%\n\n %sgi; print; } ' } # ÏÎÑÒ-ÀÑÊÈØÍÀß ÔÎÐÌÀÒÈÐÎÂÊÀ NA3() { LC_CTYPE=C export LC_CTYPE perl -e ' while(<>){ s%^ (.*)$% \024$1\025%i; print; } ' } NA() { LC_ALL=C LC_CTYPE=C export LC_CTYPE egrep -via 'charset=windows-12|meta http-equiv="Content-Type"' |\ perl -e ' while(){ s%]*>%% ; s% FACE="[A-Za-z, ]+"%%ig ; s% FACE=[^"> ,]*?%%ig ; s% SIZE=[12]%%ig ; s%<(p|b|i|div|br) .*?>%<$1>%ig ; s% % %ig; print; }' exit } NAB() { LC_ALL=C LC_CTYPE=C export LC_CTYPE # egrep -vi 'charset=windows-12|meta http-equiv="Content-Type"' ; exit egrep -v '^*HTML>$|^*HEAD>$|text/html; charset=windows-125' |\ perl -e 'while(read(STDIN,$_,100000)) {s%([^\n]{980,})!\n%$1%g; s%!\n!\n!\n!\n%%g;s%!\n!\n!\n%%g;s%!\n!\n%%g; s%!\n( *[Þ-Ç])%$1%g; s%\n(size=[-0-9]+)% $1%ig;print;}' |\ perl -e ' while(){ s%]*>\n%% ; s%]*>\n%% ; s%*BODY[^>]*>%% ; s%\227% %g; s%—%--%g ; s% % %g; s%“%"%g; s%”%"%g; s% %%g; s%[“”]%"%g ; s% SIZE="[-0-9]+"%%ig ; s% SIZE=[-+0-9]+%%ig ; s% FACE="[A-Za-z ]+"%%ig ; s% FACE="?[^"> ]*"?%%ig ; s% COLOR="[^"]*"%%ig ; s%^%\n %i ; s%%\n\n %ig ; s%%\n\n %ig ; s%\n%\n %igs; s%%\n %ig ; s%%\n %ig ; s%?FONT>%%ig ; s%?DIR>%%ig ; s%%\n %ig ; s%
%\n %i ; s%
%\n\n %ig ; s%
Last-modified:.*%%s; print ; } ' } TU() { perl -e 'while(read(STDIN,$_,100000)){ unless ($n){s/^\s*/ /s;} s/\^T/\024/sg; s/\^U/\025/sg; s/¿/\025/sg; s/²/\n \024/sg; print; $n++;}' } TEXTSHARE() { perl -e 'while (read(STDIN,$_,500000)){ s/\n(--+)\n( +\(.*?\n)*/\n\n $&\n\n/sg; s/\[\d+\]\n//sg; s/([^-])-\n([^\n])/$1$2/sg; print; }' 2> /dev/null } SORT() { KOI -a|sort|KOI -A } REABZAC() { perl -e 'while (read(STDIN,$_,500000)){ s/-\n ([àáâãäåæçèêëìíîïðñòóôõö÷øùüûúýþÿ])/$1/g; s/\n ([àáâãäåæçèêëìíîïðñòóôõö÷øùüûúýþÿ])/ $1/g; print; } ' } LINE() { perl -e 'while (read(STDIN,$_,500000)){ s/\n([^ \n])/ $1/g; s/([^ \n]) +/$1 /g; print; } ' } MSHTML() { perl -e ' while (read (STDIN,$_,3000000)){ s%%%sg; s% name=\".+?\"%%gsi; s%?(o|w):.*?>%%sgi; # s%]*>.*?]*>%%sgi; # s%]*>.*?]*>%%sgi; s%<\!.*?>%%sgi; s%<(p|b|div|br) .*?>%<$1>%sgi; s%%%sgi; s% style='\''.*?'\''%%sgi; s%(span|p)>%%sgi; s%—%--%sgi; s%…%...%sgi; s%&[lr]dquo;%"%sgi; s%"%"%sgi; s%%%sgi; print; } ' } NOHTML() { perl -e 'while (read (STDIN,$_,1000000)){s%<.*?>%%sg;print;}' } NOHTMLIB() { perl -e ' while (read (STDIN,$_,1000000)) { s%<(/?[ib])>%{$1}%sgi; s%<(/?(table|tr|td)).*?>%{$1}%sgi; s%<(/?sup)>%{$1}%sgi; s%<(li)>%{$1}%sgi; s%<(img .*?)>%{$1}%sgi; s%(.*?)%\n \024$1\025\n%sgi; s%<.*?>%%sg; s%\{(/?[ib])\}%<$1>%sgi; s%\{(/?sup)\}%<$1>%sgi; s%\{(li)\}% <$1>%sgi; s%\{(img .*?)\}%<$1>%sgi; s%\{(/?(table|tr|td)).*?\}%<$1>%sgi; print; } ' } UTFHTML() { sed -e ' s/Ô/Ô/g; s/Æ/Æ/g; s/Ø/Ø/g; s/Ý/Ý/g; s/Õ/Õ/g; s/Ó/Ó/g; s/×/×/g; s/ú/ú/g; s/Ð/Ð/g; s/Ë/Ë/g; s/Å/Å/g; s/Ä/Ä/g; s/À/À/g; s/Á/Á/g; s/Ç/Ç/g; s/Ò/Ò/g; s/ô/ô/g; s/ß/ß/g; s/Ê/Ê/g; s/Í/Í/g; s/Â/Â/g; s/Ã/Ã/g; s/Ì/Ì/g; s/Ñ/Ñ/g; s/Ï/Ï/g; s/Î/Î/g; s/ý/ý/g; s/ù/ù/g; s/È/È/g; s/ö/ö/g; s/þ/þ/g; s/ø/ø/g; s/õ/õ/g; s/æ/æ/g; s/é/é/g; s/÷/÷/g; s/á/á/g; s/û/û/g; s/ç/ç/g; s/ã/ã/g; s/ÿ/ÿ/g; s/ü/ü/g; s/ï/ï/g; s/ì/ì/g; s/ó/ó/g; s/ä/ä/g; s/ê/ê/g; s/ð/ð/g; s/ë/ë/g; s/â/â/g; s/ñ/ñ/g; s/ò/ò/g; s/è/è/g; s/í/í/g; s/à/à/g; s/å/å/g; s/î/î/g; s/ / /g; ' } UTFNUM() { sed -e ' s/ / /g; s/¸/e/g; s/À/À/g; s/Á/Á/g; s/Â/Â/g; s/Ã/Ã/g; s/Ä/Ä/g; s/Å/Å/g; s/Æ/Æ/g; s/Ç/Ç/g; s/È/È/g; s/É/É/g; s/Ê/Ê/g; s/Ë/Ë/g; s/Ì/Ì/g; s/Í/Í/g; s/Î/Î/g; s/Ï/Ï/g; s/Ð/Ð/g; s/Ñ/Ñ/g; s/Ò/Ò/g; s/Ó/Ó/g; s/Ô/Ô/g; s/Õ/Õ/g; s/Ö/Ö/g; s/×/×/g; s/Ø/Ø/g; s/Ù/Ù/g; s/Ú/Ú/g; s/Û/Û/g; s/Ü/Ü/g; s/Ý/Ý/g; s/Þ/Þ/g; s/ß/ß/g; s/à/à/g; s/á/á/g; s/â/â/g; s/ã/ã/g; s/ä/ä/g; s/å/å/g; s/æ/æ/g; s/ç/ç/g; s/è/è/g; s/é/é/g; s/ê/ê/g; s/ë/ë/g; s/ì/ì/g; s/í/í/g; s/î/î/g; s/ï/ï/g; s/ð/ð/g; s/ñ/ñ/g; s/ò/ò/g; s/ó/ó/g; s/ô/ô/g; s/õ/õ/g; s/ö/ö/g; s/÷/÷/g; s/ø/ø/g; s/ù/ø/g; s/ú/ú/g; s/û/û/g; s/ü/ü/g; s/ý/ý/g; s/þ/þ/g; s/ÿ/ÿ/g; ' } getmail=' [ -d ~moshkow/mmm ] || exit 1 cd /var/spool/mqueue /etc/rc.d/rc3.d/S80sendmail stop ; sleep 3 ; /etc/rc.d/rc3.d/S80sendmail stop ; sleep 3 ; /etc/rc.d/rc3.d/S80sendmail stop grep -lq moshkow q* | sed "s/^.//" | while read f ; do mv q$f d$f ~moshkow/mmm/ ; done cd ~moshkow/mmm tar czvf ~/mail.tgz * ls -al ~/mail.tgz /etc/rc.d/rc3.d/S80sendmail start ' LADA() { KOI -W|KOI -ASC|KOI -ASC|KOI -wfor|KOI -FORMAT|KOI -PREFORMAT } KW() { tmp=/tmp/ww$$.doc trap "rm -f $tmp" 0 1 2 3 9 10 15 cat > $tmp cd cd bbs kword $tmp ; # mv $tmp ~/bbs/moshkow.txt mv ~/bbs/aa ~/bbs/moshkow.txt for flag in -UTF8 -W -ASC -NA -NA2 -NAB -OTSTUP -FORMAT -NA3 -PREFORMAT; do KOI $flag moshkow.txt moshkow.txt done } WH() { KOI -M|KOI -ASC |KOI -MSHTML|KOI -ASC|KOI -NA|KOI -NAB|KOI -NOHTMLIB|KOI -ASC|KOI -OTSTUP|KOI -FORMAT|KOI -PREFORMAT } WHC() { KOI -ASC |KOI -MSHTML|KOI -ASC|sed 's/^ *//'|KOI -NA|KOI -NAB|KOI -NOHTMLIB|KOI -OTSTUP|KOI -FORMAT|KOI -PREFORMAT } RTF() { perl -e ' while (read (STDIN,$_,1000000)) { #s/\r//sg; s/\\\r\n/\n/sg; s/\\cf\d//sg; s%\{\\([a-z]+)\d*(.*?)\}%<$1>\{$2\}$1>%sg; s%\{\\([a-z]+)\d*(.*?)\}%<$1>\{$2\}$1>%sg; s%\{\\([a-z]+)\d*(.*?)\}%<$1>\{$2\}$1>%sg; s%\\([ib])0%$1>%sg; s/\\([ib])/<$1>/sg; s/\\q\w//sg; s/\\pard/\n\n/sg; s/\\emdash/--/sg; s/\\~/ /sg; s/[{}]//sg; print; }' } if [ -z "$2" ] ; then $CAT $1 | $TRANSLATOR $FROM $INTO | $UNIXORDOS else if [ "$1" = "$2" ] then TMP=/tmp/koi$$ $CAT "$1" | $TRANSLATOR $FROM $INTO | $UNIXORDOS > $TMP ; touch -r "$1" $TMP # ÑÎÕÐÀÍßÅÌ ÏÐÅÆÍÞÞ ÄÀÒÓ ÌÎÄÈÔÈÊÀÖÈÈ mv -f $TMP $2 || ( cp -f $TMP $2 && rm $TMP ) else $CAT "$1" | $TRANSLATOR $FROM $INTO | $UNIXORDOS > "$2" fi fi exit