LINUX.ORG.RU

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

 , , ,


0

0

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

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

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



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

>Да вроде бы маководы жаловались на свой родный терминал.

кто-то тут говорил выше что коммерческое == качественное? ;)

как речь о проблеммах то сразу всплывают микрософтоиды и маковводы

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

>почему большая часть рунета в кодировке 1251, а не в utf16?
Привычка, старый windows, другое? Или уже количество сайтов в win-1251 кодировке в рунете решает что используется внутри Windows? Интересная логика.

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

>Привычка, старый windows, другое?

что значит старый виндовс? win3.1? win98? win2000? winXP?

огласите весь список пжалста, а то на как рекламные агитки кричать так у них де юникод со времен NT4, а как на вопрос "почему 1251" так у них еще "старый виндовс"

виста тоже старый виндовс?

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

> "и только M$ шагает невногу"

См. википедию.

> какая из немертвых ОС (кроме биллиных поделок) сейчас не поддерживает utf-8 локали?

symbian? palmos? os400?

> если бы изначально стояло "но не наоборот" никаких бы utf8 великов не изобретал бы никто.

Это неважно. Важно то, что "наоборот" никто никогда не обещал. Его нет и не будет.

> то есть и новые и старые данные

Новые проги работают с новыми и старыми данными. Старые проги (8-битные) работают со старыми данными. Старые проги (перл) не обязаны работать с новыми данными без изменений в коде.

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

>Или уже количество сайтов в win-1251 кодировке в рунете решает что используется внутри Windows? Интересная логика.

наиболее логично предположение, что та кодировка в которой создается большинство документов в данной операционной системе и является основной для этой ОС. основная часть рунета в 1251

точка

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

>symbian? palmos? os400?

я просил немертвых

>См. википедию.

и что ты там написал? типа если ты тут сгородил чушь это одно, а если ты ее в википедии повторил то внушительнее выглядеть стало?

>Старые проги (перл) не обязаны работать с новыми данными без изменений в коде.

perl 5.8.8 старая прога или новая?

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

Старый windows это ME и ниже. ещё вопросы? Вы по существу, пожалуйста.

> так у них де юникод со времен NT4
И много пользователей пользовалось NT4, не имея возможности, скажем, игрушки запускать?

>виста тоже старый виндовс?
т.е. весь рунет сформировался сразу после выхода висты? Вот ведь неожиданность то. Виста появилась совсем недавно и есть далеко не у всех. Как её наличие или отсутствие влияет на использование win-1251 большинством в рунете? + кстати, приведите статистику что ли, что за такие серъёзные организации, которых так много?

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

>основная часть рунета в 1251

мало того, я думаю в рунете КРАЙНЕ СЛОЖНО БУДЕТ НАЙТИ сайт в UTF16: родная якобы кодировка Win. Что в Win в ее РОДНОЙ кодировке сложно документы создавать?

расскажите еще что-то смешное

про юникод в венде уже посмеялись

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

> наиболее логично предположение, что та кодировка в которой создается большинство документов в данной операционной системе и является основной для этой ОС.

Как связана опция формата по умолчанию в редакторе с внутренним устройством OS? Вы телепат или в MS работаете?

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

>Старый windows это ME и ниже. ещё вопросы? Вы по существу, пожалуйста.

8-9 лет все только на привычке стало быть держится?

ежики плачут и колются но не хотят применять РОДНУЮ кодировку M$Win?

xargs ★★★
()

господа! я поражен. я поражен до глубины души. такое количество нелепостей и ни на чем не основанных мифов в одном треде — это нечто. да был бы это сколько-нибудь сложный вопрос, но ведь нет. все что надо о юникоде и его кодировках знать, описывается всего на нескольких страницах википедии (правда желательно читать английский вариант — он почему-то понятнее). и неспособность или нежелание прочитать наконец эти сведения, не может свидетельствовать ни о чем кроме пристрастия к воинствующему ламерству.

@svu: еще раз выражаю свой респект.

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

Курение тоже сколько лет держится. А вобщем-то тоже привычка. И? Ёжики вообще любят кактусы, что тут сделать?

Ещё к примеру, скажем, народ.ру требует win-1251. Это тоже объясняется устройством OS? Яндекс уже Windows разрабатывает?

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

>все что надо о юникоде и его кодировках знать, описывается всего на нескольких страницах

мы здесь не о юникоде спорим, а о рекламных штампах вбитых в бедные головы потребителей гхм продукции M$

>википедии

ты тоже считаешь что если ты повторишь сказанную чушь на википедии то она станет весомее?

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

помогите, пожалуйста, со следующим (постил ранее в форум, никто не ответил)

smb-2-smb Есть 2 сервера, один RH 7.2 с самбой 2.* на koi8-r, второй - win2000. Виндовые клиенты подключают расшаренные диски с обоих серверов без проблем, в том числе с русскими названиями файлов.

Линуксовые клиенты, на АСП 11 (утф8), лайв-сиди убунты также без проблем монтируют указанные общие каталоги. Причем для АСП использовал след команду: mount -t smbfs //.win.. /mnt/w2k -o codepage=866,iocharset=utf8 mount -t smbfs //.lin.. /mnt/lin -o codepage=866,iocharset=utf8

,когда были старые системы, на кои8, то соответственно изменял на кои8, все было замечательно

Установил Федору 7 (8-ка то же самое) в качестве клиента на одну из машин. Монтирую те же каталоги с теми же опциями, только используя -t ciffs. Виндовый ресурс монтируется без крякозябр с русскими именами файлов, а линуксовый - нет.

Пробовал и без монтирования, например в КДЕ smb://lin/share, та же петрушка, хотя в свойсвах конка указана кодировка 866 для самба ресурсов. Та же операция с виндовыми ресурсами дает положительный результат.

Где искать ошибку? Помогите, пожалуйста.

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

> разработчики яндекса сидят на виндавсе, вот и все
Citation needed. + вы таки не ответили на вопрос:

"Как связана опция формата по умолчанию в редакторе с внутренним устройством OS? Вы телепат или в MS работаете?"

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

>unsigned char *p;

понял, я совсем не на то, что нужно обратил внимание

>{p--; while (*p&192==128) p--;}

А если этот символ |вдруг| окажется 11111111b? Не всё так просто ;)

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

> Как связана опция формата по умолчанию в редакторе с внутренним устройством OS?

да уж, в венде тот еще зоопарк кодировок. Ослик по дефолту смотрит на cp1251, smbfs на cp866, а notepad на utf-16... Ну не шизофрения, а?

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

>мало того, я думаю в рунете КРАЙНЕ СЛОЖНО БУДЕТ НАЙТИ сайт в UTF16: родная якобы кодировка Win. Что в Win в ее РОДНОЙ кодировке сложно документы создавать?

Что значит "родная"? Та, в которую идет трансляция параметров для *W функций и их названий - UCS-2 (в т.ч. при вызове *A функций). При чем тут вообще какие-то документы? Линукс utf8 использует только в коде vt, остальное - ansi. Прекращай нести пургу.

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

>"Как связана опция формата по умолчанию в редакторе

в ОДНОМ редакторе - никак

а в большинстве она стоит в соответствии с системной кодировкой

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

to xargs

Все проще, на сколько я помню, по RFC в HTTP используется ASCII совместимая (или по крайне мере проще реализуется), то есть UTF16 не проходит, а cp1251 проходит. Так же как и UTF8, что сейчас в мире чаще всего и используется для web-a.

A UTF16 остается внутренней кодировкой, как wchar_t (32bits) в POSIX.

Все крики про не постоянную длину UTF8 чушь, это транспортная кодировка, преобразуемая во внутреннюю (wchar_t). А вот с UTF16 засада - это тоже кодировка с не постоянной длиной, НО программеры об этом НЕ знают :D.

Так что глюки растут и ширятся. ;)))))))))))))

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

>Что значит "родная"?

это и пытаюсь выяснить у кричащих о том что у венды давно уже юникод "родной"

если он родной то почему документы в 1251, сеть в 866 итп итд?

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

>если он родной то почему документы в 1251, сеть в 866 итп итд?

Я так понимаю, что речь шла о внутренней кодировке WinAPI.

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

>Все проще, на сколько я помню, по RFC в HTTP используется ASCII совместимая

только для заголовков

контент пакуется во всякие base64 итп и идет хоть бинарный хоть ASCII хоть utf32

чтобы http отдавал utf32 достаточно htaccess прописать с нужной кодировкой и но проблем

другой вопрос что файлы в венде нечем создавать в utf16/32 потому что нет в венде средств для этого, кроме рекламных плакатов

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

>А если этот символ |вдруг| окажется 11111111b? Не всё так просто ;)

В UTF-8, ЕМНИП, нет байта 0xFF. Вообще нет.

Символ же 0xFF кодируется как 0xC3 0xBF

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

>Я так понимаю, что речь шла о внутренней кодировке WinAPI.

WinAPI их ведь зоопарк каждая новая версия венды - новый WinAPI api16, api32, api64 вот новый появился

ты какой имеешь ввиду?

если расшарить файлы в сеть с висты, то на клиенте все равно придется прописывать cp866 чтобы русские имена правильно показывались

да и не видно массового создания сайтов в юникодных кодировках от пользователей висты-64

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

> за каким половым органом? для жертв бронепоезда: UCS. по буквам надо, или и так понятно?

UCS-2BE, UCS-2LE, UCS-4BE, UCS-4LE?

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

>ты какой имеешь ввиду?

Win32, начиная с WinNT. *W функции, если не ошибаюсь.

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

Это проблема не WinAPI, а уровня протоколов. У меня, вон, Linux на UTF-8, а Samba всё равно в cp866 только работает.

>да и не видно массового создания сайтов в юникодных кодировках от пользователей висты-64

Опять же, Linux на работе в UTF-8, а сайт делается в KOI8-R. И юникодность Linux тут не при чём.

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

>это и пытаюсь выяснить у кричащих о том что у венды давно уже юникод "родной"

Под юникодом всегда имелась ввиду возможность отображать текст (или получать о нем информацию) системными GDI-функциями из UNICODE-TrueType шрифтов

>если он родной то почему документы в 1251, сеть в 866 итп итд?

к вышескзанному мной это совершенно ортогонально

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

>а в большинстве она стоит в соответствии с системной кодировкой
4.2. к этому никто не обязывает. на вторую часть вопроса вы так и не ответили - т.е. если вы оперируете подобными сведениями, то они у вас должны откуда-то быть. откуда же?

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

>В UTF-8, ЕМНИП, нет байта 0xFF. Вообще нет.

Это совсем не означает, что он не может встретиться, т.е. помимо всего прочего нужна ещё проверка на соответсвие rfc3629, т.е. дополнительный код, так что не все так просто, в сравнении =)

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

>Символ же 0xFF кодируется как 0xC3 0xBF
Вероятно подразумевались некорректные входные данные

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

>Это совсем не означает, что он не может встретиться

В UTF-8 - не может. В бинарных данных - да. Но какое отношение бинарные данные имеют к UTF-8? :)

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

>В UTF-8 - не может. В бинарных данных - да.

Не "не может", а "не должен", т.е. мы или явно подразумеваем, что весь текст у нас в utf8 и он корректен, или везде делаем проверки

>Но какое отношение бинарные данные имеют к UTF-8? :)

Никакого. Просто подразумевая корректность, вы исходите от обратного =) А я же указываю на различия в работе между utf8 и однобайтовыми кодировками

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

> и второй вопрос: почему нигде кроме биллиных [недо]поделок эти сигнатуры не применяются?

libiconv ещё как использует!

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

> да это не смешно, когда такое количество народу как заведенные повторяют рекламную чушь от билли что якобы юникод давно и внутри венды :-\

А мусье не различает хранение и обработку информации?

На счёт "нескольких функций в винде" - вот это смешно, ибо большинство системных функций со строковыми данными есть в двух "ипостасях" - текущей локали и уникодные.

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

>Никакого. Просто подразумевая корректность, вы исходите от обратного

Или у нас UTF-8 и тогда такой метод подсчёта символов будет работать, или у нас мусор, и тогда о каком числе символов вообще может идти речь? :)

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

>ибо большинство системных функций со строковыми данными есть в двух "ипостасях" - текущей локали и уникодные.

и поэтому уникодные никто (почти) не пользует?

может проблема таки в самих функциях?

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

Я просто пошутил на этот счет, а сву стал пафосно называть меня шекспиром и еще кем-то...нехорошо.

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

>Людям свойственно делать самые глупые ошибки в самых неожиданных местах ;)

Людям - да. Но я сомневаюсь, что кто-то будет набивать UTF-8 текст в HEX-редакторе в двоичном виде :)

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

> Где искать ошибку? Помогите, пожалуйста.

Ясное дело, в голове

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

> я просил немертвых

Симбиан мертв??? ОС400 мертва??

> и что ты там написал?

Я в википедию не пишу. Если она не авторитет - погуглите еще. То, что внутри винды утф16 - это никак не изменит.

> perl 5.8.8 старая прога или новая?

Если не умеет работать с корректными файлами в утф8 - "старая" (относительно поддержики утф8)

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

>и поэтому уникодные никто (почти) не пользует?

Дает знать твоя плохая осведомленность: ansi-функции в winnt это по сути заглушки к юникодным wide-функциям - при их вызовах происходит трансляция в юникод, поэтому в nt-системах рекомендуют пользоваться wide-функциями, а ansi оставлены для совместимости со старыми приложениями

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

xargs весь тред компенсирует невежество пассионарностью.

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

> А утф8 выбран потому, что он позволяет использовать существующие ascii файлы. Корректный ascii файл --> корректный utf8 файл.

Тем самым полностью потеряли возможность автоматического (на этапе компиляции) аудита программ на юникодные проблемы. Корректная работа с utf-8 --> корректная работа с ascii, но не наоборот.

Хотя согласен, что переход на utf-32 потребовал бы отказ от половины стандартной библиотеки C, даже от такой стандартной функции как printf(). Но зато бы все переписали и провели хотя бы минимальный аудит.

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