summaryrefslogtreecommitdiff
path: root/docs/fs.md
diff options
context:
space:
mode:
authorGabriel Schneider <[email protected]>2026-09-28 18:39:01 -0300
committerGabriel Schneider <[email protected]>2026-10-01 00:12:15 -0300
commitc4ab29bce30f427decf3e199eebecfd415714a96 (patch)
tree69321fe5261c34dc27586e6d0a233d779368a49c /docs/fs.md
parent00298cc24e12432a4120f4efb68728c008d9620f (diff)
downloadpardes-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/fs.md')
-rw-r--r--docs/fs.md5
1 files changed, 5 insertions, 0 deletions
diff --git a/docs/fs.md b/docs/fs.md
index d746ec28..98a8638d 100644
--- a/docs/fs.md
+++ b/docs/fs.md
@@ -364,6 +364,11 @@ scrolls the pane into view, and `limit` bounds a search and reads empty until
it is set. Truncating `dot` empties it, truncating `limit` lifts it, and
truncating `addr` leaves it as it is (below).
+A rename everywhere, or any other sam edit, is one write to the pane's
+`ctl`: `Edit ,x/foo/c/bar/` runs acme's Edit (docs/tags.md) on the body as
+one undo step; a failure fails the write with acme's words and changes
+nothing.
+
`line:col` is a pardes extension to sam's addresses, the spelling Look
takes in `file:12:5`: `12:5` is the point at line 12, column 5, and it
composes like any simple address (`12:5,14:1`, `12:5+#3`). The column is