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

Re: [Fwd: NEW charset!!! Было: Re: KOI8]



From: Ivan Pascal <pascal@info.tsu.ru>


>  Кстати, существует ли хоть один софт, который корректно понимает
>все чарсеты (хотя бы без алиасов) из ихней регистри? ;)


 Ну, например Microsoft Internet Explorer понимает довольно
много. Он даже понимает имена и Alias-ы не заявленные в
IANA (к счастью, только при чтении).

http://www.w3.org/International/O-charset.html
http://www.w3.org/International/O-charset-list.html

(Надо бы кстати их заявить.)

>  По хорошему, чарсеты должны регистрироваться в ISO IR.
>Тогда их можно "проталкивать" производителям софта.
>
>  Так вот. Насколько я понял, там регистрируемые "стандартные"
>чарсеты должны занимать не весь диапазон 0x80-0xff, а только
>0xa0-0xff.
> При семибитной кодировке восьмой бит отрезается
>и чарсет "падает" на символы ASCII, а коды 0x80-0x9f
> на "управляющие".


 Видишь ли какое дело... (Далее изложена сугубо моя точка зрения)

 В умах ISO-шников сильно сидит старая идея 7-битности. Отсюда
и их "96 символьные charset-ы" и левая-правая стороны кодовой
таблицы. Если же жизнь их заставляла делать прозрачные 8-ми
битные кодировки (например для японского/китайского) то там
они опять изворачивались и делали Multibyte, в которых символы
из 0x80-0x9f об'являли упраляющими "переход в другой набор".
Отсюда пошел их : ISO/IEC 2022 "Character code structure and
extension techniques". То есть даже 8-ми битный charset они
норовят "расширить" и оставляют в нем "дырки" под
управляющие коды - CO/C1 как минимум.

http://www.itscj.ipsj.or.jp/ISO-IR/overview.htm
http://www.ecma.ch/stand/ecma-035.htm

 Например, все кодировки ISO-8859-х сконструированы
именно так. Естественно X-ы очень многое впитали
от ISO и их ISO-2022 и ISO-8859-x.

 В то же время резвая PC-шная и MAC-овская вольница,
которая ничего не знала про глубокомысленные
изыскания ISO - наизобретала своих собственных
8-ми битных кодировок. Например в PC-шном мире
это были Codepages, которые с ISO ну никак
не пересекаются. CP-866, да и KOI8-R именно
такое, не-ISO-шное изобретение.

 Из-за бурного развития PC-техники подход к charset-у
как к прозрачной 8-ми битной кодировке,то есть
набору из 2^8=256 символов ( -32) достаточно
широко укоренился. И это поставило (или еще поставит)
ISO перед сложным выбором : как быть со своим
мудреным ISO 2022.

 Собственно, именно этот процесс мы видим, когда
европейские пользователи стонут со своей CP-1250,
которая в X-ы (cильно про-ISO-шные) лезет, увы,
криво. Или с нашим KOI8-R.

 Мое мнение такое, что нужно признать упрямые факты
и потихоньку уползать от ISO идеологии charset-а
к идеологии "charset как Codepage". Нету никакой
левой-правой половины. Есть 256 codepoints и все. :-)
Опять же, PC-шный мир органично переварил ISO-8859-x .


P.S. Хотя меня сейчас начнут пинать за отступничество
от дела стандартов :-)

--
-=AV=-