ЧЁ
Материал из Cisoclopedy
«ЧЁ» — это баг mIRC.
Он заключается в том, что сочетание символов
ЧЁ
иногда интерпретируется клиентом как странный символ-уголок («ר»), похожий на символ логического отрицания («¬»), но тем не менее им не являющийся. Будучи скопированным в буфер обмена, символ превращается обратно в ЧЁ.
Также было найдено, что ЧЁ читается форумом как буква «и».
ЧЁ является допустимым «символом» для ника, канала. Стоит иметь в виду, что ЧЁ не работает в сочетании с русскими символами, неразрывными пробелами и прочими не полностью допустимыми символами — вероятно, второй половины таблицы символов.
Таким образом, если поставить ЧЁ в ник, то в логе вы будете светиться под разными никами, в зависимости от набора символов в сообщении. ЧЁ, как ни странно, является полностью допустимым символом. Если вы, будучи под ником с не полностью допустимыми символами, попытаетесь сменить ник на содержащий ЧЁ, то ЧЁ не проинтерпретируется как уголок.
Содержание |
РЁ ЛЁ ПЁ
2 декабря 2007 на всё том же канале было открыли причину этого феномена — это оказалось воздействием буквы Ё. Оказывается, она может менять и другие символы, будучи поставленной после них. Особенность случайно обнаружена Rush после того, как v3 сделал топик канала видным на форуме. Буква Ё превращает символы из русского набора в соседние им по таблице арабские и ивритские символы.
Скучные математические выкладки
От Ambidexter: Этот раздел статьи предназначен для самых отъявленных гиков, которым интересно узнать научное объяснение феномена ЧЁ.
- В кодировке Windows-1251 каждый символ кодируется одним байтом. Например, буква Ы — это DB, или, в двоичном виде, 11011011. Полная таблица символов.
- В кодировке UTF-8 на разные символы отводится разное число байт, от одного до четырёх. В старшие биты записывается служебная информация, позволяющая при чтении последовательности определить, сколько байт следует прочитать для формирования очередного символа.
- Если байт начинается с 0 — значит, он единственный. Его младшие 7 бит соответствуют одному из 127 символов ASCII-таблицы.
- Если байт начинается с 110 — значит, надо прочитать ещё и следующий байт (который, кстати, должен начинаться с 10, иначе это неправильный байт). Иными словами, формат двухбайтового символа в UTF-8: 110yyyyy 10zzzzzz. yyyyyzzzzzz — символ Юникода. Двумя байтами (точнее, одиннадцатью битами) кодируются буквы кириллического, арабского, греческого и некоторых других алфавитов.
- Полное описание формата UTF-8 можно найти в Википедии.
В кодировке Windows-1251 сочетание ЧЁ имеет вид D7 A8, или 11010111 10101000. Таким образом, его код соответствует формату двухбайтового символа кодировки UTF-8. В связи с этим некоторые программы ошибочно интерпретируют данную последовательность как символ Юникода 10111101000, или 05E8, а это буква иврита ר («реш»).
Аналогичные превращения происходят со всеми двухбайтовыми последовательностями Win-1251, первый байт которых начинается с 110 (это строки Cx и Dx, т.е. все заглавные буквы русского алфавита, за исключением Ё), а второй — с 10 (это строки 8x, 9x, Ax и Bx).
Нетрудно заметить, что получить такое сочетание случайным образом весьма маловероятно, поскольку строки 8x—Bx состоят в основном из спецсимволов, не набираемых с клавиатуры. Исключением являются только Ё, ё, № и несколько букв украинского алфавита.
Поскольку некоторые из полученных символов принадлежат языкам, читающимся справа налево, могут возникнуть проблемы с выделением этих символов и редактированием текстов с их участием.
Где ещё можно наблюдать явление
Проблемы могут возникнуть в браузере Mozilla Firefox (проверялось на версии 2.0). При наборе в адресной строке
http://encyclopedia.sonic-world.ru/index.php/ЧЁ
после нажатия Enter она превращается в
http://encyclopedia.sonic-world.ru/index.php/%D7%A8
или, при включённом плагине Locationbar (который преобразует hex-символы в читабельный вид), в
http://encyclopedia.sonic-world.ru/index.php/ר
Происходит переход на страницу с названием ר, которой, разумеется, нет.
В свою очередь, страница с названием ЧЁ имеет вид
http://encyclopedia.sonic-world.ru/index.php/%D0%A7%D0%81
При включённом Locationbar в адресной строке отображается
http://encyclopedia.sonic-world.ru/index.php/ЧЁ
Таким образом, попасть на эту страницу из-под Mozilla Firefox можно только кликом по ссылке либо набором адреса с hex-кодами, но не прямым набором кириллицы.
Красивые сочетания
- Ы© — ۩
- П® — Ϯ
- Х® — ծ
- Гё — ø
- УЁ — Ө
- У© — ө
- ЩЁ — ٨
- Ыё — ۸
- Щ№ — ٹ
- Ш© — ة
- Щ© — ٩
- Ы№ — ۹
Символы можно комбинировать. Однако некоторые из них меняют направление текста. Например, последовательность Щ©Щ№Щ© будет читаться слева направо ٩ٹ٩, в то время как Ы№Щ№Ы№ превращается в ۹ٹ۹.
Для поиска красивых сочетаний можно использовать Универсальный декодер кириллицы. В верхнее поле вбивается последовательность, в выпадающем списке устанавливается: Source UTF-8 displayed as Windows-1251.
