LINUX.ORG.RU

История изменений

Исправление bormant, (текущая версия) :

простая модель «1 символ = 2 байта» тут на самом деле не работает

1 символ = 4 байта и в utf32 не работает из-за альтернативных представлений составных (precomposed) символов, а памяти жрёт ещё больше, чем utf16 ;)
С другой стороны, если в наличии способы получить «длину на экране», то вопрос с отображением почти закрывается (привет символам двойной ширины, right-to-left и смешанным направлениям письма ;) )

Зато есть 11 бит свободных, куда так и просится цвет ;)

Исходная версия bormant, :

простая модель «1 символ = 2 байта» тут на самом деле не работает

1 символ = 4 байта и в utf32 не работает из-за альтернативных представлений составных (precomposed) символов, а памяти жрёт ещё больше, чем utf16 ;)
С другой стороны, если в наличии способы получить «длину на экране», то вопрос с отображением почти закрывается (привет символам двойной ширины, right-to-left и смешанным направлениям письма ;) )