Информация об изменениях

Сообщение Re[8]: Как написать редактор текстов на C#? от 02.11.2022 5:40

Изменено 02.11.2022 5:52 Эйнсток Файр

Re[8]: Как написать редактор текстов на C#?
S> вы тут же и потеряете

Не тут же, а только при сохранении и рисовании.

S>С точки зрения пользователя это будет выглядеть как пауза в работе, и про вас будут писать на хабре "о боже, 2023 год, а у меня ввод текста лагает".


Можно это делать заранее, кроме того это один раз.

ЭФ>>редактор не будет уметь их редактировать, только копипастить из буфера целиком (в буфер они будут попадать из браузера) или стирать насмерть.

S> придётся их разбирать

Только при считывании.

S> прыгать по двум ссылкам


Никаких двух ссылок не будет. Внутренний код символа (байт) — это индекс в массиве.

S> Если вас не беспокоит размер памяти, тогда нафига задуряться с перекодировками? Сразу храните всё в UCS4.


Составные Grapheme Cluster не влезут. А если будет перекодирование, то нет разницы, в 4, 2 или 1 байт перекодировать.
Re[8]: Как написать редактор текстов на C#?
S> вы тут же и потеряете

Не тут же, а только при сохранении и рисовании.

S>С точки зрения пользователя это будет выглядеть как пауза в работе, и про вас будут писать на хабре "о боже, 2023 год, а у меня ввод текста лагает".


Можно это делать заранее, кроме того это один раз.

ЭФ>>редактор не будет уметь их редактировать, только копипастить из буфера целиком (в буфер они будут попадать из браузера) или стирать насмерть.

S> придётся их разбирать

Только при считывании.

S> прыгать по двум ссылкам


Никаких двух ссылок не будет. Внутренний код символа (байт) — это индекс в массиве.
Уровень перенаправления конечно будет один лишний, но он не ссылка, и им не обязательно пользоваться всегда.

S> Если вас не беспокоит размер памяти, тогда нафига задуряться с перекодировками? Сразу храните всё в UCS4.


Составные Grapheme Cluster не влезут. А если будет перекодирование, то нет разницы, в 4, 2 или 1 байт перекодировать.