История изменений
Исправление X512, (текущая версия) :
достаточно сделать довольно простой двухуровневый запрос по таблицам
…который легко делается для UTF-8 (prefix tree).
Неудивительно, что на этом фоне UTF-8 «просто работает» — нет локалей, нет и проблем.
Это его преимущество.
Спасибо хоть число графем умеют считать.
Вы так и не привели пример зачем это надо.
у приложения должна быть библиотека смайлов специально для отрисовки этих символов — иначе вместо них будут квадратики или вопросики.
Приложение просто передаёт строку в GUI тулкит, который сам всё делает. Нет необходимости писать свой рендеринг текста, всё уже сделано в FreeType/HarfBuzz.
работающем с семантикой текста.
Примеры в студию.
Но для UTF-16 это делать сильно проще.
Не сказал бы что сильно проще, там тоже переменное число байт.
А теперь прикинь, что у тебя в ОС-и системные идентификаторы записаны кириллицей.
Так и есть и УМВР (Linux KDE, Haiku). Юникодные имена символов в C++ и ELF модулях работают, специальной поддержки для этого не требуется.
А для ASCII-only идентификаторов можно брать не просто UTF-8, а даже тупо ASCII.
Нельзя потому что в любой момент могут понадобится символы за пределами ASCII.
Исходная версия X512, :
достаточно сделать довольно простой двухуровневый запрос по таблицам
…который легко делается для UTF-8 (prefix tree).
Неудивительно, что на этом фоне UTF-8 «просто работает» — нет локалей, нет и проблем.
Это его преимущество.
Спасибо хоть число графем умеют считать.
Вы так и не привели пример зачем это надо.
у приложения должна быть библиотека смайлов специально для отрисовки этих символов — иначе вместо них будут квадратики или вопросики.
Приложение просто передаёт строку в GUI тулкит, который сам всё делает. Нет необходимости писать свой рендеринг текста, всё уже сделано в FreeType/HarfBuzz.
работающем с семантикой текста.
Примеры в студию.
Но для UTF-16 это делать сильно проще.
Не сказал бы что сильно проще, там тоже переменное число байт.
А теперь прикинь, что у тебя в ОС-и системные идентификаторы записаны кириллицей.
Так и есть и УМВР (Linux KDE, Haiku).
А для ASCII-only идентификаторов можно брать не просто UTF-8, а даже тупо ASCII.
Нельзя потому что в любой момент могут понадобится символы за пределами ASCII.