НОВОЕ: OS/2 GURU - Вопросы и ответы ru · en · de · es · it · pt · cz · pl · fr

OS/2.GURU Library

Reviews / articles about OS/2 eComStation ArcaOS

Operating systems
ArcaOS, eComStation, IBM OS/2 Warp
eComStation myths 

Latest  
 
 
Blonde Guy

Reformat Утилита для форматирования USB флешек, USB винчестеров (для совместимости с OS/2)

 

(promo)

Unsorted

 

 

AD: Upgrade ArcaOS to NeoWPS level

  • Install original PNG icons drawed by designer, specialized at OS/2 adornation.
  • Install eSchemes 2019 to change colors and buttons on desktop.

How I made BersIRC working with KOI8-R


TITLE: How I made BersIRC working with KOI8-R

DATE: 2001-09-06 18:45:41

AUTHOR: Alex Slyotov
Please use online translator
go to http://translate.google.com
and request the translation of http://ru.ecomstation./projects/reviews/index.php?id=18
to your language

"Когда же продолжали спрашивать Его,
Он, восклонившись, сказал им:
кто из вас без греха,
первый брось на нее камень."
От Иоанна 8:7

Предисловие

Сразу хочу сказать, что тем "фанам" OS/2, которые готовы сделать харакири себе или своему ближнему при одном только слове Windows я бы не рекомендовал читать этот обзор ибо опасаюсь за здоровье... нет, не этих "фанов" (туда им и дорога), а исключительно их ближних. Данный обзор адресован тем, кто волею судеб вынужден работать в Windows.

Сам я знаком с OS/2 уже более 7 лет. За это время мне удалось накопить довольно солидный опыт практической работы как с самой операционной системой, так и со специализированным программным обеспечением, но так уж получилось, что мне сейчас по-работе приходится часто находится в Windows и чтобы не чувствовать своего отрыва от мира OS/2 я решил, что было бы здорово иногда заглядавать на #os2russian для общения со старинными знакомыми...

Итак, приступим!

Первая задача, которую пришлось решать заключалась в выборе удобного Win32 IRC-клиента из всего того сонмища клиентов, которое доступно в интернете. Мною были опробованы:

EasyIRC, IamC, ObjIRC, dIRC, vIRC97, Pirch98, TurboIRC, WinJab, XiRCON, OpenChat87, mIRC и BersIRC.

В результате я остановил свой выбор на двух последних, как на самых удобных для меня клиентах. Про них я дальше и буду рассказывать.

В принципе эти клиенты очень похожи друг на друга, причем BersIRC может даже импортировать настройки из уже установленного в системе mIRC'a. Так что я расскажу только о главных (в моем понимании) отличиях между ними:

  • Официально BersIRC является FREEWARE, т.е совершенно бесплатной программой, в то время как mIRC - SHAREWARE, т.е его автор хочет денег за свое творение;
  • последние версии mIRC'a умеют работать не только через SOCKS-прокси, но и через обычный HTTP-прокси сервер. BersIRC умеет работать только через SOCKS4 или SOCKS5 прокси;
  • BersIRC умеет подключаться одновременно к нескольким IRC-серверам, а чтобы тоже самое сделать в mIRC 'e - надо запустить столько его копий, к скольким IRC-серверам Вы хотите подключиться;
  • BersIRC обладает более широким диапазоном настроек пользовательского интерфейса, чем mIRC;
  • язык скриптов BersIRC представляет собой ObjectPascal, т.е. тем кто знаком с Delphi написание скриптов не составит практически никакой сложности. У mIRC'a со скриптами по другому. Там тоже есть язык скриптов, но я так и не проникся им. По моему он крайне неудобен и коряв, не говоря уж о том, что для начинающего писателя он представит очень большую сложность. Хотя еще раз повторю, что это только мое мнение и оно ни в коем случае не претендует на звание истины в последней инстанции.

Способы решения задачи трансляции KOI8-R <-> CP-1251

Так как основной особенностью этих двух клиентов является корректная работа только с CP-1251 кодовой страницей мы подошли к решению главной задачи: можно ли вообще научить эти клиенты работать с KOI8-R и если можно, то как?

Для тех, кто ходит в интернет напрямую безо всяких прокси, правильным решением будет использование утилиты PXY, которая по сути сама является прокси, декодирующим KOI8-R <-> CP-1251 на лету. Т.е Вам достаточно установить эту программу и указать своему Win32 IRC-клиенту, что он должен ходить через PXY-прокси. В архиве с PXY идет вполне достаточный README, рассказывающий как все настраивается.

Однако указанный выше способ, несмотря на его универсальность для любого Win32 IRC-клиента, к сожалению, не подходит тем, кто вынужден ходить в интернет через SOCKS или HTTP прокси так как PXY утилита не умеет работать через прокси сервера. Поэтому данной катагории пользователей решать проблему KOI8-R <-> CP-1251 трансляции придется уже на уровне IRC-клиентов. Для успешного решения данной проблемы IRC-клиент должен позволять пользователю контролировать входящие и исходящие потоки. Обычно это делается с помощью встроенного в IRC-клиент скрипт-языка.

Рассмотрение второго способа трансляции применительно к mIRC и BersIRC

mIRC

После непродолжительных поисков я нашел уже готовый скрипт решающий эту задачу. Скрипт называется RECODE. Вместе со скриптом идет описание по его настройке и использованию. Работает скрипт вполне корректно и на данный момент у него замечен только один ляп - он не умеет транслировать тему канала для отображения в заголовке окна клиента. Т.е если тема содержит символы старшей половины ASCII таблицы, то отображаться в заголовке окна она будет в виде "крякозябр". Хочу сказать, что я не разбирался в содержимом этого скрипта по причине крайне корявого и неудобного для моего понимания mIRC'овского скрипт-языка, поэтому не могу сказать, что там надо подправить для правильного отображения русских KOI8-R символов в заголовке окна. Оставляю эту творческую работу Вам. :)


BersIRC

Скрипт-язык этого IRC-клиента в плане удобства для программиста кардинально отличается от скрипт-языка mIRC'a. По сути скрипт-язык BersIRC'a представляет собой ObjectPascal, т.е тем, кто знаком с Delphi, написание скриптов для BersIRC'a не составит никакого труда. Даже тем, кто не знаком ни с Delphi, ни с Pascal'ем, все равно писать скрипты для BersIRC'a будет удобнее и понятнее, чем для mIRC'a. Сам я с Delphi никогда не работал, хотя с Borland Pascal for MS-DOS и Virtual Pascal for OS/2 поработал в свое время достаточно много. Ситуацию с написанием собственных скриптов облегчает еще и тот факт, что вместе с BersIRC'ом можно скачать с сайта разработчика (и со сторонних сайтов по ссылкам) примеры уже работающих скриптов и полное описание процедур и функций допустимых к применению в скриптах. У меня лично разбирательство во всей этой "кухне" заняло всего пол-дня и уже к вечеру был готов deep-alpha набор скриптов, который мне смог транслировать KOI8-R <-> СР-1251 и я, наконец-то, увидел #os2russian по-русски. :))

Дальнейшая работа происходила в более быстром темпе и за пару дней я сделал вполне работоспособный комплект скриптов. Установка моих скриптов заключается в записи их поверх уже имеющихся файлов в каталоге ...\BersIRC\Scripts. Настройка параметров несколько неудобна, так как не является интерактивной как в случае с RECODE скриптом для mIRC'a, но тем не менее позволяет настроить имена каналов для которых надо применять трансляцию KOI8-R <-> CP-1251, а также имена пользователей PRIVATE-разговоры с которыми тоже должны подвергаться трансляции. Все эти параметры настраиваются редактированием блока констант в модуле TRANS.OPS:

  AHI = 'NO';                              //Auto Hi-messages
  PUB = '#OS2RUSSIAN,#TEST,#BEOS';         //Channels list for 
                                           //activate translation
  PRV = 'SERGEY,OS2KRNL,E-CO,OS2OK,ELI_W'; //Nicks list for 
                                           //activate PRIV translation

Переменная AHI отвечает за включение или выключение вывода автоматических приветственных сообщений при обнаружении нового пользователя на канале. Допустимые значения: 'YES' или 'NO';

Переменная PUB содержит имена каналов на которых трансляция KOI8-R <-> CP-1251 должна быть активизирована. Для каналов не указанных в этом списке трансляция производится не будет;

Переменная PRV содержит имена пользователей приватные сообщения от которых должны быть подвержены трансляции KOI8-R <-> CP-1251. Для пользователей не указанных в этом списке трансляция осуществляться не будет.

При написании имен регистр символов не важен.

После того как Вы внесли изменения в константы необходимо перезагрузить скрипты в BersIRC. Для этого Вы должны в командной строке BersIRC'a дать команду:

  /load bersirc.ops
  

или сделать тоже самое через меню:

  "Tools" -> "Options" -> "Scripts and Plugins"
  -> в поле Script File поместить bersirc.ops
  

Желающим попинать меня за отсутствие интерактивной настройки хочу напомнить, что это все еще Beta-версия скриптов. Она далека от совершенства и нуждается в доработке, но у меня сейчас катастрофически не хватает свободного времени и, честно говоря, желания "полировать глюкало". Для меня главный критерий - работает, а недостатки... я пока выявил только косметические: двоение вывода в окно клиента (но не на выход программы!) некоторой информации и невозможность "отлова" некоторых событий. Мне не удалось устранить эти ляпы сколько я не бился над этим. Изначально в скрипт-языке не хватает по крайней мере двух событий: "onTopicChange" и события "onCommandOutput". Я пообщался с автором BersIRC'a, но впечатление от этого общения у меня сложилось негативное. По-моему он весьма неотзывчивый тип и вообще у него, как бы это сказать, раздолбайское какое-то настроение. Короче мне было неприятно с ним общаться. В принципе, отчасти, его можно понять. BersIRC - бесплатный клиент и его автор никому ничего не должен. Сейчас он работает над 2.0 версией и, возможно, он учтет мои пожелания на добавление отслеживания некоторых event'ов в скрипт-язык. Было бы просто замечательно если бы кто-то из Вас, кто лучше меня разбирается в ObjectPascal, попробовал довести до ума эти скрипты. Может быть даже имеющихся event'ов Вам будет достаточно для устранения тех ляпов, которые не удалось устранить мне. А может быть кто-то из Вас решит написать свой плагин для трансляции KOI8-R <-> CP-1251. Уверен, что это будет гораздо более удобное и гибкое для конечного пользователя решение, чем скрипт. Одним словом дерзайте!

Ссылки:

  • mIRC homepage: www.mirc.com
  • BersIRC homepage: www.bersirc.com
  • Программа PXY
  • Скрипт RECODE для mIRC
  • Мои скрипты для BersIRC
  • Test the program:

    How to prepare USB flash disks (USB harddisks and other USBMSD devices) so eComStation can access it?

    Comments:

    Timur Kazimirov
    2001-09-07 09:23:30

    .......! ... ... ..... ....... .......

    .... .... ..... .....
    2001-09-10 22:34:07

    ....., ..... ........ .......
    .. ......... Win32 ....... .. *nix ......... koi8-r. ...... ............
    BTW "..., ... ..... ....." . .. ............ ...... NT..... ....., ..... ... .... .......
    .. ... .. irc.org.ru ... ... .... .... :)
    2e-co: ... ....... ! :)

    .... ..mm ..... .....
    2001-09-10 22:34:15

    ....., ..... ........ .......
    .. ......... Win32 ....... .. *nix ......... koi8-r. ...... ............
    BTW "..., ... ..... ....." . .. ............ ...... NT..... ....., ..... ... .... .......
    .. ... .. irc.org.ru ... ... .... .... :)
    2e-co: ... ....... ! :)

    Hitler
    2003-02-22 22:59:16

    ....... .. .............. ........ . ..... ................. ....

    Almer
    2004-05-08 00:53:08

    . .. ...... =))) ...

    dinky
    2006-04-25 10:19:43

    ......! ... .. ... . .....!

    eCo Software is a group of russian developers.
    How to support eCo Software? (you can send us some computers. Maybe you don't use the device but it may be useful for the developers). We have the mailboxes in USA, Netherlands, China and Hong Kong.

     

    Siberian OS/2

     


     

     

    ArcaOS 5.1.1 - DOS works again

    DOS virtual machine works again (it was working on Core 2 Duo, and didn't for i5). Install ArcaOS in UEFI mode to use DOS VM.

    PNG icons on Desktop

    eCo Software: it's a significant achievement that we have created PNG icons engine for OS/2 Desktop. and designed the set of system icons. In other words, we have modernized the external view of OS/2.

    Now we can discuss how to attract new users.

    // надо на ENG!!
    Blonde Guy

    Buy OS/2 application: PM Backup Suite (incremental data backup)

    Warpstock Europe 2000

    The conference ... clip about the conference:

     

    (C) OS2.GURU 2001 -- 2025