diff options
| author | Gabriel Schneider <[email protected]> | 2026-09-29 01:48:39 -0300 |
|---|---|---|
| committer | Gabriel Schneider <[email protected]> | 2026-10-01 00:12:15 -0300 |
| commit | 5b11fc35b961eb03c8816bf957bbf8e27a22ae3e (patch) | |
| tree | 3a0022699f4c92ec86b2249cf3455139809d56a4 /docs | |
| parent | 5b5896965758ff8f2077c8e8e2f0250f580967c3 (diff) | |
| download | pardes-5b11fc35b961eb03c8816bf957bbf8e27a22ae3e.tar.gz pardes-5b11fc35b961eb03c8816bf957bbf8e27a22ae3e.zip | |
The workspace tag has /tagexec, every exec file reads back what it touched, and a tag's words log as the session's
/tagexec runs a word as a click in the workspace tag, as col/<serial>/exec
does in a column's. A column's exec was write-only; it and /tagexec now
read back the serials the last write touched, as /exec does. A click in a
tag no longer goes to the focused pane's event reader, and what a word
run from a column's ctl or exec or /tagexec says is logged msg -, not
against the focused pane. The README, fs.md and the skill say so, and
document the answer record.
Co-Authored-By: Claude Opus 5.5 <[email protected]>
Diffstat (limited to 'docs')
| -rw-r--r-- | docs/fs.md | 13 |
1 files changed, 10 insertions, 3 deletions
@@ -110,9 +110,10 @@ Existing Plan9port/v9fs clients need a userspace bridge for QUIC. empty|full pane-serials...; then active <serial>: the active column, where pane/new and a look place a pane next (- when there is none) /tag the workspace tag; > replaces it, >> appends, one line +/tagexec write a word: a middle click on it in the workspace tag; read as /exec /col/<n>/tag the tag of the column with serial n, the same way /col/<n>/ctl write Delcol, Joincol, New or Tty: each acts on that column, as from its tag -/col/<n>/exec write a word: a middle click on it in that column's tag; rmdir col/<n> closes +/col/<n>/exec write a word: a middle click on it in that column's tag; read as /exec; rmdir col/<n> closes an empty column (a column with panes is refused, ENOTEMPTY) /pane/new open it to make a pane; the read answers that pane's serial. A session holds 64 panes (16 on the board); at that, every route that would open one -- this @@ -363,7 +364,10 @@ itself, holding the Enter until the REPL answers the paste), since line by line wherever it is -- at a `pdb` or `input()` prompt too. Bindings are not dumped, so a Restore leaves none. The root's pair clicks at the active pane and `/pane/<n>/look` and -`/pane/<n>/exec` at that pane. Blank lines are skipped, and every other line +`/pane/<n>/exec` at that pane; `/tagexec` and `/col/<n>/exec` click in the +workspace's or that column's tag (never an event reader's, which hears +only its pane's), and what the word says is logged as the session's, +`msg -`. Blank lines are skipped, and every other line is checked before any of them runs, so a control character fails the whole write with EINVAL; a command that fails inside the editor is reported on the message row, not as a write error. Reading any of these files answers the @@ -576,6 +580,8 @@ it runs `ls` once at its first prompt, a greeting that shows the directory -- since a terminal is named by its directory), `exit <serial> <N>` before the `del` of a terminal whose shell exited by itself, `ask <serial> <what> <choices>` when a pane asks a question (answered by `answer` on its ctl), +`answer <serial> <choice|->` when it is answered, by key or ctl, `-` for +taken back, and `save <serial> <name>`, `dump <path>` when a Dump is written and `restore <path>` in a Restore's new log after its panes' `new`s, then `restored <old> <new>` for each pane, @@ -584,7 +590,8 @@ mapping the serial it had to the one it has now, and `restoredcol <old> for every line the editor says, repeats included (with `verbose` on, that includes each builtin announcing itself as it runs, on purpose: the log says which ran; its serial is the pane it ran at, `-` when the keyboard was on a -column or workspace tag), and `err <serial|-> +column or workspace tag, or the line came to the root's ctl, `/tagexec` or +a column's ctl or exec), and `err <serial|-> <file>: <why>` for every write or truncation the tree refused or that failed -- through a mount a shell sees only the errno its kernel mapped the reply to, usually `Invalid argument`, and this is the reason (`err 3 addr: |
