Re[2]: Как написать редактор текстов на C#?
От: Эйнсток Файр Мухосранск Странный реагент
Дата: 01.11.22 09:01
Оценка:
S> причем тут C# и его способ представления символов? Чем он мешает работе редактора?

Редактор редактирует модель текста. Бывает два типа:
— текстовые редакторы
— текстовые процессоры

В текстовых редакторах модель текста попроще. Текст состоит из строк, строки состоят из символов.

В текстовых процессорах модель посложнее. Есть "Стили", они применяются к фрагментам текста. Есть структура текста (заголовки, абзацы).

Если рассматривать Grapheme Clusters — то это глубоко внутренняя проблема кодировки Unicode.
Простой текстовый редактор работает с одной Grapheme Cluster как с одним знакоместом (прямоугольником),

поэтому можно вообще посчитать, сколько каких Grapheme Cluster-ов в файле в штуках
и перекодировать всё во внутреннюю кодировку с одинаковой битностью, с которой потом и работать.

А для того, чтобы не писать отдельный код для 8, 16, 32 битов на символ — использовать классы-шаблоны и типизировать их типами-структурами такого размера.
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.