Expand description
Delta-based undo with SSD spill + optional on-close persistence.
Memory model (replaces full-buffer snapshots that grew O(edits × file)):
- each history entry is a line-range delta (changed lines only)
- one full snapshot (
last, Arc-shared) anchors the live end of the chain - only the newest
IN_RAM_MAXdeltas stay in RAM; older ones spill to~/.xei/undo/<fnv(path)>.undoand stream back in on deep undo undo_caching = truekeeps the spill file on close (plus a.metacontent hash) so reopening the same, unchanged file resumes its history;false(default) deletes it
The public API mirrors the old snapshot stack (push the pre-edit state,
undo/redo exchange full snapshots) so call sites stay untouched.
Structs§
Constants§
- IN_
RAM_ MAX - Newest deltas kept in RAM; older ones go to the spill file.