blob: 8aa59bbd0828a421a1e3acec8ec19e8a67d0894b (
plain) (
blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
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 31 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 7
release left 60 7
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 5
drag left 7 5
release left 7 5
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 5
press left 55 5
release middle 55 5
release left 55 5
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 5
release left 9 5
stable 400 5000
text ve
stable 400 5000
press middle 55 5
press left 55 5
release middle 55 5
release left 55 5
wait 10000 CHORDARG:ZZVEE
stable 700 10000
snap vselarg
|