В UTF-8 буквы кириллицы занимают по два байта, в то время как латинские — по одному. Это во-первых несправедливо, а во-вторых неоптимально для большинства текстов использующих кириллицу. По-моему есть смысл в наличии кодировки в которой кириллица требовала бы меньше места, почему же такой кодировки до сих пор нет?
Здравствуйте, igna, Вы писали:
I>В UTF-8 буквы кириллицы занимают по два байта, в то время как латинские — по одному. Это во-первых несправедливо, а во-вторых неоптимально для большинства текстов использующих кириллицу. По-моему есть смысл в наличии кодировки в которой кириллица требовала бы меньше места, почему же такой кодировки до сих пор нет?
Здравствуйте, igna, Вы писали:
I>В UTF-8 буквы кириллицы занимают по два байта, в то время как латинские — по одному. Это во-первых несправедливо, а во-вторых неоптимально для большинства текстов использующих кириллицу. По-моему есть смысл в наличии кодировки в которой кириллица требовала бы меньше места, почему же такой кодировки до сих пор нет?
Ну, во-первых, формально utf-8 это не кодировка, а Unicode transformation format.
Вам в принципе ничто не мешает придумать свой transformation format для своего применения. Вопрос только, насколько это будет эффективно в каком случае, переносимо, какая часть сообщества разработчиков поддержит... мне что-то кажется, что даже при наличии общедоступной библиотеки большинство не захотят этим заморачиваться. Всё-таки пока что Unicode со стандартными форматами вполне удовлетворяет граничным условиям на подход типа "безобразно, но единообразно".
Здравствуйте, igna, Вы писали:
I>В UTF-8 буквы кириллицы занимают по два байта, в то время как латинские — по одному.
Утешься тем, что некоторые пользуют до 4х байт на символ.
I>Это во-первых несправедливо, а во-вторых неоптимально для большинства текстов использующих кириллицу.
Используй не-юникодные кодировки.
I>По-моему есть смысл в наличии кодировки в которой кириллица требовала бы меньше места, почему же такой кодировки до сих пор нет?
Хорошо. Представь, что китайцы захотели того же. И корейцы с японцами тоже. И что это будет? Обратно к куче не-юникодных кодировок? Спасибо тебе огромное.
...Впрочем, в твоей идее есть рациональное зерно. Имело бы смысл заиметь кодировки типа: "UTF-mostly-2bit" или "UTF-mostly-4bit", в которых кодпойнты совпадающие с "предпочтительным" размером кодировались бы коротко, а остальные наоборот...
Но, в свете того, что нынче и трафик и дисковое пространство дешевое, и дальше дешевеет, заниматься таким "выковыриванием гнид" (nitpicking) всерьез никто не станет. То есть, идея твоя несколько запоздала. Если бы ты ее выродил хотя бы лет 10 назад — попал бы ты в историю инернетов.
__________
16.There is no cause so right that one cannot find a fool following it.
Здравствуйте, igna, Вы писали:
I>В UTF-8 буквы кириллицы занимают по два байта, в то время как латинские — по одному. Это во-первых несправедливо, а во-вторых неоптимально для большинства текстов использующих кириллицу. По-моему есть смысл в наличии кодировки в которой кириллица требовала бы меньше места, почему же такой кодировки до сих пор нет?
Здравствуйте, 0xDEADBEEF, Вы писали:
DEA> Но, в свете того, что нынче и трафик и дисковое пространство дешевое
Мобильный трафик не так уж дешев, а учитывая рост количества мобильных девайсов (и я говорю не только о телефонах), забота о его уменьшении довольно актуальна. Хотя тут никакой проблемы нет. Скажем, если у тебя обмен с сервисом идет в XML, то просто кодируешь все в cp1251 (кириллица и латиница однобайтовые), а все что за рамками cp1251 ескейпится согласно спеке (аналогично и для HTML).
Здравствуйте, hattab, Вы писали:
H>Мобильный трафик не так уж дешев, а учитывая рост количества мобильных девайсов (и я говорю не только о телефонах), забота о его уменьшении довольно актуальна.
Сжимающие прокси тебе в помощь. Например, Opera Turbo.
Впрочем, я от них отказался т.к. некоторые сайты (например этот) в турбо-опере не работают. Уж не знаю почему.
А моего пакета мобильного трафика и так хватает, не знаю как вам. И обходится он дешево — примерно 0.3% от зарплаты.
__________
16.There is no cause so right that one cannot find a fool following it.
Здравствуйте, 0xDEADBEEF, Вы писали:
DEA> H>Мобильный трафик не так уж дешев, а учитывая рост количества мобильных девайсов (и я говорю не только о телефонах), забота о его уменьшении довольно актуальна.
DEA> Сжимающие прокси тебе в помощь. Например, Opera Turbo.
Спасибо, не нужно. Gzip решает. Но cp1251 сжато будет все равно лучше, чем UTF-8.
DEA> Впрочем, я от них отказался т.к. некоторые сайты (например этот) в турбо-опере не работают. Уж не знаю почему. DEA> А моего пакета мобильного трафика и так хватает, не знаю как вам. И обходится он дешево — примерно 0.3% от зарплаты.
У меня вообще безлимит, но на 3G-модеме, а на телефоне он мне нафиг не нужен — платить за него, но юзать инет через телефон иногда приходится. Вообще, какая проблема с кодированием? Не все ли равно во что кодировать в cp1251 или в UTF-8, сам факт кодирования то никто не отменил, а на 1251 профит по объему, так почему нет?
Здравствуйте, 0xDEADBEEF, Вы писали:
DEA>Используй не-юникодные кодировки. DEA>Хорошо. Представь, что китайцы захотели того же. И корейцы с японцами тоже. И что это будет? Обратно к куче не-юникодных кодировок?
Ты сам себе противоречишь то предлагая использовать неюникодную кодировку, то сетуя по поводу неюникодных кодировок. Речь-то о (несуществующей) юникодной кодировке с однобайтной кириллицей. И да, я забыл повторить слово Unicode в тексте, но оно есть в названии темы.
Здравствуйте, hattab, Вы писали:
H>... если у тебя обмен с сервисом идет в XML, то просто кодируешь все в cp1251 (кириллица и латиница однобайтовые), а все что за рамками cp1251 ескейпится согласно спеке ...
Здравствуйте, igna, Вы писали:
i> H>... если у тебя обмен с сервисом идет в XML, то просто кодируешь все в cp1251 (кириллица и латиница однобайтовые), а все что за рамками cp1251 ескейпится согласно спеке ...
i> "Спеке" это что?
Спека — спецификация. В общем, XML и HTML позволяют эскейпить любой unicode codepoint (допустимый для этих форматов). Скажем, русская "А" может быть представлена в виде А (десятичная форма) или А (шестнадцатеричная форма). Сам документ при этом может быть, например, в ASCII кодировке.
Здравствуйте, hattab, Вы писали:
H>Спека — спецификация. В общем, XML и HTML позволяют эскейпить любой unicode codepoint (допустимый для этих форматов). Скажем, русская "А" может быть представлена в виде А (десятичная форма) или А (шестнадцатеричная форма). Сам документ при этом может быть, например, в ASCII кодировке.
Здравствуйте, igna, Вы писали:
I>Здравствуйте, 0xDEADBEEF, Вы писали:
DEA>>Используй не-юникодные кодировки. DEA>>Хорошо. Представь, что китайцы захотели того же. И корейцы с японцами тоже. И что это будет? Обратно к куче не-юникодных кодировок?
I>Ты сам себе противоречишь то предлагая использовать неюникодную кодировку, то сетуя по поводу неюникодных кодировок. Речь-то о (несуществующей) юникодной кодировке с однобайтной кириллицей.
Я неудачно выразился.
Кодировки — юникодные, но их много и каждая "мастурбирует по-своему", чтобы закодировать покороче свой любимый диапазон кодпойнтов.
В итоге, снова мы окажемся с зоопарком несовместимых кодировок, как это было в до-юникодную эру.
Так понятнее?
__________
16.There is no cause so right that one cannot find a fool following it.