[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: X'ы, "ескейп-секвесы" и ISO-IR-111



  Hi!

> поддерживать _любой_ любой другой charset. Для этого необходимы
> две вещи :
> 
> 1) Чтобы _имя_ charset-a было "зарегистрировано" и
>     "широко известно" (также неплохо бы поддерживать alias-ы
>     имен charset-ов

 Нет проблем! :)))

Name: ECMA-cyrillic                           [RFC1345,KXS2]
MIBenum: 77
Source: ECMA registry
Alias: iso-ir-111
Alias: csISO111ECMACyrillic

> 2) Чтобы был известен mapping этого charset-a на UNICODE.

  А разве mapping определяется названием чарсета?
Насколько я понимаю, он определяется стандартными названиями символов.

(Кстати, на твоих страничках сказано, что..
"В стандарте UNICODE кроме определенного изображения каждому
символу присвоено определенное имя". Вообще-то, имя присваивается каждому
символу еще в "INTERNATIONAL REGISTER OF CODED CHARACTER SETS".
Начинная с 1975г :-)

  Вот по этим именам и можно построить любой "мэпинг".

  И "any way" все буквы koi8-r и iso-ir-111 находятся на одних и тех
же "кодовых позициях". (А "псевдографика", вообще-то, к национальному
чарсету отношения не имеет).

>  Я к чему клоню ? Что в настоящее время постепенно
> складыватся практика ссылаться на charset-ы ПО ИМЕНИ
> (как string). Например в заголовках MIME :
> Subject: Re: =?KOI8-R?Q?=C1?=

  Я уже сказал. iso-ir-111 такой же стандарт, как и koi8-r.
И даже более стандарт, поскольку в отличии от koi8-r зарегистрирован
в International Register :-)

>  Ну, спорить за charset-ы совершенно гиблое дело... Мне вот Windows-1251
> если честно признаться, вполне симпатичен. ;-) Порутчики, молчать! :-)
> Но это все совершенно _разные_ charset-ы. И соответственно, если
> ты хочешь породить *новый* charset, ты должен a) сделать mapping

  Ты, наверное, невнимательно прочитал начало моего письма.
Это не *новый*, а "забытый старый". Причем забытый, как мне кажется,
незаслужено. Поскольку сейчас "братья славяне" начали курочить
koi8-r добавляя в него свои буквы (и "вытесняя" по мере необходимости
черновскую псевдографику). При этом, все эти буквы (и на тех же местах!)
уже определены и "застандартизованы" в iso-ir-111.

>  Да, koi8-r в чем-то убогий (например нет EURO CURRENCY e.t.c.).
> Но он уже определен. И давайте его не будем трогать.Если
> уж очень хочется - RFC-2278 в руки и вперед ! ;-)
  В смысле - "назад, к стандартам" :-)
 
> >  Таким образом, "иксовый" koi8-r ("r" очевидно означает - restricted :-)
> >с одинаковым успехом можно считать как подмножеством Relcom's koi8-r,
> >так и IR-111.

  Вот эту фразу просто хоть переписывай еще раз.
  Тот чарсет, который в иксах ошибочно (!) называется koi8-r,
как морская свинка не имеет отношения ни к морю, ни к свиньям.
  Его можно с одинаковым успехом считать как subset of iso-ir-111,
так и subset of koi8-r ("интренетовского").
  То же можно сказать о koi8-u.

> Естественно, раз они не буквы то по-видимому их не пропустит
> X[mb|wc|]LookupString. Или пропустит ?

  Ну, я могу для примера отослать тебя к исходникам Xlib.
Файл imConv.c , табличка _Xkoi8[]. На всех codepoint, кроме букв - нолики.

То же и с "фонтами".

> >  Спрашивается - какая "добрая душа" воткнула в "иксы" esc-sequence
> >\033%/1\200\210koi8-r\002 ?
> >(к тому же неправильную, должно быть ...\200\211...)
> 
>  "Воткнул", IMHO ache. А насчет esc-seq то "из общих соображений"
> та, где явно содержится ИМЯ charset IMHO лучше. См. соображения
> выше. Опять же, такая схема расширяема (для новых charset-ов).

  А вот нифига! Это может быть и лучше "из общих соображений".
Но, как я писал в "скипнутой" части, Xlib их в общем-то не понимает.

  Лучшим доказательством является то, что последовательность для koi8-r
неправильная (не соответствут "иксовому" же стандарту на COMPAUND TEXT).

  Если я вставлю в Xlib последовательность типа
\033%/1blin-blin-blin! для koi8-r, ничего принципиально не изменится.

  Почему же оно все таки работает - надо углубляться в технические детали.
(Вообще-то, немного подробнее об этом я писал Новодворскому. Могу поискать,
если копия у меня сохранилась.)

  Вообще-то, я и не собирался вообще "выкинуть" koi8-r. Тем более - из
Интернетовских стандартов.

Для начала можно было бы просто заменить sequence. С тем аргументом,
что "иксовый" koi8-r можно с одинаковым успехом считать subset'ом
как "релкомовского" koi8-r, так и iso-ir-111.

  А второе, что хотелось бы - всеже совместить koi8-r и koi8-u.
Пусть это будет koi8-ru или просто koi8.

P.S. А может быть это вообще смысла не имеет? Unicode "смоет" все
эти "чарсеты".

-- 
 Ivan U. Pascal         |   e-mail: pascal@tsu.ru
   Administrator of     |   Tomsk State University
     University Network |       Tomsk, Russia