crypt of decay - делаем редактор тестов, однако [entries|archive|friends|userinfo]
ketmar

[ userinfo | ljr userinfo ]
[ archive | journal archive ]

делаем редактор тестов, однако [Aug. 15th, 2016|05:32 am]
Previous Entry Add to Memories Tell A Friend Next Entry
gap buffer, nothing fancy. на текстовом файле размером примерно четырнадцать мегабайт переход к концу файла (это включает в себя построение кэша смещений строк, и полную синтаксическую раскраску) занимает меньше секунды. отлично.

кто не понял: построение кэша строк и раскраска ленивые. если раскраски нет, то переход вообще без заметного лага. на скорость ввода текста в виду ленивости не влияет, потому что движок никогда не красит больше, чем ему надо, чтобы нарисовать видимую часть, и перекрашивает только начиная с изменённой строки (и иногда даже не все видимые строки).
Linkmeow!

Comments:
From:(Anonymous)
Date:August 15th, 2016 - 02:04 pm
(Link)
не красит больше чем надо -- а если там пол файла в /*...*/, то как ты узнаешь начальное состояние будучи посредине файла?
[User Picture]
From:[info]ketmar
Date:August 15th, 2016 - 06:15 pm
(Link)
think. не обязательно different.
[User Picture]
From:[info]ketmar
Date:August 15th, 2016 - 06:35 pm
(Link)
p.s. если немного think, то очевидно, что «не красит больше, чем надо, начиная с первой строки». иначе за каким бы хером я мерял время раскраски всего файла, если я такой умный, и изобрёл мегаалгоритм, умеющий с любого места?
From:(Anonymous)
Date:August 16th, 2016 - 08:44 am
(Link)
Ленивая подсветка нахуй не нужна. Синхронно брутфорсом быстрее. Надо только на концах строчек состояние запоминать. Или через какие-нибудь интервалы, похуй.
[User Picture]
From:[info]ketmar
Date:August 16th, 2016 - 08:54 am
(Link)
ты не поверишь, но это и есть ленивая подсветка. за каким хером красить текст ниже видимого окна?
From:(Anonymous)
Date:August 16th, 2016 - 09:09 am
(Link)
Я думал, ты типа отдельный тред на подсветку запускаешь, как щас модно у головожопых.
[User Picture]
From:[info]ketmar
Date:August 16th, 2016 - 09:21 am
(Link)
как у меня прямо в посте написано, раскраска четырнадцати мегабайт (это не опечатка) занимает меньше секунды (реально — даже меньше полусекунды). при таких раскладах ебля с потоками себя не окупает.

чай, не говнобидон же какой, где по пол‐часа красит.