From 72937852d08a6a49f3c0cb2e903b533530b88ae1 Mon Sep 17 00:00:00 2001 From: Gabriel Schneider Date: Mon, 28 Sep 2026 13:54:44 -0300 Subject: 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 --- .agents/skills/pardes-9p/SKILL.md | 11 +++++++---- 1 file changed, 7 insertions(+), 4 deletions(-) (limited to '.agents') 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 ` \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 ` \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 -- cgit v1.3