TheThe0.5.0
The/Features

Everything that works in 0.4.x — no promises.

Only what is implemented in the current line is listed here. Plans live on a separate page so they cannot be mistaken for what is done.

01 · editing

Editing does not depend on where you are in the file.

Multiple carets and column selection

The buffer is a persistent Piece Table: text is not rewritten wholesale, it is assembled from pieces. So inserting at the start of an 800 MB file costs the same as inserting at the end.

  • Several carets at once, column (block) selection mode.
  • Smart indentation: tabs or spaces, auto-detected per file.
  • Bracket pair highlighting, block folding, bookmarks.
  • Practically free undo history on snapshots — instant rollback.

Line wrapping that does not break on a long line

A full soft-wrap engine with lazy layout on top of the text buffer: layout is computed only for the visible region, so a line of several million characters never freezes the interface.

soft wrap · lazy layout · smooth wheel zoom

Soft wrap
lazy layout
One zoom control
fit width · whole page
Column mode
multiple carets
Block folding
bookmarks

02 · search and replace

Regular expressions on RE2 — and project-wide search.

We do not write our own regex engine: RE2 gives predictable running time without catastrophic backtracking.

Find and replace

Full replace with regular expressions, in the selection or across the file.

Occurrence highlighting

The word under the cursor is highlighted across the visible text.

Project-wide search

Results grouped by file, with a jump straight to the line.

Multi-root workspaces

Several roots in one workspace — search covers all of them.

03 · syntax and language intelligence

Highlighting re-parses only what you changed.

tree-sitter and LSP instead of home-made parsers

  • Incremental parsing: highlighting does not slow down on a large file.
  • Languages: C, C++, Go, JavaScript, Python.
  • C/C++ diagnostics over LSP via clangd — enabled on demand.
  • Unreal Engine projects: .clangd is generated automatically.

limits, honestly

Go-to-definition, hover and completion over LSP are not implemented yet — they are planned.

04 · git and changes

A commit is assembled where the text is edited.

On libgit2: change markers next to line numbers, a Source Control panel, per-hunk staging, side-by-side diff and an inline peek at the HEAD version.

05 · working with files

A file should not suffer because you opened it.

Saving is atomic: the disk always holds either the whole old version or the whole new one. An open file is locked across processes, and external changes are never applied silently.

06 · appearance

Two design directions, both themes, your fonts.

Slate — calm
radius 6 · row 24px
Graphite — dense
radius 3 · row 20px
Accent colours
your pick
Separate fonts
code · ui · panels
Window transparency
vibrancy · mica / acrylic
Document zoom
and PDF

07 · full list

In one table.

Wording is taken from the 0.4.x release description. If something is not in this table, it is not in the product.

AreaWhat exists today
Speed and large filesmmap opening from 100 MB, background line indexing, explicit Normal / LargeText / HugeSlice modes
EditingMultiple carets, column selection, smart indentation with auto-detection, bracket pairs, folding, bookmarks, snapshot-based undo history
Line wrappingSoft wrap with lazy layout on top of the buffer
SearchFast search, find and replace with RE2, highlighting of the word under the cursor, project-wide search grouped by file
Syntaxtree-sitter: C, C++, Go, JavaScript, Python — incremental parsing
Language intelligenceLSP: C/C++ diagnostics via clangd, support for Unreal Engine projects
DataCSV/TSV table mode: rainbow columns, pinned header, large line numbers
MarkdownPreview with Mermaid diagrams in the embedded web engine
Books and documentsWYSIWYG for EPUB, FB2, RTF: sheet, contents, serif typography, zoom. PDF: page thumbnails, text-layer extraction
Rich textHeadings, lists, alignment, links, images; export to PDF, saving to EPUB, FB2, RTF
ImagesBuilt-in viewer, including correct SVG rendering
GitChange markers, Source Control with commits, per-hunk staging, side-by-side diff, inline peek at HEAD (libgit2)
AppearanceDark and light themes, Slate and Graphite directions, accent colours, separate fonts, window transparency
ZoomOne control at 50–400%, fit-width and whole-page modes, wheel zoom
PluginsAPI in plain C ABI, SDK and template; eight plugins in the box
FilesAtomic saving, cross-process locking, external-change notification, recent files, multi-root workspaces

Try it on your own file.