The OpenNET Project / Index page

[ новости /+++ | форум | теги | ]



Индекс форумов
Составление сообщения

Исходное сообщение
"Выпуск почтового клиента Mutt 1.9.0"
Отправлено saahriktu, 05-Сен-17 16:39 
Какой байт? В UTF-8 code point переменной длины в байтах, вплоть до 6-ти байт по старому стандарту, или вплоть до 4-х байт по новому. И это может быть только модификатор.

Все решают разные задачи. И писать те же парсеры юникода на Си сложнее чем парсеры текстов в однобайтных кодировках. Именно поэтому в рамках проекта GNU также развивается однобайтный текстовый редактор moe (и он есть даже в репозитории Федоры). Сам автор пишет так:
"UTF-8 is a great tool for tasks like writing books of mathematics or
mixing Greek with Chinese in the same document. But for many other
everyday computing and communication tasks, an 8-bit code like
ISO-8859-15 is much more practical, efficient and reliable. There is no
such thing as an "invalid" or "out of range" ISO-8859-15 character.

UTF-8 is fine for non-parsable, non-searchable documents that must look
"pretty", but not so fine for things like configuration files or C++
source code. UTF-8 greatly hinders parsability (and may even become a
security risk) by providing multiple similar-looking variations of basic
alphabetic, punctuation, and quoting characters. UTF-8 also makes search
difficult and unreliable. For example, searching for a word like "file"
in an UTF-8 document may fail if the document uses the compound
character 'fi' instead of the string "fi"." (Antonio Diaz Diaz)

И это не говоря уже о том, что для удобства можно смешивать шестнадцатеричное и текстовое представления чтобы удобнее ориентироваться в бинарных данных, но 0x80-0xFF в UTF-8 не являются конкретными символами. А KOI8-R позволяет спокойно делать вот такие вот вещи без всяких дополнительных костылей:
$ hexdump -C /dev/urandom | head -n 20
00000000  df 3f 68 6b 3d 04 96 e8  8b 89 7d 45 9d 36 be 12  |ъ?hk=.√Х▀┴}E²6╬.|
00000010  8f d0 ca 1c 57 ef 15 e8  08 f0 35 59 47 73 e7 fd  |▐пй.WО.Х.П5YGsГЩ|
00000020  2a a8 2f 4c 11 dd ac 23  60 5e ba 9d ac 91 3b 7a  |*╗/L.щ╛#`^╨²╛▒;z|
00000030  00 1e ba 3d 97 4b 4c d9  7a 4e 84 57 71 3d ef de  |..╨=≈KLыzN└Wq=Оч|
00000040  e0 b9 33 ca fe 74 e0 75  0e bb 66 51 18 0d 5a 9a  |Ю╧3йЧtЮu.╩fQ..Z |
00000050  d1 59 ec b5 38 18 0b db  9c 32 4b b8 c0 af a6 db  |яYЛ╣8..ш°2K╦ю╞╕ш|
00000060  43 81 68 02 a4 be 43 c3  6b 25 c3 b1 5d c9 f3 e1  |C│h.╓╬Cцk%ц╠]иСА|
00000070  79 4b cd e4 c9 22 d7 05  a9 fd 3b 0f 6f 43 cf 63  |yKмДи"в.╘Щ;.oCоc|
00000080  ba a9 0b 71 e4 86 a0 91  0d ab 14 d2 47 70 f7 e7  |╨╘.qД├═▒.╚.рGpВГ|
00000090  39 b7 c3 3a 95 2e c4 c5  eb dc 0b 1e 9f 3f d0 43  |9╥ц:∙.деКэ..÷?пC|
000000a0  af f8 87 d7 44 b1 65 c2  92 d2 52 d7 1d 95 12 91  |╞Ь┤вD╠eб▓рRв.∙.▒|
000000b0  70 03 1b af 67 b4 67 51  3b 8a 40 73 77 d8 ad 58  |p..╞g╢gQ;┼@swь╜X|
000000c0  fd a6 94 38 44 30 dd b1  e3 70 77 7c 8d c0 d7 b7  |Щ╕■8D0щ╠Цpw|█юв╥|
000000d0  ae 93 0f aa fe 8f d9 50  52 6b 62 91 c8 a2 35 68  |╝⌠.╙Ч▐ыPRkb▒х╒5h|
000000e0  ea 52 28 06 7a dd b5 4b  6c af ca 5a 47 af 24 5c  |ЙR(.zщ╣Kl╞йZG╞$\|
000000f0  06 f5 f8 ac 2a 56 df 5d  02 81 96 b5 60 f9 f6 94  |.УЬ╛*Vъ].│√╣`ЫЖ■|
00000100  2d f3 67 90 90 3e c3 d3  0b b3 c6 38 aa fc e3 de  |-Сg░░>цс.Ёф8╙ЭЦч|
00000110  f2 87 22 e5 c2 ad f5 e9  b5 74 7d 3c 78 cc 73 de  |Р┤"Еб╜УИ╣t}<xлsч|
00000120  dc 3d 79 25 22 5f e2 d4  cc 5c 11 ce 50 7a 26 b5  |э=y%"_Бтл\.нPz&╣|
00000130  00 b2 f7 bc 96 90 99 42  1f 6d a5 0a c2 a0 c8 e1  |.╡В╪√░≥B.m╔.б═хА|

Ну и т.д. В общем, не всем и не всегда нужен юникод.

 

Ваше сообщение
Имя*:
EMail:
Для отправки ответов на email укажите знак ! перед адресом, например, !user@host.ru (!! - не показывать email).
Более тонкая настройка отправки ответов производится в профиле зарегистрированного участника форума.
Заголовок*:
Сообщение*:
 
При общении не допускается: неуважительное отношение к собеседнику, хамство, унизительное обращение, ненормативная лексика, переход на личности, агрессивное поведение, обесценивание собеседника, провоцирование флейма голословными и заведомо ложными заявлениями. Не отвечайте на сообщения, явно нарушающие правила - удаляются не только сами нарушения, но и все ответы на них. Лог модерирования.



Партнёры:
PostgresPro
Inferno Solutions
Hosting by Hoster.ru
Хостинг:

Закладки на сайте
Проследить за страницей
Created 1996-2024 by Maxim Chirkov
Добавить, Поддержать, Вебмастеру