Sessions & Recovery
The rule: your data survives everything: a crash, a force-quit, a power cut mid-save.
Session restore
Quit with windows open and they come back on the next launch: same files, same open modes, same scroll positions (when the file hasn't changed underneath). Bookmarks and markers restore with them.
Crash recovery
Every 30 seconds, documents with unsaved edits write a recovery journal: a compact sidecar describing the pending edits, never touching your original file. After a crash, the next launch offers to replay those edits before anything else opens. A clean save or close discards the journal.
A recovered new document is still called “Untitled” and saving it always asks where; a scratch path never surfaces. And if two launches in a row fail while restoring the previous session, Caxton offers to start without restoring; the session is kept either way, so a normal quit brings it back next time.
Safe saving
- Atomic saves (default): the new version is written alongside and swapped in one filesystem operation. There is no moment where the original is half-written.
- In-place saves (used when atomic isn't possible, e.g. append-heavy cases): protected by a patch journal. If the save is interrupted, the journal replays or rolls back on next launch; you get the old file or the new file, never a hybrid.
External changes
Caxton watches open files. When another process rewrites a file you haven't edited, the document reloads in place; if you have unsaved edits, Caxton tells you instead of clobbering either side. Appends absorb incrementally; see follow-tail.
Where Caxton keeps its data
Everything lives in the app's own folders under ~/Library: recovery journals, bookmark and marker sidecars, session state, and saved filter presets. Nothing is written next to your files, and nothing leaves your machine; see the privacy policy.