diff options
| author | Gabriel Schneider <[email protected]> | 2026-09-28 18:39:01 -0300 |
|---|---|---|
| committer | Gabriel Schneider <[email protected]> | 2026-10-01 00:12:15 -0300 |
| commit | c4ab29bce30f427decf3e199eebecfd415714a96 (patch) | |
| tree | 69321fe5261c34dc27586e6d0a233d779368a49c /docs/tags.md | |
| parent | 00298cc24e12432a4120f4efb68728c008d9620f (diff) | |
| download | pardes-c4ab29bce30f427decf3e199eebecfd415714a96.tar.gz pardes-c4ab29bce30f427decf3e199eebecfd415714a96.zip | |
Edit runs sam's command language on a pane's body, as acme's Edit does, in one undo step
Over 9P a rename everywhere was a loop of addr and data writes. Edit, from a tag, a pane ctl or exec, parses sam's commands as acme's edit.c does and runs them as ecmd.c does against the text as it was, collecting the changes in order as elog.c logs them and applying them at once: addresses (the addr file's, line:col included), x y g v c a i d s p = m t, u alone, and { }. One undo step; any error, in acme's words, changes nothing, fails a ctl write and is logged. p and = print to the directory's +Errors. Left out, and said: the file commands, the pipes, \1-\9 (mvzr keeps no submatches), and changes out of sequence, which acme applies with a warning.
Co-Authored-By: Claude Opus 5.5 <[email protected]>
Diffstat (limited to 'docs/tags.md')
| -rw-r--r-- | docs/tags.md | 11 |
1 files changed, 11 insertions, 0 deletions
diff --git a/docs/tags.md b/docs/tags.md index de540c91..fdea1472 100644 --- a/docs/tags.md +++ b/docs/tags.md @@ -43,6 +43,17 @@ Its text and terminal process are kept; the command stays available in the visible tag. Every default pane tag includes `Collapse`, including file, terminal, image, and PDF panes. +`Edit` is acme's: the rest of the line is sam's command language, run on +the pane's body (`Edit ,x/foo/c/bar/` renames every `foo`), from a tag, a +pane's `ctl` or `exec`. Addresses are the `addr` file's, `line:col` +included; the commands are `x y g v c a i d s p = m t`, `u` alone, and `{ }` +with a command per line. All its changes are one undo step, applied only +if every command ran; an error says why in acme's words and changes +nothing. `p` and `=` print to the directory's `+Errors`. Left out: the file +commands `b B D e r w f X Y`, the pipes `< | >`, and `\1`-`\9` in `s`, +since mvzr keeps no submatches; acme applies changes that come out of +sequence with a warning, pardes refuses the Edit. + `Undo` and `Redo` are acme's: typed or clicked in a pane's tag, or written to its `ctl`, they step the body back and forward through its edits, as the `u` and `U` keys do. They are not in the default tags. |
