Кодировки, эх кодировки!!!

Автор: loginov Дата: 03.07.2004 14:19 Почему в Винде cp-1251, а в -nix-ах koi8-r? Почему, кроме ASP (не знаю как ALT),
дистры при инстале игнорируют эту кодировку(cp 1251)? Это " Война кодировок"?
Ведь, как правило, у юзера, стоит Windows в качестве ещё одной ОС(а может и
наоборот,Linux). Чем лучше ( или хуже ) koi8-r( и др ), по сравнению с cp-1251?
Re: Кодировки, эх кодировки!!! 03.07.2004 20:55vano На свой сайт из links зашел, а там cp1251 и все нормально отображается.
Вообще в условиях всеобщей виндузятности лучше юзать cp1251.
Re: Кодировки, эх кодировки!!! 03.07.2004 22:37ethereal Согласен с vano. Юзать надо то что в данных условиях удобнее всего.
Re: Кодировки, эх кодировки!!! 04.07.2004 00:22GOzzy > Чем лучше ( или хуже ) koi8-r( и др ), по сравнению с cp-1251?

Это ж давно известный факт - если КОИ8 отрезать 8-й бит, то текст все равно будет читаемым. Просто получится транслит.
Re: Кодировки, эх кодировки!!! 04.07.2004 01:12ethereal 2GOzzy
>Это ж давно известный факт - если КОИ8 отрезать 8-й бит, то текст все равно будет читаемым. Просто получится транслит.

Да, думаю это всем известно. Тем не менее я не вижу причин, по которым данная особенность кодировки KOI8-R может являться аргументом в пользу ее использования.
Re: Кодировки, эх кодировки!!! 04.07.2004 01:54GOzzy 2ethereal: давно это было, когда при передаче данных использовался исключительно 7-битный стандарт ASCII. Но это так всем внушило, что эта кодировка живет и по сей день, по всей видимости Улыбка
Re: Кодировки, эх кодировки!!! 04.07.2004 09:17Дед Крапива Если честно, то с 1988 года ни разу я не видел обрезанный восьмой бит. А до 88 года я с компьютерами не работал.
Какая кодировка стоит - это совершенно неважно. Первый раз я поставил 1251, а второй - КОИ8р, и разницы не увидел.
Re: Кодировки, эх кодировки!!! 04.07.2004 13:38GOzzy Эта кодировка, кажись, впервые описана была в одном из ГОСТ от 1974-го года, что малость подревнее, чем 1988 ;-)
Re: Кодировки, эх кодировки!!! 04.07.2004 13:57zakon На сайте [koi8.pp.ru] описано почему в русскоязочной сети надо использовать koi8, и почему в Юникс системах не следует использовать cp1251.

И ещё интересный исторический документик:
[news.demos.su]
Re: Кодировки, эх кодировки!!! 04.07.2004 19:10XMan Там только не описано, почему по koi8 труднее сортировать и почему mc вываливает русские имена в весьма замысловатом порядке.
Re: Кодировки, эх кодировки!!! 04.07.2004 19:31Genie Ну, почему труднее сортировать - понятно и так, поскольку порядок всё же не алфавитный.
А вот почему mc сортирует не правильно - в замысловатом порядке - так это всё потому, что он неправильно написан - он не вызывает системную функцию сортировки, а делает это прямой сортировкой по байтикам. Что и даёт такой эффект.
Собственно, это ещё одно против его использования.
Правда, пользоваться им всё равно приходится....
Re: Кодировки, эх кодировки!!! 05.07.2004 09:58zakon > Там только не описано, почему по koi8 труднее сортировать
Как раз таки там написано, почему это ложь, читайте внимательней, или подумайте, кроме русского есть и другие языки, в которых в основном латиница с дополнительными буквами, и эти буквы отнюдь не в конце.

> и почему mc вываливает русские имена в весьма замысловатом порядке.
mc может в каком угодно порядке вываливать, главное что ls показывает в правильном.
Re: Кодировки, эх кодировки!!! 05.07.2004 17:54Гастрит ethereal писал(а):

> Согласен с vano. Юзать надо то что в данных условиях удобнее
> всего.
>

Следовательно - utf-8. Или в cp1251 уже появились греческие буквы и немецкое двойное "s"?

С уважением,
Гастрит
Re: Кодировки, эх кодировки!!! 05.07.2004 18:28XMan > Как раз таки там написано, почему это ложь

Да ? А почему тогда после буквы Д идет буква Ц ? Это называется "7 бит", но ни как не русский алфавит.
А вы знаете, что нужно сделать, чтобы mc нормально сортировал ? И на сколько строк кода заменится тамошний strcmp при реализации этой сортировки ?

В идеале, 8-ми битную таблицу можно сортировать ассемблерной командой сравнения строк. Кажись, в x86 она зовется "cmps". В случае кирилицы никто не мешал расположить символы в алфавитном порядке. Собственно, что и было сделано в cp866.

> читайте внимательней, или подумайте, кроме русского есть и другие языки

Собственно, другие языки никаким местом не относятся к данной теме. Тем более, что для подавляющего большинства существует только одна единственная кодировка, а кирилица никаким образом не привязана к литинице.

> mc может в каком угодно порядке вываливать, главное что ls показывает в правильном.

Вот вот... А кто мешал сделать это на уровне glibc ? За столько-то лет...
Вот только не надо разглагольствовать, что это там не нужно Улыбка

---

> Следовательно - utf-8

UTF8 не понимает TheBat. Точнее, понимает, но печатать не хочет. Это относится как минимум к text/plain письмам.
Ну это так... Для примера. Мне кажется, что будь текст в UTF16, проблемы бы не возникло Улыбка
Re: Кодировки, эх кодировки!!! 05.07.2004 18:34Гастрит XMan писал(а):

> UTF8 не понимает TheBat. Точнее, понимает, но печатать не
> хочет. Это относится как минимум к text/plain письмам.
> Ну это так... Для примера. Мне кажется, что будь текст в
> UTF16, проблемы бы не возникло Улыбка

Bat уже стал Linux-программой? UTF-16 уже стала доступной unix-локалью? Улыбка

С уважением,
Гастрит
Re: Кодировки, эх кодировки!!! 05.07.2004 18:44zakon > Вот вот... А кто мешал сделать это на уровне glibc ? За столько-то лет...
> Вот только не надо разглагольствовать, что это там не нужно Улыбка

Ё-моё, сколько раз повторять, что это давно сделано на уровне libc во всех современных операционных системах, то что какая-то прога сумничила ничего не значит, кроме того, что её криво написали!
Re: Кодировки, эх кодировки!!! 05.07.2004 18:51Bircoph 2 zakon:

но-но, mc не трожь!
Из голой консоли в ftp ой как неуютно.
Re: Кодировки, эх кодировки!!! 05.07.2004 19:05zakon > но-но, mc не трожь!
Это не я, я даже не знал, что он глючит при сортировке, пока XMan не сказал.

> Из голой консоли в ftp ой как неуютно.
типа рекурсивного get не хватает?
Re: Кодировки, эх кодировки!!! 05.07.2004 19:34zakon > В идеале, 8-ми битную таблицу можно сортировать ассемблерной командой сравнения строк. Кажись, в x86 она зовется "cmps".
ИМХО, всё же cmpsb
Re: Кодировки, эх кодировки!!! 05.07.2004 20:01Genie > ИМХО, всё же cmpsb
Всё же это семейство команд cmpsb/cmpsw/cpmsd
и такая конструкция правильна
cmps al,byte ptr [es:di]
cmps eax,dword ptr [es:edi]
Re: Кодировки, эх кодировки!!! 05.07.2004 20:16zakon Вышеуказанные конструкции правильны только в ассемблерах допускающих такие "вольности".
Re: Кодировки, эх кодировки!!! 05.07.2004 20:17Genie tasm
masm
wasm
Улыбка
Re: Кодировки, эх кодировки!!! 05.07.2004 20:20zakon Угумс, когда-то я ими пользовался, сейчас в основном nasm и as (binutils)
Re: Кодировки, эх кодировки!!! 05.07.2004 23:12XMan > Bat уже стал Linux-программой?

Кодировка CP1251 уже стала стандартом "де факто" в *nix ? Нет ? Удивительно... И что же мы все обсуждаем ? Улыбка

> UTF-16 уже стала доступной unix-локалью? Улыбка

Еще нет ? Отстаем, господа, если уж и в win это поддерживается давно и полностью...
А в линухе еще и UTF8 не везде нормально работает.

> типа рекурсивного get не хватает?

ncftp спасет отцов русской демократии ? Улыбка

> Ё-моё, сколько раз повторять, что это давно сделано на уровне libc во всех современных операционных системах

Тогда где полное и конкретное описание, как эту хрень использовать ? Ну или хотя бы ссылки на функции в man-е.
К сведению - система ASP 9.2

> Это не я, я даже не знал, что он глючит при сортировке, пока XMan не сказал.

Явно на bugzilla не заглядывал. Я эту проблему чуть ли не сразу после выхода 9.2 туда скинул. Вместе с патчем.
Re: Кодировки, эх кодировки!!! 05.07.2004 23:35zakon >> UTF-16 уже стала доступной unix-локалью? Улыбка
> Еще нет ? Отстаем, господа, если уж и в win это поддерживается давно и полностью...

Во первых в виндах тоже не везде и не полностью, а преимуществ у UTF-16 я не вижу, следуя вашей логике мы должны на UTF-32 переходить?

> А в линухе еще и UTF8 не везде нормально работает.

Используйте Plan9, там UTF-8 родная.

>> Ё-моё, сколько раз повторять, что это давно сделано на уровне libc во всех современных операционных системах
> Тогда где полное и конкретное описание, как эту хрень использовать ?
> Ну или хотя бы ссылки на функции в man-е.

Да пожалуйста, мне не жалко:
[www.opengroup.org]
[www.opengroup.org]
[www.opengroup.org]
[www.opengroup.org]

>> Это не я, я даже не знал, что он глючит при сортировке, пока XMan не сказал.
>Явно на bugzilla не заглядывал. Я эту проблему чуть ли не сразу после выхода 9.2 туда скинул. Вместе с патчем.

Ага, я просто так часто пользуюсь mc, в ls этой баги нет.
Re: Кодировки, эх кодировки!!! 05.07.2004 23:36XMan Кстати, о "давно сделано на уровне libc".
Рекомендую заглянуть в исходник команды sort и посмотреть, как там используется "уровень libc".

АСПовый пакет:
[ftp.asplinux.ru]


PS. Хотя в mc я в свое время пошел другим путем.
RSS-материал