UTF-8 позволяет использовать весь диапазон существующих и еще не придуманных символов. Она не зависит от архитектуры процессора (где важен порядок байтов в машинном слове). Она слабо чувствительна к повреждениям текста, выпаданию и нарушению порядка байтов в тексте. Первые 127 символов полностью совпадают с таблицей ASCII, что избавляет от проблем многобайтных кодировок в технических текстах (логи, конфиги, разметка).
Главный недостаток UTF-8 это динамическая длина символа в байтах, что затрудняет манипуляции символами внутри строки. Но поскольку в подавляющем большинстве случаев все манипуляции идут от начала строки к концу, то это не проблема, особенно на современном железе.
Ширину знаков лучше хранить в словаре, поскольку каждый знак это по сути строка, и диапазон знаков может быть непредсказуемым. Если ресурсы системы пипец как ограничены (микроконтроллер?), то лучше использовать 1-байтную кодовую страницу, по старинке.
Базовый шаблон для создания редактора, с поддержкой вкладок
Модератор: Модераторы
- Лекс Айрин
- долгожитель
- Сообщения: 5723
- Зарегистрирован: 19.02.2013 16:54:51
- Откуда: Волгоград
- Контактная информация:
sa_t_an писал(а):Так я ж сейчас не про идеал...
я тоже. Идеальных просто нет.
sa_t_an писал(а): а устройством ввода (как бы оно не выглядело) является клавиатура.
виртуальная клавиатура. С огромным количеством кнопок.
Добавлено спустя 1 минуту 31 секунду:
Re: Базовый шаблон для создания редактора, с поддержкой вкладок
serbod писал(а):Главный недостаток UTF-8 это динамическая длина символа в байтах,
Это следствие того, что..
serbod писал(а):Первые 127 символов полностью совпадают с таблицей ASCII, что избавляет от проблем многобайтных кодировок в технических текстах (логи, конфиги, разметка).
Дописывать было лениво и я посмотрел КудуТекст.
И неудобствов обнаружил:
Первое: После сохранения файла стирается история отмен/изменений - это косяк (или фича)... В шаблоне - работает после сохранения
Второе: Любому файлменеджеру назначеам, как дефолтный редактор (и вин и лин тестил). Открываем файл на редактирование (по Ф4) и еще один посредством диалога открытия (открывания и т.д.). Имеем ДВЕ вкладки. Переходим в файлменеджер и открываем третий файл (по Ф4) и полчаем новый экземпляр с одной вкладкой. Закрывая получаем сохранение одной открытой вкладки (второй экземпляр куды) и закрывая первы экземпляр получаем сохранение двух вкладок, а вкладка из второго экземпляра "ПОТЕРЯЛАСЯ". Согласен - в шаблоне не работает... Код пока не ковырял. Нет ни у кого кросплатформ.решения для передачи параметров и запрета запуска второй копии? Пользительно и для шаблона и для куды будет.
З.Ы. Мне проект по вкусу... Будет время - буду постараться внести свои доработки...
И неудобствов обнаружил:
Первое: После сохранения файла стирается история отмен/изменений - это косяк (или фича)... В шаблоне - работает после сохранения
Второе: Любому файлменеджеру назначеам, как дефолтный редактор (и вин и лин тестил). Открываем файл на редактирование (по Ф4) и еще один посредством диалога открытия (открывания и т.д.). Имеем ДВЕ вкладки. Переходим в файлменеджер и открываем третий файл (по Ф4) и полчаем новый экземпляр с одной вкладкой. Закрывая получаем сохранение одной открытой вкладки (второй экземпляр куды) и закрывая первы экземпляр получаем сохранение двух вкладок, а вкладка из второго экземпляра "ПОТЕРЯЛАСЯ". Согласен - в шаблоне не работает... Код пока не ковырял. Нет ни у кого кросплатформ.решения для передачи параметров и запрета запуска второй копии? Пользительно и для шаблона и для куды будет.
З.Ы. Мне проект по вкусу... Будет время - буду постараться внести свои доработки...
я автор CudaText. Случайно увидел пост про Куду. Ну что вы все не сообщаете в багтрекер то...
>Первое: После сохранения файла стирается история отмен
опция undo_after_save - включите
>Второе
поменяйте опцию
//Allow to run only one instance of program
"ui_one_instance": false,
>Первое: После сохранения файла стирается история отмен
опция undo_after_save - включите
>Второе
поменяйте опцию
//Allow to run only one instance of program
"ui_one_instance": false,
