LINUX.ORG.RU

В X11 кодировкой по умолчанию для России становится UTF8

 , , ,


0

0

Три часа назад, не без помощи со стороны svu, Daniel Stone внёс в код libX11 важное изменение, лог которого звучит следующим образом: "так как никто не пользуется кодировкой 8859-5, то кодировкой по умолчанию для России будет UTF-8".

Не прошло и 20 лет...

>>> Подробности



Проверено: anonymous_incognito ()
Последнее исправление: CYB3R (всего исправлений: 1)
Ответ на: комментарий от anonymous

>> 1251 не годится для семибитных терминалов.

> а что, такие ещще остались?

А вдруг ? :-) В 1251 смысла нет никакого, это просто Билли захотелось быть, не как все. Что касается номера и т.п., оно решается дополнительными шрифтами. Всё равно все символы в байт не запихаешь.

AS ★★★★★
()

Не могу не высказать троекратного ура...

m1rag3 ★★
()
Ответ на: комментарий от acheron

>> А этой самой ISO-8859-5 вообще кто нибудь сейчас пользуются? > Все, кто пользуется OS/2 :)

И Novell NetWare (:

anonymous
()
Ответ на: комментарий от Xellos

> Кто-нибудь когда-нибудь вообще использовал 8859-5?

Пользуюсь и отказываться не собираюсь. Дело в том, что кое-какой старый софт, работающий по протоколу telnet и изначально не
предусматривавший поддержки русского языка, с utf8 работать не будет совсем, а из 8 битных кодировок не подходят 1251 и koi8r, ибо занимают
диапазон управляющих символов telnet, а 866 имеет разрыв в строчных..
Впрочем, к x11 это всё отношения не имеет.

Cp1251
128     ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?
160       ? ? ? ? ? ? ? Ё © ? ? ? ? ? ? ° ? ? ? ? ? ? · ё ? ? ? ? ? ? ?
192     А Б В Г Д Е Ж З И Й К Л М Н О П Р С Т У Ф Х Ц Ч Ш Щ Ъ Ы Ь Э Ю Я
224     а б в г д е ж з и й к л м н о п р с т у ф х ц ч ш щ ъ ы ь э ю я
Cp866
128     А Б В Г Д Е Ж З И Й К Л М Н О П Р С Т У Ф Х Ц Ч Ш Щ Ъ Ы Ь Э Ю Я
160     а б в г д е ж з и й к л м н о п ░ ▒ ▓ │ ┤ ╡ ╢ ╖ ╕ ╣ ║ ╗ ╝ ╜ ╛ ┐
192     └ ┴ ┬ ├ ─ ┼ ╞ ╟ ╚ ╔ ╩ ╦ ╠ ═ ╬ ╧ ╨ ╤ ╥ ╙ ╘ ╒ ╓ ╫ ╪ ┘ ┌ █ ▄ ▌ ▐ ▀
224     р с т у ф х ц ч ш щ ъ ы ь э ю я Ё ё ? ? ? ? ? ? ° ∙ · √ ? ? ■
Koi8-r
128     ─ │ ┌ ┐ └ ┘ ├ ┤ ┬ ┴ ┼ ▀ ▄ █ ▌ ▐ ░ ▒ ▓ ⌠ ■ ∙ √ ≈ ≤ ≥   ⌡ ° ² · ÷
160     ═ ║ ╒ ё ╓ ╔ ╕ ╖ ╗ ╘ ╙ ╚ ╛ ╜ ╝ ╞ ╟ ╠ ╡ Ё ╢ ╣ ╤ ╥ ╦ ╧ ╨ ╩ ╪ ╫ ╬ ©
192     ю а б ц д е ф г х и й к л м н о п я р с т у ж в ь ы з ш э щ ч ъ
224     Ю А Б Ц Д Е Ф Г Х И Й К Л М Н О П Я Р С Т У Ж В Ь Ы З Ш Э Щ Ч Ъ
ISO8859-5
128     ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?
160       Ё ? ? ? ? ? ? ? ? ? ? ? ? ? ? А Б В Г Д Е Ж З И Й К Л М Н О П
192     Р С Т У Ф Х Ц Ч Ш Щ Ъ Ы Ь Э Ю Я а б в г д е ж з и й к л м н о п
224     р с т у ф х ц ч ш щ ъ ы ь э ю я ? ё ? ? ? ? ? ? ? ? ? ? ? ? ? ?

Deleted
()
Ответ на: комментарий от mrdeath

> ну да, как я и написал, лишние проблемы для программистов. Но оно того стоит. Еще бы виндовс на уникод перешел бы. Дабы до конца решить вопрос с кодировками.

Вообще-то винда и так в юникоде, просто она предоставляет возможность не знать об этом.

Что касается переменной длинны символов так ваще проблемы не вижу. UTF-8 -> wchar_t(UTF32) и не надо говорить про оверхед по памяти, предварительная оптимизация корень всех бед.

anonymous
()
Ответ на: комментарий от mrdeath

> мне очень интересно, какой процент русских знает китайский/японский? Неужто уж очень много? ;)

Приплюсуй процент русских, знающих иностранные языки помимо английского и итальянского (и, вроде, болгарского и сербского). Все остальные европейские языки используют какие-то символы помимо стандартной латиницы и входящего в КОИ8-Р подмножества кириллицы (ä, ø, ç, ў и т.д.). Поэтому ими нельзя пользоваться одновременно с русским в 8-битной кодировке.

acheron ★★★★
()

А там есть кодировка? Почему ее тогда никто никогда не настраивал? :)

А что с другими языками, использовавшими свои доисторические кодировки, у них все осталось по-старому? Мне кажется, если переводить на юникод, так всех сразу, а то получается какой-то зоопарк.

dm1024 ★★★
()
Ответ на: комментарий от AS

> Что касается номера и т.п., оно решается дополнительными шрифтами.

Нет единого стандарта на эти надстройки над КОИ. И вряд ли будет. Это годится только для внутреннего использования.

acheron ★★★★
()
Ответ на: комментарий от mrdeath

> мне очень интересно, какой процент русских знает китайский/японский? Неужто уж очень много? ;)

Интереснее то, что пока будет продолжаться зоопарк кодировок, у всех русских то там, то сям будут проблемы со всевозможными кракозяблами.

dm1024 ★★★
()
Ответ на: комментарий от mrdeath

> :) я имел в виду, без этого самого фронтенда :)

В XP, по-моему, все программы кроме консоли в UCS-2. Офис юникодный с конца 1990-х. Насчёт IIS не уверен -- его колбасит он буквы "я" (0xFF) :)

acheron ★★★★
()

Ждем форка. UTF-8 - не нужен! Верните 8859-5!!!

anonymous
()
Ответ на: комментарий от acheron

>> koi8-r форева, юникод не нужен, ибо оверхед: русские юзают русский и английский, а они есть в koi8r.

>Попробуй написать № :)

Тоже мне бином Ньютона: \No

Evgueni ★★★★★
()
Ответ на: комментарий от maximo

>> svu, mgimo finished? How much clock?

> не порти классику

> не clock а watches

> и не mgimo а mensk inyaz

сам не порти - шутка вообще из фильма casablanca аж 42 года...

Baz
()
Ответ на: комментарий от anonymous

>>1251 не годится для семибитных терминалов.

>а что, такие ещще остались?

Вы не поверите, но в мире есть куча компьютеров, где нет кириллицы вообще и семибитные терминалы это вполне себе выход для чтения почты.

Evgueni ★★★★★
()
Ответ на: комментарий от Baz

>> svu, mgimo finished? How much clock? > не порти классику > не clock а watches > и не mgimo а mensk inyaz >сам не порти - шутка вообще из фильма casablanca аж 42 года...

Классный фильм!

laune
()

А чего вы про японский заладили? Кроме него есть французкий, немецкий, испанский, финский и еще куча языков, где полно символов, которые в ASCII не лезут. И о каком, нафиг, оверхеде может быть речь с современным железом/сетью? UTF8 - в массы!

anonymous
()
Ответ на: комментарий от sabonez

> Все зашибись, конечно, а как же BSD-шники? Как там дела с UTF-ом щаз обстоят?

а скаких это пор шерифа заволновали проблемы негров?

:draties

anonymous
()
Ответ на: комментарий от anonymous

> Вообще-то винда и так в юникоде, просто она предоставляет возможность не знать об этом.

4.2 по поводу того что она на юникоде. Не вся заведомо.

Evgueni ★★★★★
()
Ответ на: комментарий от mrdeath

> Еще бы виндовс на уникод перешел бы.

Не путайте уникод и утф8!!! Это немного разные вещи. UTF == Unicode Transformation __Format__. А кодировок уникода ни разу не меньше (iconv -l | grep -i -e utf -e ucs), чем был зоопарк с 8-ми битными кодировками.

anonymous
()
Ответ на: комментарий от anonymous

Японцы выбирают shift_jis, и вовсе не utf

anonymous
()
Ответ на: комментарий от VladimirP

> Гораздо большему числу людей приходится в русские тексты вставлять куски на французском и греческие буквы. Всё, без Юникода в этих случаях уже кердык.

В голой консоли всё равно не получить больше 512 различных символов (аппаратные ограничения; два набора шрифтов, основной и дополнительный; хотя сомневаюсь, что их можно отображать одновременно), а в том же опенофисе можно писать на любом языке при системной кодировке koi8-r. Были бы шрифты.

anonymous
()
Ответ на: комментарий от KRoN73

> Long live UTF-8! Долой зоопарк кодировок! :)

Зоопарк как раз только начинается. IMHO лучше было бы что-то вроде UTF-32 (которых тоже два варианта), чтобы латиница не выделялась.

Evgueni ★★★★★
()
Ответ на: комментарий от sabonez

> Все зашибись, конечно, а как же BSD-шники? Как там дела с UTF-ом щаз обстоят?

в бзде уникод только драйвер консоли syscons не поддерживает, а так все нормально

JB ★★★★★
()
Ответ на: комментарий от Evgueni

>Зоопарк как раз только начинается. IMHO лучше было бы что-то вроде >UTF-32 (которых тоже два варианта), чтобы латиница не выделялась.

Согласен, что UTF-8 заточен под латынь.

laune
()
Ответ на: комментарий от JB

>в бзде уникод только драйвер консоли syscons не поддерживает, а так все >нормально

Нахрен такой юникод? Эта как венда... в консоле 866, внутрях юникод, а фронтэнд так вообще 1251.

laune
()
Ответ на: комментарий от laune

а зачем в консоли utf-8? по-мойму только извращенцы сидят без иксов. А для администрирования в консоли utf8 нафиг не нужен.

вот курзи бсдшные еще пока не утфные. Типа ставьте гнутые.

mrdeath ★★★★★
()
Ответ на: комментарий от Evgueni

>лучше было бы что-то вроде UTF-32 (которых тоже два варианта), чтобы латиница не выделялась.

UTF-8 на сегодня одно из самых оптимальных решений. Куда бы ты не полез - почти всюду латиница составляет больший объём данных. Скажем, эта страница ЛОРа в однобайтовой кодировке составляет 46к, в UTF8 - 55к. Прирост всего 16%. А в UTF-32 она бы была не на 16%, а на 300% больше :) - 184кБ.

KRoN73 ★★★★★
()
Ответ на: комментарий от mrdeath

>а зачем в консоли utf-8?

А почему нет? В Gentoo у меня по жизни на всех машинах юникод в консоли. Показывается, естественно, только 256-символьное подмножество (в моём случае через KOI8-R, ибо псевдографика для всяких mc). При чём никаких спец. телодвижений для этого делать не надо, только в конфиге пару строк прописать.

KRoN73 ★★★★★
()
Ответ на: комментарий от anonymous

> В голой консоли всё равно не получить больше 512 различных символов (аппаратные ограничения

аппаратные можно переделать, это не самая большая проблема.

AS ★★★★★
()
Ответ на: комментарий от mrdeath

>а зачем в консоли utf-8? по-мойму только извращенцы сидят без иксов. А >для администрирования в консоли utf8 нафиг не нужен.

Как зачем? Почту писать-читать... много чего ещё. Я что, извращенец? Зачем грузить иксы если что-то быстрее сделать без них?

laune
()

svu молодец. давно пора.

офф: достаточно занимательный коммент в исходнике tr можно посмотреть на http://heirloom.cvs.sourceforge.net/heirloom/heirloom/tr/tr.c?view=markup#85 это простое приложение, при использовании юникодных локалей сжирает в сотни, а то и тысячи раз больше памяти, по сравнению с однобайтными (кстати работает гораздо быстрее gnu'того tr из coreutils)... т.е. ucs-4 конечно хорошо, но без фанатизма. :)

anonymous
()
Ответ на: комментарий от AS

> аппаратные можно переделать, это не самая большая проблема.

Что-то никто по этому поводу не чешиться, лет так 30 уже! Вам не кажется это странным?

UTF32 -- суть таже UTF8, только расширенная до 4-х байт. Но в уникоде символов больше 65536! Так что даже UCS4 не поможет охватить все.

anonymous
()
Ответ на: комментарий от KRoN73

>UTF-8 на сегодня одно из самых оптимальных решений. Куда бы ты не полез >- почти всюду латиница составляет больший объём данных. Скажем, эта >страница ЛОРа в однобайтовой кодировке составляет 46к, в UTF8 - 55к. >Прирост всего 16%. А в UTF-32 она бы была не на 16%, а на 300% больше >:) - 184кБ.

Следуя твоей логике, однобайтная кодировка рулит? Или аргумент приведён недостаточный?

laune
()
Ответ на: комментарий от BigKAA

> Да, пользовался в Solaris 8

зачем? это чтобы выделится чтоли? или в 8 солярке нельзя было сделать koi8-r ? опять же давайте не будем говорить про старые релизы, а все-таки рассматривать текущую ситуацию и смотреть на будущее.

anonymous
()
Ответ на: комментарий от anonymous

> Так что даже UCS4 не поможет охватить все.

Упс. Глупость сморозил. Извиняйте :)

anonymous
()
Ответ на: комментарий от laune

>Следуя твоей логике, однобайтная кодировка рулит?

По объёму - рулит. Но объём - не единственный критерий. Или ты упустил то, с чего я начинал утверждение? «UTF-8 на сегодня одно из самых оптимальных решений.» Оптимальное - это золотая середина. Не очень большой прирост объёма. При этом возможность передавать до 2^31 символов.

KRoN73 ★★★★★
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.