diff options
| author | Gabriel Schneider <[email protected]> | 2026-09-28 13:54:44 -0300 |
|---|---|---|
| committer | Gabriel Schneider <[email protected]> | 2026-10-01 00:12:15 -0300 |
| commit | 72937852d08a6a49f3c0cb2e903b533530b88ae1 (patch) | |
| tree | a1fdcb9ac8db482a061f1df42e78494d4cd78457 /.agents | |
| parent | faca1504a2296fba9631c45c9f01f3c252cbd0d8 (diff) | |
| download | pardes-72937852d08a6a49f3c0cb2e903b533530b88ae1.tar.gz pardes-72937852d08a6a49f3c0cb2e903b533530b88ae1.zip | |
The root exec is a click at the keyboard's pane, and goes to its event reader too
A line written to the root's look or exec is a click at the pane with the
keyboard, and in acme every click on a window whose event file is open goes
to its reader; the root's acted at once. It now goes to the reader as the
pane's own does. The docs say what that means for a helper holding event
(its own exec comes back as a record: run it through ctl, or write the
record back), and why an event record counts bytes where acme counts runes:
every offset pardes serves is in bytes, #n and q0/q1 too, so the count
follows them rather than switch alone, and an acme library reads it right
for ASCII text.
Co-Authored-By: Claude Opus 5.5 <[email protected]>
Diffstat (limited to '.agents')
| -rw-r--r-- | .agents/skills/pardes-9p/SKILL.md | 11 |
1 files changed, 7 insertions, 4 deletions
diff --git a/.agents/skills/pardes-9p/SKILL.md b/.agents/skills/pardes-9p/SKILL.md index f4542a50..63dec104 100644 --- a/.agents/skills/pardes-9p/SKILL.md +++ b/.agents/skills/pardes-9p/SKILL.md @@ -217,14 +217,17 @@ not the read-until-EOF helper. `pty/data` captures output while held open; it is not a history replay. Both files are shared, consuming queues, not per-client broadcasts, so a slow reader loses older data. Holding `event` open intercepts that pane's Look and Exec clicks -- and lines written to that pane's -own `look`/`exec`, as `F` records at `0 0` with the text, and clicks in a -terminal's body, also at `0 0` -- so it is not a -passive logger. To have a record done, write it back: the short form +own `look`/`exec`, or to the root's while it has the keyboard, as `F` records +at `0 0` with the text, and clicks in a terminal's body, also at `0 0` -- so +it is not a passive logger: a helper holding `event` that writes its own +pane's exec gets its command back as a record; run it through `ctl` or write +the record back. To have a record done, write it back: the short form `<origin><action><q0> <q1>\n` acts on that range's text, and the whole record as read acts on its text when the range is empty (the only way for a record at `0 0`). Chord reports need explicit handling. A record is `<origin><action><q0> <q1> <flag> <n> <text>\n` and its text may hold -newlines: read `n` bytes of text, never up to the next newline. +newlines: read `n` bytes of text, never up to the next newline (acme counts +runes; pardes counts bytes, as all its offsets are). A Restore puts a new editor under every client: the Restore write is answered, then every connection is hung up (their fids name the old editor's panes); dial again, and the new log names the restored panes then |
