soe — Scott's Own Editor
A built-in TUI text editor for CLI tools. Drop-in fallback when no external
editor ($EDITOR, $VISUAL, core.editor) is configured.
Built on ratatui and crossterm.
Features
- Menu bar (File / Help), line numbers, word navigation
- Mouse support (click to position cursor, scroll)
- Two modes:
PlainTextandCommitMessage(72-char guide line + soft wrap) - Tab expansion (4 spaces)
- RAII terminal guard — restores terminal state even on panic
- Save (
Ctrl+S) returns content, cancel (Esc) returnsNone
Usage
use ;
// Open with initial content — returns Some(content) on save, None on cancel
let result = edit?;
// Edit a file on disk
edit_file?;
License
MIT