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
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
|
# RULE: a results buffer is a list of things you can RUN, and its traits say
# what a ROW IS. Every list before this one held LOCATIONS — a row with a
# `path:LINE:COL` word inside it — so n/N select that word and Enter Looks it.
# `SPC t t` (ThemeSel) opens the first one whose rows are COMMANDS: `Theme
# <name>`, exactly the line you would type, with no path in it to pick out, so
# n/N select the WHOLE ROW. One motion, two grains, and the same split either
# way — the step only SELECTS, and Tab (Exec, or the middle button, which is
# the same builtin) is what RUNS what it left. Walking the list therefore
# wears nothing as you pass; the theme changes on the Tab, and picking one is
# running it and stopping. There is still no preview state, nothing to confirm
# and nothing to cancel: the row you ran is the theme you have.
#
# Both halves of the ring are in the buffer: the fifteen native themes come
# first, then the retained helix, dark and acme, then everything exported from
# the vendored helix .toml and zed .json files, sorted. The colors below are
# read with snapstyle, so this proves the generated themes are real data and
# not just names in a list.
lines t.txt 40
start 31 100 t.txt
wait 8000 t.txt
stable 700 20000
snap boot
# SPC t t: the list lands below the pane that asked, focus stays HERE — but a
# fresh output buffer is where the walk's ring starts, so the first n goes
# into the list and every one after it carries on down it.
key space t t
wait 10000 Theme orchard
stable 700 15000
snap list
# n selects row 1 whole and Tab runs it: `Theme orchard`, which is already the
# boot theme, so only the selection moves. That is the honest first step — an
# idempotent command has to be safe to run.
key n
key tab
stable 700 15000
snap step-orchard
snapstyle step-orchard
# ...and now the theme really does change under the cursor, one row at a time
key n
key tab
stable 700 15000
snap step-dusk
snapstyle step-dusk
# Selection alone can skip rows without previewing or applying their themes.
# Four steps reach atelier, the Acme homage; Tab then applies it.
key n
key n
key n
key n
key tab
stable 700 15000
snap step-atelier
snapstyle step-atelier
key n
key tab
stable 700 15000
snap step-forge
snapstyle step-forge
key n
key tab
stable 700 15000
snap step-lagoon
snapstyle step-lagoon
key n
key tab
stable 700 15000
snap step-solarium
snapstyle step-solarium
key n
key tab
stable 700 15000
snap step-spectrum
snapstyle step-spectrum
key n
key tab
stable 700 15000
snap step-harvest
snapstyle step-harvest
key n
key tab
stable 700 15000
snap step-clay
snapstyle step-clay
# The three native contrast variants precede the legacy section. Its heading
# and blank separator are not stops in the n/N command walk.
key n
key tab
stable 700 15000
snap step-forge-black
snapstyle step-forge-black
key n
key tab
stable 700 15000
snap step-forge-soft
snapstyle step-forge-soft
key n
key tab
stable 700 15000
snap step-orchard-black
snapstyle step-orchard-black
key n
key tab
stable 700 15000
snap step-helix
snapstyle step-helix
key n
key tab
stable 700 15000
snap step-dark
snapstyle step-dark
key n
key tab
stable 700 15000
snap step-acme
snapstyle step-acme
# past the curated eighteen and into the generated half, which is sorted by name
# — so the next command is whatever sorts first, not whatever was
# vendored first. That is the point of sorting: the ring is the same everywhere
# whatever order the directory read handed the files over in.
key n
key tab
stable 700 15000
snap step-generated
snapstyle step-generated
# N walks back the same way — it is the exact inverse of n — and the Tab after
# it runs the row it lands on, so the theme rewinds too
key N
key tab
stable 700 15000
snap step-back
snapstyle step-back
# PICKING is just stopping: the theme the last Tab ran is still on, and the
# list is closed with an explicit Del. No window move is needed to get there —
# the walk lands IN the pane it steps, so the cursor has been in the list
# since the first n. Body-normal Esc is Last, so it deliberately leaves this
# document-like output buffer open.
# ...and the WHOLE ring is in there: `ge` to the last line, which
# only reaches `Theme zenburn` if nothing truncated the buffer on the way in. It
# is an ordinary file pane, so it scrolls like one; a motion runs nothing and
# neither does a step, so no theme changes here and the one the last Tab chose
# is still on.
key g e
stable 700 15000
snap tail
key space d
settle 100
stable 700 15000
snap picked
snapstyle picked
|