diff options
| author | Gabriel Schneider <[email protected]> | 2026-09-28 13:09:12 -0300 |
|---|---|---|
| committer | Gabriel Schneider <[email protected]> | 2026-10-01 00:12:14 -0300 |
| commit | 84fca2d6e5f498f2d4384712d49d727a25441d68 (patch) | |
| tree | 47a6d01ee65c5d631f59bee2f1efc5685ceb95f4 /docs/fs.md | |
| parent | 047a2b50a7ac0162d7ef38f912d41c15a47479c7 (diff) | |
| download | pardes-84fca2d6e5f498f2d4384712d49d727a25441d68.tar.gz pardes-84fca2d6e5f498f2d4384712d49d727a25441d68.zip | |
A click that takes no text tells the event reader nothing, and click records are tested for their offsets
Dogfooding saw a body right-click reported as ML0 0 2 3 qty. On file panes
the offsets were right in every case tried here (a scratch made over 9P and
clicked while another pane is active, after a hover, scrolled, soft-wrapped,
tab-indented, inside parentheses); the test now holds them. The 0 0 form
is a terminal's body, which has no offsets to give (its body is a history
snapshot); since the event file now takes a record back whole, such a record
can still be written back and done, and the docs say so. What the test did
find: a click on whitespace sent an empty record, where acme's look3 and
execute return without a word on an empty expansion (look.c:37, exec.c:141).
Co-Authored-By: Claude Opus 5.5 <[email protected]>
Diffstat (limited to 'docs/fs.md')
| -rw-r--r-- | docs/fs.md | 5 |
1 files changed, 4 insertions, 1 deletions
@@ -251,7 +251,10 @@ 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 +a line is done. A click in a file's body carries the offsets of the text it +took; one in a terminal's body cannot, since that body is a history +snapshot, and is also at `0 0` with its text. A click that takes no text +sends nothing, as in acme. `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), |
