diff options
| author | Gabriel Schneider <[email protected]> | 2026-07-08 04:22:29 -0300 |
|---|---|---|
| committer | Gabriel Schneider <[email protected]> | 2026-08-01 15:02:07 -0300 |
| commit | b6b899b40a339441694ab7443b00967da8f0b100 (patch) | |
| tree | baadc7212b3c0de9cd673c9830d8f90a619f4672 /test | |
| parent | b13152f89b478466b860aecb2bada8d96f0e9e36 (diff) | |
| download | pardes-b6b899b40a339441694ab7443b00967da8f0b100.tar.gz pardes-b6b899b40a339441694ab7443b00967da8f0b100.zip | |
2-1 chord argument falls back to other panes' selections: when the middle-drag pane has no selection of its own (kept left sel, else explicit v/x n/N), the active pane is checked first (it holds the most recently made selection), then slot order. New selarg.snap covers borrowing a kept left selection and a v selection from another pane; tutor updated.
Diffstat (limited to 'test')
| -rw-r--r-- | test/snapshots/selarg.golden | 93 | ||||
| -rw-r--r-- | test/snapshots/selarg.snap | 58 |
2 files changed, 151 insertions, 0 deletions
diff --git a/test/snapshots/selarg.golden b/test/snapshots/selarg.golden new file mode 100644 index 00000000..664962a3 --- /dev/null +++ b/test/snapshots/selarg.golden @@ -0,0 +1,93 @@ +== snap kept grid=100x30 cursor=6,2 +|Kill Newcol Tutor Debug Colors NextColor Dump +| NOR /tmp/pardes-snap/selarg/cwd Del NOR /tmp/pardes-snap/selarg/cwd Del +| ZZARG ZZVEE ./c.sh +| +| +| +| +| +| +| +| +| +| +| +| +| +| NOR /tmp/pardes-snap/selarg/cwd Del +| +| s.txt +| +| +| +| +| +| +| +| +| +| +| +== snap crosspane grid=100x30 cursor=6,2 +|Kill Newcol Tutor Debug Colors NextColor Dump +| NOR /tmp/pardes-snap/selarg/cwd Del NOR /tmp/pardes-snap/selarg/cwd Del +| ZZARG ZZVEE ./c.sh +| +| CHORDARG:ZZARG +| +| +| +| +| +| +| +| +| +| +| +| NOR /tmp/pardes-snap/selarg/cwd Del +| +| s.txt +| +| +| +| +| +| +| +| +| +| +| +== snap vselarg grid=100x30 cursor=12,2 +|Kill Newcol Tutor Debug Colors NextColor Dump +| NOR /tmp/pardes-snap/selarg/cwd Del NOR /tmp/pardes-snap/selarg/cwd Del +| ZZARG ZZVEE ./c.sh +| +| CHORDARG:ZZARG +| +| CHORDARG:ZZVEE +| +| +| +| +| +| +| +| +| +| NOR /tmp/pardes-snap/selarg/cwd Del +| +| s.txt +| +| +| +| +| +| +| +| +| +| +| diff --git a/test/snapshots/selarg.snap b/test/snapshots/selarg.snap new file mode 100644 index 00000000..c7b09c33 --- /dev/null +++ b/test/snapshots/selarg.snap @@ -0,0 +1,58 @@ +# 2-1 chord borrows the argument selection from ANOTHER pane: pane A (left) +# holds the selection, pane B (right) middle-drags the command with no +# selection of its own — the chord's left tap finds A's kept left selection, +# and later A's explicit v selection, and rides it as the argument. +file s.txt x +start 30 100 -n 3 +wait 8000 s.txt +stable 700 20000 +# pane A (left, active at boot): print the two argument words +key c-b +stable 600 8000 +text clear; printf 'ZZARG ZZVEE\n' +key enter +wait 8000 ZZVEE +stable 700 15000 +key c-b +stable 600 8000 +# pane B (top right): create the arg-printing script and show its path +press left 60 5 +release left 60 5 +stable 400 5000 +key c-b +stable 600 8000 +text printf '#!/bin/sh\necho CHORDARG:"$1"\n' > c.sh; chmod +x c.sh; clear; printf './c.sh\n' +key enter +wait 10000 ./c.sh +stable 700 15000 +key c-b +stable 600 8000 +# keep a left selection over ZZARG in pane A (this also focuses A) +press left 3 3 +drag left 7 3 +release left 7 3 +stable 400 5000 +snap kept +# chord in pane B: middle on ./c.sh + left tap (B has NO selection: the +# argument comes from pane A's kept left selection) + middle release runs +press middle 55 3 +press left 55 3 +release middle 55 3 +release left 55 3 +wait 10000 CHORDARG:ZZARG +stable 700 10000 +snap crosspane +# now an explicit modal selection: plain-click ZZVEE in A (drops A's kept +# left selection), select it with v e, chord in B again +press left 9 3 +release left 9 3 +stable 400 5000 +text ve +stable 400 5000 +press middle 55 3 +press left 55 3 +release middle 55 3 +release left 55 3 +wait 10000 CHORDARG:ZZVEE +stable 700 10000 +snap vselarg |
