diff options
| author | Gabriel Schneider <[email protected]> | 2026-09-28 13:00:06 -0300 |
|---|---|---|
| committer | Gabriel Schneider <[email protected]> | 2026-10-01 00:12:14 -0300 |
| commit | 047a2b50a7ac0162d7ef38f912d41c15a47479c7 (patch) | |
| tree | a2fb902819402ac11093a23cf5dc72f2bae68f0f /docs/fs.md | |
| parent | 6fc9f416938b59b665b1fddc052402770a21cc3f (diff) | |
| download | pardes-047a2b50a7ac0162d7ef38f912d41c15a47479c7.tar.gz pardes-047a2b50a7ac0162d7ef38f912d41c15a47479c7.zip | |
A line written to a pane's own look or exec goes to the event reader holding the pane
A script writing to pane/N/exec bypassed the client holding that pane's event
file, which a middle click on it would not: acme sends a window's clicks to its
event reader (look.c:53, exec.c:173). Such a line is now an F record at 0 0
carrying its text; the root's look and exec still act at once. acme takes back
only origin, action and range, which a record with no place in the text cannot
use, so the whole record as read is taken too, and for an empty range acts on
its text.
Co-Authored-By: Claude Opus 5.5 <[email protected]>
Diffstat (limited to 'docs/fs.md')
| -rw-r--r-- | docs/fs.md | 9 |
1 files changed, 7 insertions, 2 deletions
@@ -245,8 +245,13 @@ writing it renames the buffer; a relative name resolves against the pane's directory. `body` appends on write and replaces on truncating open. `sel` reads the selected text and writing it replaces the selection. `errors` appends to the directory's `+Errors` pane. Holding `event` open redirects the -pane's Look and Exec clicks to that client; writing a record back performs the -action. `ctl` reads acme's window status line — serial, tag length, body +pane's Look and Exec clicks to that client, and so does a line written to the +pane's own `look` or `exec`, a click with no place in the text: an `F` record +at `0 0` carrying the line (the root's `look` and `exec` still act at once); +writing a record back performs the action. acme takes back only `<origin> +<action><q0> <q1>`, the text of that range; pardes takes the record whole as +it was read too, and for an empty range acts on its text, which is how such +a line is done. `ctl` reads acme's window status line — serial, tag length, body length, a reserved zero, the dirty flag, the width in cells, the font and the tab width — followed by rio's `current` or `notcurrent` (rio(4), `wctl`): whether the pane has the keyboard. It takes the pane's builtins (below), |
