Подсветка — tree-sitter, семантика — LSP, регулярные выражения — RE2, git — libgit2. Своё у нас другое: архитектура ядра, из-за которой эти проверенные компоненты остаются быстрыми на очень больших файлах и расширяемыми через плагины.
архитектура
Ядро компактное и полностью независимое от GUI. Именно поэтому его поведение предсказуемо: интерфейс можно менять, а гарантии по скорости и сохранности файла остаются.
| Технология | Что это даёт вам |
|---|---|
| Persistent Piece Table | Буфер — дерево кусков, а не один массив. Правка в любом месте файла быстрая, даже в начале файла на сотни МБ. Тот же подход применяют VS Code и Word. |
| Memory-mapped открытие | Файлы от 100 МБ отображаются в память: страницы подгружаются по обращению. Открытие мгновенное и почти без расхода RAM. |
| Фоновая индексация строк | Переход к строке и позиция курсора мгновенны на больших файлах, а интерфейс не подвисает на подсчёте. |
| Модель снимков (undo/redo) | Практически бесконечная и дешёвая история отмен; откат мгновенный. |
| Атомарное сохранение | Сбой или отключение питания во время записи не оставит «рваный» файл: на диске либо старая целая версия, либо новая целая. |
| Явные режимы больших файлов | Вместо внезапных тормозов редактор предсказуемо отключает тяжёлые функции и честно сообщает об этом в строке состояния. |
| Плагины на C ABI | Расширения совместимы между сборками разных компиляторов и могут писаться не только на C++ — например, на C или Rust. |
| Qt 6 | Нативный интерфейс, темы, прозрачность окна: vibrancy на macOS, Mica и Acrylic на Windows 11. |
сравнение подходов
Речь об архитектурных подходах, а не о том, что другие редакторы плохие. У каждого класса инструментов свои сильные стороны — важно понимать, за что вы платите.
vs редакторы на веб-стеке
Ядро не зависит от GUI, ставка на mmap и явные режимы работает там, где веб-редакторы слабы: на очень больших файлах. Обратная сторона — меньше готовых расширений, чем в большой экосистеме.
vs редакторы только для кода
CSV, Markdown, EPUB, FB2, RTF, PDF понимаются как форматы, а не как текст. Rich-текст можно не только читать, но и создавать с экспортом.
vs классические «блокноты»
Атомарное сохранение, почти бесплатные отмены, tree-sitter и LSP, git, темы и прозрачность окна, кроссплатформенность.
принцип
Мы не называем планируемое сделанным. Всё, что на сайте описано в разделе «Возможности», работает в 0.4.x; всё остальное живёт на странице планов, без сроков и цен. Если чего-то нет ни там, ни там — значит, этого нет.