summaryrefslogtreecommitdiff
path: root/test
diff options
context:
space:
mode:
authorGabriel Schneider <[email protected]>2026-08-25 11:05:21 -0300
committerGabriel Schneider <[email protected]>2026-08-25 12:28:58 -0300
commite5f9e172330bc4500995ddd5954ed94f94e07af6 (patch)
treeaa7c5079b4c2951cef5b5c15595d0b20bc3ae245 /test
parent6f48508aa08396bcf9dd4da2cab1d221bcc53f78 (diff)
downloadpardes-e5f9e172330bc4500995ddd5954ed94f94e07af6.tar.gz
pardes-e5f9e172330bc4500995ddd5954ed94f94e07af6.zip
tests: a capture is a delta and a click names its word, so a tagline edit stops rewriting the suite
Diffstat (limited to 'test')
-rw-r--r--test/macos_e2e.swift11
-rw-r--r--test/snapshot.zig283
-rw-r--r--test/snapshots/acmefs-event.golden57
-rw-r--r--test/snapshots/acmefs.golden57
-rw-r--r--test/snapshots/argv.golden91
-rw-r--r--test/snapshots/badutf.golden48
-rw-r--r--test/snapshots/boot.golden28
-rw-r--r--test/snapshots/builtins.golden528
-rw-r--r--test/snapshots/chordcut.golden377
-rw-r--r--test/snapshots/cmdword.golden220
-rw-r--r--test/snapshots/cornerdrag-left.golden220
-rw-r--r--test/snapshots/cornerdrag.golden413
-rw-r--r--test/snapshots/cursorline.golden73
-rw-r--r--test/snapshots/doccol.golden157
-rw-r--r--test/snapshots/dump.snap4
-rw-r--r--test/snapshots/edit.golden13
-rw-r--r--test/snapshots/exec-bigdrag.golden1
-rw-r--r--test/snapshots/exec.golden114
-rw-r--r--test/snapshots/exec.snap7
-rw-r--r--test/snapshots/fileedit.golden81
-rw-r--r--test/snapshots/filewatch.golden135
-rw-r--r--test/snapshots/find.golden509
-rw-r--r--test/snapshots/find.snap6
-rw-r--r--test/snapshots/fsearch.golden239
-rw-r--r--test/snapshots/ghostty-mid.golden11
-rw-r--r--test/snapshots/grep.golden237
-rw-r--r--test/snapshots/grep.snap10
-rw-r--r--test/snapshots/hscroll.golden136
-rw-r--r--test/snapshots/images.golden86
-rw-r--r--test/snapshots/jumps.golden594
-rw-r--r--test/snapshots/layout-close.golden195
-rw-r--r--test/snapshots/layout-open.golden144
-rw-r--r--test/snapshots/leader.golden615
-rw-r--r--test/snapshots/load.golden13
-rw-r--r--test/snapshots/load.snap4
-rw-r--r--test/snapshots/logquiet.golden25
-rw-r--r--test/snapshots/look-center.golden83
-rw-r--r--test/snapshots/look-dir.golden11
-rw-r--r--test/snapshots/look-file-1col.golden8
-rw-r--r--test/snapshots/look-file.golden13
-rw-r--r--test/snapshots/lookloaded.golden75
-rw-r--r--test/snapshots/lookpanes.golden252
-rw-r--r--test/snapshots/lookrange.golden435
-rw-r--r--test/snapshots/lsp-rename.golden59
-rw-r--r--test/snapshots/lsp.golden275
-rw-r--r--test/snapshots/lspcomplete.golden309
-rw-r--r--test/snapshots/lspcompletemoved.golden5
-rw-r--r--test/snapshots/lspdebug.golden233
-rw-r--r--test/snapshots/lsprelpath.golden120
-rw-r--r--test/snapshots/markup.golden31
-rw-r--r--test/snapshots/modal.golden315
-rw-r--r--test/snapshots/msg.golden165
-rw-r--r--test/snapshots/multicursor.golden165
-rw-r--r--test/snapshots/nested-optout.golden82
-rw-r--r--test/snapshots/nested.golden58
-rw-r--r--test/snapshots/pipe.golden28
-rw-r--r--test/snapshots/psearch.golden247
-rw-r--r--test/snapshots/reflow.golden4
-rw-r--r--test/snapshots/respawn.golden23
-rw-r--r--test/snapshots/respawn.snap8
-rw-r--r--test/snapshots/restore.golden59
-rw-r--r--test/snapshots/restore.snap8
-rw-r--r--test/snapshots/rsearch.golden276
-rw-r--r--test/snapshots/savepane.golden15
-rw-r--r--test/snapshots/savepane.snap33
-rw-r--r--test/snapshots/scroll.golden189
-rw-r--r--test/snapshots/scrolloff.golden111
-rw-r--r--test/snapshots/selarg.golden75
-rw-r--r--test/snapshots/selregex.golden225
-rw-r--r--test/snapshots/shellset.golden60
-rw-r--r--test/snapshots/shrinktag.golden150
-rw-r--r--test/snapshots/splitparent.golden71
-rw-r--r--test/snapshots/stepgrain.golden249
-rw-r--r--test/snapshots/syntax.golden71
-rw-r--r--test/snapshots/tag.golden140
-rw-r--r--test/snapshots/tag.snap25
-rw-r--r--test/snapshots/tagalign.golden83
-rw-r--r--test/snapshots/tagalign.snap8
-rw-r--r--test/snapshots/tagalign2col.golden117
-rw-r--r--test/snapshots/tagbottom.golden553
-rw-r--r--test/snapshots/tagbottom.snap4
-rw-r--r--test/snapshots/tagbottomimage.golden140
-rw-r--r--test/snapshots/tagbottomimage.snap22
-rw-r--r--test/snapshots/tagcmd.golden144
-rw-r--r--test/snapshots/tagnav.golden593
-rw-r--r--test/snapshots/tagpath.golden237
-rw-r--r--test/snapshots/theme.golden171
-rw-r--r--test/snapshots/theme.snap12
-rw-r--r--test/snapshots/themesel.golden297
-rw-r--r--test/snapshots/tinywin.golden61
-rw-r--r--test/snapshots/topbarexec.golden66
-rw-r--r--test/snapshots/topbarexec.snap12
-rw-r--r--test/snapshots/tty.golden176
-rw-r--r--test/snapshots/ttyclick.golden110
-rw-r--r--test/snapshots/ttyclick.snap4
-rw-r--r--test/snapshots/ttyedit.golden148
-rw-r--r--test/snapshots/ttyfollow.golden92
-rw-r--r--test/snapshots/ttyhelp.golden114
-rw-r--r--test/snapshots/ttyhelp.snap4
-rw-r--r--test/snapshots/ttylook.golden232
-rw-r--r--test/snapshots/ttyonly.golden27
-rw-r--r--test/snapshots/ttypaste.golden41
-rw-r--r--test/snapshots/ttyprompt.golden77
-rw-r--r--test/snapshots/ttytaken.golden152
-rw-r--r--test/snapshots/tutor.golden32
-rw-r--r--test/snapshots/tutor.snap4
-rw-r--r--test/snapshots/wheeldrift.golden106
-rw-r--r--test/snapshots/winch.golden26
-rw-r--r--test/snapshots/windownav.golden358
-rw-r--r--test/snapshots/windowops.golden443
-rw-r--r--test/snapshots/windowops.snap8
-rw-r--r--test/snapshots/wrap.golden139
-rw-r--r--test/snapshots/yankpaste.golden123
-rw-r--r--test/web_snapshot.mjs4
114 files changed, 2384 insertions, 13059 deletions
diff --git a/test/macos_e2e.swift b/test/macos_e2e.swift
index f1bad492..c076aebb 100644
--- a/test/macos_e2e.swift
+++ b/test/macos_e2e.swift
@@ -13,10 +13,13 @@
// entry points the NSEvent overrides call. What a script exercises is what a
// hand exercises.
//
-// The output format is test/snapshot.zig's, deliberately byte-identical in
-// shape (`== snap <label> grid=CxR cursor=X,Y` then one `|`-prefixed row each,
-// right-trimmed), and the shared command spellings — wait, stable, text, key,
-// resize, snap — are its as well. Three shells render one core; a capture that
+// The output format is test/snapshot.zig's header and row spelling (`== snap
+// <label> grid=CxR cursor=X,Y` then one `|`-prefixed row each, right-trimmed),
+// and the shared command spellings — wait, stable, text, key, resize, snap —
+// are its as well. Every capture here is a WHOLE frame: the tty runner emits
+// later captures as row deltas (`|<n>: <row>`, see its Prev), which this suite
+// does not, so the goldens are comparable row for row but not file for file.
+// Three shells render one core; a capture that
// cannot be read beside the other two backends' captures is worth much less.
//
// The hermetic world under /tmp/pardes-macos-e2e is not optional. A golden
diff --git a/test/snapshot.zig b/test/snapshot.zig
index f2d7984c..7f8c4f21 100644
--- a/test/snapshot.zig
+++ b/test/snapshot.zig
@@ -48,6 +48,16 @@
// resize <rows> <cols>
// snap <label> capture grid text + cursor
// snapstyle <label> capture per-cell style runs (fg,bg,attrs)
+//
+// Any <col> above may be `@Word`, `@Word#2` or `@Word+4` instead of a number:
+// the column of a word on that row of the live grid (see resolveCol). Chrome
+// words move, and a frozen column silently clicks whatever moved into it.
+//
+// A capture is a DELTA against the previous capture of the same kind in the
+// same script: the first one (and any after a resize) is the whole screen as
+// `|<row>`, the rest are only the rows that changed, as `|<n>: <row>`. Before
+// this, every frame restated every row, so 82% of golden lines were a copy of
+// the line above and one added builtin word rewrote 78 goldens (see Prev).
const std = @import("std");
const libc = std.c;
const ghostty_vt = @import("ghostty-vt");
@@ -105,13 +115,14 @@ pub fn main(init: std.process.Init) !void {
script_count += 1;
}
}
- // Updating is the one run whose output becomes evidence instead of being
- // checked against it. The ordinary parallel pass can reject a transient
- // capture and retry it alone; update mode has no expected bytes to compare,
- // so it cannot know which capture needs that retry. Run it serially even if
- // --jobs was supplied: a slower intentional baseline refresh is cheaper
- // than blessing scheduler or shared-process startup noise as behavior.
- if (update) jobs = 1;
+ // Updating used to be serial, because update mode has no expected bytes and
+ // so cannot tell a transient capture from behaviour. Serial was a proxy for
+ // that, and an expensive one (77s against 6s). What it was reaching for is
+ // available directly: capture at the WIDEST probe settings the harness has
+ // (beCareful, as if every script had already failed once), then run the
+ // ordinary verify pass over what was just written. A golden that does not
+ // reproduce is reported instead of blessed, and the parallel pass keeps its
+ // retry machinery, which serial update never had.
var scripts = try arena.alloc([]const u8, script_count);
var script_i: usize = 0;
var saw_exe = false;
@@ -144,7 +155,13 @@ pub fn main(init: std.process.Init) !void {
_ = lockOrWait(SNAP_BASE ++ "/.run.lock", "another pardes-snap run");
const codes = try arena.alloc(u8, scripts.len);
- try runBatch(arena, exe_z, toBatch(arena, scripts), update, jobs, codes);
+ if (update) {
+ careful = true;
+ try runBatch(arena, exe_z, toBatch(arena, scripts), true, jobs, codes);
+ careful = false;
+ std.debug.print("verifying {d} regenerated golden(s)\n", .{scripts.len});
+ }
+ try runBatch(arena, exe_z, toBatch(arena, scripts), false, jobs, codes);
// A failure in the parallel pass is more often contention than regression:
// the app can lose a race with a kworker while 20 siblings fight for the
@@ -179,7 +196,7 @@ pub fn main(init: std.process.Init) !void {
std.debug.print("\n", .{});
careful = round > 0;
const recodes = try arena.alloc(u8, paths.len);
- try runBatch(arena, exe_z, paths, update, 1, recodes);
+ try runBatch(arena, exe_z, paths, false, 1, recodes);
for (retry, recodes) |i, c| codes[i] = c;
}
}
@@ -195,7 +212,11 @@ pub fn main(init: std.process.Init) !void {
}
}
if (failed > 0) {
- std.debug.print("{d}/{d} snapshot scripts FAILED\n", .{ failed, scripts.len });
+ // In update mode the golden was written and then failed to reproduce:
+ // the capture is not stable, so it is not a baseline.
+ std.debug.print("{d}/{d} snapshot scripts {s}\n", .{
+ failed, scripts.len, if (update) "UNSTABLE (regenerated, does not reproduce)" else "FAILED",
+ });
std.process.exit(1);
}
std.debug.print("all {d} snapshot scripts ok\n", .{scripts.len});
@@ -382,6 +403,8 @@ fn runScript(arena: std.mem.Allocator, exe_z: [:0]const u8, script_path: []const
var chunk_len: usize = 0;
var h: ?eh.Harness = null;
defer if (h) |*hp| hp.deinit();
+ // captures are deltas against the previous one of the same kind (see Prev)
+ var prev: Prev = .{};
var lines_it = std.mem.splitScalar(u8, src, '\n');
var lineno: usize = 0;
@@ -444,6 +467,9 @@ fn runScript(arena: std.mem.Allocator, exe_z: [:0]const u8, script_path: []const
extra[nextra] = (try arena.dupeZ(u8, a)).ptr;
}
if (h) |*hp| hp.deinit(); // scripts may restart (e.g. dump then -l)
+ // a new process is a new screen: capture it whole, or its first
+ // frame would be a delta against a dead instance's rows
+ prev = .{};
h = try eh.Harness.initArgv(gpa, exe_z.ptr, rows, cols, extra[0..nextra]);
} else if (std.mem.eql(u8, cmd, "snapfile")) {
const label = tok.next() orelse return error.BadScript;
@@ -469,29 +495,32 @@ fn runScript(arena: std.mem.Allocator, exe_z: [:0]const u8, script_path: []const
while (tok.next()) |name| try live(&h).send(keyBytes(name) orelse return error.BadKey);
} else if (std.mem.eql(u8, cmd, "press") or std.mem.eql(u8, cmd, "release") or std.mem.eql(u8, cmd, "drag")) {
const btn = buttonCode(tok.next() orelse return error.BadScript) orelse return error.BadScript;
- const col = try std.fmt.parseInt(u16, tok.next() orelse return error.BadScript, 10);
+ const col_spec = tok.next() orelse return error.BadScript;
const row = try std.fmt.parseInt(u16, tok.next() orelse return error.BadScript, 10);
+ const col = try resolveCol(live(&h), col_spec, row);
const b: u16 = if (std.mem.eql(u8, cmd, "drag")) btn + 32 else btn;
const fin: u8 = if (std.mem.eql(u8, cmd, "release")) 'm' else 'M';
try live(&h).send(try std.fmt.allocPrint(arena, "\x1b[<{d};{d};{d}{c}", .{ b, col, row, fin }));
} else if (std.mem.eql(u8, cmd, "motion")) {
- const col = try std.fmt.parseInt(u16, tok.next() orelse return error.BadScript, 10);
+ const col_spec = tok.next() orelse return error.BadScript;
const row = try std.fmt.parseInt(u16, tok.next() orelse return error.BadScript, 10);
+ const col = try resolveCol(live(&h), col_spec, row);
try live(&h).send(try std.fmt.allocPrint(arena, "\x1b[<35;{d};{d}M", .{ col, row }));
} else if (std.mem.eql(u8, cmd, "wheel")) {
const dir = tok.next() orelse return error.BadScript;
const b: u16 = if (std.mem.eql(u8, dir, "up")) 64 else 65;
- const col = try std.fmt.parseInt(u16, tok.next() orelse return error.BadScript, 10);
+ const col_spec = tok.next() orelse return error.BadScript;
const row = try std.fmt.parseInt(u16, tok.next() orelse return error.BadScript, 10);
+ const col = try resolveCol(live(&h), col_spec, row);
try live(&h).send(try std.fmt.allocPrint(arena, "\x1b[<{d};{d};{d}M", .{ b, col, row }));
} else if (std.mem.eql(u8, cmd, "resize")) {
const rows = try std.fmt.parseInt(u16, tok.next() orelse return error.BadScript, 10);
const cols = try std.fmt.parseInt(u16, tok.next() orelse return error.BadScript, 10);
try live(&h).resize(rows, cols);
} else if (std.mem.eql(u8, cmd, "snap")) {
- try appendChunk(chunks, &chunk_len, try snapText(arena, live(&h), tok.rest()));
+ try appendChunk(chunks, &chunk_len, try snapText(arena, live(&h), tok.rest(), &prev));
} else if (std.mem.eql(u8, cmd, "snapstyle")) {
- try appendChunk(chunks, &chunk_len, try snapStyle(arena, live(&h), tok.rest()));
+ try appendChunk(chunks, &chunk_len, try snapStyle(arena, live(&h), tok.rest(), &prev));
} else {
std.debug.print("unknown command {s}\n", .{cmd});
return error.BadScript;
@@ -679,9 +708,20 @@ fn waitStable(h: *eh.Harness, quiet: i64, timeout: i64) !void {
// mints a fresh pty). So the hold is a bet on kworker latency, and a loaded
// machine loses it. The parallel pass bets small; the serial re-run that decides
// the verdict bets big.
-var probe_after_ms: i64 = 10;
+//
+// Only the SUM is the safety margin: a return cannot happen before
+// `probe_after_ms + probe_hold_ms` after the last change either way. The split
+// is pure cost, and the two halves cost differently - the arm window is one
+// `poll()` sleep, while every `probe_every_ms` of hold is a full `treeAsleep()`
+// walk of the app's process tree. Measured across the suite: 796 armed probes,
+// 54 of them saw a later change, none later than 11ms at 20 jobs. That is the
+// scheduler-tick case. The number the sum is really sized for is bigger and
+// found by adversarial measurement: a theme transition sleeps
+// `animation.frame_ms` (16ms) between frames with the whole tree asleep, and
+// under `taskset -c 0,1` those gaps stretch to 57ms. 60ms total stays.
+var probe_after_ms: i64 = 50;
const probe_every_ms: i64 = 5;
-var probe_hold_ms: i64 = 50;
+var probe_hold_ms: i64 = 10;
/// Widen the probes for the re-run pass: nothing else is competing then, so the
/// extra wait is cheap, and its verdict is the one that gets reported.
@@ -771,51 +811,179 @@ fn stateKey(h: *eh.Harness) ![]u8 {
return std.fmt.allocPrint(h.gpa, "{d},{d},{x}\n{s}", .{ c.x, c.y, styles.final(), text });
}
-fn snapText(arena: std.mem.Allocator, h: *eh.Harness, label: []const u8) ![]u8 {
+/// A mouse column: either a screen column, or `@Word` / `@Word#2` - the column
+/// of a WORD found on that row of the LIVE grid.
+///
+/// Chrome words move. When `Newtty` was added to every tail and `Joincol` and
+/// `Changelog` to the topbar, six scripts kept their frozen columns and started
+/// clicking a different word: `tutor.snap` clicked `Grep` instead of `Tutor`,
+/// `exec.snap`/`respawn.snap`/`tagalign.snap` clicked `Newtty` instead of `Del`,
+/// `find.snap` clicked `Joincol` instead of `Find`, `windowops.snap` clicked
+/// `Tutor` instead of `Debug` - and `--update` blessed all of it, so 256 golden
+/// lines were green while asserting the opposite of their script's first line.
+/// Naming the word instead of its column makes that class of drift impossible:
+/// the word is either there to be clicked or the script fails loudly.
+///
+/// The match is boundary-anchored, which is not a detail: `New` is a prefix of
+/// `Newcol` and of `Newtty`, and `@New` resolving to `Newcol` is exactly the bug
+/// this is here to prevent. `#n` picks the nth occurrence for a row that holds
+/// two panes' tags, and `+n`/`-n` addresses a column NEAR a word - which is how
+/// a click that means "in the gap the right-aligned builtins leave after the
+/// path" is spelled without depending on how wide those builtins are.
+fn resolveCol(h: *eh.Harness, spec: []const u8, row: u16) !u16 {
+ if (spec.len == 0 or spec[0] != '@') return std.fmt.parseInt(u16, spec, 10);
+ var word = spec[1..];
+ var want: usize = 1;
+ var offset: i32 = 0;
+ // parsed off the end, so a word may hold a `-` or a `#` itself
+ if (std.mem.lastIndexOfAny(u8, word, "+-")) |sign| {
+ if (sign > 0) {
+ if (std.fmt.parseInt(i32, word[sign + 1 ..], 10)) |n| {
+ offset = if (word[sign] == '-') -n else n;
+ word = word[0..sign];
+ } else |_| {}
+ }
+ }
+ if (std.mem.lastIndexOfScalar(u8, word, '#')) |hash| {
+ if (std.fmt.parseInt(usize, word[hash + 1 ..], 10)) |n| {
+ want = n;
+ word = word[0..hash];
+ } else |_| {}
+ }
+ if (word.len == 0 or want == 0) return error.BadScript;
+ if (row == 0 or row > h.rows) return error.WordRowMissing;
+ // One byte per CELL, not per byte of UTF-8: a mouse column is a cell, and
+ // a tag row can hold a wide glyph or the U+254E column divider left of the
+ // word. Non-ASCII cells become 0xff, which is not a word byte, so they
+ // read as boundaries - every chrome word is ASCII.
+ var cells: [1024]u8 = undefined;
+ const line = rowCells(h, row - 1, &cells);
+ var seen: usize = 0;
+ var from: usize = 0;
+ while (std.mem.indexOfPos(u8, line, from, word)) |at| : (from = at + 1) {
+ if (at > 0 and wordByte(line[at - 1])) continue;
+ const after = at + word.len;
+ if (after < line.len and wordByte(line[after])) continue;
+ seen += 1;
+ if (seen != want) continue;
+ // SGR columns are 1-based
+ const col = @as(i32, @intCast(at + 1)) + offset;
+ if (col < 1 or col > @as(i32, h.cols)) return error.BadScript;
+ return @intCast(col);
+ }
+ std.debug.print(" no \"{s}\" #{d} on row {d}: {s}\n", .{ word, want, row, std.mem.trimEnd(u8, line, " ") });
+ return error.WordNotOnRow;
+}
+
+fn rowCells(h: *eh.Harness, y: u16, buf: *[1024]u8) []const u8 {
+ const n = @min(h.cols, buf.len);
+ var x: u16 = 0;
+ while (x < n) : (x += 1) {
+ const ci = h.term.screens.active.pages.getCell(.{ .viewport = .{ .x = x, .y = y } });
+ buf[x] = blk: {
+ const cell = (ci orelse break :blk ' ').cell;
+ if (cell.content_tag != .codepoint and cell.content_tag != .codepoint_grapheme) break :blk ' ';
+ const cp = cell.content.codepoint.data;
+ break :blk if (cp == 0) ' ' else if (cp < 128) @intCast(cp) else 0xff;
+ };
+ }
+ return buf[0..n];
+}
+
+fn wordByte(c: u8) bool {
+ return std.ascii.isAlphanumeric(c) or c == '_';
+}
+
+/// A capture, kept so the NEXT capture of the same kind can be emitted as the
+/// rows that changed instead of the whole screen again. 81.7% of re-captured
+/// rows used to be byte-identical to the previous capture in the same script,
+/// which is why one word added to a tagline rewrote 78 goldens: every frame
+/// re-stated every row of chrome. The delta keeps the assertion (a row that
+/// moves still shows up, and a capture whose only change is the cursor is
+/// exactly the empty delta its script means) and drops the restatement.
+const Prev = struct {
+ snap: []const []const u8 = &.{},
+ style: []const []const u8 = &.{},
+ // per kind: one shared width let a `snapstyle` between a `resize` and the
+ // next `snap` re-arm the guard, and the post-resize frame then came out as
+ // a delta against rows of the old width - dropping every row whose text is
+ // width-invariant, which is every left-aligned chrome row there is.
+ snap_cols: u16 = 0,
+ style_cols: u16 = 0,
+};
+
+/// `== snap <label> grid=CxR cursor=X,Y` then either the whole screen as
+/// `|<row text>` (first capture of a script, or after a resize) or just the
+/// rows that changed as `|<n>: <row text>`. An indexed row is a patch against
+/// the previous capture; an unindexed one is a frame.
+fn snapText(arena: std.mem.Allocator, h: *eh.Harness, label: []const u8, prev: *Prev) ![]u8 {
const text = try h.screenText();
defer h.gpa.free(text);
const c = h.cursor();
- const header = try std.fmt.allocPrint(arena, "== snap {s} grid={d}x{d} cursor={d},{d}\n", .{ label, h.cols, h.rows, c.x, c.y });
- var total = header.len;
+ const rows = try arena.alloc([]const u8, h.rows);
var it = std.mem.splitScalar(u8, text, '\n');
- var row: usize = 0;
- while (row < h.rows) : (row += 1) {
- const line = it.next() orelse "";
- total += 1 + std.mem.trimEnd(u8, line, " ").len + 1;
- }
- const out = try arena.alloc(u8, total);
- var pos: usize = 0;
- copyBytes(out, &pos, header);
- it = std.mem.splitScalar(u8, text, '\n');
- row = 0;
- while (row < h.rows) : (row += 1) {
- const line = it.next() orelse "";
- copyBytes(out, &pos, "|");
- copyBytes(out, &pos, std.mem.trimEnd(u8, line, " "));
- copyBytes(out, &pos, "\n");
+ for (rows) |*r| r.* = try arena.dupe(u8, std.mem.trimEnd(u8, it.next() orelse "", " "));
+
+ var out: std.ArrayList(u8) = .empty;
+ try out.appendSlice(arena, try std.fmt.allocPrint(arena, "== snap {s} grid={d}x{d} cursor={d},{d}\n", .{
+ label, h.cols, h.rows, c.x, c.y,
+ }));
+ if (prev.snap.len == rows.len and prev.snap_cols == h.cols) {
+ for (rows, prev.snap, 0..) |now, was, i| {
+ if (std.mem.eql(u8, now, was)) continue;
+ // no trailing space when a row goes blank: a whitespace-trimming
+ // editor or `git apply --whitespace=fix` would rewrite it and the
+ // golden would then fail like a regression
+ try out.appendSlice(arena, if (now.len == 0)
+ try std.fmt.allocPrint(arena, "|{d}:\n", .{i})
+ else
+ try std.fmt.allocPrint(arena, "|{d}: {s}\n", .{ i, now }));
+ }
+ } else {
+ // A full frame stops at the last row with anything on it: the blank
+ // tail of the grid is the same information as the `grid=CxR` header.
+ var end = rows.len;
+ while (end > 0 and rows[end - 1].len == 0) end -= 1;
+ for (rows[0..end]) |r| {
+ try out.appendSlice(arena, "|");
+ try out.appendSlice(arena, r);
+ try out.appendSlice(arena, "\n");
+ }
}
- return out;
+ prev.snap = rows;
+ prev.snap_cols = h.cols;
+ return out.items;
}
/// Per-row style runs from the harness emulator: `|y: x0-x1 fg,bg,attrs ...`.
/// fg/bg: d (default) | pN (palette) | #rrggbb. attrs: b f i k r v x + u U ~ . -
-/// for underline single/double/curly/dotted/dashed.
-fn snapStyle(arena: std.mem.Allocator, h: *eh.Harness, label: []const u8) ![]u8 {
- const header = try std.fmt.allocPrint(arena, "== style {s}\n", .{label});
- const rows_len = styleRows(h, null);
- const out = try arena.alloc(u8, header.len + rows_len);
- var pos: usize = 0;
- copyBytes(out, &pos, header);
- _ = styleRows(h, out[pos..]);
- return out;
+/// for underline single/double/curly/dotted/dashed. Deltas the same way
+/// `snapText` does - the row already carries its own index, so a patch and a
+/// frame are spelled identically here. The header carries the grid because a
+/// style capture has no cursor: without it an unchanged style would be a label
+/// line asserting nothing at all.
+fn snapStyle(arena: std.mem.Allocator, h: *eh.Harness, label: []const u8, prev: *Prev) ![]u8 {
+ const rows = try styleRows(arena, h);
+ var out: std.ArrayList(u8) = .empty;
+ try out.appendSlice(arena, try std.fmt.allocPrint(arena, "== style {s} grid={d}x{d}\n", .{ label, h.cols, h.rows }));
+ const delta = prev.style.len == rows.len and prev.style_cols == h.cols;
+ for (rows, 0..) |now, i| {
+ if (delta and std.mem.eql(u8, now, prev.style[i])) continue;
+ try out.appendSlice(arena, "|");
+ try out.appendSlice(arena, now);
+ try out.appendSlice(arena, "\n");
+ }
+ prev.style = rows;
+ prev.style_cols = h.cols;
+ return out.items;
}
-fn styleRows(h: *eh.Harness, dst: ?[]u8) usize {
- var pos: usize = 0;
- var y: u16 = 0;
- while (y < h.rows) : (y += 1) {
- var fmt_buf: [64]u8 = undefined;
- emitBytes(dst, &pos, std.fmt.bufPrint(&fmt_buf, "|{d}:", .{y}) catch unreachable);
+fn styleRows(arena: std.mem.Allocator, h: *eh.Harness) ![]const []const u8 {
+ const out = try arena.alloc([]const u8, h.rows);
+ for (out, 0..) |*dst, y_usize| {
+ const y: u16 = @intCast(y_usize);
+ var row: std.ArrayList(u8) = .empty;
+ try row.appendSlice(arena, try std.fmt.allocPrint(arena, "{d}:", .{y}));
var key_buf: [64]u8 = undefined;
var run_key: [64]u8 = undefined;
var run_len: usize = 0;
@@ -829,20 +997,15 @@ fn styleRows(h: *eh.Harness, dst: ?[]u8) usize {
continue;
}
if (std.mem.eql(u8, key, run_key[0..run_len])) continue;
- emitBytes(dst, &pos, std.fmt.bufPrint(&fmt_buf, " {d}-{d} ", .{ run_start, x - 1 }) catch unreachable);
- emitBytes(dst, &pos, run_key[0..run_len]);
+ try row.appendSlice(arena, try std.fmt.allocPrint(arena, " {d}-{d} ", .{ run_start, x - 1 }));
+ try row.appendSlice(arena, run_key[0..run_len]);
@memcpy(run_key[0..key.len], key);
run_len = key.len;
run_start = x;
}
- emitBytes(dst, &pos, "\n");
+ dst.* = row.items;
}
- return pos;
-}
-
-fn emitBytes(dst: ?[]u8, pos: *usize, bytes: []const u8) void {
- if (dst) |out| @memcpy(out[pos.*..][0..bytes.len], bytes);
- pos.* += bytes.len;
+ return out;
}
fn cellKey(h: *eh.Harness, x: u16, y: u16, buf: *[64]u8) []const u8 {
diff --git a/test/snapshots/acmefs-event.golden b/test/snapshots/acmefs-event.golden
index 01c493da..58488f1e 100644
--- a/test/snapshots/acmefs-event.golden
+++ b/test/snapshots/acmefs-event.golden
@@ -5,62 +5,11 @@
| /tmp/pardes-snap/acmefs-event/cwd/+New * Save New Newtty Del
| 1 Newcol
| 2
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
== file events
MX0 6 1 6 Newcol|
== end file
== snap after-unsuppressed-click grid=100x30 cursor=57,2
-|New Newcol Joincol Find Grep Help Changelog Tutor Dump NextColor Debug Kill
-|$ /tmp/pardes-snap/acmefs-event/cwd Save New Newtt /tmp/pardes-snap/acmefs-event/cwd/+New Save New
-| $ 1
-| /tmp/pardes-snap/acmefs-event/cwd/+New * Save Ne
-| 1 Newcol
-| 2
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
+|1: $ /tmp/pardes-snap/acmefs-event/cwd Save New Newtt /tmp/pardes-snap/acmefs-event/cwd/+New Save New
+|2: $ 1
+|3: /tmp/pardes-snap/acmefs-event/cwd/+New * Save Ne
diff --git a/test/snapshots/acmefs.golden b/test/snapshots/acmefs.golden
index 179ecba8..8e2e37f4 100644
--- a/test/snapshots/acmefs.golden
+++ b/test/snapshots/acmefs.golden
@@ -12,30 +12,6 @@ new
| /tmp/pardes-snap/acmefs/cwd/+New * Save New Newtty Del
| 1 hello from outside
| 2
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
== file body
hello from outside
@@ -49,33 +25,6 @@ hello from outside
== end file
== snap fs-event-exec grid=100x30 cursor=57,2
-|New Newcol Joincol Find Grep Help Changelog Tutor Dump NextColor Debug Kill
-|$ /tmp/pardes-snap/acmefs/cwd Save New Newtty Del /tmp/pardes-snap/acmefs/cwd/+New Save New Newtty
-| $ 1
-| /tmp/pardes-snap/acmefs/cwd/+New *
-| 1 hello from outside
-| 2
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
+|1: $ /tmp/pardes-snap/acmefs/cwd Save New Newtty Del /tmp/pardes-snap/acmefs/cwd/+New Save New Newtty
+|2: $ 1
+|3: /tmp/pardes-snap/acmefs/cwd/+New *
diff --git a/test/snapshots/argv.golden b/test/snapshots/argv.golden
index 1548df63..fba7ae43 100644
--- a/test/snapshots/argv.golden
+++ b/test/snapshots/argv.golden
@@ -4,31 +4,6 @@
| $ echo ARGV''TTY
| ARGVTTY
| $
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
== snap filearg grid=100x30 cursor=7,2
|New Newcol Joincol Find Grep Help Changelog Tutor Dump NextColor Debug Kill
| /tmp/pardes-snap/argv/cwd/notes.txt Save New Newtty Del
@@ -39,27 +14,6 @@
| 7 line 7
| 8 line 8
| 9
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
== snap filearg-n3 grid=100x30 cursor=7,2
|New Newcol Joincol Find Grep Help Changelog Tutor Dump NextColor Debug Kill
| /tmp/pardes-snap/argv/cwd/notes.txt Save New Newtty Del
@@ -72,53 +26,8 @@
| 7 line 7
| 8 line 8
| 9
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
== snap dirarg grid=100x30 cursor=4,4
|New Newcol Joincol Find Grep Help Changelog Tutor Dump NextColor Debug Kill
| /tmp/pardes-snap/argv/cwd/sub Save New Newtty Del Filter
| ls
| inside.txt
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
diff --git a/test/snapshots/badutf.golden b/test/snapshots/badutf.golden
index 0ad1f985..49395e38 100644
--- a/test/snapshots/badutf.golden
+++ b/test/snapshots/badutf.golden
@@ -6,57 +6,9 @@
| 3 truncated �� here
| 4 end
| 5
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
== snap hscroll-midglyph grid=50x30 cursor=46,2
|New Newcol Joincol Find Grep Help Changelog Tutor
| /tmp/pardes-snap/badutf/cwd/wide.txt Save New Ne
| 1 日本語 日本語 日本語 日本語 日本語 tail
| 2
| 3
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
diff --git a/test/snapshots/boot.golden b/test/snapshots/boot.golden
index 42a060d7..afb20590 100644
--- a/test/snapshots/boot.golden
+++ b/test/snapshots/boot.golden
@@ -3,33 +3,7 @@
| /tmp/pardes-snap/boot/cwd Save New Newtty Del Filter
| ls
| hello.txt
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-== style boot
+== style boot grid=100x30
|0: 0-74 #949494,#121212, 75-99 d,#121212,
|1: 0-1 #ffffff,#626262, 2-79 #949494,#121212, 80-99 d,#121212,
|2: 0-0 d,#444444, 1-1 d,#080808, 2-3 #bdbdbd,#080808, 4-99 d,#080808,
diff --git a/test/snapshots/builtins.golden b/test/snapshots/builtins.golden
index eed36d28..74db25e8 100644
--- a/test/snapshots/builtins.golden
+++ b/test/snapshots/builtins.golden
@@ -8,395 +8,149 @@
| 5 line 5
| 6 line 6
| 7
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
== snap index grid=120x66 cursor=7,35
-|New Newcol Joincol Find Grep Help Changelog Tutor Dump NextColor Debug Kill
-| /tmp/pardes-snap/builtins/cwd/notes.txt Save New Newtty Del
-| 1 line 1
-| 2 line 2
-| 3 line 3
-| 4 line 4
-| 5 line 5
-| 6 line 6
-| 7
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-| /tmp/pardes-snap/builtins/cwd/+Help Save New Newtty Del
-| 1 pardes builtins, and how to run each:
-| 2 SPC and its keys, a chord, a button, the
-| 3 topbar - or the name, executed anywhere.
-| 4
-| 5 SPC ? Help topbar
-| 6 SPC P ClipPasteBefore
-| 7 SPC R ClipReplace
-| 8 SPC Y ClipYankMain
-| 9 SPC a a PanelAscii
-| 10 SPC a c PanelCurtain
-| 11 SPC a d PanelDissolve
-| 12 SPC a e PanelEdges
-| 13 SPC a f PanelFall
-| 14 SPC a r PanelScramble
-| 15 SPC a s PanelSlide
-| 16 SPC a t PanelType
-| 17 SPC a v PanelVertical
-| 18 SPC a w PanelWave
-| 19 SPC a z PanelZoom
-| 20 SPC c d Delcol
-| 21 SPC c j Joincol topbar
-| 22 SPC c n Newcol topbar
-| 23 SPC d Del
-| 24 SPC f c Config
-| 25 SPC f f Find topbar
-| 26 SPC f g Grep topbar
-| 27 SPC f n New topbar
-| 28 SPC f s Save
-| 29 SPC h c Changelog topbar
-| 30 SPC h t Tutor topbar
-| 31 SPC j i Forward C-i
+|34: /tmp/pardes-snap/builtins/cwd/+Help Save New Newtty Del
+|35: 1 pardes builtins, and how to run each:
+|36: 2 SPC and its keys, a chord, a button, the
+|37: 3 topbar - or the name, executed anywhere.
+|38: 4
+|39: 5 SPC ? Help topbar
+|40: 6 SPC P ClipPasteBefore
+|41: 7 SPC R ClipReplace
+|42: 8 SPC Y ClipYankMain
+|43: 9 SPC a a PanelAscii
+|44: 10 SPC a c PanelCurtain
+|45: 11 SPC a d PanelDissolve
+|46: 12 SPC a e PanelEdges
+|47: 13 SPC a f PanelFall
+|48: 14 SPC a r PanelScramble
+|49: 15 SPC a s PanelSlide
+|50: 16 SPC a t PanelType
+|51: 17 SPC a v PanelVertical
+|52: 18 SPC a w PanelWave
+|53: 19 SPC a z PanelZoom
+|54: 20 SPC c d Delcol
+|55: 21 SPC c j Joincol topbar
+|56: 22 SPC c n Newcol topbar
+|57: 23 SPC d Del
+|58: 24 SPC f c Config
+|59: 25 SPC f f Find topbar
+|60: 26 SPC f g Grep topbar
+|61: 27 SPC f n New topbar
+|62: 28 SPC f s Save
+|63: 29 SPC h c Changelog topbar
+|64: 30 SPC h t Tutor topbar
+|65: 31 SPC j i Forward C-i
== snap index-tail grid=120x66 cursor=7,64
-|New Newcol Joincol Find Grep Help Changelog Tutor Dump NextColor Debug Kill
-| /tmp/pardes-snap/builtins/cwd/notes.txt Save New Newtty Del
-| 1 line 1
-| 2 line 2
-| 3 line 3
-| 4 line 4
-| 5 line 5
-| 6 line 6
-| 7
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-| /tmp/pardes-snap/builtins/cwd/+Help Save New Newtty Del
-| 46 SPC n t Newtty
-| 47 SPC p ClipPaste
-| 48 SPC s d Dump topbar
-| 49 SPC s r Restore
-| 50 SPC t a Ascii
-| 51 SPC t b Tagbottom
-| 52 SPC t c Colors
-| 53 SPC t d Debug topbar
-| 54 SPC t i PdfTint
-| 55 SPC t l Palette
-| 56 SPC t n NextColor topbar
-| 57 SPC t p Petscii
-| 58 SPC t s PdfSections
-| 59 SPC t t ThemeSel
-| 60 SPC t w Wrap
-| 61 SPC t z PdfFit
-| 62 SPC w h Left C-w h, C-w left
-| 63 SPC w j Down C-w j, C-w down
-| 64 SPC w k Up C-w k, C-w up
-| 65 SPC w l Right C-w l, C-w right
-| 66 SPC y ClipYank
-| 67 Look enter, right-click
-| 68 Exec tab, middle-click
-| 69 Msg
-| 70 ThemeFile
-| 71 DumpThemes
-| 72 Filter
-| 73 EffectCode
-| 74 Theme
-| 75 Shell
-| 76
+|35: 46 SPC n t Newtty
+|36: 47 SPC p ClipPaste
+|37: 48 SPC s d Dump topbar
+|38: 49 SPC s r Restore
+|39: 50 SPC t a Ascii
+|40: 51 SPC t b Tagbottom
+|41: 52 SPC t c Colors
+|42: 53 SPC t d Debug topbar
+|43: 54 SPC t i PdfTint
+|44: 55 SPC t l Palette
+|45: 56 SPC t n NextColor topbar
+|46: 57 SPC t p Petscii
+|47: 58 SPC t s PdfSections
+|48: 59 SPC t t ThemeSel
+|49: 60 SPC t w Wrap
+|50: 61 SPC t z PdfFit
+|51: 62 SPC w h Left C-w h, C-w left
+|52: 63 SPC w j Down C-w j, C-w down
+|53: 64 SPC w k Up C-w k, C-w up
+|54: 65 SPC w l Right C-w l, C-w right
+|55: 66 SPC y ClipYank
+|56: 67 Look enter, right-click
+|57: 68 Exec tab, middle-click
+|58: 69 Msg
+|59: 70 ThemeFile
+|60: 71 DumpThemes
+|61: 72 Filter
+|62: 73 EffectCode
+|63: 74 Theme
+|64: 75 Shell
+|65: 76
== snap not-a-picker grid=120x66 cursor=7,64
-|New Newcol Joincol Find Grep Help Changelog Tutor Dump NextColor Debug Kill
-| /tmp/pardes-snap/builtins/cwd/notes.txt Save New Newtty Del
-| 1 line 1
-| 2 line 2
-| 3 line 3
-| 4 line 4
-| 5 line 5
-| 6 line 6
-| 7
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-| /tmp/pardes-snap/builtins/cwd/+Help Save New Newtty Del
-| 46 SPC n t Newtty
-| 47 SPC p ClipPaste
-| 48 SPC s d Dump topbar
-| 49 SPC s r Restore
-| 50 SPC t a Ascii
-| 51 SPC t b Tagbottom
-| 52 SPC t c Colors
-| 53 SPC t d Debug topbar
-| 54 SPC t i PdfTint
-| 55 SPC t l Palette
-| 56 SPC t n NextColor topbar
-| 57 SPC t p Petscii
-| 58 SPC t s PdfSections
-| 59 SPC t t ThemeSel
-| 60 SPC t w Wrap
-| 61 SPC t z PdfFit
-| 62 SPC w h Left C-w h, C-w left
-| 63 SPC w j Down C-w j, C-w down
-| 64 SPC w k Up C-w k, C-w up
-| 65 SPC w l Right C-w l, C-w right
-| 66 SPC y ClipYank
-| 67 Look enter, right-click
-| 68 Exec tab, middle-click
-| 69 Msg
-| 70 ThemeFile
-| 71 DumpThemes
-| 72 Filter
-| 73 EffectCode
-| 74 Theme
-| 75 Shell
-| 76
== snap window-group grid=120x66 cursor=7,35
-|New Newcol Joincol Find Grep Help Changelog Tutor Dump NextColor Debug Kill
-| /tmp/pardes-snap/builtins/cwd/notes.txt Save New Newtty Del
-| 1 line 1
-| 2 line 2
-| 3 line 3
-| 4 line 4
-| 5 line 5
-| 6 line 6
-| 7
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-| /tmp/pardes-snap/builtins/cwd/+Help Save New Newtty Del
-| 1 pardes builtins under SPC w
-| 2
-| 3 SPC w h Left C-w h, C-w left
-| 4 SPC w j Down C-w j, C-w down
-| 5 SPC w k Up C-w k, C-w up
-| 6 SPC w l Right C-w l, C-w right
-| 7
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
+|35: 1 pardes builtins under SPC w
+|36: 2
+|37: 3 SPC w h Left C-w h, C-w left
+|38: 4 SPC w j Down C-w j, C-w down
+|39: 5 SPC w k Up C-w k, C-w up
+|40: 6 SPC w l Right C-w l, C-w right
+|41: 7
+|42:
+|43:
+|44:
+|45:
+|46:
+|47:
+|48:
+|49:
+|50:
+|51:
+|52:
+|53:
+|54:
+|55:
+|56:
+|57:
+|58:
+|59:
+|60:
+|61:
+|62:
+|63:
+|64:
+|65:
== snap tutor-from-index grid=120x66 cursor=7,19
-|New Newcol Joincol Find Grep Help Changelog Tutor Dump NextColor Debug Kill
-| /tmp/pardes-snap/builtins/cwd/notes.txt Save New Newtty Del
-| 1 line 1
-| 2 line 2
-| 3 line 3
-| 4 line 4
-| 5 line 5
-| 6 line 6
-| 7
-|
-|
-|
-|
-|
-|
-|
-|
-|
-| /Tutor Save New Newtty Del
-| 1
-| 2 PARDES TUTOR
-| 3 tmux + vi + acme, from scratch.
-| 4
-| 5 The model is acme's: EVERYTHING is text, editable and executable
-| 6 the same way. Modal editing (helix-style) lives on top of that.
-| 7 Press j until you reach the introduction.
-| 8
-| 9
-| 10 =================================================================
-| 11 = INTRODUCTION =
-| 12 =================================================================
-| 13
-| 14 Pardes is tmux + vi + acme, made from scratch. The foundation is
-| 15 the acme model: a pane is just text on screen. There is no separate
-| /tmp/pardes-snap/builtins/cwd/+Help Save New Newtty Del
-| 1 pardes builtins, and how to run each:
-| 2 SPC and its keys, a chord, a button, the
-| 3 topbar - or the name, executed anywhere.
-| 4
-| 5 SPC ? Help topbar
-| 6 SPC P ClipPasteBefore
-| 7 SPC R ClipReplace
-| 8 SPC Y ClipYankMain
-| 9 SPC a a PanelAscii
-| 10 SPC a c PanelCurtain
-| 11 SPC a d PanelDissolve
-| 12 SPC a e PanelEdges
-| 13 SPC a f PanelFall
-| 14 SPC a r PanelScramble
-| 15 SPC a s PanelSlide
-| 16 SPC a t PanelType
-| 17 SPC a v PanelVertical
-| 18 SPC a w PanelWave
-| 19 SPC a z PanelZoom
-| 20 SPC c d Delcol
-| 21 SPC c j Joincol topbar
-| 22 SPC c n Newcol topbar
-| 23 SPC d Del
-| 24 SPC f c Config
-| 25 SPC f f Find topbar
-| 26 SPC f g Grep topbar
-| 27 SPC f n New topbar
-| 28 SPC f s Save
-| 29 SPC h c Changelog topbar
-| 30 SPC h t Tutor topbar
-| 31 SPC j i Forward C-i
+|18: /Tutor Save New Newtty Del
+|19: 1
+|20: 2 PARDES TUTOR
+|21: 3 tmux + vi + acme, from scratch.
+|22: 4
+|23: 5 The model is acme's: EVERYTHING is text, editable and executable
+|24: 6 the same way. Modal editing (helix-style) lives on top of that.
+|25: 7 Press j until you reach the introduction.
+|26: 8
+|27: 9
+|28: 10 =================================================================
+|29: 11 = INTRODUCTION =
+|30: 12 =================================================================
+|31: 13
+|32: 14 Pardes is tmux + vi + acme, made from scratch. The foundation is
+|33: 15 the acme model: a pane is just text on screen. There is no separate
+|35: 1 pardes builtins, and how to run each:
+|36: 2 SPC and its keys, a chord, a button, the
+|37: 3 topbar - or the name, executed anywhere.
+|38: 4
+|39: 5 SPC ? Help topbar
+|40: 6 SPC P ClipPasteBefore
+|41: 7 SPC R ClipReplace
+|42: 8 SPC Y ClipYankMain
+|43: 9 SPC a a PanelAscii
+|44: 10 SPC a c PanelCurtain
+|45: 11 SPC a d PanelDissolve
+|46: 12 SPC a e PanelEdges
+|47: 13 SPC a f PanelFall
+|48: 14 SPC a r PanelScramble
+|49: 15 SPC a s PanelSlide
+|50: 16 SPC a t PanelType
+|51: 17 SPC a v PanelVertical
+|52: 18 SPC a w PanelWave
+|53: 19 SPC a z PanelZoom
+|54: 20 SPC c d Delcol
+|55: 21 SPC c j Joincol topbar
+|56: 22 SPC c n Newcol topbar
+|57: 23 SPC d Del
+|58: 24 SPC f c Config
+|59: 25 SPC f f Find topbar
+|60: 26 SPC f g Grep topbar
+|61: 27 SPC f n New topbar
+|62: 28 SPC f s Save
+|63: 29 SPC h c Changelog topbar
+|64: 30 SPC h t Tutor topbar
+|65: 31 SPC j i Forward C-i
diff --git a/test/snapshots/chordcut.golden b/test/snapshots/chordcut.golden
index 4ac79085..49b3d7bb 100644
--- a/test/snapshots/chordcut.golden
+++ b/test/snapshots/chordcut.golden
@@ -18,266 +18,32 @@
| /tmp/pardes-snap/chordcut/cwd Save New Newtty Del Filter
| ls
| f.txt g.txt
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
== snap cut grid=120x30 cursor=7,3
-|New Newcol Joincol Find Grep Help Changelog Tutor Dump NextColor Debug Kill
-| /tmp/pardes-snap/chordcut/cwd/f.txt * Save New Newtty Del /tmp/pardes-snap/chordcut/cwd Save New Newtty Del Filter
-| 1 line 1 ls
-| 2 2 f.txt g.txt
-| 3 line 3
-| 4 line 4
-| 5 line 5
-| 6
-| /tmp/pardes-snap/chordcut/cwd Save New Newtty Del Filter
-| ls
-| f.txt g.txt
-|
-|
-|
-| f.txt
-|
-| /tmp/pardes-snap/chordcut/cwd Save New Newtty Del Filter
-| ls
-| f.txt g.txt
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
+|1: /tmp/pardes-snap/chordcut/cwd/f.txt * Save New Newtty Del /tmp/pardes-snap/chordcut/cwd Save New Newtty Del Filter
+|3: 2 2 f.txt g.txt
+|7: 6
+|8: /tmp/pardes-snap/chordcut/cwd Save New Newtty Del Filter
+|16: /tmp/pardes-snap/chordcut/cwd Save New Newtty Del Filter
== snap copied grid=120x30 cursor=10,4
-|New Newcol Joincol Find Grep Help Changelog Tutor Dump NextColor Debug Kill
-| /tmp/pardes-snap/chordcut/cwd/f.txt * Save New Newtty Del /tmp/pardes-snap/chordcut/cwd Save New Newtty Del Filter
-| 1 line 1 ls
-| 2 2 f.txt g.txt
-| 3 line 3
-| 4 line 4
-| 5 line 5
-| 6
-| /tmp/pardes-snap/chordcut/cwd Save New Newtty Del Filter
-| ls
-| f.txt g.txt
-|
-|
-|
-| f.txt
-|
-| /tmp/pardes-snap/chordcut/cwd Save New Newtty Del Filter
-| ls
-| f.txt g.txt
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
== snap pointpaste grid=120x30 cursor=16,5
-|New Newcol Joincol Find Grep Help Changelog Tutor Dump NextColor Debug Kill
-| /tmp/pardes-snap/chordcut/cwd/f.txt * Save New Newtty Del /tmp/pardes-snap/chordcut/cwd Save New Newtty Del Filter
-| 1 line 1 ls
-| 2 2 f.txt g.txt
-| 3 line 3
-| 4 line 4line
-| 5 line 5
-| 6
-| /tmp/pardes-snap/chordcut/cwd Save New Newtty Del Filter
-| ls
-| f.txt g.txt
-|
-|
-|
-| f.txt
-|
-| /tmp/pardes-snap/chordcut/cwd Save New Newtty Del Filter
-| ls
-| f.txt g.txt
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
+|5: 4 line 4line
== snap replaced grid=120x30 cursor=11,6
-|New Newcol Joincol Find Grep Help Changelog Tutor Dump NextColor Debug Kill
-| /tmp/pardes-snap/chordcut/cwd/f.txt * Save New Newtty Del /tmp/pardes-snap/chordcut/cwd Save New Newtty Del Filter
-| 1 line 1 ls
-| 2 2 f.txt g.txt
-| 3 line 3
-| 4 line 4line
-| 5 lline 5
-| 6
-| /tmp/pardes-snap/chordcut/cwd Save New Newtty Del Filter
-| ls
-| f.txt g.txt
-|
-|
-|
-| f.txt
-|
-| /tmp/pardes-snap/chordcut/cwd Save New Newtty Del Filter
-| ls
-| f.txt g.txt
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
+|6: 5 lline 5
== snap cancelexec grid=120x30 cursor=25,3
-|New Newcol Joincol Find Grep Help Changelog Tutor Dump NextColor Debug Kill
-| /tmp/pardes-snap/chordcut/cwd/f.txt * Save New Newtty Del /tmp/pardes-snap/chordcut/cwd Save New Newtty Del Filter
-| 1 line 1 ls
-| 2 2echo B''OO g.txt f.txt g.txt
-| 3 line 3
-| 4 line 4line
-| 5 lline 5
-| 6
-| /tmp/pardes-snap/chordcut/cwd Save New Newtty Del Filter
-| ls
-| f.txt g.txt
-|
-|
-|
-| f.txt
-|
-| /tmp/pardes-snap/chordcut/cwd Save New Newtty Del Filter
-| ls
-| f.txt g.txt
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
+|3: 2 2echo B''OO g.txt f.txt g.txt
== snap execafter grid=120x30 cursor=25,3
-|New Newcol Joincol Find Grep Help Changelog Tutor Dump NextColor Debug Kill
-| /tmp/pardes-snap/chordcut/cwd/f.txt * Save New Newtty Del /tmp/pardes-snap/chordcut/cwd Save New Newtty Del Filter
-| 1 line 1 ls
-| 2 2echo B''OO g.txt f.txt g.txt
-| 3 line 3
-| 4 line 4line
-| 5 lline 5
-| 6
-| /tmp/pardes-snap/chordcut/cwd Save New Newtty Del Filter
-| f.txt g.txt
-|
-|
-|
-| f.txt
-| BOO
-|
-| /tmp/pardes-snap/chordcut/cwd Save New Newtty Del Filter
-| ls
-| f.txt g.txt
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
+|9: f.txt g.txt
+|10:
+|13: f.txt
+|14: BOO
== snap cancellook grid=120x30 cursor=25,3
-|New Newcol Joincol Find Grep Help Changelog Tutor Dump NextColor Debug Kill
-| /tmp/pardes-snap/chordcut/cwd/f.txt * Save New Newtty Del /tmp/pardes-snap/chordcut/cwd Save New Newtty Del Filter
-| 1 line 1 ls
-| 2 2echo B''OO g.txt f.txt g.txt
-| 3 line 3
-| 4 line 4line
-| 5 lline 5
-| 6
-| /tmp/pardes-snap/chordcut/cwd Save New Newtty Del Filter
-| f.txt g.txt
-|
-|
-|
-| f.txt
-| BOO
-|
-| /tmp/pardes-snap/chordcut/cwd Save New Newtty Del Filter
-| ls
-| f.txt g.txt
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
== snap lookafter grid=120x30 cursor=7,5
-|New Newcol Joincol Find Grep Help Changelog Tutor Dump NextColor Debug Kill
-| /tmp/pardes-snap/chordcut/cwd/f.txt * Save New Newtty Del /tmp/pardes-snap/chordcut/cwd Save New Newtty Del Filter
-| 1 line 1 ls
-|╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌ f.txt g.txt
-| /tmp/pardes-snap/chordcut/cwd/g.txt Save New Newtty Del
-| 1 line 1
-| 2 line 2
-| 3
-| /tmp/pardes-snap/chordcut/cwd Save New Newtty Del Filter
-| f.txt g.txt
-|
-|
-|
-| f.txt
-| BOO
-|
-| /tmp/pardes-snap/chordcut/cwd Save New Newtty Del Filter
-| ls
-| f.txt g.txt
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-== style chordsel
+|3: ╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌ f.txt g.txt
+|4: /tmp/pardes-snap/chordcut/cwd/g.txt Save New Newtty Del
+|5: 1 line 1
+|6: 2 line 2
+|7: 3
+== style chordsel grid=120x30
|0: 0-74 #949494,#121212, 75-119 d,#121212,
|1: 0-1 #ffffff,#262626, 2-58 #949494,#121212, 59-59 d,#121212, 60-61 #ffffff,#262626, 62-117 #949494,#121212, 118-119 d,#121212,
|2: 0-0 d,#444444, 1-1 d,#080808, 2-6 #626262,#080808, 7-12 #bdbdbd,#080808, 13-59 d,#080808, 60-60 d,#444444, 61-61 d,#080808, 62-63 #bdbdbd,#080808, 64-119 d,#080808,
@@ -308,96 +74,25 @@
|27: 0-0 d,#444444, 1-59 d,#080808, 60-60 d,#444444, 61-119 d,#080808,
|28: 0-0 d,#444444, 1-59 d,#080808, 60-60 d,#444444, 61-119 d,#080808,
|29: 0-0 d,#444444, 1-59 d,#080808, 60-60 d,#444444, 61-119 d,#080808,
-== style clickdismiss
-|0: 0-74 #949494,#121212, 75-119 d,#121212,
-|1: 0-1 #ffffff,#262626, 2-58 #949494,#121212, 59-59 d,#121212, 60-61 #ffffff,#262626, 62-117 #949494,#121212, 118-119 d,#121212,
-|2: 0-0 d,#444444, 1-1 d,#080808, 2-6 #626262,#080808, 7-12 #bdbdbd,#080808, 13-59 d,#080808, 60-60 d,#444444, 61-61 d,#080808, 62-63 #bdbdbd,#080808, 64-119 d,#080808,
-|3: 0-0 d,#121212, 1-1 d,#080808, 2-6 #626262,#080808, 7-24 #bdbdbd,#080808, 25-59 d,#080808, 60-60 d,#444444, 61-61 d,#080808, 62-73 #bdbdbd,#080808, 74-119 d,#080808,
-|4: 0-1 #ffffff,#626262, 2-58 #949494,#121212, 59-59 d,#121212, 60-60 d,#444444, 61-119 d,#080808,
+== style clickdismiss grid=120x30
|5: 0-0 d,#444444, 1-1 d,#080808, 2-6 #626262,#080808, 7-12 #bdbdbd,#080808, 13-59 d,#080808, 60-60 d,#444444, 61-119 d,#080808,
|6: 0-0 d,#444444, 1-1 d,#080808, 2-6 #949494,#121212, 7-12 #bdbdbd,#080808, 13-59 d,#080808, 60-60 d,#444444, 61-119 d,#080808,
-|7: 0-0 d,#444444, 1-1 d,#080808, 2-6 #626262,#080808, 7-59 d,#080808, 60-60 d,#444444, 61-119 d,#080808,
-|8: 0-1 #ffffff,#262626, 2-58 #949494,#121212, 59-59 d,#121212, 60-60 d,#444444, 61-119 d,#080808,
-|9: 0-0 d,#444444, 1-1 d,#080808, 2-13 #bdbdbd,#080808, 14-59 d,#080808, 60-60 d,#444444, 61-119 d,#080808,
-|10: 0-0 d,#444444, 1-59 d,#080808, 60-60 d,#444444, 61-119 d,#080808,
-|11: 0-0 d,#444444, 1-59 d,#080808, 60-60 d,#444444, 61-119 d,#080808,
-|12: 0-0 d,#444444, 1-59 d,#080808, 60-60 d,#444444, 61-119 d,#080808,
-|13: 0-0 d,#444444, 1-1 d,#080808, 2-8 #bdbdbd,#080808, 9-59 d,#080808, 60-60 d,#444444, 61-119 d,#080808,
-|14: 0-0 d,#444444, 1-1 d,#080808, 2-4 #bdbdbd,#080808, 5-59 d,#080808, 60-60 d,#444444, 61-119 d,#080808,
-|15: 0-0 d,#121212, 1-59 d,#080808, 60-60 d,#444444, 61-119 d,#080808,
-|16: 0-1 #ffffff,#262626, 2-58 #949494,#121212, 59-59 d,#121212, 60-60 d,#444444, 61-119 d,#080808,
-|17: 0-0 d,#444444, 1-1 d,#080808, 2-3 #bdbdbd,#080808, 4-59 d,#080808, 60-60 d,#444444, 61-119 d,#080808,
-|18: 0-0 d,#444444, 1-1 d,#080808, 2-13 #bdbdbd,#080808, 14-59 d,#080808, 60-60 d,#444444, 61-119 d,#080808,
-|19: 0-0 d,#444444, 1-59 d,#080808, 60-60 d,#444444, 61-119 d,#080808,
-|20: 0-0 d,#444444, 1-59 d,#080808, 60-60 d,#444444, 61-119 d,#080808,
-|21: 0-0 d,#444444, 1-59 d,#080808, 60-60 d,#444444, 61-119 d,#080808,
-|22: 0-0 d,#444444, 1-59 d,#080808, 60-60 d,#444444, 61-119 d,#080808,
-|23: 0-0 d,#444444, 1-59 d,#080808, 60-60 d,#444444, 61-119 d,#080808,
-|24: 0-0 d,#444444, 1-59 d,#080808, 60-60 d,#444444, 61-119 d,#080808,
-|25: 0-0 d,#444444, 1-59 d,#080808, 60-60 d,#444444, 61-119 d,#080808,
-|26: 0-0 d,#444444, 1-59 d,#080808, 60-60 d,#444444, 61-119 d,#080808,
-|27: 0-0 d,#444444, 1-59 d,#080808, 60-60 d,#444444, 61-119 d,#080808,
-|28: 0-0 d,#444444, 1-59 d,#080808, 60-60 d,#444444, 61-119 d,#080808,
-|29: 0-0 d,#444444, 1-59 d,#080808, 60-60 d,#444444, 61-119 d,#080808,
== snap ttyprobe grid=120x30 cursor=42,15
-|New Newcol Joincol Find Grep Help Changelog Tutor Dump NextColor Debug Kill
-| /tmp/pardes-snap/chordcut/cwd/f.txt * Save New Newtty Del /tmp/pardes-snap/chordcut/cwd Save New Newtty Del Filter
-| 1 line 1 ls
-| 2 2echo B''OO g.txt f.txt g.txt
-| /tmp/pardes-snap/chordcut/cwd/g.txt * Save New Newtty Del
-| 1 line 1
-| 2 line 2
-| 3
-|$ /tmp/pardes-snap/chordcut/cwd Save New Newtty Del Filter
-| $
-| $
-| $ echo B''OO
-| BOO
-| $ stty -icanon -echo; printf '\x1b[?2004h\x1b[?1000h\x1b[?
-| 1006h'; cat -v
-| ^[[<0;38;3M^[[<0;38;3m^[[200~line^[[201~
-| /tmp/pardes-snap/chordcut/cwd Save New Newtty Del Filter
-| ls
-| f.txt g.txt
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
+|3: 2 2echo B''OO g.txt f.txt g.txt
+|4: /tmp/pardes-snap/chordcut/cwd/g.txt * Save New Newtty Del
+|8: $ /tmp/pardes-snap/chordcut/cwd Save New Newtty Del Filter
+|9: $
+|10: $
+|11: $ echo B''OO
+|12: BOO
+|13: $ stty -icanon -echo; printf '\x1b[?2004h\x1b[?1000h\x1b[?
+|14: 1006h'; cat -v
+|15: ^[[<0;38;3M^[[<0;38;3m^[[200~line^[[201~
== snap ttyprompt grid=120x30 cursor=8,15
-|New Newcol Joincol Find Grep Help Changelog Tutor Dump NextColor Debug Kill
-| /tmp/pardes-snap/chordcut/cwd/f.txt * Save New Newtty Del /tmp/pardes-snap/chordcut/cwd Save New Newtty Del Filter
-| 1 line 1 ls
-| 2 2echo B''OO g.txt f.txt g.txt
-| /tmp/pardes-snap/chordcut/cwd/g.txt * Save New Newtty Del
-| 1 line 1
-| 2 line 2
-| 3
-|$ /tmp/pardes-snap/chordcut/cwd Save New Newtty Del Filter
-| $ echo B''OO
-| BOO
-| $ stty -icanon -echo; printf '\x1b[?2004h\x1b[?1000h\x1b[?
-| 1006h'; cat -v
-| ^[[<0;38;3M^[[<0;38;3m^[[200~line^[[201~
-| $
-| $ line
-| /tmp/pardes-snap/chordcut/cwd Save New Newtty Del Filter
-| ls
-| f.txt g.txt
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
+|9: $ echo B''OO
+|10: BOO
+|11: $ stty -icanon -echo; printf '\x1b[?2004h\x1b[?1000h\x1b[?
+|12: 1006h'; cat -v
+|13: ^[[<0;38;3M^[[<0;38;3m^[[200~line^[[201~
+|14: $
+|15: $ line
diff --git a/test/snapshots/cmdword.golden b/test/snapshots/cmdword.golden
index de5ce6aa..4d3ad655 100644
--- a/test/snapshots/cmdword.golden
+++ b/test/snapshots/cmdword.golden
@@ -2,216 +2,22 @@
|New Newcol Joincol Find Grep Help Changelog Tutor Dump NextColor Debug Kill
| /tmp/pardes-snap/cmdword/cwd/cmds.txt Save New Newtty Del
| 1 @`echo ZZ''E` @`echo ZZ''L` Look p.txt @`Look .`
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
== snap atexec grid=120x30 cursor=7,2
-|New Newcol Joincol Find Grep Help Changelog Tutor Dump NextColor Debug Kill
-| /tmp/pardes-snap/cmdword/cwd/cmds.txt Save New Newtty Del
-| 1 @`echo ZZ''E` @`echo ZZ''L` Look p.txt @`Look .`
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-| /tmp/pardes-snap/cmdword/cwd Save New Newtty Del Filter
-| echo ZZ''E
-| ZZE
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
+|16: /tmp/pardes-snap/cmdword/cwd Save New Newtty Del Filter
+|17: echo ZZ''E
+|18: ZZE
== snap atlook grid=120x30 cursor=4,21
-|New Newcol Joincol Find Grep Help Changelog Tutor Dump NextColor Debug Kill
-| /tmp/pardes-snap/cmdword/cwd/cmds.txt Save New Newtty Del
-| 1 @`echo ZZ''E` @`echo ZZ''L` Look p.txt @`Look .`
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-| /tmp/pardes-snap/cmdword/cwd Save New Newtty Del Filter
-| echo ZZ''E
-| ZZE
-| echo ZZ''L
-| ZZL
-|
-|
-|
-|
-|
-|
-|
-|
-|
+|19: echo ZZ''L
+|20: ZZL
== snap lookword grid=120x30 cursor=7,10
-|New Newcol Joincol Find Grep Help Changelog Tutor Dump NextColor Debug Kill
-| /tmp/pardes-snap/cmdword/cwd/cmds.txt Save New Newtty Del
-| 1 @`echo ZZ''E` @`echo ZZ''L` Look p.txt @`Look .`
-|
-|
-|
-|
-|
-|
-| /tmp/pardes-snap/cmdword/cwd/p.txt Save New Newtty Del
-| 1 just text
-|
-|
-|
-|
-|
-| /tmp/pardes-snap/cmdword/cwd Save New Newtty Del Filter
-| echo ZZ''E
-| ZZE
-| echo ZZ''L
-| ZZL
-|
-|
-|
-|
-|
-|
-|
-|
-|
+|9: /tmp/pardes-snap/cmdword/cwd/p.txt Save New Newtty Del
+|10: 1 just text
== snap nested grid=120x30 cursor=4,23
-|New Newcol Joincol Find Grep Help Changelog Tutor Dump NextColor Debug Kill
-| /tmp/pardes-snap/cmdword/cwd/cmds.txt Save New Newtty Del
-| 1 @`echo ZZ''E` @`echo ZZ''L` Look p.txt @`Look .`
-|
-|
-|
-|
-|
-|
-| /tmp/pardes-snap/cmdword/cwd/p.txt Save New Newtty Del
-| 1 just text
-|
-|
-|
-|
-|
-| /tmp/pardes-snap/cmdword/cwd Save New Newtty Del Filter
-| echo ZZ''E
-| ZZE
-| echo ZZ''L
-| ZZL
-| ls
-| cmds.txt p.txt zzmark.txt
-|
-|
-|
-|
-|
-|
-|
+|21: ls
+|22: cmds.txt p.txt zzmark.txt
== snap execword grid=120x30 cursor=104,16
-|New Newcol Joincol Find Grep Help Changelog Tutor Dump NextColor Debug Kill
-| /tmp/pardes-snap/cmdword/cwd/cmds.txt Save New Newtty Del
-| 1 @`echo ZZ''E` @`echo ZZ''L` Look p.txt @`Look .`
-|
-|
-|
-|
-|
-|
-| /tmp/pardes-snap/cmdword/cwd/p.txt Save New Newtty Del
-| 1 just text
-|
-|
-|
-|
-|
-| /tmp/pardes-snap/cmdword/cwd Save New Newtty Del Filter Exec
-| echo ZZ''E
-| ZZE
-| echo ZZ''L
-| ZZL
-| ls
-| cmds.txt p.txt zzmark.txt
-|
-|
-|
-|
-|
-|
-|
+|16: /tmp/pardes-snap/cmdword/cwd Save New Newtty Del Filter Exec
== snap tagcmd grid=120x30 cursor=118,16
-|New Newcol Joincol Find Grep Help Changelog Tutor Dump NextColor Debug Kill
-| /tmp/pardes-snap/cmdword/cwd/cmds.txt Save New Newtty Del
-| 1 @`echo ZZ''E` @`echo ZZ''L` Look p.txt @`Look .`
-|
-|
-|
-|
-|
-|
-| /tmp/pardes-snap/cmdword/cwd/p.txt Save New Newtty Del
-| 1 just text
-|
-|
-|
-|
-|
-| /tmp/pardes-snap/cmdword/cwd Save New Newtty Del Filter Exec @`echo ZZ''T`
-| echo ZZ''E
-| ZZE
-| echo ZZ''L
-| ZZL
-| ls
-| cmds.txt p.txt zzmark.txt
-| echo ZZ''T
-| ZZT
-|
-|
-|
-|
-|
+|16: /tmp/pardes-snap/cmdword/cwd Save New Newtty Del Filter Exec @`echo ZZ''T`
+|23: echo ZZ''T
+|24: ZZT
diff --git a/test/snapshots/cornerdrag-left.golden b/test/snapshots/cornerdrag-left.golden
index 37b990a3..2858dcaa 100644
--- a/test/snapshots/cornerdrag-left.golden
+++ b/test/snapshots/cornerdrag-left.golden
@@ -18,138 +18,96 @@
| /tmp/pardes-snap/cornerdrag-left/cwd Save New Ne
| ls
| w.txt
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
== snap hover-corner grid=100x30 cursor=54,8
-|New Newcol Joincol Find Grep Help Changelog Tutor Dump NextColor Debug Kill
-| /tmp/pardes-snap/cornerdrag-left/cwd Save New N╎ /tmp/pardes-snap/cornerdrag-left/cwd Save New Ne
-| ls ╎ ls
-| w.txt ╎ w.txt
-| ╎╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌
-| ╎ /tmp/pardes-snap/cornerdrag-left/cwd Save New Ne
-| ╎ ls
-| ╎ w.txt
-| ╎
-| ╎
-| ╎
-| ╎
-| ╎
-| ╎
-| ╎
-| ╎
-| /tmp/pardes-snap/cornerdrag-left/cwd Save New N╎
-| ls ╎
-| w.txt ╎
-| ╎
-| ╎
-| ╎
-| ╎
-| ╎
-| ╎
-| ╎
-| ╎
-| ╎
-| ╎
-| ╎
+|1: /tmp/pardes-snap/cornerdrag-left/cwd Save New N╎ /tmp/pardes-snap/cornerdrag-left/cwd Save New Ne
+|2: ls ╎ ls
+|3: w.txt ╎ w.txt
+|4: ╎╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌
+|5: ╎ /tmp/pardes-snap/cornerdrag-left/cwd Save New Ne
+|6: ╎ ls
+|7: ╎ w.txt
+|8: ╎
+|9: ╎
+|10: ╎
+|11: ╎
+|12: ╎
+|13: ╎
+|14: ╎
+|15: ╎
+|16: /tmp/pardes-snap/cornerdrag-left/cwd Save New N╎
+|17: ls ╎
+|18: w.txt ╎
+|19: ╎
+|20: ╎
+|21: ╎
+|22: ╎
+|23: ╎
+|24: ╎
+|25: ╎
+|26: ╎
+|27: ╎
+|28: ╎
+|29: ╎
== snap hover-left-corner grid=100x30 cursor=54,8
-|New Newcol Joincol Find Grep Help Changelog Tutor Dump NextColor Debug Kill
-| /tmp/pardes-snap/cornerdrag-left/cwd Save New N╎ /tmp/pardes-snap/cornerdrag-left/cwd Save New Ne
-| ls ╎ ls
-| w.txt ╎ w.txt
-| ╎
-| ╎ /tmp/pardes-snap/cornerdrag-left/cwd Save New Ne
-| ╎ ls
-| ╎ w.txt
-| ╎
-| ╎
-| ╎
-| ╎
-| ╎
-| ╎
-| ╎
-|╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌
-| /tmp/pardes-snap/cornerdrag-left/cwd Save New N╎
-| ls ╎
-| w.txt ╎
-| ╎
-| ╎
-| ╎
-| ╎
-| ╎
-| ╎
-| ╎
-| ╎
-| ╎
-| ╎
-| ╎
+|4: ╎
+|15: ╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌
== snap corner-drag grid=100x30 cursor=54,8
-|New Newcol Joincol Find Grep Help Changelog Tutor Dump NextColor Debug Kill
-| /tmp/pardes-snap/cornerdrag╎left/cwd Save New Ne /tmp/pardes-snap/cornerdrag-left/cwd Save New Ne
-| ls ╎ ls
-| w.txt ╎ w.txt
-| ╎
-| ╎ /tmp/pardes-snap/cornerdrag-left/cwd Save New Ne
-| ╎ ls
-| ╎ w.txt
-| ╎
-| ╎
-| ╎
-| ╎╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌
-| ╎
-| ╎
-| ╎
-| ╎
-| /tmp/pardes-snap/cornerdrag╎left/cwd Save New Ne
-| ls ╎
-| w.txt ╎
-| ╎
-| ╎
-| ╎
-| ╎
-| ╎
-| ╎
-| ╎
-| ╎
-| ╎
-| ╎
-| ╎
+|1: /tmp/pardes-snap/cornerdrag╎left/cwd Save New Ne /tmp/pardes-snap/cornerdrag-left/cwd Save New Ne
+|2: ls ╎ ls
+|3: w.txt ╎ w.txt
+|4: ╎
+|5: ╎ /tmp/pardes-snap/cornerdrag-left/cwd Save New Ne
+|6: ╎ ls
+|7: ╎ w.txt
+|8: ╎
+|9: ╎
+|10: ╎
+|11: ╎╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌
+|12: ╎
+|13: ╎
+|14: ╎
+|15: ╎
+|16: /tmp/pardes-snap/cornerdrag╎left/cwd Save New Ne
+|17: ls ╎
+|18: w.txt ╎
+|19: ╎
+|20: ╎
+|21: ╎
+|22: ╎
+|23: ╎
+|24: ╎
+|25: ╎
+|26: ╎
+|27: ╎
+|28: ╎
+|29: ╎
== snap corner-done grid=100x30 cursor=34,15
-|New Newcol Joincol Find Grep Help Changelog Tutor Dump NextColor Debug Kill
-| /tmp/pardes-snap/cornerdrag- /tmp/pardes-snap/cornerdrag-left/cwd Save New Newtty Del Filter
-| ls ls
-| w.txt w.txt
-|
-|
-|
-|
-|
-|
-|
-|
-| /tmp/pardes-snap/cornerdrag-left/cwd Save New Newtty Del Filter
-| ls
-| w.txt
-|
-| /tmp/pardes-snap/cornerdrag-
-| ls
-| w.txt
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
+|1: /tmp/pardes-snap/cornerdrag- /tmp/pardes-snap/cornerdrag-left/cwd Save New Newtty Del Filter
+|2: ls ls
+|3: w.txt w.txt
+|4:
+|5:
+|6:
+|7:
+|8:
+|9:
+|10:
+|11:
+|12: /tmp/pardes-snap/cornerdrag-left/cwd Save New Newtty Del Filter
+|13: ls
+|14: w.txt
+|15:
+|16: /tmp/pardes-snap/cornerdrag-
+|17: ls
+|18: w.txt
+|19:
+|20:
+|21:
+|22:
+|23:
+|24:
+|25:
+|26:
+|27:
+|28:
+|29:
diff --git a/test/snapshots/cornerdrag.golden b/test/snapshots/cornerdrag.golden
index b924921d..cc709bd5 100644
--- a/test/snapshots/cornerdrag.golden
+++ b/test/snapshots/cornerdrag.golden
@@ -30,219 +30,212 @@
| ╎
| ╎
== snap edge-drag grid=100x30 cursor=4,4
-|New Newcol Joincol Find Grep Help Changelog Tutor Dump NextColor Debug Kill
-| /tmp/pardes-snap/cornerdrag╎cwd Save New Newtty /tmp/pardes-snap/cornerdrag/cwd Save New Newtty
-| ls ╎ ls
-| w.txt ╎ w.txt
-| ╎
-| ╎
-| ╎
-| ╎
-| ╎
-| ╎
-| ╎
-| ╎
-| ╎
-| ╎
-| ╎
-| ╎
-| /tmp/pardes-snap/cornerdrag╎cwd Save New Newtty
-| ls ╎
-| w.txt ╎
-| ╎
-| ╎
-| ╎
-| ╎
-| ╎
-| ╎
-| ╎
-| ╎
-| ╎
-| ╎
-| ╎
+|1: /tmp/pardes-snap/cornerdrag╎cwd Save New Newtty /tmp/pardes-snap/cornerdrag/cwd Save New Newtty
+|2: ls ╎ ls
+|3: w.txt ╎ w.txt
+|4: ╎
+|5: ╎
+|6: ╎
+|7: ╎
+|8: ╎
+|9: ╎
+|10: ╎
+|11: ╎
+|12: ╎
+|13: ╎
+|14: ╎
+|15: ╎
+|16: /tmp/pardes-snap/cornerdrag╎cwd Save New Newtty
+|17: ls ╎
+|18: w.txt ╎
+|19: ╎
+|20: ╎
+|21: ╎
+|22: ╎
+|23: ╎
+|24: ╎
+|25: ╎
+|26: ╎
+|27: ╎
+|28: ╎
+|29: ╎
== snap edge-done grid=100x30 cursor=4,4
-|New Newcol Joincol Find Grep Help Changelog Tutor Dump NextColor Debug Kill
-| /tmp/pardes-snap/cornerdrag/ /tmp/pardes-snap/cornerdrag/cwd Save New Newtty Del Filter
-| ls ls
-| w.txt w.txt
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-| /tmp/pardes-snap/cornerdrag/
-| ls
-| w.txt
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
+|1: /tmp/pardes-snap/cornerdrag/ /tmp/pardes-snap/cornerdrag/cwd Save New Newtty Del Filter
+|2: ls ls
+|3: w.txt w.txt
+|4:
+|5:
+|6:
+|7:
+|8:
+|9:
+|10:
+|11:
+|12:
+|13:
+|14:
+|15:
+|16: /tmp/pardes-snap/cornerdrag/
+|17: ls
+|18: w.txt
+|19:
+|20:
+|21:
+|22:
+|23:
+|24:
+|25:
+|26:
+|27:
+|28:
+|29:
== snap corner-drag grid=100x30 cursor=4,4
-|New Newcol Joincol Find Grep Help Changelog Tutor Dump NextColor Debug Kill
-| /tmp/pardes-snap/cornerdrag/ /tmp/pardes-snap/cornerdrag╎cwd Save New Newtty Del Filter
-| ls ls ╎
-| w.txt w.txt ╎
-| ╎
-| ╎
-| ╎
-|╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌
-| ╎
-| ╎
-| ╎
-| ╎
-| ╎
-| ╎
-| ╎
-| ╎
-| /tmp/pardes-snap/cornerdrag/ ╎
-| ls ╎
-| w.txt ╎
-| ╎
-| ╎
-| ╎
-| ╎
-| ╎
-| ╎
-| ╎
-| ╎
-| ╎
-| ╎
-| ╎
+|1: /tmp/pardes-snap/cornerdrag/ /tmp/pardes-snap/cornerdrag╎cwd Save New Newtty Del Filter
+|2: ls ls ╎
+|3: w.txt w.txt ╎
+|4: ╎
+|5: ╎
+|6: ╎
+|7: ╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌
+|8: ╎
+|9: ╎
+|10: ╎
+|11: ╎
+|12: ╎
+|13: ╎
+|14: ╎
+|15: ╎
+|16: /tmp/pardes-snap/cornerdrag/ ╎
+|17: ls ╎
+|18: w.txt ╎
+|19: ╎
+|20: ╎
+|21: ╎
+|22: ╎
+|23: ╎
+|24: ╎
+|25: ╎
+|26: ╎
+|27: ╎
+|28: ╎
+|29: ╎
== snap corner-done grid=100x30 cursor=4,4
-|New Newcol Joincol Find Grep Help Changelog Tutor Dump NextColor Debug Kill
-| /tmp/pardes-snap/cornerdrag/cwd Save New Newtty Del Filter /tmp/pardes-snap/cornerdrag/cwd Save N
-| ls ls
-| w.txt w.txt
-|
-|
-|
-|
-| /tmp/pardes-snap/cornerdrag/cwd Save New Newtty Del Filter
-| ls
-| w.txt
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
+|1: /tmp/pardes-snap/cornerdrag/cwd Save New Newtty Del Filter /tmp/pardes-snap/cornerdrag/cwd Save N
+|2: ls ls
+|3: w.txt w.txt
+|4:
+|5:
+|6:
+|7:
+|8: /tmp/pardes-snap/cornerdrag/cwd Save New Newtty Del Filter
+|9: ls
+|10: w.txt
+|11:
+|12:
+|13:
+|14:
+|15:
+|16:
+|17:
+|18:
+|19:
+|20:
+|21:
+|22:
+|23:
+|24:
+|25:
+|26:
+|27:
+|28:
+|29:
== snap clamp-x grid=100x30 cursor=4,4
-|New Newcol Joincol Find Grep Help Changelog Tutor Dump NextColor Debug Kill
-| /tmp/pardes-snap/cornerdrag/cwd Save New Newtty Del Filter /tmp/pardes-snap/cornerdrag/╎wd Save N
-| ls ls ╎
-| w.txt w.txt ╎
-| ╎
-| ╎
-| ╎
-| ╎
-| /tmp/pardes-snap/cornerdrag/cwd Save New Newtty Del Filter ╎
-| ls ╎
-| w.txt ╎
-| ╎
-| ╎
-| ╎
-| ╎
-| ╎
-| ╎
-| ╎
-| ╎
-|╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌
-| ╎
-| ╎
-| ╎
-| ╎
-| ╎
-| ╎
-| ╎
-| ╎
-| ╎
-| ╎
+|1: /tmp/pardes-snap/cornerdrag/cwd Save New Newtty Del Filter /tmp/pardes-snap/cornerdrag/╎wd Save N
+|2: ls ls ╎
+|3: w.txt w.txt ╎
+|4: ╎
+|5: ╎
+|6: ╎
+|7: ╎
+|8: /tmp/pardes-snap/cornerdrag/cwd Save New Newtty Del Filter ╎
+|9: ls ╎
+|10: w.txt ╎
+|11: ╎
+|12: ╎
+|13: ╎
+|14: ╎
+|15: ╎
+|16: ╎
+|17: ╎
+|18: ╎
+|19: ╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌
+|20: ╎
+|21: ╎
+|22: ╎
+|23: ╎
+|24: ╎
+|25: ╎
+|26: ╎
+|27: ╎
+|28: ╎
+|29: ╎
== snap clamp-y grid=100x30 cursor=4,4
-|New Newcol Joincol Find Grep Help Changelog Tutor Dump NextColor Debug Kill
-| /tmp/pardes-snap/cornerdrag/cwd Save New Newtty Del Filte╎ /tmp/pardes-snap/cornerdrag/cwd Save N
-| ls ╎ ls
-| w.txt ╎ w.txt
-| ╎
-| ╎
-| ╎
-| ╎
-| /tmp/pardes-snap/cornerdrag/cwd Save New Newtty Del Filte╎
-| ls ╎
-| w.txt ╎
-| ╎
-| ╎
-| ╎
-| ╎
-| ╎
-| ╎
-| ╎
-| ╎
-| ╎
-| ╎
-| ╎
-| ╎
-| ╎
-| ╎
-| ╎
-| ╎
-| ╎
-|╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌
-| ╎
+|1: /tmp/pardes-snap/cornerdrag/cwd Save New Newtty Del Filte╎ /tmp/pardes-snap/cornerdrag/cwd Save N
+|2: ls ╎ ls
+|3: w.txt ╎ w.txt
+|4: ╎
+|5: ╎
+|6: ╎
+|7: ╎
+|8: /tmp/pardes-snap/cornerdrag/cwd Save New Newtty Del Filte╎
+|9: ls ╎
+|10: w.txt ╎
+|11: ╎
+|12: ╎
+|13: ╎
+|14: ╎
+|15: ╎
+|16: ╎
+|17: ╎
+|18: ╎
+|19: ╎
+|20: ╎
+|21: ╎
+|22: ╎
+|23: ╎
+|24: ╎
+|25: ╎
+|26: ╎
+|27: ╎
+|28: ╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌
+|29: ╎
== snap clamp-done grid=100x30 cursor=4,4
-|New Newcol Joincol Find Grep Help Changelog Tutor Dump NextColor Debug Kill
-| /tmp/pardes-snap/cornerdrag/cwd Save New Newtty Del Filter /tmp/pardes-snap/cornerdrag/cwd Save N
-| ls ls
-| w.txt w.txt
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-| /tmp/pardes-snap/cornerdrag/cwd Save New Newtty Del Filter
+|1: /tmp/pardes-snap/cornerdrag/cwd Save New Newtty Del Filter /tmp/pardes-snap/cornerdrag/cwd Save N
+|2: ls ls
+|3: w.txt w.txt
+|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: /tmp/pardes-snap/cornerdrag/cwd Save New Newtty Del Filter
diff --git a/test/snapshots/cursorline.golden b/test/snapshots/cursorline.golden
index 7fbdb70c..1d59d727 100644
--- a/test/snapshots/cursorline.golden
+++ b/test/snapshots/cursorline.golden
@@ -18,18 +18,7 @@
| /tmp/pardes-snap/cursorline/cwd Save New Newtty Del Filter
| ls
| cur.txt
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-== style top
+== style top grid=150x30
|0: 0-74 #949494,#121212, 75-149 d,#121212,
|1: 0-1 #ffffff,#626262, 2-60 #949494,#121212, 61-74 d,#121212, 75-76 #ffffff,#262626, 77-134 #949494,#121212, 135-149 d,#121212,
|2: 0-0 d,#444444, 1-1 d,#080808, 2-6 #949494,#121212, 7-12 #bdbdbd,#080808, 13-74 d,#080808, 75-75 d,#444444, 76-76 d,#080808, 77-78 #bdbdbd,#080808, 79-149 d,#080808,
@@ -61,64 +50,6 @@
|28: 0-0 d,#444444, 1-74 d,#080808, 75-75 d,#444444, 76-149 d,#080808,
|29: 0-0 d,#444444, 1-74 d,#080808, 75-75 d,#444444, 76-149 d,#080808,
== snap down3 grid=150x30 cursor=7,5
-|New Newcol Joincol Find Grep Help Changelog Tutor Dump NextColor Debug Kill
-| /tmp/pardes-snap/cursorline/cwd/cur.txt Save New Newtty Del /tmp/pardes-snap/cursorline/cwd Save New Newtty Del Filter
-| 1 line 1 ls
-| 2 line 2 cur.txt
-| 3 line 3
-| 4 line 4
-| 5 line 5
-|╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌
-| /tmp/pardes-snap/cursorline/cwd Save New Newtty Del Filter
-| ls
-| cur.txt
-|
-|
-|
-| cur.txt
-|
-| /tmp/pardes-snap/cursorline/cwd Save New Newtty Del Filter
-| ls
-| cur.txt
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-== style down3
-|0: 0-74 #949494,#121212, 75-149 d,#121212,
-|1: 0-1 #ffffff,#626262, 2-60 #949494,#121212, 61-74 d,#121212, 75-76 #ffffff,#262626, 77-134 #949494,#121212, 135-149 d,#121212,
+== style down3 grid=150x30
|2: 0-0 d,#444444, 1-1 d,#080808, 2-6 #626262,#080808, 7-12 #bdbdbd,#080808, 13-74 d,#080808, 75-75 d,#444444, 76-76 d,#080808, 77-78 #bdbdbd,#080808, 79-149 d,#080808,
-|3: 0-0 d,#121212, 1-1 d,#080808, 2-6 #626262,#080808, 7-12 #bdbdbd,#080808, 13-74 d,#080808, 75-75 d,#444444, 76-76 d,#080808, 77-83 #bdbdbd,#080808, 84-149 d,#080808,
-|4: 0-0 d,#121212, 1-1 d,#080808, 2-6 #626262,#080808, 7-12 #bdbdbd,#080808, 13-74 d,#080808, 75-75 d,#444444, 76-149 d,#080808,
|5: 0-0 d,#121212, 1-1 d,#080808, 2-6 #949494,#121212, 7-12 #bdbdbd,#080808, 13-74 d,#080808, 75-75 d,#444444, 76-149 d,#080808,
-|6: 0-0 d,#121212, 1-1 d,#080808, 2-6 #626262,#080808, 7-12 #bdbdbd,#080808, 13-74 d,#080808, 75-75 d,#444444, 76-149 d,#080808,
-|7: 0-0 d,#121212, 1-1 d,#080808, 2-6 #626262,#080808, 7-12 #bdbdbd,#080808, 13-74 d,#080808, 75-75 d,#444444, 76-149 d,#080808,
-|8: 0-1 #ffffff,#262626, 2-60 #949494,#121212, 61-74 d,#121212, 75-75 d,#444444, 76-149 d,#080808,
-|9: 0-0 d,#444444, 1-1 d,#080808, 2-3 #bdbdbd,#080808, 4-74 d,#080808, 75-75 d,#444444, 76-149 d,#080808,
-|10: 0-0 d,#444444, 1-1 d,#080808, 2-8 #bdbdbd,#080808, 9-74 d,#080808, 75-75 d,#444444, 76-149 d,#080808,
-|11: 0-0 d,#444444, 1-74 d,#080808, 75-75 d,#444444, 76-149 d,#080808,
-|12: 0-0 d,#444444, 1-74 d,#080808, 75-75 d,#444444, 76-149 d,#080808,
-|13: 0-0 d,#444444, 1-74 d,#080808, 75-75 d,#444444, 76-149 d,#080808,
-|14: 0-0 d,#444444, 1-1 d,#080808, 2-10 #bdbdbd,#080808, 11-74 d,#080808, 75-75 d,#444444, 76-149 d,#080808,
-|15: 0-0 d,#444444, 1-74 d,#080808, 75-75 d,#444444, 76-149 d,#080808,
-|16: 0-1 #ffffff,#262626, 2-60 #949494,#121212, 61-74 d,#121212, 75-75 d,#444444, 76-149 d,#080808,
-|17: 0-0 d,#444444, 1-1 d,#080808, 2-3 #bdbdbd,#080808, 4-74 d,#080808, 75-75 d,#444444, 76-149 d,#080808,
-|18: 0-0 d,#444444, 1-1 d,#080808, 2-8 #bdbdbd,#080808, 9-74 d,#080808, 75-75 d,#444444, 76-149 d,#080808,
-|19: 0-0 d,#444444, 1-74 d,#080808, 75-75 d,#444444, 76-149 d,#080808,
-|20: 0-0 d,#444444, 1-74 d,#080808, 75-75 d,#444444, 76-149 d,#080808,
-|21: 0-0 d,#444444, 1-74 d,#080808, 75-75 d,#444444, 76-149 d,#080808,
-|22: 0-0 d,#444444, 1-74 d,#080808, 75-75 d,#444444, 76-149 d,#080808,
-|23: 0-0 d,#444444, 1-74 d,#080808, 75-75 d,#444444, 76-149 d,#080808,
-|24: 0-0 d,#444444, 1-74 d,#080808, 75-75 d,#444444, 76-149 d,#080808,
-|25: 0-0 d,#444444, 1-74 d,#080808, 75-75 d,#444444, 76-149 d,#080808,
-|26: 0-0 d,#444444, 1-74 d,#080808, 75-75 d,#444444, 76-149 d,#080808,
-|27: 0-0 d,#444444, 1-74 d,#080808, 75-75 d,#444444, 76-149 d,#080808,
-|28: 0-0 d,#444444, 1-74 d,#080808, 75-75 d,#444444, 76-149 d,#080808,
-|29: 0-0 d,#444444, 1-74 d,#080808, 75-75 d,#444444, 76-149 d,#080808,
diff --git a/test/snapshots/doccol.golden b/test/snapshots/doccol.golden
index 623adee9..0f9b5c7e 100644
--- a/test/snapshots/doccol.golden
+++ b/test/snapshots/doccol.golden
@@ -3,153 +3,18 @@
| /tmp/pardes-snap/doccol/cwd/a.txt Save New Newtt /tmp/pardes-snap/doccol/cwd Save New Newtty Del
| 1 AAA ls
| a.txt b.txt c.txt
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
== snap two-docs grid=100x30 cursor=7,17
-|New Newcol Joincol Find Grep Help Changelog Tutor Dump NextColor Debug Kill
-| /tmp/pardes-snap/doccol/cwd/a.txt Save New Newtt /tmp/pardes-snap/doccol/cwd Save New Newtty Del
-| 1 AAA ls
-| a.txt b.txt c.txt
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-| /tmp/pardes-snap/doccol/cwd/b.txt Save New Newtt
-| 1 BBB
-| 2 B-TWO
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
+|16: /tmp/pardes-snap/doccol/cwd/b.txt Save New Newtt
+|17: 1 BBB
+|18: 2 B-TWO
== snap moved grid=100x30 cursor=57,20
-|New Newcol Joincol Find Grep Help Changelog Tutor Dump NextColor Debug Kill
-| /tmp/pardes-snap/doccol/cwd/a.txt Save New Newtt /tmp/pardes-snap/doccol/cwd Save New Newtty Del
-| 1 AAA ls
-| a.txt b.txt c.txt
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-| /tmp/pardes-snap/doccol/cwd/b.txt Save New Newtt
-| 1 BBB
-| 2 B-TWO
-|
-|
-|
-|
-|
-|
-|
-|
+|16:
+|17:
+|18:
+|19: /tmp/pardes-snap/doccol/cwd/b.txt Save New Newtt
+|20: 1 BBB
+|21: 2 B-TWO
== snap worked grid=100x30 cursor=59,21
-|New Newcol Joincol Find Grep Help Changelog Tutor Dump NextColor Debug Kill
-| /tmp/pardes-snap/doccol/cwd/a.txt Save New Newtt /tmp/pardes-snap/doccol/cwd Save New Newtty Del
-| 1 AAA ls
-| a.txt b.txt c.txt
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-| /tmp/pardes-snap/doccol/cwd/b.txt Save New Newtt
-| 1 BBB
-| 2 B-TWO
-|
-|
-|
-|
-|
-|
-|
-|
== snap third grid=100x30 cursor=57,26
-|New Newcol Joincol Find Grep Help Changelog Tutor Dump NextColor Debug Kill
-| /tmp/pardes-snap/doccol/cwd/a.txt Save New Newtt /tmp/pardes-snap/doccol/cwd Save New Newtty Del
-| 1 AAA ls
-| a.txt b.txt c.txt
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-| /tmp/pardes-snap/doccol/cwd/b.txt Save New Newtt
-| 1 BBB
-| 2 B-TWO
-|
-|
-|
-| /tmp/pardes-snap/doccol/cwd/c.txt Save New Newtt
-| 1 CCC
-|
-|
-|
+|25: /tmp/pardes-snap/doccol/cwd/c.txt Save New Newtt
+|26: 1 CCC
diff --git a/test/snapshots/dump.snap b/test/snapshots/dump.snap
index b231bce8..02803525 100644
--- a/test/snapshots/dump.snap
+++ b/test/snapshots/dump.snap
@@ -13,7 +13,7 @@ text typed-marker
key esc
settle 100
stable 400 5000
-press middle 52 1
-release middle 52 1
+press middle @Dump 1
+release middle @Dump 1
stable 600 8000
snapfile dump $DUMP
diff --git a/test/snapshots/edit.golden b/test/snapshots/edit.golden
index e5895be9..9295ccb7 100644
--- a/test/snapshots/edit.golden
+++ b/test/snapshots/edit.golden
@@ -18,18 +18,7 @@
| /tmp/pardes-snap/edit/cwd Save New Newtty Del Fi
| ls
| e.txt
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-== style inserted
+== style inserted grid=100x30
|0: 0-74 #949494,#121212, 75-99 d,#121212,
|1: 0-1 #ffffff,#626262, 2-49 #949494,#121212, 50-51 #ffffff,#262626, 52-99 #949494,#121212,
|2: 0-0 d,#444444, 1-1 d,#080808, 2-3 #bdbdbd,#080808, 4-49 d,#080808, 50-50 d,#444444, 51-51 d,#080808, 52-53 #bdbdbd,#080808, 54-99 d,#080808,
diff --git a/test/snapshots/exec-bigdrag.golden b/test/snapshots/exec-bigdrag.golden
index 76f2e76b..48ea1a6a 100644
--- a/test/snapshots/exec-bigdrag.golden
+++ b/test/snapshots/exec-bigdrag.golden
@@ -58,4 +58,3 @@
| bash: line: command not found
| echo alive-o''k
| alive-ok
-|
diff --git a/test/snapshots/exec.golden b/test/snapshots/exec.golden
index 69737f47..610b5449 100644
--- a/test/snapshots/exec.golden
+++ b/test/snapshots/exec.golden
@@ -18,107 +18,17 @@
| /tmp/pardes-snap/exec/cwd Save New Newtty Del Fi
| ls
| e.txt
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
== snap kept grid=100x30 cursor=6,2
-|New Newcol Joincol Find Grep Help Changelog Tutor Dump NextColor Debug Kill
-| /tmp/pardes-snap/exec/cwd Save New Newtty Del Fi /tmp/pardes-snap/exec/cwd Save New Newtty Del Fi
-| ZZARG ls
-| ./c.sh e.txt
-|
-|
-|
-| echo MID''OK
-|
-|
-|
-|
-|
-|
-|
-|
-| /tmp/pardes-snap/exec/cwd Save New Newtty Del Fi
-| ls
-| e.txt
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
+|2: ZZARG ls
+|3: ./c.sh e.txt
+|8:
== snap chord grid=100x30 cursor=6,2
-|New Newcol Joincol Find Grep Help Changelog Tutor Dump NextColor Debug Kill
-| /tmp/pardes-snap/exec/cwd Save New Newtty Del Fi /tmp/pardes-snap/exec/cwd Save New Newtty Del Fi
-| ZZARG ls
-| ./c.sh e.txt
-|
-|
-|
-| echo MID''OK
-| CHORDARG:ZZARG
-|
-|
-|
-|
-|
-|
-|
-| /tmp/pardes-snap/exec/cwd Save New Newtty Del Fi
-| ls
-| e.txt
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-== snap deleted grid=100x30 cursor=4,13
-|New Newcol Joincol Find Grep Help Changelog Tutor Dump NextColor Debug Kill
-| /tmp/pardes-snap/exec/cwd Save New Newtty Del Fi /tmp/pardes-snap/exec/cwd Save New Newtty Del Fi
-| ZZARG ls
-| ./c.sh e.txt
-|
-|
-|
-| echo MID''OK
-| CHORDARG:ZZARG
-|
-|$ /tmp/pardes-snap/exec/cwd Save New Newtty Del Fi
-| $ ls
-| c.sh e.txt
-| $
-|
-|
-| /tmp/pardes-snap/exec/cwd Save New Newtty Del Fi
-| ls
-| e.txt
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
+|8: CHORDARG:ZZARG
+== snap deleted grid=100x30 cursor=4,4
+|2: ls ls
+|3: e.txt e.txt
+|7:
+|8:
+|16:
+|17:
+|18:
diff --git a/test/snapshots/exec.snap b/test/snapshots/exec.snap
index 8ec266c4..7baae645 100644
--- a/test/snapshots/exec.snap
+++ b/test/snapshots/exec.snap
@@ -39,8 +39,9 @@ send \x1b[<1;4;4M\x1b[<0;4;4M\x1b[<1;4;4m
wait 10000 CHORDARG:ZZARG
stable 700 10000
snap chord
-# middle-click Del in this pane's tag (after cwd prefix and Save)
-press middle 38 2
-release middle 38 2
+# middle-click Del in THIS pane's tag: row 2 carries both panes' tags, so the
+# occurrence is spelled out rather than left to the leftmost-match default
+press middle @Del#1 2
+release middle @Del#1 2
stable 700 10000
snap deleted
diff --git a/test/snapshots/fileedit.golden b/test/snapshots/fileedit.golden
index b7133d83..5976de1d 100644
--- a/test/snapshots/fileedit.golden
+++ b/test/snapshots/fileedit.golden
@@ -18,79 +18,18 @@
| /tmp/pardes-snap/fileedit/cwd Save New Newtty Del Filter
| ls
| f.txt
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
== snap deleted grid=150x30 cursor=7,3
-|New Newcol Joincol Find Grep Help Changelog Tutor Dump NextColor Debug Kill
-| /tmp/pardes-snap/fileedit/cwd/f.txt * Save New Newtty Del /tmp/pardes-snap/fileedit/cwd Save New Newtty Del Filter
-| 1 liEDIT''MEne 1 ls
-| 2 line 3 f.txt
-| 3 line 4
-| 4 line 5
-| 5 line 6
-| 6 line 7
-| /tmp/pardes-snap/fileedit/cwd Save New Newtty Del Filter
-| ls
-| f.txt
-|
-|
-|
-| f.txt
-|
-| /tmp/pardes-snap/fileedit/cwd Save New Newtty Del Filter
-| ls
-| f.txt
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
+|3: 2 line 3 f.txt
+|4: 3 line 4
+|5: 4 line 5
+|6: 5 line 6
+|7: 6 line 7
== snap undone grid=150x30 cursor=13,3
-|New Newcol Joincol Find Grep Help Changelog Tutor Dump NextColor Debug Kill
-| /tmp/pardes-snap/fileedit/cwd/f.txt * Save New Newtty Del /tmp/pardes-snap/fileedit/cwd Save New Newtty Del Filter
-| 1 liEDIT''MEne 1 ls
-| 2 line 2 f.txt
-| 3 line 3
-| 4 line 4
-| 5 line 5
-| 6 line 6
-| /tmp/pardes-snap/fileedit/cwd Save New Newtty Del Filter
-| ls
-| f.txt
-|
-|
-|
-| f.txt
-|
-| /tmp/pardes-snap/fileedit/cwd Save New Newtty Del Filter
-| ls
-| f.txt
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
+|3: 2 line 2 f.txt
+|4: 3 line 3
+|5: 4 line 4
+|6: 5 line 5
+|7: 6 line 6
== file saved
liEDIT''MEne 1
line 2
diff --git a/test/snapshots/filewatch.golden b/test/snapshots/filewatch.golden
index 2b0f4486..e2c8a598 100644
--- a/test/snapshots/filewatch.golden
+++ b/test/snapshots/filewatch.golden
@@ -25,100 +25,47 @@
| 7 line 7
| 8 line 8
| 9
-|
-|
-|
-|
== snap reloaded grid=210x30 cursor=15,2
-|New Newcol Joincol Find Grep Help Changelog Tutor Dump NextColor Debug Kill
-| /tmp/pardes-snap/filewatch/cwd/w.txt Save New Newtty Del /tmp/pardes-snap/filewatch/cwd Save New Newtty Del Filter
-| 1 EXTERNAL ls
-| 2 sub w.txt
-|
-|
-|
-| w.txt
-|
-|
-|
-|
-|
-|
-|
-| --:--:-- reloaded /tmp/pardes-snap/filewatch/cwd/w.txt
-| /tmp/pardes-snap/filewatch/cwd/sub/s.txt Save New Newtty Del
-| 1 line 1
-| 2 line 2
-| 3 line 3
-| 4 line 4
-| 5 line 5
-| 6 line 6
-| 7 line 7
-| 8 line 8
-| 9
-|
-|
-|
-|
+|1: /tmp/pardes-snap/filewatch/cwd/w.txt Save New Newtty Del /tmp/pardes-snap/filewatch/cwd Save New Newtty Del Filter
+|2: 1 EXTERNAL ls
+|3: 2 sub w.txt
+|4:
+|5:
+|6:
+|7: w.txt
+|8:
+|9:
+|10:
+|11:
+|12:
+|13:
+|14:
+|15: --:--:-- reloaded /tmp/pardes-snap/filewatch/cwd/w.txt
== snap reloaded_sub grid=210x30 cursor=15,2
-|New Newcol Joincol Find Grep Help Changelog Tutor Dump NextColor Debug Kill
-| /tmp/pardes-snap/filewatch/cwd/w.txt Save New Newtty Del /tmp/pardes-snap/filewatch/cwd Save New Newtty Del Filter
-| 1 EXTERNAL ls
-| 2 sub w.txt
-|
-|
-|
-| w.txt
-|
-|
-|
-|
-|
-|
-|
-| --:--:-- reloaded /tmp/pardes-snap/filewatch/cwd/w.txt
-| /tmp/pardes-snap/filewatch/cwd/sub/s.txt Save New Newtty Del
-| 1 RENAMED
-| 2
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-| --:--:-- reloaded /tmp/pardes-snap/filewatch/cwd/sub/s.txt
+|17: 1 RENAMED
+|18: 2
+|19:
+|20:
+|21:
+|22:
+|23:
+|24:
+|25:
+|29: --:--:-- reloaded /tmp/pardes-snap/filewatch/cwd/sub/s.txt
== snap undone grid=210x30 cursor=15,2
-|New Newcol Joincol Find Grep Help Changelog Tutor Dump NextColor Debug Kill
-| /tmp/pardes-snap/filewatch/cwd/w.txt * Save New Newtty Del /tmp/pardes-snap/filewatch/cwd Save New Newtty Del Filter
-| 1 liMYEDITne 1 ls
-| 2 line 2 sub w.txt
-| 3 /tmp/pardes-snap/filewatch/cwd/sub/s.txt
-| 4 line 4
-| 5 line 5
-| 6 line 6 w.txt
-| 7 line 7
-| 8 line 8
-| 9 line 9
-| 10 line 10
-| 11 line 11
-| 12 line 12
-| 13
-|
-| /tmp/pardes-snap/filewatch/cwd/sub/s.txt Save New Newtty Del
-| 1 RENAMED
-| 2
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
+|1: /tmp/pardes-snap/filewatch/cwd/w.txt * Save New Newtty Del /tmp/pardes-snap/filewatch/cwd Save New Newtty Del Filter
+|2: 1 liMYEDITne 1 ls
+|3: 2 line 2 sub w.txt
+|4: 3 /tmp/pardes-snap/filewatch/cwd/sub/s.txt
+|5: 4 line 4
+|6: 5 line 5
+|7: 6 line 6 w.txt
+|8: 7 line 7
+|9: 8 line 8
+|10: 9 line 9
+|11: 10 line 10
+|12: 11 line 11
+|13: 12 line 12
+|14: 13
+|15:
+|29:
diff --git a/test/snapshots/find.golden b/test/snapshots/find.golden
index 7e64dc2b..96e5a26a 100644
--- a/test/snapshots/find.golden
+++ b/test/snapshots/find.golden
@@ -40,170 +40,18 @@
|
| SPC f
== snap armed grid=120x40 cursor=9,39
-|New Newcol Joincol Find Grep Help Changelog Tutor Dump NextColor Debug Kill
-| /tmp/pardes-snap/find/cwd/here.txt Save New Newtty Del
-| 1 Find
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-| Find /
+|39: Find /
== snap typing grid=120x40 cursor=12,39
-|New Newcol Joincol Find Grep Help Changelog Tutor Dump NextColor Debug Kill
-| /tmp/pardes-snap/find/cwd/here.txt Save New Newtty Del
-| 1 Find
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-| Find /zqm
+|39: Find /zqm
== snap results grid=120x40 cursor=7,2
-|New Newcol Joincol Find Grep Help Changelog Tutor Dump NextColor Debug Kill
-| /tmp/pardes-snap/find/cwd/here.txt Save New Newtty Del
-| 1 Find
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-| /tmp/pardes-snap/find/cwd/+Search Save New Newtty Del
-| 1 sub/ZQMARK-beta.txt
-| 2 sub/nest/zqmark-gamma.txt
-| 3 zqmark-alpha.txt
+|36: /tmp/pardes-snap/find/cwd/+Search Save New Newtty Del
+|37: 1 sub/ZQMARK-beta.txt
+|38: 2 sub/nest/zqmark-gamma.txt
+|39: 3 zqmark-alpha.txt
== snap first grid=120x40 cursor=7,20
-|New Newcol Joincol Find Grep Help Changelog Tutor Dump NextColor Debug Kill
-| /tmp/pardes-snap/find/cwd/here.txt Save New Newtty Del
-| 1 Find
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-| /tmp/pardes-snap/find/cwd/sub/ZQMARK-beta.txt Save New Newtty Del
-| 1 beta body
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-| /tmp/pardes-snap/find/cwd/+Search Save New Newtty Del
-| 1 sub/ZQMARK-beta.txt
-| 2 sub/nest/zqmark-gamma.txt
-| 3 zqmark-alpha.txt
-== style first
+|19: /tmp/pardes-snap/find/cwd/sub/ZQMARK-beta.txt Save New Newtty Del
+|20: 1 beta body
+== style first grid=120x40
|0: 0-74 #949494,#121212, 75-119 d,#121212,
|1: 0-1 #ffffff,#262626, 2-99 #949494,#121212, 100-119 d,#121212,
|2: 0-0 d,#444444, 1-1 d,#080808, 2-6 #626262,#080808, 7-10 #bdbdbd,#080808, 11-119 d,#080808,
@@ -245,330 +93,29 @@
|38: 0-0 d,#444444, 1-1 d,#080808, 2-6 #626262,#080808, 7-31 #bdbdbd,#080808, 32-119 d,#080808,
|39: 0-0 d,#121212, 1-1 d,#080808, 2-6 #626262,#080808, 7-22 #bdbdbd,#080808, 23-119 d,#080808,
== snap second grid=120x40 cursor=7,29
-|New Newcol Joincol Find Grep Help Changelog Tutor Dump NextColor Debug Kill
-| /tmp/pardes-snap/find/cwd/here.txt Save New Newtty Del
-| 1 Find
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-| /tmp/pardes-snap/find/cwd/sub/ZQMARK-beta.txt Save New Newtty Del
-| 1 beta body
-|
-|
-|
-|
-|
-|
-|
-| /tmp/pardes-snap/find/cwd/sub/nest/zqmark-gamma.txt Save New Newtty Del
-| 1 gamma body
-|
-|
-|
-|
-|
-|
-| /tmp/pardes-snap/find/cwd/+Search Save New Newtty Del
-| 1 sub/ZQMARK-beta.txt
-| 2 sub/nest/zqmark-gamma.txt
-| 3 zqmark-alpha.txt
+|28: /tmp/pardes-snap/find/cwd/sub/nest/zqmark-gamma.txt Save New Newtty Del
+|29: 1 gamma body
== snap third grid=120x40 cursor=7,33
-|New Newcol Joincol Find Grep Help Changelog Tutor Dump NextColor Debug Kill
-| /tmp/pardes-snap/find/cwd/here.txt Save New Newtty Del
-| 1 Find
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-| /tmp/pardes-snap/find/cwd/sub/ZQMARK-beta.txt Save New Newtty Del
-| 1 beta body
-|
-|
-|
-|
-|
-|
-|
-| /tmp/pardes-snap/find/cwd/sub/nest/zqmark-gamma.txt Save New Newtty Del
-| 1 gamma body
-|
-|
-| /tmp/pardes-snap/find/cwd/zqmark-alpha.txt Save New Newtty Del
-| 1 alpha body
-|
-|
-| /tmp/pardes-snap/find/cwd/+Search Save New Newtty Del
-| 2 sub/nest/zqmark-gamma.txt
-| 3 zqmark-alpha.txt
-| 4
+|32: /tmp/pardes-snap/find/cwd/zqmark-alpha.txt Save New Newtty Del
+|33: 1 alpha body
+|37: 2 sub/nest/zqmark-gamma.txt
+|38: 3 zqmark-alpha.txt
+|39: 4
== snap back grid=120x40 cursor=7,29
-|New Newcol Joincol Find Grep Help Changelog Tutor Dump NextColor Debug Kill
-| /tmp/pardes-snap/find/cwd/here.txt Save New Newtty Del
-| 1 Find
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-| /tmp/pardes-snap/find/cwd/sub/ZQMARK-beta.txt Save New Newtty Del
-| 1 beta body
-|
-|
-|
-|
-|
-|
-|
-| /tmp/pardes-snap/find/cwd/sub/nest/zqmark-gamma.txt Save New Newtty Del
-| 1 gamma body
-|
-|
-| /tmp/pardes-snap/find/cwd/zqmark-alpha.txt Save New Newtty Del
-| 1 alpha body
-|
-|
-| /tmp/pardes-snap/find/cwd/+Search Save New Newtty Del
-| 1 sub/ZQMARK-beta.txt
-| 2 sub/nest/zqmark-gamma.txt
-| 3 zqmark-alpha.txt
+|37: 1 sub/ZQMARK-beta.txt
+|38: 2 sub/nest/zqmark-gamma.txt
+|39: 3 zqmark-alpha.txt
== snap word grid=120x40 cursor=7,29
-|New Newcol Joincol Find Grep Help Changelog Tutor Dump NextColor Debug Kill
-| /tmp/pardes-snap/find/cwd/here.txt Save New Newtty Del
-| 1 Find
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-| Find /
-| /tmp/pardes-snap/find/cwd/sub/ZQMARK-beta.txt Save New Newtty Del
-| 1 beta body
-|
-|
-|
-|
-|
-|
-|
-| /tmp/pardes-snap/find/cwd/sub/nest/zqmark-gamma.txt Save New Newtty Del
-| 1 gamma body
-|
-|
-| /tmp/pardes-snap/find/cwd/zqmark-alpha.txt Save New Newtty Del
-| 1 alpha body
-|
-|
-| /tmp/pardes-snap/find/cwd/+Search Save New Newtty Del
-| 1 sub/ZQMARK-beta.txt
-| 2 sub/nest/zqmark-gamma.txt
-| 3 zqmark-alpha.txt
+|18: Find /
== snap cancel grid=120x40 cursor=7,38
-|New Newcol Joincol Find Grep Help Changelog Tutor Dump NextColor Debug Kill
-| /tmp/pardes-snap/find/cwd/here.txt Save New Newtty Del
-| 1 Find
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-| Find /
-| /tmp/pardes-snap/find/cwd/sub/ZQMARK-beta.txt Save New Newtty Del
-| 1 beta body
-|
-|
-|
-|
-|
-|
-|
-| /tmp/pardes-snap/find/cwd/sub/nest/zqmark-gamma.txt Save New Newtty Del
-| 1 gamma body
-|
-|
-| /tmp/pardes-snap/find/cwd/zqmark-alpha.txt Save New Newtty Del
-| 1 alpha body
-|
-|
-| /tmp/pardes-snap/find/cwd/+Search Save New Newtty Del
-| 1 sub/ZQMARK-beta.txt
-| 2 sub/nest/zqmark-gamma.txt
-| 3 zqmark-alpha.txt
== snap nomatch grid=120x40 cursor=7,38
-|New Newcol Joincol Find Grep Help Changelog Tutor Dump NextColor Debug Kill
-| /tmp/pardes-snap/find/cwd/here.txt Save New Newtty Del Find /
-| 1 Find
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-| /tmp/pardes-snap/find/cwd/+Search Save New Newtty Del
-| 1
-| /tmp/pardes-snap/find/cwd/sub/ZQMARK-beta.txt Save New Newtty Del
-| 1 beta body
-|
-|
-|
-|
-|
-|
-|
-| /tmp/pardes-snap/find/cwd/sub/nest/zqmark-gamma.txt Save New Newtty Del
-| 1 gamma body
-|
-|
-| /tmp/pardes-snap/find/cwd/zqmark-alpha.txt Save New Newtty Del
-| 1 alpha body
-|
-|
-| /tmp/pardes-snap/find/cwd/+Search Save New Newtty Del
-| 2 sub/nest/zqmark-gamma.txt
-| 3 zqmark-alpha.txt
-| 4
+|1: /tmp/pardes-snap/find/cwd/here.txt Save New Newtty Del Find /
+|17: /tmp/pardes-snap/find/cwd/+Search Save New Newtty Del
+|18: 1
+|37: 2 sub/nest/zqmark-gamma.txt
+|38: 3 zqmark-alpha.txt
+|39: 4
== snap refit grid=120x40 cursor=7,2
-|New Newcol Joincol Find Grep Help Changelog Tutor Dump NextColor Debug Kill
-| /tmp/pardes-snap/find/cwd/here.txt Save New Newtty Del Find /
-| 1 Find
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-| /tmp/pardes-snap/find/cwd/+Search Save New Newtty Del
-| 1
-| /tmp/pardes-snap/find/cwd/sub/ZQMARK-beta.txt Save New Newtty Del
-| 1 beta body
-|
-|
-|
-|
-|
-|
-|
-| /tmp/pardes-snap/find/cwd/sub/nest/zqmark-gamma.txt Save New Newtty Del
-| 1 gamma body
-|
-|
-| /tmp/pardes-snap/find/cwd/zqmark-alpha.txt Save New Newtty Del
-| 1 alpha body
-|
-|
-| /tmp/pardes-snap/find/cwd/+Search Save New Newtty Del
-| 2 sub/nest/zqmark-gamma.txt
-| 3 zqmark-alpha.txt
-| 4
== snap topbar grid=120x40 cursor=12,33
-|New Newcol Joincol Find Grep Help Changelog Tutor Dump NextColor Debug Kill
-| /tmp/pardes-snap/find/cwd/here.txt Save New Newtty Del Find /
-| 1 Find
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-| /tmp/pardes-snap/find/cwd/+Search Save New Newtty Del
-| 1
-| /tmp/pardes-snap/find/cwd/sub/ZQMARK-beta.txt Save New Newtty Del
-| 1 beta body
-|
-|
-|
-|
-|
-|
-|
-| /tmp/pardes-snap/find/cwd/sub/nest/zqmark-gamma.txt Save New Newtty Del
-| 1 gamma body
-|
-|
-| /tmp/pardes-snap/find/cwd/zqmark-alpha.txt Save New Newtty Del
-| 1 alpha body
-|
-|
-| /tmp/pardes-snap/find/cwd/+Search Save New Newtty Del
-| 2 sub/nest/zqmark-gamma.txt
-| 3 zqmark-alpha.txt
-| 4
+|34: /tmp/pardes-snap/find/cwd/+Search Save New Newtty Del
+|35: 1 zqmark-alpha.txt
diff --git a/test/snapshots/find.snap b/test/snapshots/find.snap
index 8f288525..bc051b4b 100644
--- a/test/snapshots/find.snap
+++ b/test/snapshots/find.snap
@@ -114,7 +114,7 @@ key enter
wait 10000 zqmark-alpha.txt
stable 700 15000
snap refit
-# Find is a TOPBAR word too (row 1, its own column, next to Grep): the same
+# Find is a TOPBAR word too: the same
# builtin the leader path runs, reached with the mouse. Chorded — a selection
# held when it runs IS the argument — so dragging over `alpha` and clicking
# Find walks for that name with nothing typed and no input armed. Row 34 is
@@ -124,7 +124,7 @@ press left 8 34
drag left 13 34
release left 13 34
stable 400 5000
-press middle 12 1
-release middle 12 1
+press middle @Find 1
+release middle @Find 1
stable 700 15000
snap topbar
diff --git a/test/snapshots/fsearch.golden b/test/snapshots/fsearch.golden
index 98ac8bec..a96657c5 100644
--- a/test/snapshots/fsearch.golden
+++ b/test/snapshots/fsearch.golden
@@ -18,80 +18,12 @@
| /tmp/pardes-snap/fsearch/cwd Save New Newtty Del Filter
| ls
| g.txt
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
== snap typing grid=180x30 cursor=8,7
-|New Newcol Joincol Find Grep Help Changelog Tutor Dump NextColor Debug Kill
-| /tmp/pardes-snap/fsearch/cwd/g.txt Save New Newtty Del /tmp/pardes-snap/fsearch/cwd Save New Newtty Del Filter
-| 1 l1 ls
-| 2 MARK a g.txt
-| 3 l3
-| 4 l4
-| 5 l5
-|╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌
-| /tmp/pardes-snap/fsearch/cwd Save New Newtty Del Filter
-| ls
-| g.txt
-|
-|
-|
-| g.txt
-|
-| /tmp/pardes-snap/fsearch/cwd Save New Newtty Del Filter
-| ls
-| g.txt
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
== snap results grid=180x30 cursor=10,3
-|New Newcol Joincol Find Grep Help Changelog Tutor Dump NextColor Debug Kill
-| /tmp/pardes-snap/fsearch/cwd/g.txt Save New Newtty Del /tmp/pardes-snap/fsearch/cwd Save New Newtty Del Filter
-| 1 l1 ls
-| 2 MARK a g.txt
-| /tmp/pardes-snap/fsearch/cwd/+Search Save New Newtty Del
-| 1 g.txt:2:1-4 MARK a
-| 2 g.txt:6:1-4 MARK b
-|╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌
-| /tmp/pardes-snap/fsearch/cwd Save New Newtty Del Filter
-| ls
-| g.txt
-|
-|
-|
-| g.txt
-|
-| /tmp/pardes-snap/fsearch/cwd Save New Newtty Del Filter
-| ls
-| g.txt
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-== style results
+|4: /tmp/pardes-snap/fsearch/cwd/+Search Save New Newtty Del
+|5: 1 g.txt:2:1-4 MARK a
+|6: 2 g.txt:6:1-4 MARK b
+== style results grid=180x30
|0: 0-74 #949494,#121212, 75-179 d,#121212,
|1: 0-1 #ffffff,#626262, 2-69 #949494,#121212, 70-89 d,#121212, 90-91 #ffffff,#262626, 92-159 #949494,#121212, 160-179 d,#121212,
|2: 0-0 d,#444444, 1-1 d,#080808, 2-6 #626262,#080808, 7-8 #bdbdbd,#080808, 9-89 d,#080808, 90-90 d,#444444, 91-91 d,#080808, 92-93 #bdbdbd,#080808, 94-179 d,#080808,
@@ -123,157 +55,20 @@
|28: 0-0 d,#444444, 1-89 d,#080808, 90-90 d,#444444, 91-179 d,#080808,
|29: 0-0 d,#444444, 1-89 d,#080808, 90-90 d,#444444, 91-179 d,#080808,
== snap second grid=180x30 cursor=10,3
-|New Newcol Joincol Find Grep Help Changelog Tutor Dump NextColor Debug Kill
-| /tmp/pardes-snap/fsearch/cwd/g.txt Save New Newtty Del /tmp/pardes-snap/fsearch/cwd Save New Newtty Del Filter
-| 5 l5 ls
-| 6 MARK b g.txt
-| /tmp/pardes-snap/fsearch/cwd/+Search Save New Newtty Del
-| 1 g.txt:2:1-4 MARK a
-| 2 g.txt:6:1-4 MARK b
-|╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌
-| /tmp/pardes-snap/fsearch/cwd Save New Newtty Del Filter
-| ls
-| g.txt
-|
-|
-|
-| g.txt
-|
-| /tmp/pardes-snap/fsearch/cwd Save New Newtty Del Filter
-| ls
-| g.txt
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
+|2: 5 l5 ls
+|3: 6 MARK b g.txt
== snap third grid=180x30 cursor=10,3
-|New Newcol Joincol Find Grep Help Changelog Tutor Dump NextColor Debug Kill
-| /tmp/pardes-snap/fsearch/cwd/g.txt Save New Newtty Del /tmp/pardes-snap/fsearch/cwd Save New Newtty Del Filter
-| 9 l9 ls
-| 10 MARK c g.txt
-| /tmp/pardes-snap/fsearch/cwd/+Search Save New Newtty Del
-| 2 g.txt:6:1-4 MARK b
-| 3 g.txt:10:1-4 MARK c
-|╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌
-| /tmp/pardes-snap/fsearch/cwd Save New Newtty Del Filter
-| ls
-| g.txt
-|
-|
-|
-| g.txt
-|
-| /tmp/pardes-snap/fsearch/cwd Save New Newtty Del Filter
-| ls
-| g.txt
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
+|2: 9 l9 ls
+|3: 10 MARK c g.txt
+|5: 2 g.txt:6:1-4 MARK b
+|6: 3 g.txt:10:1-4 MARK c
== snap back grid=180x30 cursor=10,3
-|New Newcol Joincol Find Grep Help Changelog Tutor Dump NextColor Debug Kill
-| /tmp/pardes-snap/fsearch/cwd/g.txt Save New Newtty Del /tmp/pardes-snap/fsearch/cwd Save New Newtty Del Filter
-| 5 l5 ls
-| 6 MARK b g.txt
-| /tmp/pardes-snap/fsearch/cwd/+Search Save New Newtty Del
-| 1 g.txt:2:1-4 MARK a
-| 2 g.txt:6:1-4 MARK b
-|╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌
-| /tmp/pardes-snap/fsearch/cwd Save New Newtty Del Filter
-| ls
-| g.txt
-|
-|
-|
-| g.txt
-|
-| /tmp/pardes-snap/fsearch/cwd Save New Newtty Del Filter
-| ls
-| g.txt
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
+|2: 5 l5 ls
+|3: 6 MARK b g.txt
+|5: 1 g.txt:2:1-4 MARK a
+|6: 2 g.txt:6:1-4 MARK b
== snap cancel grid=180x30 cursor=10,3
-|New Newcol Joincol Find Grep Help Changelog Tutor Dump NextColor Debug Kill
-| /tmp/pardes-snap/fsearch/cwd/g.txt Save New Newtty Del /tmp/pardes-snap/fsearch/cwd Save New Newtty Del Filter
-| 5 l5 ls
-| 6 MARK b g.txt
-| /tmp/pardes-snap/fsearch/cwd/+Search Save New Newtty Del
-| 1 g.txt:2:1-4 MARK a
-| 2 g.txt:6:1-4 MARK b
-|╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌
-| /tmp/pardes-snap/fsearch/cwd Save New Newtty Del Filter
-| ls
-| g.txt
-|
-|
-|
-| g.txt
-|
-| /tmp/pardes-snap/fsearch/cwd Save New Newtty Del Filter
-| ls
-| g.txt
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
== snap nomatch grid=180x30 cursor=7,6
-|New Newcol Joincol Find Grep Help Changelog Tutor Dump NextColor Debug Kill
-| /tmp/pardes-snap/fsearch/cwd/g.txt Save New Newtty Del /tmp/pardes-snap/fsearch/cwd Save New Newtty Del Filter
-| 5 l5 ls
-| /tmp/pardes-snap/fsearch/cwd/+Search Save New Newtty Del g.txt
-| /tmp/pardes-snap/fsearch/cwd/+Search Save New Newtty Del
-| 2 g.txt:6:1-4 MARK b
-| 3 g.txt:10:1-4 MARK c
-|╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌
-| /tmp/pardes-snap/fsearch/cwd Save New Newtty Del Filter
-| ls
-| g.txt
-|
-|
-|
-| g.txt
-|
-| /tmp/pardes-snap/fsearch/cwd Save New Newtty Del Filter
-| ls
-| g.txt
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
+|3: /tmp/pardes-snap/fsearch/cwd/+Search Save New Newtty Del g.txt
+|5: 2 g.txt:6:1-4 MARK b
+|6: 3 g.txt:10:1-4 MARK c
diff --git a/test/snapshots/ghostty-mid.golden b/test/snapshots/ghostty-mid.golden
index 0735299a..e648d3ac 100644
--- a/test/snapshots/ghostty-mid.golden
+++ b/test/snapshots/ghostty-mid.golden
@@ -18,14 +18,3 @@
| /tmp/pardes-snap/ghostty-mid/cwd Save New Newtty
| ls
| g.txt
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
diff --git a/test/snapshots/grep.golden b/test/snapshots/grep.golden
index 80f0fbb1..75161201 100644
--- a/test/snapshots/grep.golden
+++ b/test/snapshots/grep.golden
@@ -18,231 +18,26 @@
| /tmp/pardes-snap/grep/cwd Save New Newtty Del Filter
| ls
| a.txt noise.txt sub
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
== snap typing grid=180x30 cursor=15,7
-|New Newcol Joincol Find Grep Help Changelog Tutor Dump NextColor Debug Kill
-| /tmp/pardes-snap/grep/cwd/a.txt Save New Newtty Del /tmp/pardes-snap/grep/cwd Save New Newtty Del Filter
-| 1 hello TARGET one ls
-| 2 nothing here a.txt noise.txt sub
-| 3 last TARGET line
-|
-|
-| Grep /TARGET
-| /tmp/pardes-snap/grep/cwd Save New Newtty Del Filter
-| ls
-| a.txt noise.txt sub
-|
-|
-|
-| a.txt
-|
-| /tmp/pardes-snap/grep/cwd Save New Newtty Del Filter
-| ls
-| a.txt noise.txt sub
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
+|7: Grep /TARGET
== snap results grid=180x30 cursor=7,2
-|New Newcol Joincol Find Grep Help Changelog Tutor Dump NextColor Debug Kill
-| /tmp/pardes-snap/grep/cwd/a.txt Save New Newtty Del /tmp/pardes-snap/grep/cwd Save New Newtty Del Filter
-| 1 hello TARGET one ls
-| 2 nothing here a.txt noise.txt sub
-| /tmp/pardes-snap/grep/cwd/+Search Save New Newtty Del
-| 1 a.txt:1:7-12 hello TARGET one
-| 2 a.txt:3:6-11 last TARGET line
-| 3 sub/b.txt:2:1-6 TARGET inside sub
-| /tmp/pardes-snap/grep/cwd Save New Newtty Del Filter
-| ls
-| a.txt noise.txt sub
-|
-|
-|
-| a.txt
-|
-| /tmp/pardes-snap/grep/cwd Save New Newtty Del Filter
-| ls
-| a.txt noise.txt sub
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
+|4: /tmp/pardes-snap/grep/cwd/+Search Save New Newtty Del
+|5: 1 a.txt:1:7-12 hello TARGET one
+|6: 2 a.txt:3:6-11 last TARGET line
+|7: 3 sub/b.txt:2:1-6 TARGET inside sub
== snap first grid=180x30 cursor=18,2
-|New Newcol Joincol Find Grep Help Changelog Tutor Dump NextColor Debug Kill
-| /tmp/pardes-snap/grep/cwd/a.txt Save New Newtty Del /tmp/pardes-snap/grep/cwd Save New Newtty Del Filter
-| 1 hello TARGET one ls
-| 2 nothing here a.txt noise.txt sub
-| /tmp/pardes-snap/grep/cwd/+Search Save New Newtty Del
-| 1 a.txt:1:7-12 hello TARGET one
-| 2 a.txt:3:6-11 last TARGET line
-| 3 sub/b.txt:2:1-6 TARGET inside sub
-| /tmp/pardes-snap/grep/cwd Save New Newtty Del Filter
-| ls
-| a.txt noise.txt sub
-|
-|
-|
-| a.txt
-|
-| /tmp/pardes-snap/grep/cwd Save New Newtty Del Filter
-| ls
-| a.txt noise.txt sub
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
== snap opened-hit grid=180x30 cursor=12,14
-|New Newcol Joincol Find Grep Help Changelog Tutor Dump NextColor Debug Kill
-| /tmp/pardes-snap/grep/cwd/a.txt Save New Newtty Del /tmp/pardes-snap/grep/cwd Save New Newtty Del Filter
-| 2 nothing here ls
-| 3 last TARGET line a.txt noise.txt sub
-| /tmp/pardes-snap/grep/cwd/+Search Save New Newtty Del
-| 2 a.txt:3:6-11 last TARGET line
-| 3 sub/b.txt:2:1-6 TARGET inside sub
-| 4
-| /tmp/pardes-snap/grep/cwd Save New Newtty Del Filter
-| ls
-| a.txt noise.txt sub
-|
-| /tmp/pardes-snap/grep/cwd/sub/b.txt Save New Newtty Del
-| 1 deep
-| 2 TARGET inside sub
-|
-| /tmp/pardes-snap/grep/cwd Save New Newtty Del Filter
-| ls
-| a.txt noise.txt sub
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
+|2: 2 nothing here ls
+|3: 3 last TARGET line a.txt noise.txt sub
+|5: 2 a.txt:3:6-11 last TARGET line
+|6: 3 sub/b.txt:2:1-6 TARGET inside sub
+|7: 4
+|12: /tmp/pardes-snap/grep/cwd/sub/b.txt Save New Newtty Del
+|13: 1 deep
+|14: 2 TARGET inside sub
== snap nomatch grid=180x30 cursor=2,10
-|New Newcol Joincol Find Grep Help Changelog Tutor Dump NextColor Debug Kill
-| /tmp/pardes-snap/grep/cwd/a.txt Save New Newtty Del /tmp/pardes-snap/grep/cwd Save New Newtty Del Filter
-| 2 nothing here ls
-| 3 last TARGET line a.txt noise.txt sub
-| /tmp/pardes-snap/grep/cwd/+Search Save New Newtty Del
-| 2 a.txt:3:6-11 last TARGET line
-| 3 sub/b.txt:2:1-6 TARGET inside sub
-| 4
-| /tmp/pardes-snap/grep/cwd Save New Newtty Del Filter
-| ls
-| a.txt noise.txt sub
-|
-| /tmp/pardes-snap/grep/cwd/sub/b.txt Save New Newtty Del
-| 1 deep
-| /tmp/pardes-snap/grep/cwd/sub/+Search Save New Newtty Del
-| 1
-| /tmp/pardes-snap/grep/cwd Save New Newtty Del Filter
-| ls
-| a.txt noise.txt sub
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
+|14: /tmp/pardes-snap/grep/cwd/sub/+Search Save New Newtty Del
+|15: 1
== snap chordsel grid=180x30 cursor=19,2
-|New Newcol Joincol Find Grep Help Changelog Tutor Dump NextColor Debug Kill
-| /tmp/pardes-snap/grep/cwd/a.txt Save New Newtty Del /tmp/pardes-snap/grep/cwd Save New Newtty Del Filter
-| 2 nothing here ls
-| 3 last TARGET line a.txt noise.txt sub
-| /tmp/pardes-snap/grep/cwd/+Search Save New Newtty Del
-| 2 a.txt:3:6-11 last TARGET line
-| 3 sub/b.txt:2:1-6 TARGET inside sub
-| 4
-| /tmp/pardes-snap/grep/cwd Save New Newtty Del Filter
-| ls
-| a.txt noise.txt sub
-|
-| /tmp/pardes-snap/grep/cwd/sub/b.txt Save New Newtty Del
-| 1 deep
-| /tmp/pardes-snap/grep/cwd/sub/+Search Save New Newtty Del
-| 1
-| /tmp/pardes-snap/grep/cwd Save New Newtty Del Filter
-| ls
-| a.txt noise.txt sub
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
== snap chord grid=180x30 cursor=19,2
-|New Newcol Joincol Find Grep Help Changelog Tutor Dump NextColor Debug Kill
-| /tmp/pardes-snap/grep/cwd/a.txt Save New Newtty Del /tmp/pardes-snap/grep/cwd Save New Newtty Del Filter
-| 2 nothing here ls
-| /tmp/pardes-snap/grep/cwd/+Search Save New Newtty Del a.txt noise.txt sub
-| /tmp/pardes-snap/grep/cwd/+Search Save New Newtty Del
-| 2 a.txt:3:6-11 last TARGET line
-| 3 sub/b.txt:2:1-6 TARGET inside sub
-| 4
-| /tmp/pardes-snap/grep/cwd Save New Newtty Del Filter
-| ls
-| a.txt noise.txt sub
-|
-| /tmp/pardes-snap/grep/cwd/sub/b.txt Save New Newtty Del
-| 1 deep
-| /tmp/pardes-snap/grep/cwd/sub/+Search Save New Newtty Del
-| 1
-| /tmp/pardes-snap/grep/cwd Save New Newtty Del Filter
-| ls
-| a.txt noise.txt sub
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
+|3: /tmp/pardes-snap/grep/cwd/+Search Save New Newtty Del a.txt noise.txt sub
diff --git a/test/snapshots/grep.snap b/test/snapshots/grep.snap
index acf89784..7eeae8f5 100644
--- a/test/snapshots/grep.snap
+++ b/test/snapshots/grep.snap
@@ -32,10 +32,10 @@ release right 6 8
wait 10000 hello TARGET
stable 700 15000
snap opened
-# middle-click Grep on the topbar (row 1, the word's own column): the input
+# middle-click Grep on the topbar: the input
# arms on the ACTIVE pane's tag, exactly where `/` would have typed
-press middle 26 1
-release middle 26 1
+press middle @Grep 1
+release middle @Grep 1
stable 400 5000
text TARGET
stable 400 5000
@@ -94,8 +94,8 @@ drag left 20 3
release left 20 3
stable 400 5000
snap chordsel
-press middle 26 1
-release middle 26 1
+press middle @Grep 1
+release middle @Grep 1
wait 10000 sub/b.txt:2:1
stable 700 15000
snap chord
diff --git a/test/snapshots/hscroll.golden b/test/snapshots/hscroll.golden
index c7dfcaa9..35061874 100644
--- a/test/snapshots/hscroll.golden
+++ b/test/snapshots/hscroll.golden
@@ -18,138 +18,12 @@
| /tmp/pardes-snap/hscroll/cwd Save New Newtt
| ls
| wide.txt
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
== snap wheeled grid=90x30 cursor=7,2
-|New Newcol Joincol Find Grep Help Changelog Tutor Dump NextColor Debug Kill
-| /tmp/pardes-snap/hscroll/cwd/wide.txt Save /tmp/pardes-snap/hscroll/cwd Save New Newtt
-| 1 ND_A_MARKER_WAY_OUT_RIGHT_padpadpadpad ls
-| wide.txt
-|
-|
-|
-|
-| /tmp/pardes-snap/hscroll/cwd Save New Newtt
-| ls
-| wide.txt
-|
-|
-|
-| wide.txt
-|
-| /tmp/pardes-snap/hscroll/cwd Save New Newtt
-| ls
-| wide.txt
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
+|2: 1 ND_A_MARKER_WAY_OUT_RIGHT_padpadpadpad ls
+|7:
== snap clamped grid=90x30 cursor=7,2
-|New Newcol Joincol Find Grep Help Changelog Tutor Dump NextColor Debug Kill
-| /tmp/pardes-snap/hscroll/cwd/wide.txt Save /tmp/pardes-snap/hscroll/cwd Save New Newtt
-| 1 short1 END_A_MARKER_WAY_OUT_RIGHT_padp ls
-| wide.txt
-|
-|
-|
-|
-| /tmp/pardes-snap/hscroll/cwd Save New Newtt
-| ls
-| wide.txt
-|
-|
-|
-| wide.txt
-|
-| /tmp/pardes-snap/hscroll/cwd Save New Newtt
-| ls
-| wide.txt
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
+|2: 1 short1 END_A_MARKER_WAY_OUT_RIGHT_padp ls
== snap dollar grid=90x30 cursor=41,2
-|New Newcol Joincol Find Grep Help Changelog Tutor Dump NextColor Debug Kill
-| /tmp/pardes-snap/hscroll/cwd/wide.txt Save /tmp/pardes-snap/hscroll/cwd Save New Newtt
-| 1 padpadpadpadpadpadpadpadpadpad_TAIL ls
-| wide.txt
-|
-|
-|
-|
-| /tmp/pardes-snap/hscroll/cwd Save New Newtt
-| ls
-| wide.txt
-|
-|
-|
-| wide.txt
-|
-| /tmp/pardes-snap/hscroll/cwd Save New Newtt
-| ls
-| wide.txt
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
+|2: 1 padpadpadpadpadpadpadpadpadpad_TAIL ls
== snap zero grid=90x30 cursor=7,2
-|New Newcol Joincol Find Grep Help Changelog Tutor Dump NextColor Debug Kill
-| /tmp/pardes-snap/hscroll/cwd/wide.txt Save /tmp/pardes-snap/hscroll/cwd Save New Newtt
-| 1 short1 END_A_MARKER_WAY_OUT_RIGHT_padp ls
-| wide.txt
-|
-|
-|
-|
-| /tmp/pardes-snap/hscroll/cwd Save New Newtt
-| ls
-| wide.txt
-|
-|
-|
-| wide.txt
-|
-| /tmp/pardes-snap/hscroll/cwd Save New Newtt
-| ls
-| wide.txt
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
+|2: 1 short1 END_A_MARKER_WAY_OUT_RIGHT_padp ls
diff --git a/test/snapshots/images.golden b/test/snapshots/images.golden
index 171c1a3b..e73734dc 100644
--- a/test/snapshots/images.golden
+++ b/test/snapshots/images.golden
@@ -18,18 +18,7 @@
| /tmp/pardes-snap/images/cwd Save New Newtty Del Filter
| ls
| pic.ppm
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-== style img-open
+== style img-open grid=150x30
|0: 0-74 #949494,#121212, 75-149 d,#121212,
|1: 0-1 #ffffff,#626262, 2-74 #949494,#121212, 75-76 #ffffff,#262626, 77-130 #949494,#121212, 131-149 d,#121212,
|2: 0-0 d,#121212, 1-31 d,#080808, 32-33 #959595,#6c6c6c, 34-34 #6c6c6c,#959595, 35-35 #959595,#6c6c6c, 36-36 #6c6c6c,#959595, 37-37 #959595,#6c6c6c, 38-38 #6c6c6c,#959595, 39-41 #959595,#6c6c6c, 42-42 #6c6c6c,#6c5eb5, 43-43 #352879,#6c6c6c, 44-74 d,#080808, 75-75 d,#444444, 76-76 d,#080808, 77-78 #bdbdbd,#080808, 79-149 d,#080808,
@@ -60,68 +49,20 @@
|27: 0-0 d,#444444, 1-74 d,#080808, 75-75 d,#444444, 76-149 d,#080808,
|28: 0-0 d,#444444, 1-74 d,#080808, 75-75 d,#444444, 76-149 d,#080808,
|29: 0-0 d,#444444, 1-74 d,#080808, 75-75 d,#444444, 76-149 d,#080808,
-== style term-palette
-|0: 0-74 #949494,#121212, 75-149 d,#121212,
-|1: 0-1 #ffffff,#626262, 2-74 #949494,#121212, 75-76 #ffffff,#262626, 77-130 #949494,#121212, 131-149 d,#121212,
+== style term-palette grid=150x30
|2: 0-0 d,#121212, 1-31 d,#080808, 32-41 p8,p4, 42-42 p8,p12, 43-43 p12,p8, 44-74 d,#080808, 75-75 d,#444444, 76-76 d,#080808, 77-78 #bdbdbd,#080808, 79-149 d,#080808,
|3: 0-0 d,#121212, 1-31 d,#080808, 32-39 p8,p4, 40-40 p8,p12, 41-41 p12,p8, 42-43 p12,p12, 44-74 d,#080808, 75-75 d,#444444, 76-76 d,#080808, 77-83 #bdbdbd,#080808, 84-149 d,#080808,
|4: 0-0 d,#121212, 1-31 d,#080808, 32-32 p8,p4, 33-33 p4,p8, 34-37 p8,p4, 38-38 p8,p12, 39-40 p12,p8, 41-43 p12,p12, 44-74 d,#080808, 75-75 d,#444444, 76-149 d,#080808,
|5: 0-0 d,#121212, 1-31 d,#080808, 32-35 p8,p4, 36-36 p8,p12, 37-37 p12,p8, 38-43 p12,p12, 44-74 d,#080808, 75-75 d,#444444, 76-149 d,#080808,
|6: 0-0 d,#121212, 1-31 d,#080808, 32-32 p4,p8, 33-33 p8,p4, 34-34 p8,p12, 35-36 p12,p8, 37-43 p12,p12, 44-74 d,#080808, 75-75 d,#444444, 76-149 d,#080808,
|7: 0-0 d,#121212, 1-31 d,#080808, 32-32 p8,p12, 33-34 p12,p8, 35-43 p12,p12, 44-74 d,#080808, 75-75 d,#444444, 76-149 d,#080808,
-|8: 0-1 #ffffff,#262626, 2-74 #949494,#121212, 75-75 d,#444444, 76-149 d,#080808,
-|9: 0-0 d,#444444, 1-1 d,#080808, 2-3 #bdbdbd,#080808, 4-74 d,#080808, 75-75 d,#444444, 76-149 d,#080808,
-|10: 0-0 d,#444444, 1-1 d,#080808, 2-8 #bdbdbd,#080808, 9-74 d,#080808, 75-75 d,#444444, 76-149 d,#080808,
-|11: 0-0 d,#444444, 1-74 d,#080808, 75-75 d,#444444, 76-149 d,#080808,
-|12: 0-0 d,#444444, 1-74 d,#080808, 75-75 d,#444444, 76-149 d,#080808,
-|13: 0-0 d,#444444, 1-74 d,#080808, 75-75 d,#444444, 76-149 d,#080808,
-|14: 0-0 d,#444444, 1-1 d,#080808, 2-10 #bdbdbd,#080808, 11-74 d,#080808, 75-75 d,#444444, 76-149 d,#080808,
-|15: 0-0 d,#444444, 1-74 d,#080808, 75-75 d,#444444, 76-149 d,#080808,
-|16: 0-1 #ffffff,#262626, 2-74 #949494,#121212, 75-75 d,#444444, 76-149 d,#080808,
-|17: 0-0 d,#444444, 1-1 d,#080808, 2-3 #bdbdbd,#080808, 4-74 d,#080808, 75-75 d,#444444, 76-149 d,#080808,
-|18: 0-0 d,#444444, 1-1 d,#080808, 2-8 #bdbdbd,#080808, 9-74 d,#080808, 75-75 d,#444444, 76-149 d,#080808,
-|19: 0-0 d,#444444, 1-74 d,#080808, 75-75 d,#444444, 76-149 d,#080808,
-|20: 0-0 d,#444444, 1-74 d,#080808, 75-75 d,#444444, 76-149 d,#080808,
-|21: 0-0 d,#444444, 1-74 d,#080808, 75-75 d,#444444, 76-149 d,#080808,
-|22: 0-0 d,#444444, 1-74 d,#080808, 75-75 d,#444444, 76-149 d,#080808,
-|23: 0-0 d,#444444, 1-74 d,#080808, 75-75 d,#444444, 76-149 d,#080808,
-|24: 0-0 d,#444444, 1-74 d,#080808, 75-75 d,#444444, 76-149 d,#080808,
-|25: 0-0 d,#444444, 1-74 d,#080808, 75-75 d,#444444, 76-149 d,#080808,
-|26: 0-0 d,#444444, 1-74 d,#080808, 75-75 d,#444444, 76-149 d,#080808,
-|27: 0-0 d,#444444, 1-74 d,#080808, 75-75 d,#444444, 76-149 d,#080808,
-|28: 0-0 d,#444444, 1-74 d,#080808, 75-75 d,#444444, 76-149 d,#080808,
-|29: 0-0 d,#444444, 1-74 d,#080808, 75-75 d,#444444, 76-149 d,#080808,
== snap no-ascii grid=150x30 cursor=11,7
-|New Newcol Joincol Find Grep Help Changelog Tutor Dump NextColor Debug Kill
-| img petscii:off palette:terminal ascii:off /tmp/pardes-snap/images/cwd/pi /tmp/pardes-snap/images/cwd Save New Newtty Del Filter
-| █████🬻████🬝▄ ls
-| ████████🬝▄ pic.ppm
-| ███🬬██🬝▄█
-| ████🬝▄
-| ██🬝▄█
-|╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌
-| /tmp/pardes-snap/images/cwd Save New Newtty Del Filter
-| ls
-| pic.ppm
-|
-|
-|
-| pic.ppm
-|
-| /tmp/pardes-snap/images/cwd Save New Newtty Del Filter
-| ls
-| pic.ppm
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
+|1: img petscii:off palette:terminal ascii:off /tmp/pardes-snap/images/cwd/pi /tmp/pardes-snap/images/cwd Save New Newtty Del Filter
+|2: █████🬻████🬝▄ ls
+|3: ████████🬝▄ pic.ppm
+|4: ███🬬██🬝▄█
+|5: ████🬝▄
+|6: ██🬝▄█
== snap tag-edit grid=400x30 cursor=85,1
|New Newcol Joincol Find Grep Help Changelog Tutor Dump NextColor Debug Kill
| img petscii:off palette:terminal ascii:off /tmp/pardes-snap/images/cwd/pic.ppm Zork New Newtty Del /tmp/pardes-snap/images/cwd Save New Newtty Del Filter
@@ -142,14 +83,3 @@
| /tmp/pardes-snap/images/cwd Save New Newtty Del Filter
| ls
| pic.ppm
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
diff --git a/test/snapshots/jumps.golden b/test/snapshots/jumps.golden
index 82543e70..9dfafcf3 100644
--- a/test/snapshots/jumps.golden
+++ b/test/snapshots/jumps.golden
@@ -30,347 +30,109 @@
| 27 line 27
| 28 line 28
== snap to-shell grid=150x30 cursor=79,4
-|New Newcol Joincol Find Grep Help Changelog Tutor Dump NextColor Debug Kill
-| /tmp/pardes-snap/jumps/cwd/big.txt Save New Newtty Del /tmp/pardes-snap/jumps/cwd Save New Newtty Del Filter
-| 1 line 1 ls
-| 2 line 2 big.txt
-| 3 line 3
-| 4 line 4
-| 5 line 5
-| 6 line 6
-| 7 line 7
-| 8 line 8
-| 9 line 9
-| 10 line 10
-| 11 line 11
-| 12 line 12
-| 13 line 13
-| 14 line 14
-| 15 line 15
-| 16 line 16
-| 17 line 17
-| 18 line 18
-| 19 line 19
-| 20 line 20
-| 21 line 21
-| 22 line 22
-| 23 line 23
-| 24 line 24
-| 25 line 25
-| 26 line 26
-| 27 line 27
-| 28 line 28
+|1: /tmp/pardes-snap/jumps/cwd/big.txt Save New Newtty Del /tmp/pardes-snap/jumps/cwd Save New Newtty Del Filter
+|2: 1 line 1 ls
+|3: 2 line 2 big.txt
== snap to-file grid=150x30 cursor=7,2
-|New Newcol Joincol Find Grep Help Changelog Tutor Dump NextColor Debug Kill
-| /tmp/pardes-snap/jumps/cwd/big.txt Save New Newtty Del /tmp/pardes-snap/jumps/cwd Save New Newtty Del Filter
-| 1 line 1 ls
-| 2 line 2 big.txt
-| 3 line 3
-| 4 line 4
-| 5 line 5
-| 6 line 6
-| 7 line 7
-| 8 line 8
-| 9 line 9
-| 10 line 10
-| 11 line 11
-| 12 line 12
-| 13 line 13
-| 14 line 14
-| 15 line 15
-| 16 line 16
-| 17 line 17
-| 18 line 18
-| 19 line 19
-| 20 line 20
-| 21 line 21
-| 22 line 22
-| 23 line 23
-| 24 line 24
-| 25 line 25
-| 26 line 26
-| 27 line 27
-| 28 line 28
== snap goto-100 grid=150x30 cursor=7,26
-|New Newcol Joincol Find Grep Help Changelog Tutor Dump NextColor Debug Kill
-| /tmp/pardes-snap/jumps/cwd/big.txt Save New Newtty Del /tmp/pardes-snap/jumps/cwd Save New Newtty Del Filter
-| 76 line 76 ls
-| 77 line 77 big.txt
-| 78 line 78
-| 79 line 79
-| 80 line 80
-| 81 line 81
-| 82 line 82
-| 83 line 83
-| 84 line 84
-| 85 line 85
-| 86 line 86
-| 87 line 87
-| 88 line 88
-| 89 line 89
-| 90 line 90
-| 91 line 91
-| 92 line 92
-| 93 line 93
-| 94 line 94
-| 95 line 95
-| 96 line 96
-| 97 line 97
-| 98 line 98
-| 99 line 99
-| 100 line 100
-| 101 line 101
-| 102 line 102
-| 103 line 103
+|2: 76 line 76 ls
+|3: 77 line 77 big.txt
+|4: 78 line 78
+|5: 79 line 79
+|6: 80 line 80
+|7: 81 line 81
+|8: 82 line 82
+|9: 83 line 83
+|10: 84 line 84
+|11: 85 line 85
+|12: 86 line 86
+|13: 87 line 87
+|14: 88 line 88
+|15: 89 line 89
+|16: 90 line 90
+|17: 91 line 91
+|18: 92 line 92
+|19: 93 line 93
+|20: 94 line 94
+|21: 95 line 95
+|22: 96 line 96
+|23: 97 line 97
+|24: 98 line 98
+|25: 99 line 99
+|26: 100 line 100
+|27: 101 line 101
+|28: 102 line 102
+|29: 103 line 103
== snap back-in-file grid=150x30 cursor=7,2
-|New Newcol Joincol Find Grep Help Changelog Tutor Dump NextColor Debug Kill
-| /tmp/pardes-snap/jumps/cwd/big.txt Save New Newtty Del /tmp/pardes-snap/jumps/cwd Save New Newtty Del Filter
-| 1 line 1 ls
-| 2 line 2 big.txt
-| 3 line 3
-| 4 line 4
-| 5 line 5
-| 6 line 6
-| 7 line 7
-| 8 line 8
-| 9 line 9
-| 10 line 10
-| 11 line 11
-| 12 line 12
-| 13 line 13
-| 14 line 14
-| 15 line 15
-| 16 line 16
-| 17 line 17
-| 18 line 18
-| 19 line 19
-| 20 line 20
-| 21 line 21
-| 22 line 22
-| 23 line 23
-| 24 line 24
-| 25 line 25
-| 26 line 26
-| 27 line 27
-| 28 line 28
+|2: 1 line 1 ls
+|3: 2 line 2 big.txt
+|4: 3 line 3
+|5: 4 line 4
+|6: 5 line 5
+|7: 6 line 6
+|8: 7 line 7
+|9: 8 line 8
+|10: 9 line 9
+|11: 10 line 10
+|12: 11 line 11
+|13: 12 line 12
+|14: 13 line 13
+|15: 14 line 14
+|16: 15 line 15
+|17: 16 line 16
+|18: 17 line 17
+|19: 18 line 18
+|20: 19 line 19
+|21: 20 line 20
+|22: 21 line 21
+|23: 22 line 22
+|24: 23 line 23
+|25: 24 line 24
+|26: 25 line 25
+|27: 26 line 26
+|28: 27 line 27
+|29: 28 line 28
== snap back-to-shell grid=150x30 cursor=79,4
-|New Newcol Joincol Find Grep Help Changelog Tutor Dump NextColor Debug Kill
-| /tmp/pardes-snap/jumps/cwd/big.txt Save New Newtty Del /tmp/pardes-snap/jumps/cwd Save New Newtty Del Filter
-| 1 line 1 ls
-| 2 line 2 big.txt
-| 3 line 3
-| 4 line 4
-| 5 line 5
-| 6 line 6
-| 7 line 7
-| 8 line 8
-| 9 line 9
-| 10 line 10
-| 11 line 11
-| 12 line 12
-| 13 line 13
-| 14 line 14
-| 15 line 15
-| 16 line 16
-| 17 line 17
-| 18 line 18
-| 19 line 19
-| 20 line 20
-| 21 line 21
-| 22 line 22
-| 23 line 23
-| 24 line 24
-| 25 line 25
-| 26 line 26
-| 27 line 27
-| 28 line 28
== snap forward-file grid=150x30 cursor=7,2
-|New Newcol Joincol Find Grep Help Changelog Tutor Dump NextColor Debug Kill
-| /tmp/pardes-snap/jumps/cwd/big.txt Save New Newtty Del /tmp/pardes-snap/jumps/cwd Save New Newtty Del Filter
-| 1 line 1 ls
-| 2 line 2 big.txt
-| 3 line 3
-| 4 line 4
-| 5 line 5
-| 6 line 6
-| 7 line 7
-| 8 line 8
-| 9 line 9
-| 10 line 10
-| 11 line 11
-| 12 line 12
-| 13 line 13
-| 14 line 14
-| 15 line 15
-| 16 line 16
-| 17 line 17
-| 18 line 18
-| 19 line 19
-| 20 line 20
-| 21 line 21
-| 22 line 22
-| 23 line 23
-| 24 line 24
-| 25 line 25
-| 26 line 26
-| 27 line 27
-| 28 line 28
== snap forward-100 grid=150x30 cursor=7,16
-|New Newcol Joincol Find Grep Help Changelog Tutor Dump NextColor Debug Kill
-| /tmp/pardes-snap/jumps/cwd/big.txt Save New Newtty Del /tmp/pardes-snap/jumps/cwd Save New Newtty Del Filter
-| 86 line 86 ls
-| 87 line 87 big.txt
-| 88 line 88
-| 89 line 89
-| 90 line 90
-| 91 line 91
-| 92 line 92
-| 93 line 93
-| 94 line 94
-| 95 line 95
-| 96 line 96
-| 97 line 97
-| 98 line 98
-| 99 line 99
-| 100 line 100
-| 101 line 101
-| 102 line 102
-| 103 line 103
-| 104 line 104
-| 105 line 105
-| 106 line 106
-| 107 line 107
-| 108 line 108
-| 109 line 109
-| 110 line 110
-| 111 line 111
-| 112 line 112
-| 113 line 113
+|2: 86 line 86 ls
+|3: 87 line 87 big.txt
+|4: 88 line 88
+|5: 89 line 89
+|6: 90 line 90
+|7: 91 line 91
+|8: 92 line 92
+|9: 93 line 93
+|10: 94 line 94
+|11: 95 line 95
+|12: 96 line 96
+|13: 97 line 97
+|14: 98 line 98
+|15: 99 line 99
+|16: 100 line 100
+|17: 101 line 101
+|18: 102 line 102
+|19: 103 line 103
+|20: 104 line 104
+|21: 105 line 105
+|22: 106 line 106
+|23: 107 line 107
+|24: 108 line 108
+|25: 109 line 109
+|26: 110 line 110
+|27: 111 line 111
+|28: 112 line 112
+|29: 113 line 113
== snap last grid=150x30 cursor=79,4
-|New Newcol Joincol Find Grep Help Changelog Tutor Dump NextColor Debug Kill
-| /tmp/pardes-snap/jumps/cwd/big.txt Save New Newtty Del /tmp/pardes-snap/jumps/cwd Save New Newtty Del Filter
-| 86 line 86 ls
-| 87 line 87 big.txt
-| 88 line 88
-| 89 line 89
-| 90 line 90
-| 91 line 91
-| 92 line 92
-| 93 line 93
-| 94 line 94
-| 95 line 95
-| 96 line 96
-| 97 line 97
-| 98 line 98
-| 99 line 99
-| 100 line 100
-| 101 line 101
-| 102 line 102
-| 103 line 103
-| 104 line 104
-| 105 line 105
-| 106 line 106
-| 107 line 107
-| 108 line 108
-| 109 line 109
-| 110 line 110
-| 111 line 111
-| 112 line 112
-| 113 line 113
== snap last-back grid=150x30 cursor=7,16
-|New Newcol Joincol Find Grep Help Changelog Tutor Dump NextColor Debug Kill
-| /tmp/pardes-snap/jumps/cwd/big.txt Save New Newtty Del /tmp/pardes-snap/jumps/cwd Save New Newtty Del Filter
-| 86 line 86 ls
-| 87 line 87 big.txt
-| 88 line 88
-| 89 line 89
-| 90 line 90
-| 91 line 91
-| 92 line 92
-| 93 line 93
-| 94 line 94
-| 95 line 95
-| 96 line 96
-| 97 line 97
-| 98 line 98
-| 99 line 99
-| 100 line 100
-| 101 line 101
-| 102 line 102
-| 103 line 103
-| 104 line 104
-| 105 line 105
-| 106 line 106
-| 107 line 107
-| 108 line 108
-| 109 line 109
-| 110 line 110
-| 111 line 111
-| 112 line 112
-| 113 line 113
== snap jumplist grid=150x30 cursor=7,16
-|New Newcol Joincol Find Grep Help Changelog Tutor Dump NextColor Debug Kill
-| /tmp/pardes-snap/jumps/cwd/big.txt Save New Newtty Del /tmp/pardes-snap/jumps/cwd Save New Newtty Del Filter
-| 86 line 86 ls
-| 87 line 87 big.txt
-| 88 line 88
-| 89 line 89
-| 90 line 90
-| 91 line 91
-| 92 line 92
-| 93 line 93
-| 94 line 94
-| 95 line 95
-| 96 line 96
-| 97 line 97
-| 98 line 98
-| 99 line 99
-| 100 line 100
-| 101 line 101
-| 102 line 102
-| 103 line 103
-| 104 line 104
-| 105 line 105
-| 106 line 106
-| 107 line 107
-| 108 line 108
-| /tmp/pardes-snap/jumps/cwd/+Jumps Save New Newtty Del
-| 1 @p1:3:3 /tmp/pardes-snap/jumps/cwd
-| 2 /tmp/pardes-snap/jumps/cwd/big.txt:1:1 line 1
-| 3 @p1:3:3 /tmp/pardes-snap/jumps/cwd
-| 4 /tmp/pardes-snap/jumps/cwd/big.txt:100:1 line 100
+|25: /tmp/pardes-snap/jumps/cwd/+Jumps Save New Newtty Del
+|26: 1 @p1:3:3 /tmp/pardes-snap/jumps/cwd
+|27: 2 /tmp/pardes-snap/jumps/cwd/big.txt:1:1 line 1
+|28: 3 @p1:3:3 /tmp/pardes-snap/jumps/cwd
+|29: 4 /tmp/pardes-snap/jumps/cwd/big.txt:100:1 line 100
== snap step1-shell grid=150x30 cursor=79,4
-|New Newcol Joincol Find Grep Help Changelog Tutor Dump NextColor Debug Kill
-| /tmp/pardes-snap/jumps/cwd/big.txt Save New Newtty Del /tmp/pardes-snap/jumps/cwd Save New Newtty Del Filter
-| 86 line 86 ls
-| 87 line 87 big.txt
-| 88 line 88
-| 89 line 89
-| 90 line 90
-| 91 line 91
-| 92 line 92
-| 93 line 93
-| 94 line 94
-| 95 line 95
-| 96 line 96
-| 97 line 97
-| 98 line 98
-| 99 line 99
-| 100 line 100
-| 101 line 101
-| 102 line 102
-| 103 line 103
-| 104 line 104
-| 105 line 105
-| 106 line 106
-| 107 line 107
-| 108 line 108
-| /tmp/pardes-snap/jumps/cwd/+Jumps Save New Newtty Del
-| 1 @p1:3:3 /tmp/pardes-snap/jumps/cwd
-| 2 /tmp/pardes-snap/jumps/cwd/big.txt:1:1 line 1
-| 3 @p1:3:3 /tmp/pardes-snap/jumps/cwd
-| 4 /tmp/pardes-snap/jumps/cwd/big.txt:100:1 line 100
-== style step1-shell
+== style step1-shell grid=150x30
|0: 0-74 #949494,#121212, 75-149 d,#121212,
|1: 0-1 #ffffff,#262626, 2-55 #949494,#121212, 56-74 d,#121212, 75-76 #ffffff,#626262, 77-129 #949494,#121212, 130-149 d,#121212,
|2: 0-0 d,#121212, 1-1 d,#080808, 2-6 #626262,#080808, 7-13 #bdbdbd,#080808, 14-74 d,#080808, 75-75 d,#444444, 76-76 d,#080808, 77-78 #bdbdbd,#080808, 79-149 d,#080808,
@@ -402,126 +164,56 @@
|28: 0-0 d,#444444, 1-1 d,#080808, 2-6 #626262,#080808, 7-40 #bdbdbd,#080808, 41-74 d,#080808, 75-75 d,#444444, 76-149 d,#080808,
|29: 0-0 d,#121212, 1-1 d,#080808, 2-6 #626262,#080808, 7-55 #bdbdbd,#080808, 56-74 d,#080808, 75-75 d,#444444, 76-149 d,#080808,
== snap step2-file grid=150x30 cursor=7,2
-|New Newcol Joincol Find Grep Help Changelog Tutor Dump NextColor Debug Kill
-| /tmp/pardes-snap/jumps/cwd/big.txt Save New Newtty Del /tmp/pardes-snap/jumps/cwd Save New Newtty Del Filter
-| 1 line 1 ls
-| 2 line 2 big.txt
-| 3 line 3
-| 4 line 4
-| 5 line 5
-| 6 line 6
-| 7 line 7
-| 8 line 8
-| 9 line 9
-| 10 line 10
-| 11 line 11
-| 12 line 12
-| 13 line 13
-| 14 line 14
-| 15 line 15
-| 16 line 16
-| 17 line 17
-| 18 line 18
-| 19 line 19
-| 20 line 20
-| 21 line 21
-| 22 line 22
-| 23 line 23
-| /tmp/pardes-snap/jumps/cwd/+Jumps Save New Newtty Del
-| 1 @p1:3:3 /tmp/pardes-snap/jumps/cwd
-| 2 /tmp/pardes-snap/jumps/cwd/big.txt:1:1 line 1
-| 3 @p1:3:3 /tmp/pardes-snap/jumps/cwd
-| 4 /tmp/pardes-snap/jumps/cwd/big.txt:100:1 line 100
+|2: 1 line 1 ls
+|3: 2 line 2 big.txt
+|4: 3 line 3
+|5: 4 line 4
+|6: 5 line 5
+|7: 6 line 6
+|8: 7 line 7
+|9: 8 line 8
+|10: 9 line 9
+|11: 10 line 10
+|12: 11 line 11
+|13: 12 line 12
+|14: 13 line 13
+|15: 14 line 14
+|16: 15 line 15
+|17: 16 line 16
+|18: 17 line 17
+|19: 18 line 18
+|20: 19 line 19
+|21: 20 line 20
+|22: 21 line 21
+|23: 22 line 22
+|24: 23 line 23
== snap step4-line100 grid=150x30 cursor=7,13
-|New Newcol Joincol Find Grep Help Changelog Tutor Dump NextColor Debug Kill
-| /tmp/pardes-snap/jumps/cwd/big.txt Save New Newtty Del /tmp/pardes-snap/jumps/cwd Save New Newtty Del Filter
-| 89 line 89 ls
-| 90 line 90 big.txt
-| 91 line 91
-| 92 line 92
-| 93 line 93
-| 94 line 94
-| 95 line 95
-| 96 line 96
-| 97 line 97
-| 98 line 98
-| 99 line 99
-| 100 line 100
-| 101 line 101
-| 102 line 102
-| 103 line 103
-| 104 line 104
-| 105 line 105
-| 106 line 106
-| 107 line 107
-| 108 line 108
-| 109 line 109
-| 110 line 110
-| 111 line 111
-| /tmp/pardes-snap/jumps/cwd/+Jumps Save New Newtty Del
-| 2 /tmp/pardes-snap/jumps/cwd/big.txt:1:1 line 1
-| 3 @p1:3:3 /tmp/pardes-snap/jumps/cwd
-| 4 /tmp/pardes-snap/jumps/cwd/big.txt:100:1 line 100
-| 5
+|2: 89 line 89 ls
+|3: 90 line 90 big.txt
+|4: 91 line 91
+|5: 92 line 92
+|6: 93 line 93
+|7: 94 line 94
+|8: 95 line 95
+|9: 96 line 96
+|10: 97 line 97
+|11: 98 line 98
+|12: 99 line 99
+|13: 100 line 100
+|14: 101 line 101
+|15: 102 line 102
+|16: 103 line 103
+|17: 104 line 104
+|18: 105 line 105
+|19: 106 line 106
+|20: 107 line 107
+|21: 108 line 108
+|22: 109 line 109
+|23: 110 line 110
+|24: 111 line 111
+|26: 2 /tmp/pardes-snap/jumps/cwd/big.txt:1:1 line 1
+|27: 3 @p1:3:3 /tmp/pardes-snap/jumps/cwd
+|28: 4 /tmp/pardes-snap/jumps/cwd/big.txt:100:1 line 100
+|29: 5
== snap step-back grid=150x30 cursor=79,4
-|New Newcol Joincol Find Grep Help Changelog Tutor Dump NextColor Debug Kill
-| /tmp/pardes-snap/jumps/cwd/big.txt Save New Newtty Del /tmp/pardes-snap/jumps/cwd Save New Newtty Del Filter
-| 89 line 89 ls
-| 90 line 90 big.txt
-| 91 line 91
-| 92 line 92
-| 93 line 93
-| 94 line 94
-| 95 line 95
-| 96 line 96
-| 97 line 97
-| 98 line 98
-| 99 line 99
-| 100 line 100
-| 101 line 101
-| 102 line 102
-| 103 line 103
-| 104 line 104
-| 105 line 105
-| 106 line 106
-| 107 line 107
-| 108 line 108
-| 109 line 109
-| 110 line 110
-| 111 line 111
-| /tmp/pardes-snap/jumps/cwd/+Jumps Save New Newtty Del
-| 2 /tmp/pardes-snap/jumps/cwd/big.txt:1:1 line 1
-| 3 @p1:3:3 /tmp/pardes-snap/jumps/cwd
-| 4 /tmp/pardes-snap/jumps/cwd/big.txt:100:1 line 100
-| 5
== snap look-row grid=150x30 cursor=7,13
-|New Newcol Joincol Find Grep Help Changelog Tutor Dump NextColor Debug Kill
-| /tmp/pardes-snap/jumps/cwd/big.txt Save New Newtty Del /tmp/pardes-snap/jumps/cwd Save New Newtty Del Filter
-| 89 line 89 ls
-| 90 line 90 big.txt
-| 91 line 91
-| 92 line 92
-| 93 line 93
-| 94 line 94
-| 95 line 95
-| 96 line 96
-| 97 line 97
-| 98 line 98
-| 99 line 99
-| 100 line 100
-| 101 line 101
-| 102 line 102
-| 103 line 103
-| 104 line 104
-| 105 line 105
-| 106 line 106
-| 107 line 107
-| 108 line 108
-| 109 line 109
-| 110 line 110
-| 111 line 111
-| /tmp/pardes-snap/jumps/cwd/+Jumps Save New Newtty Del
-| 2 /tmp/pardes-snap/jumps/cwd/big.txt:1:1 line 1
-| 3 @p1:3:3 /tmp/pardes-snap/jumps/cwd
-| 4 /tmp/pardes-snap/jumps/cwd/big.txt:100:1 line 100
-| 5
diff --git a/test/snapshots/layout-close.golden b/test/snapshots/layout-close.golden
index 7e82162a..69de749a 100644
--- a/test/snapshots/layout-close.golden
+++ b/test/snapshots/layout-close.golden
@@ -23,183 +23,26 @@
| /tmp/pardes-snap/layout-close/cwd Save New Newtty Del Filter
| ls
| marker.txt
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
== snap altc grid=140x40 cursor=39,4
-|New Newcol Joincol Find Grep Help Changelog Tutor Dump NextColor Debug Kill
-| /tmp/pardes-snap/layout-close/cwd /tmp/pardes-snap/layout-close/cwd /tmp/pardes-snap/layout-close/cwd Save New Newtty Del Filter
-| ls ls ls
-| marker.txt marker.txt marker.txt
-|
-| /tmp/pardes-snap/layout-close/cwd
-| ls
-| marker.txt
-|
-| /tmp/pardes-snap/layout-close/cwd
-| ls
-| marker.txt
-|
-|
-|
-|
-|
-|
-|
-|
-|
-| /tmp/pardes-snap/layout-close/cwd
-| ls
-| marker.txt
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
+|1: /tmp/pardes-snap/layout-close/cwd /tmp/pardes-snap/layout-close/cwd /tmp/pardes-snap/layout-close/cwd Save New Newtty Del Filter
+|2: ls ls ls
+|3: marker.txt marker.txt marker.txt
+|5: /tmp/pardes-snap/layout-close/cwd
+|9: /tmp/pardes-snap/layout-close/cwd
+|13:
+|14:
+|15:
+|21: /tmp/pardes-snap/layout-close/cwd
== snap del grid=140x40 cursor=39,4
-|New Newcol Joincol Find Grep Help Changelog Tutor Dump NextColor Debug Kill
-| /tmp/pardes-snap/layout-close/cwd /tmp/pardes-snap/layout-close/cwd /tmp/pardes-snap/layout-close/cwd Save New Newtty Del Filter
-| ls ls ls
-| marker.txt marker.txt marker.txt
-|
-|
-|
-|
-|
-| /tmp/pardes-snap/layout-close/cwd
-| ls
-| marker.txt
-|
-|
-|
-|
-|
-|
-|
-|
-|
-| /tmp/pardes-snap/layout-close/cwd
-| ls
-| marker.txt
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
+|5:
+|6:
+|7:
== snap exit grid=140x40 cursor=39,4
-|New Newcol Joincol Find Grep Help Changelog Tutor Dump NextColor Debug Kill
-| /tmp/pardes-snap/layout-close/cwd /tmp/pardes-snap/layout-close/cwd /tmp/pardes-snap/layout-close/cwd Save New Newtty Del Filter
-| ls ls ls
-| marker.txt marker.txt marker.txt
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-| /tmp/pardes-snap/layout-close/cwd
-| ls
-| marker.txt
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
+|9:
+|10:
+|11:
== snap colclose grid=140x40 cursor=4,7
-|New Newcol Joincol Find Grep Help Changelog Tutor Dump NextColor Debug Kill
-| /tmp/pardes-snap/layout-close/cwd Save New Newtty Del Filter /tmp/pardes-snap/layout-close/cwd Save New Newtty Del Filter
-| ls ls
-| marker.txt marker.txt
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-| /tmp/pardes-snap/layout-close/cwd Save New Newtty Del Filter
-| ls
-| marker.txt
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
+|1: /tmp/pardes-snap/layout-close/cwd Save New Newtty Del Filter /tmp/pardes-snap/layout-close/cwd Save New Newtty Del Filter
+|2: ls ls
+|3: marker.txt marker.txt
+|21: /tmp/pardes-snap/layout-close/cwd Save New Newtty Del Filter
diff --git a/test/snapshots/layout-open.golden b/test/snapshots/layout-open.golden
index 7070ba73..776b1b0b 100644
--- a/test/snapshots/layout-open.golden
+++ b/test/snapshots/layout-open.golden
@@ -18,138 +18,20 @@
| /tmp/pardes-snap/layout-open/cwd Save New Newtty
| ls
| sub
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
== snap altn-left grid=100x30 cursor=4,8
-|New Newcol Joincol Find Grep Help Changelog Tutor Dump NextColor Debug Kill
-| /tmp/pardes-snap/layout-open/cwd Save New Newtty /tmp/pardes-snap/layout-open/cwd Save New Newtty
-| ls ls
-| sub sub
-|
-| /tmp/pardes-snap/layout-open/cwd Save New Newtty
-| ls
-| sub
-|
-|
-|
-|
-|
-|
-|
-|
-| /tmp/pardes-snap/layout-open/cwd Save New Newtty
-| ls
-| sub
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
+|5: /tmp/pardes-snap/layout-open/cwd Save New Newtty
+|6: ls
+|7: sub
== snap altn-right grid=100x30 cursor=54,8
-|New Newcol Joincol Find Grep Help Changelog Tutor Dump NextColor Debug Kill
-| /tmp/pardes-snap/layout-open/cwd Save New Newtty /tmp/pardes-snap/layout-open/cwd Save New Newtty
-| ls ls
-| sub sub
-|
-| /tmp/pardes-snap/layout-open/cwd Save New Newtty /tmp/pardes-snap/layout-open/cwd Save New Newtty
-| ls ls
-| sub sub
-|
-|
-|
-|
-|
-|
-|
-|
-| /tmp/pardes-snap/layout-open/cwd Save New Newtty
-| ls
-| sub
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
+|5: /tmp/pardes-snap/layout-open/cwd Save New Newtty /tmp/pardes-snap/layout-open/cwd Save New Newtty
+|6: ls ls
+|7: sub sub
== snap file-open grid=100x30 cursor=7,2
-|New Newcol Joincol Find Grep Help Changelog Tutor Dump NextColor Debug Kill
-| /tmp/pardes-snap/layout-open/cwd/sub/f.txt Save /tmp/pardes-snap/layout-open/cwd Save New Newtty
-| 1 echo 'TTY'OK ls
-| /tmp/pardes-snap/layout-open/cwd Save New Newtty sub
-|
-| /tmp/pardes-snap/layout-open/cwd Save New Newtty /tmp/pardes-snap/layout-open/cwd Save New Newtty
-| ls ls
-| sub sub
-|
-|
-|
-|
-|
-|
-|
-|
-| /tmp/pardes-snap/layout-open/cwd Save New Newtty
-| ls
-| sub
-|
-|
-|
-|
-|
-|
-|
-| sub/f.txt
-|
-|
-|
+|1: /tmp/pardes-snap/layout-open/cwd/sub/f.txt Save /tmp/pardes-snap/layout-open/cwd Save New Newtty
+|2: 1 echo 'TTY'OK ls
+|3: /tmp/pardes-snap/layout-open/cwd Save New Newtty sub
+|26: sub/f.txt
== snap ttydir grid=100x30 cursor=7,2
-|New Newcol Joincol Find Grep Help Changelog Tutor Dump NextColor Debug Kill
-| /tmp/pardes-snap/layout-open/cwd/sub/f.txt Save /tmp/pardes-snap/layout-open/cwd Save New Newtty
-| 1 echo 'TTY'OK ls
-| /tmp/pardes-snap/layout-open/cwd Save New Newtty sub
-|
-| /tmp/pardes-snap/layout-open/cwd Save New Newtty /tmp/pardes-snap/layout-open/cwd Save New Newtty
-| ls ls
-| sub sub
-|
-| /tmp/pardes-snap/layout-open/cwd/sub Save New Ne
-| echo 'TTY'OK
-| TTYOK
-|
-|
-|
-|
-| /tmp/pardes-snap/layout-open/cwd Save New Newtty
-| ls
-| sub
-|
-|
-|
-|
-|
-|
-|
-| sub/f.txt
-|
-|
-|
+|9: /tmp/pardes-snap/layout-open/cwd/sub Save New Ne
+|10: echo 'TTY'OK
+|11: TTYOK
diff --git a/test/snapshots/leader.golden b/test/snapshots/leader.golden
index 904653a9..38b4f9dc 100644
--- a/test/snapshots/leader.golden
+++ b/test/snapshots/leader.golden
@@ -40,494 +40,149 @@
|
| SPC
== snap spc-h grid=100x40 cursor=7,2
-|New Newcol Joincol Find Grep Help Changelog Tutor Dump NextColor Debug Kill
-| /tmp/pardes-snap/leader/cwd/cmds.txt Save New Newtty Del
-| 1 Help
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-| SPC h
+|39: SPC h
== snap abandoned grid=100x40 cursor=7,2
-|New Newcol Joincol Find Grep Help Changelog Tutor Dump NextColor Debug Kill
-| /tmp/pardes-snap/leader/cwd/cmds.txt Save New Newtty Del
-| 1 Help
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
+|39:
== snap unmapped grid=100x40 cursor=7,2
-|New Newcol Joincol Find Grep Help Changelog Tutor Dump NextColor Debug Kill
-| /tmp/pardes-snap/leader/cwd/cmds.txt Save New Newtty Del
-| 1 Help
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
== snap help-word grid=100x40 cursor=7,22
-|New Newcol Joincol Find Grep Help Changelog Tutor Dump NextColor Debug Kill
-| /tmp/pardes-snap/leader/cwd/cmds.txt Save New Newtty Del
-| 1 Help
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-| /tmp/pardes-snap/leader/cwd/+Help Save New Newtty Del
-| 1 pardes builtins, and how to run each:
-| 2 SPC and its keys, a chord, a button, the
-| 3 topbar - or the name, executed anywhere.
-| 4
-| 5 SPC ? Help topbar
-| 6 SPC P ClipPasteBefore
-| 7 SPC R ClipReplace
-| 8 SPC Y ClipYankMain
-| 9 SPC a a PanelAscii
-| 10 SPC a c PanelCurtain
-| 11 SPC a d PanelDissolve
-| 12 SPC a e PanelEdges
-| 13 SPC a f PanelFall
-| 14 SPC a r PanelScramble
-| 15 SPC a s PanelSlide
-| 16 SPC a t PanelType
-| 17 SPC a v PanelVertical
-| 18 SPC a w PanelWave
+|21: /tmp/pardes-snap/leader/cwd/+Help Save New Newtty Del
+|22: 1 pardes builtins, and how to run each:
+|23: 2 SPC and its keys, a chord, a button, the
+|24: 3 topbar - or the name, executed anywhere.
+|25: 4
+|26: 5 SPC ? Help topbar
+|27: 6 SPC P ClipPasteBefore
+|28: 7 SPC R ClipReplace
+|29: 8 SPC Y ClipYankMain
+|30: 9 SPC a a PanelAscii
+|31: 10 SPC a c PanelCurtain
+|32: 11 SPC a d PanelDissolve
+|33: 12 SPC a e PanelEdges
+|34: 13 SPC a f PanelFall
+|35: 14 SPC a r PanelScramble
+|36: 15 SPC a s PanelSlide
+|37: 16 SPC a t PanelType
+|38: 17 SPC a v PanelVertical
+|39: 18 SPC a w PanelWave
== snap help-group grid=100x40 cursor=7,22
-|New Newcol Joincol Find Grep Help Changelog Tutor Dump NextColor Debug Kill
-| /tmp/pardes-snap/leader/cwd/cmds.txt Save New Newtty Del
-| 1 Help
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-| /tmp/pardes-snap/leader/cwd/+Help Save New Newtty Del
-| 1 pardes builtins under SPC h
-| 2
-| 3 SPC h c Changelog topbar
-| 4 SPC h t Tutor topbar
-| 5
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
+|22: 1 pardes builtins under SPC h
+|23: 2
+|24: 3 SPC h c Changelog topbar
+|25: 4 SPC h t Tutor topbar
+|26: 5
+|27:
+|28:
+|29:
+|30:
+|31:
+|32:
+|33:
+|34:
+|35:
+|36:
+|37:
+|38:
+|39:
== snap tutor grid=100x40 cursor=7,12
-|New Newcol Joincol Find Grep Help Changelog Tutor Dump NextColor Debug Kill
-| /tmp/pardes-snap/leader/cwd/cmds.txt Save New Newtty Del
-| 1 Help
-|
-|
-|
-|
-|
-|
-|
-|
-| /Tutor Save New Newtty Del
-| 1
-| 2 PARDES TUTOR
-| 3 tmux + vi + acme, from scratch.
-| 4
-| 5 The model is acme's: EVERYTHING is text, editable and executable
-| 6 the same way. Modal editing (helix-style) lives on top of that.
-| 7 Press j until you reach the introduction.
-| 8
-| 9
-| /tmp/pardes-snap/leader/cwd/+Help Save New Newtty Del
-| 1 pardes builtins under SPC h
-| 2
-| 3 SPC h c Changelog topbar
-| 4 SPC h t Tutor topbar
-| 5
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
+|11: /Tutor Save New Newtty Del
+|12: 1
+|13: 2 PARDES TUTOR
+|14: 3 tmux + vi + acme, from scratch.
+|15: 4
+|16: 5 The model is acme's: EVERYTHING is text, editable and executable
+|17: 6 the same way. Modal editing (helix-style) lives on top of that.
+|18: 7 Press j until you reach the introduction.
+|19: 8
+|20: 9
== snap deleted grid=100x40 cursor=7,22
-|New Newcol Joincol Find Grep Help Changelog Tutor Dump NextColor Debug Kill
-| /tmp/pardes-snap/leader/cwd/cmds.txt Save New Newtty Del
-| 1 Help
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-| /tmp/pardes-snap/leader/cwd/+Help Save New Newtty Del
-| 1 pardes builtins under SPC h
-| 2
-| 3 SPC h c Changelog topbar
-| 4 SPC h t Tutor topbar
-| 5
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
+|11:
+|12:
+|13:
+|14:
+|15:
+|16:
+|17:
+|18:
+|19:
+|20:
== snap help-all grid=100x40 cursor=7,22
-|New Newcol Joincol Find Grep Help Changelog Tutor Dump NextColor Debug Kill
-| /tmp/pardes-snap/leader/cwd/cmds.txt Save New Newtty Del
-| 1 Help
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-| /tmp/pardes-snap/leader/cwd/+Help Save New Newtty Del
-| 1 pardes builtins, and how to run each:
-| 2 SPC and its keys, a chord, a button, the
-| 3 topbar - or the name, executed anywhere.
-| 4
-| 5 SPC ? Help topbar
-| 6 SPC P ClipPasteBefore
-| 7 SPC R ClipReplace
-| 8 SPC Y ClipYankMain
-| 9 SPC a a PanelAscii
-| 10 SPC a c PanelCurtain
-| 11 SPC a d PanelDissolve
-| 12 SPC a e PanelEdges
-| 13 SPC a f PanelFall
-| 14 SPC a r PanelScramble
-| 15 SPC a s PanelSlide
-| 16 SPC a t PanelType
-| 17 SPC a v PanelVertical
-| 18 SPC a w PanelWave
+|22: 1 pardes builtins, and how to run each:
+|23: 2 SPC and its keys, a chord, a button, the
+|24: 3 topbar - or the name, executed anywhere.
+|25: 4
+|26: 5 SPC ? Help topbar
+|27: 6 SPC P ClipPasteBefore
+|28: 7 SPC R ClipReplace
+|29: 8 SPC Y ClipYankMain
+|30: 9 SPC a a PanelAscii
+|31: 10 SPC a c PanelCurtain
+|32: 11 SPC a d PanelDissolve
+|33: 12 SPC a e PanelEdges
+|34: 13 SPC a f PanelFall
+|35: 14 SPC a r PanelScramble
+|36: 15 SPC a s PanelSlide
+|37: 16 SPC a t PanelType
+|38: 17 SPC a v PanelVertical
+|39: 18 SPC a w PanelWave
== snap help-toggles grid=100x40 cursor=7,22
-|New Newcol Joincol Find Grep Help Changelog Tutor Dump NextColor Debug Kill
-| /tmp/pardes-snap/leader/cwd/cmds.txt Save New Newtty Del
-| 1 Help
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-| /tmp/pardes-snap/leader/cwd/+Help Save New Newtty Del
-| 1 pardes builtins under SPC t
-| 2
-| 3 SPC t a Ascii
-| 4 SPC t b Tagbottom
-| 5 SPC t c Colors
-| 6 SPC t d Debug topbar
-| 7 SPC t i PdfTint
-| 8 SPC t l Palette
-| 9 SPC t n NextColor topbar
-| 10 SPC t p Petscii
-| 11 SPC t s PdfSections
-| 12 SPC t t ThemeSel
-| 13 SPC t w Wrap
-| 14 SPC t z PdfFit
-| 15
-|
-|
-|
+|22: 1 pardes builtins under SPC t
+|23: 2
+|24: 3 SPC t a Ascii
+|25: 4 SPC t b Tagbottom
+|26: 5 SPC t c Colors
+|27: 6 SPC t d Debug topbar
+|28: 7 SPC t i PdfTint
+|29: 8 SPC t l Palette
+|30: 9 SPC t n NextColor topbar
+|31: 10 SPC t p Petscii
+|32: 11 SPC t s PdfSections
+|33: 12 SPC t t ThemeSel
+|34: 13 SPC t w Wrap
+|35: 14 SPC t z PdfFit
+|36: 15
+|37:
+|38:
+|39:
== snap help-window grid=100x40 cursor=7,22
-|New Newcol Joincol Find Grep Help Changelog Tutor Dump NextColor Debug Kill
-| /tmp/pardes-snap/leader/cwd/cmds.txt Save New Newtty Del
-| 1 Help
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-| /tmp/pardes-snap/leader/cwd/+Help Save New Newtty Del
-| 1 pardes builtins under SPC w
-| 2
-| 3 SPC w h Left C-w h, C-w left
-| 4 SPC w j Down C-w j, C-w down
-| 5 SPC w k Up C-w k, C-w up
-| 6 SPC w l Right C-w l, C-w right
-| 7
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
+|22: 1 pardes builtins under SPC w
+|24: 3 SPC w h Left C-w h, C-w left
+|25: 4 SPC w j Down C-w j, C-w down
+|26: 5 SPC w k Up C-w k, C-w up
+|27: 6 SPC w l Right C-w l, C-w right
+|28: 7
+|29:
+|30:
+|31:
+|32:
+|33:
+|34:
+|35:
+|36:
== snap help-language grid=100x40 cursor=7,22
-|New Newcol Joincol Find Grep Help Changelog Tutor Dump NextColor Debug Kill
-| /tmp/pardes-snap/leader/cwd/cmds.txt Save New Newtty Del
-| 1 Help
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-| /tmp/pardes-snap/leader/cwd/+Help Save New Newtty Del
-| 1 pardes builtins under SPC l
-| 2
-| 3 SPC l D WsDiagnostics
-| 4 SPC l S WsSymbols
-| 5 SPC l a CodeAction
-| 6 SPC l d Diagnostics
-| 7 SPC l h SelectRefs
-| 8 SPC l i Lspinfo
-| 9 SPC l k Hover
-| 10 SPC l r Rename
-| 11 SPC l s Symbols
-| 12 SPC l w Lspwhy
-| 13
-|
-|
-|
-|
-|
+|22: 1 pardes builtins under SPC l
+|24: 3 SPC l D WsDiagnostics
+|25: 4 SPC l S WsSymbols
+|26: 5 SPC l a CodeAction
+|27: 6 SPC l d Diagnostics
+|28: 7 SPC l h SelectRefs
+|29: 8 SPC l i Lspinfo
+|30: 9 SPC l k Hover
+|31: 10 SPC l r Rename
+|32: 11 SPC l s Symbols
+|33: 12 SPC l w Lspwhy
+|34: 13
== snap del-output grid=100x40 cursor=7,2
-|New Newcol Joincol Find Grep Help Changelog Tutor Dump NextColor Debug Kill
-| /tmp/pardes-snap/leader/cwd/cmds.txt Save New Newtty Del
-| 1 Help
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
+|21:
+|22:
+|23:
+|24:
+|25:
+|26:
+|27:
+|28:
+|29:
+|30:
+|31:
+|32:
+|33:
+|34:
diff --git a/test/snapshots/load.golden b/test/snapshots/load.golden
index c8f3ca9a..a8f80900 100644
--- a/test/snapshots/load.golden
+++ b/test/snapshots/load.golden
@@ -18,18 +18,7 @@
| /tmp/pardes-snap/load/cwd Save New Newtty Del Fi
| ls
| d.txt
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-== style loaded
+== style loaded grid=100x30
|0: 0-74 #949494,#121212, 75-99 d,#121212,
|1: 0-1 #ffffff,#626262, 2-49 #949494,#121212, 50-51 #ffffff,#262626, 52-99 #949494,#121212,
|2: 0-0 d,#444444, 1-1 d,#080808, 2-26 #bdbdbd,#080808, 27-49 d,#080808, 50-50 d,#444444, 51-51 d,#080808, 52-53 #bdbdbd,#080808, 54-99 d,#080808,
diff --git a/test/snapshots/load.snap b/test/snapshots/load.snap
index 24552836..c224e2fb 100644
--- a/test/snapshots/load.snap
+++ b/test/snapshots/load.snap
@@ -17,8 +17,8 @@ stable 600 8000
wheel up 10 8
wheel up 10 8
stable 500 8000
-press middle 52 1
-release middle 52 1
+press middle @Dump 1
+release middle @Dump 1
stable 600 8000
start 30 100 -l $DUMP
wait 8000 LOADMARK
diff --git a/test/snapshots/logquiet.golden b/test/snapshots/logquiet.golden
index 1f145d64..48dcd3a6 100644
--- a/test/snapshots/logquiet.golden
+++ b/test/snapshots/logquiet.golden
@@ -4,28 +4,3 @@
| $ ls
| $ printf '\033_Ga=q,i=1,s=1,v=1,f=24,t=d;AAAA\033\\\033[>0p'
| $ '\033_Ga=q,i=1,s=1,v=1,f=24,t=d;AAAA\033\\\033[>0p'Gi=1;OK
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
diff --git a/test/snapshots/look-center.golden b/test/snapshots/look-center.golden
index 19421e2b..94b2d0a5 100644
--- a/test/snapshots/look-center.golden
+++ b/test/snapshots/look-center.golden
@@ -18,76 +18,17 @@
| /tmp/pardes-snap/look-center/cwd Save New Newtty Del Filter
| ls
| big.txt
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
== snap center-dedup grid=150x30 cursor=7,5
-|New Newcol Joincol Find Grep Help Changelog Tutor Dump NextColor Debug Kill
-| /tmp/pardes-snap/look-center/cwd/big.txt Save New Newtty Del /tmp/pardes-snap/look-center/cwd Save New Newtty Del Filter
-| 147 line 147 ls
-| 148 line 148 big.txt
-| 149 line 149
-| 150 line 150
-| 151 line 151
-| 152 line 152
-| /tmp/pardes-snap/look-center/cwd Save New Newtty Del Filter
-| ls
-| big.txt
-|
-|
-|
-| big.txt:100 big.txt:150 big.txt:2
-|
-| /tmp/pardes-snap/look-center/cwd Save New Newtty Del Filter
-| ls
-| big.txt
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
+|2: 147 line 147 ls
+|3: 148 line 148 big.txt
+|4: 149 line 149
+|5: 150 line 150
+|6: 151 line 151
+|7: 152 line 152
== snap center-clamp grid=150x30 cursor=7,3
-|New Newcol Joincol Find Grep Help Changelog Tutor Dump NextColor Debug Kill
-| /tmp/pardes-snap/look-center/cwd/big.txt Save New Newtty Del /tmp/pardes-snap/look-center/cwd Save New Newtty Del Filter
-| 1 line 1 ls
-| 2 line 2 big.txt
-| 3 line 3
-| 4 line 4
-| 5 line 5
-| 6 line 6
-| /tmp/pardes-snap/look-center/cwd Save New Newtty Del Filter
-| ls
-| big.txt
-|
-|
-|
-| big.txt:100 big.txt:150 big.txt:2
-|
-| /tmp/pardes-snap/look-center/cwd Save New Newtty Del Filter
-| ls
-| big.txt
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
+|2: 1 line 1 ls
+|3: 2 line 2 big.txt
+|4: 3 line 3
+|5: 4 line 4
+|6: 5 line 5
+|7: 6 line 6
diff --git a/test/snapshots/look-dir.golden b/test/snapshots/look-dir.golden
index 896689e0..e6429b35 100644
--- a/test/snapshots/look-dir.golden
+++ b/test/snapshots/look-dir.golden
@@ -18,14 +18,3 @@
| /tmp/pardes-snap/look-dir/cwd Save New Newtty De
| ls
| sub top.txt
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
diff --git a/test/snapshots/look-file-1col.golden b/test/snapshots/look-file-1col.golden
index a7967abe..fb364e87 100644
--- a/test/snapshots/look-file-1col.golden
+++ b/test/snapshots/look-file-1col.golden
@@ -21,11 +21,3 @@
|
|
| big.txt:40
-|
-|
-|
-|
-|
-|
-|
-|
diff --git a/test/snapshots/look-file.golden b/test/snapshots/look-file.golden
index f9e76425..7880b8f8 100644
--- a/test/snapshots/look-file.golden
+++ b/test/snapshots/look-file.golden
@@ -18,18 +18,7 @@
| /tmp/pardes-snap/look-file/cwd Save New Newtty Del Filter
| ls
| big.txt
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-== style file-open
+== style file-open grid=150x30
|0: 0-74 #949494,#121212, 75-149 d,#121212,
|1: 0-1 #ffffff,#626262, 2-59 #949494,#121212, 60-74 d,#121212, 75-76 #ffffff,#262626, 77-133 #949494,#121212, 134-149 d,#121212,
|2: 0-0 d,#121212, 1-1 d,#080808, 2-6 #626262,#080808, 7-13 #bdbdbd,#080808, 14-74 d,#080808, 75-75 d,#444444, 76-76 d,#080808, 77-78 #bdbdbd,#080808, 79-149 d,#080808,
diff --git a/test/snapshots/lookloaded.golden b/test/snapshots/lookloaded.golden
index 6bf46cb1..53b3781d 100644
--- a/test/snapshots/lookloaded.golden
+++ b/test/snapshots/lookloaded.golden
@@ -18,76 +18,9 @@
| /tmp/pardes-snap/lookloaded/cwd Save New Newtty
| ls
| big.txt
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
== snap removed grid=100x30 cursor=4,13
-|New Newcol Joincol Find Grep Help Changelog Tutor Dump NextColor Debug Kill
-| /tmp/pardes-snap/lookloaded/cwd/big.txt Save New /tmp/pardes-snap/lookloaded/cwd Save New Newtty
-| 37 line 37 ls
-| 38 line 38 big.txt
-| 39 line 39
-| 40 line 40
-| 41 line 41
-| 42 line 42
-| /tmp/pardes-snap/lookloaded/cwd Save New Newtty
-| ls
-| big.txt
-| rm big.txt; echo GO''NE
-| GONE
-|
-| big.txt:40 big.txt:10
-|
-| /tmp/pardes-snap/lookloaded/cwd Save New Newtty
-| ls
-| big.txt
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
+|7: 42 line 42
+|11: rm big.txt; echo GO''NE
+|12: GONE
== snap look-noFS grid=100x30 cursor=44,7
-|New Newcol Joincol Find Grep Help Changelog Tutor Dump NextColor Debug Kill
-| /tmp/pardes-snap/lookloaded/cwd/big.txt Save New /tmp/pardes-snap/lookloaded/cwd Save New Newtty
-| 37 line 37 ls
-| 38 line 38 big.txt
-| 39 line 39
-| 40 line 40
-| 41 line 41
-|╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌
-| /tmp/pardes-snap/lookloaded/cwd Save New Newtty
-| ls
-| big.txt
-| rm big.txt; echo GO''NE
-| GONE
-|
-| big.txt:40 big.txt:10
-|
-| /tmp/pardes-snap/lookloaded/cwd Save New Newtty
-| ls
-| big.txt
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
+|7: ╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌
diff --git a/test/snapshots/lookpanes.golden b/test/snapshots/lookpanes.golden
index e870dcbf..1416c342 100644
--- a/test/snapshots/lookpanes.golden
+++ b/test/snapshots/lookpanes.golden
@@ -7,253 +7,19 @@
| /tmp/pardes-snap/lookpanes/cwd/alpha Save New Newtty Del Filter
| ls
| amark.txt both.txt pick.txt twin.txt zqonly.txt
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
== snap other-dir grid=130x50 cursor=7,27
-|New Newcol Joincol Find Grep Help Changelog Tutor Dump NextColor Debug Kill
-| /tmp/pardes-snap/lookpanes/cwd/beta/bmark.txt Save New Newtty D /tmp/pardes-snap/lookpanes/cwd Save New Newtty Del Filter
-| 1 both.txt ls
-| 2 b-marker alpha beta zzboot.txt zqonly.txt pick.txt twin.txt
-|
-| /tmp/pardes-snap/lookpanes/cwd/alpha Save New Newtty Del Filter
-| ls
-| amark.txt both.txt pick.txt twin.txt zqonly.txt
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-| /tmp/pardes-snap/lookpanes/cwd/alpha/zqonly.txt Save New Newtty
-| 1 ONLY-IN-ALPHA
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
+|26: /tmp/pardes-snap/lookpanes/cwd/alpha/zqonly.txt Save New Newtty
+|27: 1 ONLY-IN-ALPHA
== snap clicked-wins grid=130x50 cursor=7,15
-|New Newcol Joincol Find Grep Help Changelog Tutor Dump NextColor Debug Kill
-| /tmp/pardes-snap/lookpanes/cwd/beta/bmark.txt Save New Newtty D /tmp/pardes-snap/lookpanes/cwd Save New Newtty Del Filter
-| 1 both.txt ls
-| 2 b-marker alpha beta zzboot.txt zqonly.txt pick.txt twin.txt
-|
-| /tmp/pardes-snap/lookpanes/cwd/alpha Save New Newtty Del Filter
-| ls
-| amark.txt both.txt pick.txt twin.txt zqonly.txt
-|
-|
-|
-|
-|
-|
-| /tmp/pardes-snap/lookpanes/cwd/beta/both.txt Save New Newtty De
-| 1 BOTH-FROM-BETA
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-| /tmp/pardes-snap/lookpanes/cwd/alpha/zqonly.txt Save New Newtty
-| 1 ONLY-IN-ALPHA
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
+|14: /tmp/pardes-snap/lookpanes/cwd/beta/both.txt Save New Newtty De
+|15: 1 BOTH-FROM-BETA
== snap mru-alpha grid=130x50 cursor=7,21
-|New Newcol Joincol Find Grep Help Changelog Tutor Dump NextColor Debug Kill
-| /tmp/pardes-snap/lookpanes/cwd/beta/bmark.txt Save New Newtty D /tmp/pardes-snap/lookpanes/cwd Save New Newtty Del Filter
-| 1 both.txt ls
-| 2 b-marker alpha beta zzboot.txt zqonly.txt pick.txt twin.txt
-|
-| /tmp/pardes-snap/lookpanes/cwd/alpha Save New Newtty Del Filter
-| ls
-| amark.txt both.txt pick.txt twin.txt zqonly.txt
-|
-|
-|
-|
-|
-|
-| /tmp/pardes-snap/lookpanes/cwd/beta/both.txt Save New Newtty De
-| 1 BOTH-FROM-BETA
-|
-|
-|
-|
-| /tmp/pardes-snap/lookpanes/cwd/alpha/pick.txt Save New Newtty D
-| 1 PICK-FROM-ALPHA
-|
-|
-|
-|
-| /tmp/pardes-snap/lookpanes/cwd/alpha/zqonly.txt Save New Newtty
-| 1 ONLY-IN-ALPHA
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
+|20: /tmp/pardes-snap/lookpanes/cwd/alpha/pick.txt Save New Newtty D
+|21: 1 PICK-FROM-ALPHA
== snap mru-beta grid=130x50 cursor=7,9
-|New Newcol Joincol Find Grep Help Changelog Tutor Dump NextColor Debug Kill
-| /tmp/pardes-snap/lookpanes/cwd/beta/bmark.txt Save New Newtty D /tmp/pardes-snap/lookpanes/cwd Save New Newtty Del Filter
-| 1 both.txt ls
-| 2 b-marker alpha beta zzboot.txt zqonly.txt pick.txt twin.txt
-|
-| /tmp/pardes-snap/lookpanes/cwd/alpha Save New Newtty Del Filter
-| ls
-| amark.txt both.txt pick.txt twin.txt zqonly.txt
-| /tmp/pardes-snap/lookpanes/cwd/beta/twin.txt Save New Newtty De
-| 1 TWIN-FROM-BETA
-|
-|
-|
-|
-| /tmp/pardes-snap/lookpanes/cwd/beta/both.txt Save New Newtty De
-| 1 BOTH-FROM-BETA
-|
-|
-|
-|
-| /tmp/pardes-snap/lookpanes/cwd/alpha/pick.txt Save New Newtty D
-| 1 PICK-FROM-ALPHA
-|
-|
-|
-|
-| /tmp/pardes-snap/lookpanes/cwd/alpha/zqonly.txt Save New Newtty
-| 1 ONLY-IN-ALPHA
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-== style mru-beta
+|8: /tmp/pardes-snap/lookpanes/cwd/beta/twin.txt Save New Newtty De
+|9: 1 TWIN-FROM-BETA
+== style mru-beta grid=130x50
|0: 0-74 #949494,#121212, 75-129 d,#121212,
|1: 0-1 #ffffff,#262626, 2-64 #949494,#121212, 65-66 #ffffff,#262626, 67-129 #949494,#121212,
|2: 0-0 d,#444444, 1-1 d,#080808, 2-6 #626262,#080808, 7-14 #bdbdbd,#080808, 15-64 d,#080808, 65-65 d,#444444, 66-66 d,#080808, 67-68 #bdbdbd,#080808, 69-129 d,#080808,
diff --git a/test/snapshots/lookrange.golden b/test/snapshots/lookrange.golden
index 98f13917..50610a39 100644
--- a/test/snapshots/lookrange.golden
+++ b/test/snapshots/lookrange.golden
@@ -5,62 +5,18 @@
| 2 r.txt:7:4-9
| 3 r.txt:3:2-5:3
| 4 r.txt:8:6-99:9
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
== snap wholelines grid=150x30 cursor=11,21
-|New Newcol Joincol Find Grep Help Changelog Tutor Dump NextColor Debug Kill
-| /tmp/pardes-snap/lookrange/cwd/look.txt Save New Newtty Del
-| 1 r.txt:3-5
-| 2 r.txt:7:4-9
-| 3 r.txt:3:2-5:3
-| 4 r.txt:8:6-99:9
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-| /tmp/pardes-snap/lookrange/cwd/r.txt Save New Newtty Del
-| 1 aaaa
-| 2 bbbb
-| 3 cccc dccc
-| 4 dddd
-| 5 eeee
-| 6 ffff
-| 7 gg NEEDLE gg
-| 8 hhhh NEEDLE
-| 9 iiii
-|
-|
-|
-|
-== style wholelines
+|16: /tmp/pardes-snap/lookrange/cwd/r.txt Save New Newtty Del
+|17: 1 aaaa
+|18: 2 bbbb
+|19: 3 cccc dccc
+|20: 4 dddd
+|21: 5 eeee
+|22: 6 ffff
+|23: 7 gg NEEDLE gg
+|24: 8 hhhh NEEDLE
+|25: 9 iiii
+== style wholelines grid=150x30
|0: 0-74 #949494,#121212, 75-149 d,#121212,
|1: 0-1 #ffffff,#262626, 2-129 #949494,#121212, 130-149 d,#121212,
|2: 0-0 d,#444444, 1-1 d,#080808, 2-6 #626262,#080808, 7-15 #bdbdbd,#080808, 16-149 d,#080808,
@@ -92,178 +48,28 @@
|28: 0-0 d,#444444, 1-1 d,#080808, 2-6 #626262,#080808, 7-149 d,#080808,
|29: 0-0 d,#444444, 1-1 d,#080808, 2-6 #626262,#080808, 7-149 d,#080808,
== snap onelinespan grid=150x30 cursor=15,23
-|New Newcol Joincol Find Grep Help Changelog Tutor Dump NextColor Debug Kill
-| /tmp/pardes-snap/lookrange/cwd/look.txt Save New Newtty Del
-| 1 r.txt:3-5
-| 2 r.txt:7:4-9
-| 3 r.txt:3:2-5:3
-| 4 r.txt:8:6-99:9
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-| /tmp/pardes-snap/lookrange/cwd/r.txt Save New Newtty Del
-| 1 aaaa
-| 2 bbbb
-| 3 cccc dccc
-| 4 dddd
-| 5 eeee
-| 6 ffff
-| 7 gg NEEDLE gg
-| 8 hhhh NEEDLE
-| 9 iiii
-|
-|
-|
-|
-== style onelinespan
-|0: 0-74 #949494,#121212, 75-149 d,#121212,
-|1: 0-1 #ffffff,#262626, 2-129 #949494,#121212, 130-149 d,#121212,
-|2: 0-0 d,#444444, 1-1 d,#080808, 2-6 #626262,#080808, 7-15 #bdbdbd,#080808, 16-149 d,#080808,
-|3: 0-0 d,#444444, 1-1 d,#080808, 2-6 #626262,#080808, 7-17 #bdbdbd,#080808, 18-149 d,#080808,
-|4: 0-0 d,#444444, 1-1 d,#080808, 2-6 #626262,#080808, 7-19 #bdbdbd,#080808, 20-149 d,#080808,
-|5: 0-0 d,#444444, 1-1 d,#080808, 2-6 #626262,#080808, 7-20 #bdbdbd,#080808, 21-149 d,#080808,
-|6: 0-0 d,#444444, 1-1 d,#080808, 2-6 #626262,#080808, 7-149 d,#080808,
-|7: 0-0 d,#444444, 1-1 d,#080808, 2-6 #626262,#080808, 7-149 d,#080808,
-|8: 0-0 d,#444444, 1-1 d,#080808, 2-6 #626262,#080808, 7-149 d,#080808,
-|9: 0-0 d,#444444, 1-1 d,#080808, 2-6 #626262,#080808, 7-149 d,#080808,
-|10: 0-0 d,#444444, 1-1 d,#080808, 2-6 #626262,#080808, 7-149 d,#080808,
-|11: 0-0 d,#444444, 1-1 d,#080808, 2-6 #626262,#080808, 7-149 d,#080808,
-|12: 0-0 d,#444444, 1-1 d,#080808, 2-6 #626262,#080808, 7-149 d,#080808,
-|13: 0-0 d,#444444, 1-1 d,#080808, 2-6 #626262,#080808, 7-149 d,#080808,
-|14: 0-0 d,#444444, 1-1 d,#080808, 2-6 #626262,#080808, 7-149 d,#080808,
-|15: 0-0 d,#444444, 1-1 d,#080808, 2-6 #626262,#080808, 7-149 d,#080808,
-|16: 0-1 #ffffff,#626262, 2-129 #949494,#121212, 130-149 d,#121212,
-|17: 0-0 d,#444444, 1-1 d,#080808, 2-6 #626262,#080808, 7-10 #bdbdbd,#080808, 11-149 d,#080808,
-|18: 0-0 d,#444444, 1-1 d,#080808, 2-6 #626262,#080808, 7-10 #bdbdbd,#080808, 11-149 d,#080808,
+== style onelinespan grid=150x30
|19: 0-0 d,#444444, 1-1 d,#080808, 2-6 #626262,#080808, 7-15 #bdbdbd,#080808, 16-149 d,#080808,
|20: 0-0 d,#444444, 1-1 d,#080808, 2-6 #626262,#080808, 7-10 #bdbdbd,#080808, 11-149 d,#080808,
|21: 0-0 d,#444444, 1-1 d,#080808, 2-6 #626262,#080808, 7-10 #bdbdbd,#080808, 11-149 d,#080808,
-|22: 0-0 d,#444444, 1-1 d,#080808, 2-6 #626262,#080808, 7-10 #bdbdbd,#080808, 11-149 d,#080808,
|23: 0-0 d,#444444, 1-1 d,#080808, 2-6 #949494,#121212, 7-9 #bdbdbd,#080808, 10-15 #080808,#80a0ff, 16-18 #bdbdbd,#080808, 19-149 d,#080808,
-|24: 0-0 d,#444444, 1-1 d,#080808, 2-6 #626262,#080808, 7-17 #bdbdbd,#080808, 18-149 d,#080808,
-|25: 0-0 d,#444444, 1-1 d,#080808, 2-6 #626262,#080808, 7-10 #bdbdbd,#080808, 11-149 d,#080808,
-|26: 0-0 d,#444444, 1-1 d,#080808, 2-6 #626262,#080808, 7-149 d,#080808,
-|27: 0-0 d,#444444, 1-1 d,#080808, 2-6 #626262,#080808, 7-149 d,#080808,
-|28: 0-0 d,#444444, 1-1 d,#080808, 2-6 #626262,#080808, 7-149 d,#080808,
-|29: 0-0 d,#444444, 1-1 d,#080808, 2-6 #626262,#080808, 7-149 d,#080808,
== snap fullspan grid=150x30 cursor=9,21
-|New Newcol Joincol Find Grep Help Changelog Tutor Dump NextColor Debug Kill
-| /tmp/pardes-snap/lookrange/cwd/look.txt Save New Newtty Del
-| 1 r.txt:3-5
-| 2 r.txt:7:4-9
-| 3 r.txt:3:2-5:3
-| 4 r.txt:8:6-99:9
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-| /tmp/pardes-snap/lookrange/cwd/r.txt Save New Newtty Del
-| 1 aaaa
-| 2 bbbb
-| 3 cccc dccc
-| 4 dddd
-| 5 eeee
-| 6 ffff
-| 7 gg NEEDLE gg
-| 8 hhhh NEEDLE
-| 9 iiii
-|
-|
-|
-|
-== style fullspan
-|0: 0-74 #949494,#121212, 75-149 d,#121212,
-|1: 0-1 #ffffff,#262626, 2-129 #949494,#121212, 130-149 d,#121212,
-|2: 0-0 d,#444444, 1-1 d,#080808, 2-6 #626262,#080808, 7-15 #bdbdbd,#080808, 16-149 d,#080808,
-|3: 0-0 d,#444444, 1-1 d,#080808, 2-6 #626262,#080808, 7-17 #bdbdbd,#080808, 18-149 d,#080808,
-|4: 0-0 d,#444444, 1-1 d,#080808, 2-6 #626262,#080808, 7-19 #bdbdbd,#080808, 20-149 d,#080808,
-|5: 0-0 d,#444444, 1-1 d,#080808, 2-6 #626262,#080808, 7-20 #bdbdbd,#080808, 21-149 d,#080808,
-|6: 0-0 d,#444444, 1-1 d,#080808, 2-6 #626262,#080808, 7-149 d,#080808,
-|7: 0-0 d,#444444, 1-1 d,#080808, 2-6 #626262,#080808, 7-149 d,#080808,
-|8: 0-0 d,#444444, 1-1 d,#080808, 2-6 #626262,#080808, 7-149 d,#080808,
-|9: 0-0 d,#444444, 1-1 d,#080808, 2-6 #626262,#080808, 7-149 d,#080808,
-|10: 0-0 d,#444444, 1-1 d,#080808, 2-6 #626262,#080808, 7-149 d,#080808,
-|11: 0-0 d,#444444, 1-1 d,#080808, 2-6 #626262,#080808, 7-149 d,#080808,
-|12: 0-0 d,#444444, 1-1 d,#080808, 2-6 #626262,#080808, 7-149 d,#080808,
-|13: 0-0 d,#444444, 1-1 d,#080808, 2-6 #626262,#080808, 7-149 d,#080808,
-|14: 0-0 d,#444444, 1-1 d,#080808, 2-6 #626262,#080808, 7-149 d,#080808,
-|15: 0-0 d,#444444, 1-1 d,#080808, 2-6 #626262,#080808, 7-149 d,#080808,
-|16: 0-1 #ffffff,#626262, 2-129 #949494,#121212, 130-149 d,#121212,
-|17: 0-0 d,#444444, 1-1 d,#080808, 2-6 #626262,#080808, 7-10 #bdbdbd,#080808, 11-149 d,#080808,
-|18: 0-0 d,#444444, 1-1 d,#080808, 2-6 #626262,#080808, 7-10 #bdbdbd,#080808, 11-149 d,#080808,
+== style fullspan grid=150x30
|19: 0-0 d,#444444, 1-1 d,#080808, 2-6 #626262,#080808, 7-7 #bdbdbd,#080808, 8-149 #080808,#80a0ff,
|20: 0-0 d,#444444, 1-1 d,#080808, 2-6 #626262,#080808, 7-149 #080808,#80a0ff,
|21: 0-0 d,#444444, 1-1 d,#080808, 2-6 #949494,#121212, 7-9 #080808,#80a0ff, 10-10 #bdbdbd,#080808, 11-149 d,#080808,
-|22: 0-0 d,#444444, 1-1 d,#080808, 2-6 #626262,#080808, 7-10 #bdbdbd,#080808, 11-149 d,#080808,
|23: 0-0 d,#444444, 1-1 d,#080808, 2-6 #626262,#080808, 7-18 #bdbdbd,#080808, 19-149 d,#080808,
-|24: 0-0 d,#444444, 1-1 d,#080808, 2-6 #626262,#080808, 7-17 #bdbdbd,#080808, 18-149 d,#080808,
-|25: 0-0 d,#444444, 1-1 d,#080808, 2-6 #626262,#080808, 7-10 #bdbdbd,#080808, 11-149 d,#080808,
-|26: 0-0 d,#444444, 1-1 d,#080808, 2-6 #626262,#080808, 7-149 d,#080808,
-|27: 0-0 d,#444444, 1-1 d,#080808, 2-6 #626262,#080808, 7-149 d,#080808,
-|28: 0-0 d,#444444, 1-1 d,#080808, 2-6 #626262,#080808, 7-149 d,#080808,
-|29: 0-0 d,#444444, 1-1 d,#080808, 2-6 #626262,#080808, 7-149 d,#080808,
== snap stale grid=150x30 cursor=10,24
-|New Newcol Joincol Find Grep Help Changelog Tutor Dump NextColor Debug Kill
-| /tmp/pardes-snap/lookrange/cwd/look.txt Save New Newtty Del
-| 1 r.txt:3-5
-| 2 r.txt:7:4-9
-| 3 r.txt:3:2-5:3
-| 4 r.txt:8:6-99:9
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-| /tmp/pardes-snap/lookrange/cwd/r.txt Save New Newtty Del
-| 2 bbbb
-| 3 cccc dccc
-| 4 dddd
-| 5 eeee
-| 6 ffff
-| 7 gg NEEDLE gg
-| 8 hhhh NEEDLE
-| 9 iiii
-|
-|
-|
-|
-|
-== style stale
-|0: 0-74 #949494,#121212, 75-149 d,#121212,
-|1: 0-1 #ffffff,#262626, 2-129 #949494,#121212, 130-149 d,#121212,
-|2: 0-0 d,#444444, 1-1 d,#080808, 2-6 #626262,#080808, 7-15 #bdbdbd,#080808, 16-149 d,#080808,
-|3: 0-0 d,#444444, 1-1 d,#080808, 2-6 #626262,#080808, 7-17 #bdbdbd,#080808, 18-149 d,#080808,
-|4: 0-0 d,#444444, 1-1 d,#080808, 2-6 #626262,#080808, 7-19 #bdbdbd,#080808, 20-149 d,#080808,
-|5: 0-0 d,#444444, 1-1 d,#080808, 2-6 #626262,#080808, 7-20 #bdbdbd,#080808, 21-149 d,#080808,
-|6: 0-0 d,#444444, 1-1 d,#080808, 2-6 #626262,#080808, 7-149 d,#080808,
-|7: 0-0 d,#444444, 1-1 d,#080808, 2-6 #626262,#080808, 7-149 d,#080808,
-|8: 0-0 d,#444444, 1-1 d,#080808, 2-6 #626262,#080808, 7-149 d,#080808,
-|9: 0-0 d,#444444, 1-1 d,#080808, 2-6 #626262,#080808, 7-149 d,#080808,
-|10: 0-0 d,#444444, 1-1 d,#080808, 2-6 #626262,#080808, 7-149 d,#080808,
-|11: 0-0 d,#444444, 1-1 d,#080808, 2-6 #626262,#080808, 7-149 d,#080808,
-|12: 0-0 d,#444444, 1-1 d,#080808, 2-6 #626262,#080808, 7-149 d,#080808,
-|13: 0-0 d,#444444, 1-1 d,#080808, 2-6 #626262,#080808, 7-149 d,#080808,
-|14: 0-0 d,#444444, 1-1 d,#080808, 2-6 #626262,#080808, 7-149 d,#080808,
-|15: 0-0 d,#444444, 1-1 d,#080808, 2-6 #626262,#080808, 7-149 d,#080808,
-|16: 0-1 #ffffff,#626262, 2-129 #949494,#121212, 130-149 d,#121212,
+|17: 2 bbbb
+|18: 3 cccc dccc
+|19: 4 dddd
+|20: 5 eeee
+|21: 6 ffff
+|22: 7 gg NEEDLE gg
+|23: 8 hhhh NEEDLE
+|24: 9 iiii
+|25:
+== style stale grid=150x30
|17: 0-0 d,#121212, 1-1 d,#080808, 2-6 #626262,#080808, 7-10 #bdbdbd,#080808, 11-149 d,#080808,
|18: 0-0 d,#444444, 1-1 d,#080808, 2-6 #626262,#080808, 7-15 #bdbdbd,#080808, 16-149 d,#080808,
|19: 0-0 d,#444444, 1-1 d,#080808, 2-6 #626262,#080808, 7-10 #bdbdbd,#080808, 11-149 d,#080808,
@@ -273,193 +79,62 @@
|23: 0-0 d,#444444, 1-1 d,#080808, 2-6 #626262,#080808, 7-11 #bdbdbd,#080808, 12-149 #080808,#80a0ff,
|24: 0-0 d,#444444, 1-1 d,#080808, 2-6 #949494,#121212, 7-10 #080808,#80a0ff, 11-149 d,#080808,
|25: 0-0 d,#444444, 1-1 d,#080808, 2-6 #626262,#080808, 7-149 d,#080808,
-|26: 0-0 d,#444444, 1-1 d,#080808, 2-6 #626262,#080808, 7-149 d,#080808,
-|27: 0-0 d,#444444, 1-1 d,#080808, 2-6 #626262,#080808, 7-149 d,#080808,
-|28: 0-0 d,#444444, 1-1 d,#080808, 2-6 #626262,#080808, 7-149 d,#080808,
-|29: 0-0 d,#444444, 1-1 d,#080808, 2-6 #626262,#080808, 7-149 d,#080808,
== snap hit1 grid=150x30 cursor=15,23
-|New Newcol Joincol Find Grep Help Changelog Tutor Dump NextColor Debug Kill
-| /tmp/pardes-snap/lookrange/cwd/look.txt Save New Newtty Del
-| 1 r.txt:3-5
-| 2 r.txt:7:4-9
-| 3 r.txt:3:2-5:3
-| 4 r.txt:8:6-99:9
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-| /tmp/pardes-snap/lookrange/cwd/r.txt Save New Newtty Del
-| 1 aaaa
-| 2 bbbb
-| 3 cccc dccc
-| 4 dddd
-| 5 eeee
-| 6 ffff
-| 7 gg NEEDLE gg
-| 8 hhhh NEEDLE
-| 9 iiii
-|
-| /tmp/pardes-snap/lookrange/cwd/+Search Save New Newtty Del
-| 1 r.txt:7:4-9 gg NEEDLE gg
-| 2 r.txt:8:6-11 hhhh NEEDLE
-== style hit1
-|0: 0-74 #949494,#121212, 75-149 d,#121212,
-|1: 0-1 #ffffff,#262626, 2-129 #949494,#121212, 130-149 d,#121212,
-|2: 0-0 d,#444444, 1-1 d,#080808, 2-6 #626262,#080808, 7-15 #bdbdbd,#080808, 16-149 d,#080808,
-|3: 0-0 d,#444444, 1-1 d,#080808, 2-6 #626262,#080808, 7-17 #bdbdbd,#080808, 18-149 d,#080808,
-|4: 0-0 d,#444444, 1-1 d,#080808, 2-6 #626262,#080808, 7-19 #bdbdbd,#080808, 20-149 d,#080808,
-|5: 0-0 d,#444444, 1-1 d,#080808, 2-6 #626262,#080808, 7-20 #bdbdbd,#080808, 21-149 d,#080808,
-|6: 0-0 d,#444444, 1-1 d,#080808, 2-6 #626262,#080808, 7-149 d,#080808,
-|7: 0-0 d,#444444, 1-1 d,#080808, 2-6 #626262,#080808, 7-149 d,#080808,
-|8: 0-0 d,#444444, 1-1 d,#080808, 2-6 #626262,#080808, 7-149 d,#080808,
-|9: 0-0 d,#444444, 1-1 d,#080808, 2-6 #626262,#080808, 7-149 d,#080808,
-|10: 0-0 d,#444444, 1-1 d,#080808, 2-6 #626262,#080808, 7-149 d,#080808,
-|11: 0-0 d,#444444, 1-1 d,#080808, 2-6 #626262,#080808, 7-149 d,#080808,
-|12: 0-0 d,#444444, 1-1 d,#080808, 2-6 #626262,#080808, 7-149 d,#080808,
-|13: 0-0 d,#444444, 1-1 d,#080808, 2-6 #626262,#080808, 7-149 d,#080808,
-|14: 0-0 d,#444444, 1-1 d,#080808, 2-6 #626262,#080808, 7-149 d,#080808,
-|15: 0-0 d,#444444, 1-1 d,#080808, 2-6 #626262,#080808, 7-149 d,#080808,
-|16: 0-1 #ffffff,#626262, 2-129 #949494,#121212, 130-149 d,#121212,
+|17: 1 aaaa
+|18: 2 bbbb
+|19: 3 cccc dccc
+|20: 4 dddd
+|21: 5 eeee
+|22: 6 ffff
+|23: 7 gg NEEDLE gg
+|24: 8 hhhh NEEDLE
+|25: 9 iiii
+|27: /tmp/pardes-snap/lookrange/cwd/+Search Save New Newtty Del
+|28: 1 r.txt:7:4-9 gg NEEDLE gg
+|29: 2 r.txt:8:6-11 hhhh NEEDLE
+== style hit1 grid=150x30
|17: 0-0 d,#444444, 1-1 d,#080808, 2-6 #626262,#080808, 7-10 #bdbdbd,#080808, 11-149 d,#080808,
|18: 0-0 d,#444444, 1-1 d,#080808, 2-6 #626262,#080808, 7-10 #bdbdbd,#080808, 11-149 d,#080808,
|19: 0-0 d,#444444, 1-1 d,#080808, 2-6 #626262,#080808, 7-15 #bdbdbd,#080808, 16-149 d,#080808,
-|20: 0-0 d,#444444, 1-1 d,#080808, 2-6 #626262,#080808, 7-10 #bdbdbd,#080808, 11-149 d,#080808,
-|21: 0-0 d,#444444, 1-1 d,#080808, 2-6 #626262,#080808, 7-10 #bdbdbd,#080808, 11-149 d,#080808,
|22: 0-0 d,#444444, 1-1 d,#080808, 2-6 #626262,#080808, 7-10 #bdbdbd,#080808, 11-149 d,#080808,
|23: 0-0 d,#444444, 1-1 d,#080808, 2-6 #949494,#121212, 7-9 #bdbdbd,#080808, 10-15 #080808,#80a0ff, 16-18 #bdbdbd,#080808, 19-149 d,#080808,
|24: 0-0 d,#444444, 1-1 d,#080808, 2-6 #626262,#080808, 7-17 #bdbdbd,#080808, 18-149 d,#080808,
|25: 0-0 d,#444444, 1-1 d,#080808, 2-6 #626262,#080808, 7-10 #bdbdbd,#080808, 11-149 d,#080808,
-|26: 0-0 d,#444444, 1-1 d,#080808, 2-6 #626262,#080808, 7-149 d,#080808,
|27: 0-1 #ffffff,#262626, 2-129 #949494,#121212, 130-149 d,#121212,
|28: 0-0 d,#444444, 1-1 d,#080808, 2-6 #626262,#080808, 7-30 #bdbdbd,#080808, 31-149 d,#080808,
|29: 0-0 d,#121212, 1-1 d,#080808, 2-6 #626262,#080808, 7-30 #bdbdbd,#080808, 31-149 d,#080808,
== snap hit2 grid=150x30 cursor=17,22
-|New Newcol Joincol Find Grep Help Changelog Tutor Dump NextColor Debug Kill
-| /tmp/pardes-snap/lookrange/cwd/look.txt Save New Newtty Del
-| 1 r.txt:3-5
-| 2 r.txt:7:4-9
-| 3 r.txt:3:2-5:3
-| 4 r.txt:8:6-99:9
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-| /tmp/pardes-snap/lookrange/cwd/r.txt Save New Newtty Del
-| 3 cccc dccc
-| 4 dddd
-| 5 eeee
-| 6 ffff
-| 7 gg NEEDLE gg
-| 8 hhhh NEEDLE
-| 9 iiii
-|
-|
-|
-| /tmp/pardes-snap/lookrange/cwd/+Search Save New Newtty Del
-| 1 r.txt:7:4-9 gg NEEDLE gg
-| 2 r.txt:8:6-11 hhhh NEEDLE
-== style hit2
-|0: 0-74 #949494,#121212, 75-149 d,#121212,
-|1: 0-1 #ffffff,#262626, 2-129 #949494,#121212, 130-149 d,#121212,
-|2: 0-0 d,#444444, 1-1 d,#080808, 2-6 #626262,#080808, 7-15 #bdbdbd,#080808, 16-149 d,#080808,
-|3: 0-0 d,#444444, 1-1 d,#080808, 2-6 #626262,#080808, 7-17 #bdbdbd,#080808, 18-149 d,#080808,
-|4: 0-0 d,#444444, 1-1 d,#080808, 2-6 #626262,#080808, 7-19 #bdbdbd,#080808, 20-149 d,#080808,
-|5: 0-0 d,#444444, 1-1 d,#080808, 2-6 #626262,#080808, 7-20 #bdbdbd,#080808, 21-149 d,#080808,
-|6: 0-0 d,#444444, 1-1 d,#080808, 2-6 #626262,#080808, 7-149 d,#080808,
-|7: 0-0 d,#444444, 1-1 d,#080808, 2-6 #626262,#080808, 7-149 d,#080808,
-|8: 0-0 d,#444444, 1-1 d,#080808, 2-6 #626262,#080808, 7-149 d,#080808,
-|9: 0-0 d,#444444, 1-1 d,#080808, 2-6 #626262,#080808, 7-149 d,#080808,
-|10: 0-0 d,#444444, 1-1 d,#080808, 2-6 #626262,#080808, 7-149 d,#080808,
-|11: 0-0 d,#444444, 1-1 d,#080808, 2-6 #626262,#080808, 7-149 d,#080808,
-|12: 0-0 d,#444444, 1-1 d,#080808, 2-6 #626262,#080808, 7-149 d,#080808,
-|13: 0-0 d,#444444, 1-1 d,#080808, 2-6 #626262,#080808, 7-149 d,#080808,
-|14: 0-0 d,#444444, 1-1 d,#080808, 2-6 #626262,#080808, 7-149 d,#080808,
-|15: 0-0 d,#444444, 1-1 d,#080808, 2-6 #626262,#080808, 7-149 d,#080808,
-|16: 0-1 #ffffff,#626262, 2-129 #949494,#121212, 130-149 d,#121212,
+|17: 3 cccc dccc
+|18: 4 dddd
+|19: 5 eeee
+|20: 6 ffff
+|21: 7 gg NEEDLE gg
+|22: 8 hhhh NEEDLE
+|23: 9 iiii
+|24:
+|25:
+== style hit2 grid=150x30
|17: 0-0 d,#121212, 1-1 d,#080808, 2-6 #626262,#080808, 7-15 #bdbdbd,#080808, 16-149 d,#080808,
|18: 0-0 d,#121212, 1-1 d,#080808, 2-6 #626262,#080808, 7-10 #bdbdbd,#080808, 11-149 d,#080808,
|19: 0-0 d,#444444, 1-1 d,#080808, 2-6 #626262,#080808, 7-10 #bdbdbd,#080808, 11-149 d,#080808,
-|20: 0-0 d,#444444, 1-1 d,#080808, 2-6 #626262,#080808, 7-10 #bdbdbd,#080808, 11-149 d,#080808,
|21: 0-0 d,#444444, 1-1 d,#080808, 2-6 #626262,#080808, 7-18 #bdbdbd,#080808, 19-149 d,#080808,
|22: 0-0 d,#444444, 1-1 d,#080808, 2-6 #949494,#121212, 7-11 #bdbdbd,#080808, 12-17 #080808,#80a0ff, 18-149 d,#080808,
|23: 0-0 d,#444444, 1-1 d,#080808, 2-6 #626262,#080808, 7-10 #bdbdbd,#080808, 11-149 d,#080808,
|24: 0-0 d,#444444, 1-1 d,#080808, 2-6 #626262,#080808, 7-149 d,#080808,
|25: 0-0 d,#444444, 1-1 d,#080808, 2-6 #626262,#080808, 7-149 d,#080808,
-|26: 0-0 d,#444444, 1-1 d,#080808, 2-6 #626262,#080808, 7-149 d,#080808,
-|27: 0-1 #ffffff,#262626, 2-129 #949494,#121212, 130-149 d,#121212,
-|28: 0-0 d,#444444, 1-1 d,#080808, 2-6 #626262,#080808, 7-30 #bdbdbd,#080808, 31-149 d,#080808,
-|29: 0-0 d,#121212, 1-1 d,#080808, 2-6 #626262,#080808, 7-30 #bdbdbd,#080808, 31-149 d,#080808,
== snap back grid=150x30 cursor=15,22
-|New Newcol Joincol Find Grep Help Changelog Tutor Dump NextColor Debug Kill
-| /tmp/pardes-snap/lookrange/cwd/look.txt Save New Newtty Del
-| 1 r.txt:3-5
-| 2 r.txt:7:4-9
-| 3 r.txt:3:2-5:3
-| 4 r.txt:8:6-99:9
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-| /tmp/pardes-snap/lookrange/cwd/r.txt Save New Newtty Del
-| 2 bbbb
-| 3 cccc dccc
-| 4 dddd
-| 5 eeee
-| 6 ffff
-| 7 gg NEEDLE gg
-| 8 hhhh NEEDLE
-| 9 iiii
-|
-|
-| /tmp/pardes-snap/lookrange/cwd/+Search Save New Newtty Del
-| 1 r.txt:7:4-9 gg NEEDLE gg
-| 2 r.txt:8:6-11 hhhh NEEDLE
-== style back
-|0: 0-74 #949494,#121212, 75-149 d,#121212,
-|1: 0-1 #ffffff,#262626, 2-129 #949494,#121212, 130-149 d,#121212,
-|2: 0-0 d,#444444, 1-1 d,#080808, 2-6 #626262,#080808, 7-15 #bdbdbd,#080808, 16-149 d,#080808,
-|3: 0-0 d,#444444, 1-1 d,#080808, 2-6 #626262,#080808, 7-17 #bdbdbd,#080808, 18-149 d,#080808,
-|4: 0-0 d,#444444, 1-1 d,#080808, 2-6 #626262,#080808, 7-19 #bdbdbd,#080808, 20-149 d,#080808,
-|5: 0-0 d,#444444, 1-1 d,#080808, 2-6 #626262,#080808, 7-20 #bdbdbd,#080808, 21-149 d,#080808,
-|6: 0-0 d,#444444, 1-1 d,#080808, 2-6 #626262,#080808, 7-149 d,#080808,
-|7: 0-0 d,#444444, 1-1 d,#080808, 2-6 #626262,#080808, 7-149 d,#080808,
-|8: 0-0 d,#444444, 1-1 d,#080808, 2-6 #626262,#080808, 7-149 d,#080808,
-|9: 0-0 d,#444444, 1-1 d,#080808, 2-6 #626262,#080808, 7-149 d,#080808,
-|10: 0-0 d,#444444, 1-1 d,#080808, 2-6 #626262,#080808, 7-149 d,#080808,
-|11: 0-0 d,#444444, 1-1 d,#080808, 2-6 #626262,#080808, 7-149 d,#080808,
-|12: 0-0 d,#444444, 1-1 d,#080808, 2-6 #626262,#080808, 7-149 d,#080808,
-|13: 0-0 d,#444444, 1-1 d,#080808, 2-6 #626262,#080808, 7-149 d,#080808,
-|14: 0-0 d,#444444, 1-1 d,#080808, 2-6 #626262,#080808, 7-149 d,#080808,
-|15: 0-0 d,#444444, 1-1 d,#080808, 2-6 #626262,#080808, 7-149 d,#080808,
-|16: 0-1 #ffffff,#626262, 2-129 #949494,#121212, 130-149 d,#121212,
+|17: 2 bbbb
+|18: 3 cccc dccc
+|19: 4 dddd
+|20: 5 eeee
+|21: 6 ffff
+|22: 7 gg NEEDLE gg
+|23: 8 hhhh NEEDLE
+|24: 9 iiii
+== style back grid=150x30
|17: 0-0 d,#121212, 1-1 d,#080808, 2-6 #626262,#080808, 7-10 #bdbdbd,#080808, 11-149 d,#080808,
|18: 0-0 d,#444444, 1-1 d,#080808, 2-6 #626262,#080808, 7-15 #bdbdbd,#080808, 16-149 d,#080808,
-|19: 0-0 d,#444444, 1-1 d,#080808, 2-6 #626262,#080808, 7-10 #bdbdbd,#080808, 11-149 d,#080808,
-|20: 0-0 d,#444444, 1-1 d,#080808, 2-6 #626262,#080808, 7-10 #bdbdbd,#080808, 11-149 d,#080808,
|21: 0-0 d,#444444, 1-1 d,#080808, 2-6 #626262,#080808, 7-10 #bdbdbd,#080808, 11-149 d,#080808,
|22: 0-0 d,#444444, 1-1 d,#080808, 2-6 #949494,#121212, 7-9 #bdbdbd,#080808, 10-15 #080808,#80a0ff, 16-18 #bdbdbd,#080808, 19-149 d,#080808,
|23: 0-0 d,#444444, 1-1 d,#080808, 2-6 #626262,#080808, 7-17 #bdbdbd,#080808, 18-149 d,#080808,
|24: 0-0 d,#444444, 1-1 d,#080808, 2-6 #626262,#080808, 7-10 #bdbdbd,#080808, 11-149 d,#080808,
-|25: 0-0 d,#444444, 1-1 d,#080808, 2-6 #626262,#080808, 7-149 d,#080808,
-|26: 0-0 d,#444444, 1-1 d,#080808, 2-6 #626262,#080808, 7-149 d,#080808,
-|27: 0-1 #ffffff,#262626, 2-129 #949494,#121212, 130-149 d,#121212,
-|28: 0-0 d,#444444, 1-1 d,#080808, 2-6 #626262,#080808, 7-30 #bdbdbd,#080808, 31-149 d,#080808,
-|29: 0-0 d,#121212, 1-1 d,#080808, 2-6 #626262,#080808, 7-30 #bdbdbd,#080808, 31-149 d,#080808,
diff --git a/test/snapshots/lsp-rename.golden b/test/snapshots/lsp-rename.golden
index 556f5324..e21228e4 100644
--- a/test/snapshots/lsp-rename.golden
+++ b/test/snapshots/lsp-rename.golden
@@ -16,60 +16,9 @@
| 13 _ = helper;
| 14 }
| 15
-|
-|
-|
-|
-|
-|
-|
== snap undone grid=110x24 cursor=17,9
-|New Newcol Joincol Find Grep Help Changelog Tutor Dump NextColor Debug Kill
-| /tmp/pardes-snap/lsp-rename/cwd/rename.zig * Save New Newtty Del
-| 1 const std = @import("std");
-| 2
-| 3 fn helper(x: u32) u32 {
-| 4 return x + 1;
-| 5 }
-| 6
-| 7 pub fn main() void {
-| 8 _ = helper(41);
-| 9 }
-| 10
-| 11 fn shadowed() void {
-| 12 const helper: u32 = 7;
-| 13 _ = helper;
-| 14 }
-| 15
-|
-|
-|
-|
-|
-|
-|
+|4: 3 fn helper(x: u32) u32 {
+|9: 8 _ = helper(41);
== snap redone grid=110x24 cursor=17,9
-|New Newcol Joincol Find Grep Help Changelog Tutor Dump NextColor Debug Kill
-| /tmp/pardes-snap/lsp-rename/cwd/rename.zig * Save New Newtty Del
-| 1 const std = @import("std");
-| 2
-| 3 fn renamed_helper(x: u32) u32 {
-| 4 return x + 1;
-| 5 }
-| 6
-| 7 pub fn main() void {
-| 8 _ = renamed_helper(41);
-| 9 }
-| 10
-| 11 fn shadowed() void {
-| 12 const helper: u32 = 7;
-| 13 _ = helper;
-| 14 }
-| 15
-|
-|
-|
-|
-|
-|
-|
+|4: 3 fn renamed_helper(x: u32) u32 {
+|9: 8 _ = renamed_helper(41);
diff --git a/test/snapshots/lsp.golden b/test/snapshots/lsp.golden
index 3bffc66c..3a5b0af8 100644
--- a/test/snapshots/lsp.golden
+++ b/test/snapshots/lsp.golden
@@ -11,277 +11,16 @@
| 8 _ = helper(41);
| 9 }
| 10
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
== snap cursor grid=120x40 cursor=17,9
-|New Newcol Joincol Find Grep Help Changelog Tutor Dump NextColor Debug Kill
-| /tmp/pardes-snap/lsp/cwd/a.zig Save New Newtty Del
-| 1 const std = @import("std");
-| 2
-| 3 fn helper(x: u32) u32 {
-| 4 return x + 1;
-| 5 }
-| 6
-| 7 pub fn main() void {
-| 8 _ = helper(41);
-| 9 }
-| 10
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
== snap definition grid=120x40 cursor=15,4
-|New Newcol Joincol Find Grep Help Changelog Tutor Dump NextColor Debug Kill
-| /tmp/pardes-snap/lsp/cwd/a.zig Save New Newtty Del
-| 1 const std = @import("std");
-| 2
-| 3 fn helper(x: u32) u32 {
-| 4 return x + 1;
-| 5 }
-| 6
-| 7 pub fn main() void {
-| 8 _ = helper(41);
-| 9 }
-| 10
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
== snap hover grid=120x40 cursor=15,4
-|New Newcol Joincol Find Grep Help Changelog Tutor Dump NextColor Debug Kill
-| /tmp/pardes-snap/lsp/cwd/a.zig Save New Newtty Del
-| 1 const std = @import("std");
-| 2
-| 3 fn helper(x: u32) u32 {
-| 4 return x + 1;
-| 5 }
-| 6
-| 7 pub fn main() void {
-| 8 _ = helper(41);
-| 9 }
-| 10
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-| /tmp/pardes-snap/lsp/cwd/+Hover Save New Newtty Del
-| 1 fn helper(x: u32) u32
-| 2 (fn (u32) u32)
+|37: /tmp/pardes-snap/lsp/cwd/+Hover Save New Newtty Del
+|38: 1 fn helper(x: u32) u32
+|39: 2 (fn (u32) u32)
== snap symbols grid=120x40 cursor=15,4
-|New Newcol Joincol Find Grep Help Changelog Tutor Dump NextColor Debug Kill
-| /tmp/pardes-snap/lsp/cwd/a.zig Save New Newtty Del
-| 1 const std = @import("std");
-| 2
-| 3 fn helper(x: u32) u32 {
-| 4 return x + 1;
-| 5 }
-| 6
-| 7 pub fn main() void {
-| 8 _ = helper(41);
-| 9 }
-| 10
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-| /tmp/pardes-snap/lsp/cwd/+Search Save New Newtty Del
-| 1 a.zig:1:7-9 std
-| 2 a.zig:3:4-9 helper fn helper(x: u32) u32
-| 3 a.zig:7:8-11 main fn main() void
-| /tmp/pardes-snap/lsp/cwd/+Hover Save New Newtty Del
-| 1 fn helper(x: u32) u32
-| 2 (fn (u32) u32)
+|33: /tmp/pardes-snap/lsp/cwd/+Search Save New Newtty Del
+|34: 1 a.zig:1:7-9 std
+|35: 2 a.zig:3:4-9 helper fn helper(x: u32) u32
+|36: 3 a.zig:7:8-11 main fn main() void
== snap step grid=120x40 cursor=15,2
-|New Newcol Joincol Find Grep Help Changelog Tutor Dump NextColor Debug Kill
-| /tmp/pardes-snap/lsp/cwd/a.zig Save New Newtty Del
-| 1 const std = @import("std");
-| 2
-| 3 fn helper(x: u32) u32 {
-| 4 return x + 1;
-| 5 }
-| 6
-| 7 pub fn main() void {
-| 8 _ = helper(41);
-| 9 }
-| 10
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-| /tmp/pardes-snap/lsp/cwd/+Search Save New Newtty Del
-| 1 a.zig:1:7-9 std
-| 2 a.zig:3:4-9 helper fn helper(x: u32) u32
-| 3 a.zig:7:8-11 main fn main() void
-| /tmp/pardes-snap/lsp/cwd/+Hover Save New Newtty Del
-| 1 fn helper(x: u32) u32
-| 2 (fn (u32) u32)
== snap nothing grid=120x40 cursor=7,4
-|New Newcol Joincol Find Grep Help Changelog Tutor Dump NextColor Debug Kill
-| /tmp/pardes-snap/lsp/cwd/a.zig Save New Newtty Del
-| 1 const std = @import("std");
-| 2
-| 3 fn helper(x: u32) u32 {
-| 4 return x + 1;
-| 5 }
-| 6
-| 7 pub fn main() void {
-| 8 _ = helper(41);
-| 9 }
-| 10
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-| /tmp/pardes-snap/lsp/cwd/+Search Save New Newtty Del
-| 1 a.zig:1:7-9 std
-| 2 a.zig:3:4-9 helper fn helper(x: u32) u32
-| 3 a.zig:7:8-11 main fn main() void
-| /tmp/pardes-snap/lsp/cwd/+Hover Save New Newtty Del
-| 1 fn helper(x: u32) u32
-| 2 (fn (u32) u32)
diff --git a/test/snapshots/lspcomplete.golden b/test/snapshots/lspcomplete.golden
index fbc8dec9..abfe91b9 100644
--- a/test/snapshots/lspcomplete.golden
+++ b/test/snapshots/lspcomplete.golden
@@ -14,318 +14,25 @@
| 11
| 12 // note. see below
| 13
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
== snap indent grid=120x40 cursor=11,11
-|New Newcol Joincol Find Grep Help Changelog Tutor Dump NextColor Debug Kill
-|^ /tmp/pardes-snap/lspcomplete/cwd/a.zig * Save New Newtty Del
-| 1 const Shade = enum {
-| 2 verdigris,
-| 3 cinnabar,
-| 4 };
-| 5
-| 6 fn pick(s: Shade) u8 {
-| 7 return switch (s) {
-| 8
-| 9 };
-| 10 }
-| 11
-| 12 // note. see below
-| 13
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
+|1: ^ /tmp/pardes-snap/lspcomplete/cwd/a.zig * Save New Newtty Del
+|11: 10 }
== snap commentindent grid=120x40 cursor=19,13
-|New Newcol Joincol Find Grep Help Changelog Tutor Dump NextColor Debug Kill
-|^ /tmp/pardes-snap/lspcomplete/cwd/a.zig * Save New Newtty Del
-| 1 const Shade = enum {
-| 2 verdigris,
-| 3 cinnabar,
-| 4 };
-| 5
-| 6 fn pick(s: Shade) u8 {
-| 7 return switch (s) {
-| 8
-| 9 };
-| 10 }
-| 11
-| 12 // note. see below
-| 13
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
+|13: 12 // note. see below
== snap athedot grid=120x40 cursor=16,9
-|New Newcol Joincol Find Grep Help Changelog Tutor Dump NextColor Debug Kill
-|^ /tmp/pardes-snap/lspcomplete/cwd/a.zig * Save New Newtty Del
-| 1 const Shade = enum {
-| 2 verdigris,
-| 3 cinnabar,
-| 4 };
-| 5
-| 6 fn pick(s: Shade) u8 {
-| 7 return switch (s) {
-| 8 .
-| 9 };
-| 10 }
-| 11
-| 12 // note. see below
-| 13
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
+|9: 8 .
== snap completion grid=120x40 cursor=16,9
-|New Newcol Joincol Find Grep Help Changelog Tutor Dump NextColor Debug Kill
-|^ /tmp/pardes-snap/lspcomplete/cwd/a.zig * Save New Newtty Del
-| 1 const Shade = enum {
-| 2 verdigris,
-| 3 cinnabar,
-| 4 };
-| 5
-| 6 fn pick(s: Shade) u8 {
-| 7 return switch (s) {
-| 8 .
-| 9 };
-| 10 }
-| 11
-| 12 // note. see below
-| 13
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-| /tmp/pardes-snap/lspcomplete/cwd/+Search Save New Newtty Del
-| 1 a.zig:2:5-13 verdigris verdigris,
-| 2 a.zig:3:5-12 cinnabar cinnabar,
+|37: /tmp/pardes-snap/lspcomplete/cwd/+Search Save New Newtty Del
+|38: 1 a.zig:2:5-13 verdigris verdigris,
+|39: 2 a.zig:3:5-12 cinnabar cinnabar,
== snap refill grid=120x40 cursor=16,9
-|New Newcol Joincol Find Grep Help Changelog Tutor Dump NextColor Debug Kill
-|^ /tmp/pardes-snap/lspcomplete/cwd/a.zig * Save New Newtty Del
-| 1 const Shade = enum {
-| 2 verdigris,
-| 3 cinnabar,
-| 4 };
-| 5
-| 6 fn pick(s: Shade) u8 {
-| 7 return switch (s) {
-| 8 .
-| 9 };
-| 10 }
-| 11
-| 12 // note. see below
-| 13
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-| /tmp/pardes-snap/lspcomplete/cwd/+Search Save New Newtty Del
-| 1 a.zig:2:5-13 verdigris verdigris,
-| 2 a.zig:3:5-12 cinnabar cinnabar,
== snap step grid=120x40 cursor=19,3
-|New Newcol Joincol Find Grep Help Changelog Tutor Dump NextColor Debug Kill
-| /tmp/pardes-snap/lspcomplete/cwd/a.zig * Save New Newtty Del
-| 1 const Shade = enum {
-| 2 verdigris,
-| 3 cinnabar,
-| 4 };
-| 5
-| 6 fn pick(s: Shade) u8 {
-| 7 return switch (s) {
-| 8 .
-| 9 };
-| 10 }
-| 11
-| 12 // note. see below
-| 13
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-| /tmp/pardes-snap/lspcomplete/cwd/+Search Save New Newtty Del
-| 1 a.zig:2:5-13 verdigris verdigris,
-| 2 a.zig:3:5-12 cinnabar cinnabar,
+|1: /tmp/pardes-snap/lspcomplete/cwd/a.zig * Save New Newtty Del
== snap txtindent grid=120x40 cursor=15,2
|New Newcol Joincol Find Grep Help Changelog Tutor Dump NextColor Debug Kill
|^ /tmp/pardes-snap/lspcomplete/cwd/notes.txt * Save New Newtty Del
| 1 abc. def ghi
| 2
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
== snap nosemi grid=100x18 cursor=29,8
|New Newcol Joincol Find Grep Help Changelog Tutor Dump NextColor Debug Kill
|^ /tmp/pardes-snap/lspcomplete/cwd/c.zig * Save New Newtty Del
diff --git a/test/snapshots/lspcompletemoved.golden b/test/snapshots/lspcompletemoved.golden
index 9314936d..b9dd9bc3 100644
--- a/test/snapshots/lspcompletemoved.golden
+++ b/test/snapshots/lspcompletemoved.golden
@@ -14,11 +14,6 @@
| 11
| 12 // note.x see below
| 13
-|
-|
-|
-|
-|
== file buffer
const Shade = enum {
verdigris,
diff --git a/test/snapshots/lspdebug.golden b/test/snapshots/lspdebug.golden
index d6790d95..91ab400a 100644
--- a/test/snapshots/lspdebug.golden
+++ b/test/snapshots/lspdebug.golden
@@ -12,214 +12,33 @@
| 9 _ = v;
| 10 }
| 11
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
== snap ctrlclick grid=120x44 cursor=15,4
-|New Newcol Joincol Find Grep Help Changelog Tutor Dump NextColor Debug Kill
-| /tmp/pardes-snap/lspdebug/cwd/z.zig Save New Newtty Del
-| 1 const std = @import("std");
-| 2
-| 3 fn helper() u32 {
-| 4 return 3;
-| 5 }
-| 6
-| 7 pub fn main() void {
-| 8 const v = helper();
-| 9 _ = v;
-| 10 }
-| 11
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
== snap plainclick grid=120x44 cursor=21,9
-|New Newcol Joincol Find Grep Help Changelog Tutor Dump NextColor Debug Kill
-| /tmp/pardes-snap/lspdebug/cwd/z.zig Save New Newtty Del
-| 1 const std = @import("std");
-| 2
-| 3 fn helper() u32 {
-| 4 return 3;
-| 5 }
-| 6
-| 7 pub fn main() void {
-| 8 const v = helper();
-| 9 _ = v;
-| 10 }
-| 11
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
== snap why grid=120x44 cursor=7,4
-|New Newcol Joincol Find Grep Help Changelog Tutor Dump NextColor Debug Kill
-| /tmp/pardes-snap/lspdebug/cwd/z.zig Save New Newtty Del
-| 1 const std = @import("std");
-| 2
-| 3 fn helper() u32 {
-| 4 return 3;
-| 5 }
-| 6
-| 7 pub fn main() void {
-| 8 const v = helper();
-| 9 _ = v;
-| 10 }
-| 11
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-| /tmp/pardes-snap/lspdebug/cwd/+Lsp Save New Newtty Del
-| 1 lsp explain — the definition query at byte 29 of z.zig
-| 2
-| 3 zig lib dir: /usr/lib/zig (open) — `std` imports resolve
-| 4 parsed 122 bytes, 0 syntax error(s)
-| 5 position context: .empty
-| 6 STOP: nothing to resolve in a .empty context — `gd` only answers on
-| 7 an identifier, a field access, a label, an enum literal or an @import string.
-| 8
-| 9 0 row(s)
+|34: /tmp/pardes-snap/lspdebug/cwd/+Lsp Save New Newtty Del
+|35: 1 lsp explain — the definition query at byte 29 of z.zig
+|36: 2
+|37: 3 zig lib dir: /usr/lib/zig (open) — `std` imports resolve
+|38: 4 parsed 122 bytes, 0 syntax error(s)
+|39: 5 position context: .empty
+|40: 6 STOP: nothing to resolve in a .empty context — `gd` only answers on
+|41: 7 an identifier, a field access, a label, an enum literal or an @import string.
+|42: 8
+|43: 9 0 row(s)
== snap info grid=120x44 cursor=7,4
-|New Newcol Joincol Find Grep Help Changelog Tutor Dump NextColor Debug Kill
-| /tmp/pardes-snap/lspdebug/cwd/z.zig Save New Newtty Del
-| 1 const std = @import("std");
-| 2
-| 3 fn helper() u32 {
-| 4 return 3;
-| 5 }
-| 6
-| 7 pub fn main() void {
-| 8 const v = helper();
-| 9 _ = v;
-| 10 }
-| 11
-|
-|
-|
-|
-|
-| /tmp/pardes-snap/lspdebug/cwd/+Lsp Save New Newtty Del
-| 1 backend: zls-inproc
-| 2 zls: 0.16.1-dev+3e0d0820 (compiled in — no server process, no JSON-RPC)
-| 3 zig lib dir: /usr/lib/zig [OK]
-| 4 offsets: utf-8 walk caps: 512 files, 2000 rows
-| 5
-| 6 dependency imports gd can follow (8):
-| 7 zls /home/goblin/00-projects/0x4200.cafe/02-pardes-code/zig-pkg/zls-0.16.1-dev-rmm5ftfOJgAzIdWUGVB0↩
-| 8ycFbud2O3viKnGF1HZgfKZJ/src/zls.zig
-| 8 tree-sitter /home/goblin/00-projects/0x4200.cafe/02-pardes-code/zig-pkg/tree_sitter-0.26.0-8heIf3CaAQB4SSum↩
-| oGzq3gLSz2rkvXxcKFyskRWqDGBz/src/root.zig
-| 9 zstbi /home/goblin/00-projects/0x4200.cafe/02-pardes-code/zig-pkg/zstbi-0.11.0-dev-L0Ea_3GWBwAh7m54XX↩
-| 055vwLKPTPij5hyqyeq92MXPE2/src/zstbi.zig
-| 10 mvzr /home/goblin/00-projects/0x4200.cafe/02-pardes-code/zig-pkg/mvzr-0.3.9-ZSOky6t2AQCA7efmm5EYbPb5↩
-| sOdbXa4EFsUgYbQ6hZv9/src/mvzr.zig
-| 11 mupdf /home/goblin/00-projects/0x4200.cafe/02-pardes-code/src/pdf.zig
-| /tmp/pardes-snap/lspdebug/cwd/+Lsp Save New Newtty Del
-| 1 lsp explain — the definition query at byte 29 of z.zig
-| 2
-| 3 zig lib dir: /usr/lib/zig (open) — `std` imports resolve
-| 4 parsed 122 bytes, 0 syntax error(s)
-| 5 position context: .empty
-| 6 STOP: nothing to resolve in a .empty context — `gd` only answers on
-| 7 an identifier, a field access, a label, an enum literal or an @import string.
-| 8
-| 9 0 row(s)
+|18: /tmp/pardes-snap/lspdebug/cwd/+Lsp Save New Newtty Del
+|19: 1 backend: zls-inproc
+|20: 2 zls: 0.16.1-dev+3e0d0820 (compiled in — no server process, no JSON-RPC)
+|21: 3 zig lib dir: /usr/lib/zig [OK]
+|22: 4 offsets: utf-8 walk caps: 512 files, 2000 rows
+|23: 5
+|24: 6 dependency imports gd can follow (8):
+|25: 7 zls /home/goblin/00-projects/0x4200.cafe/02-pardes-code/zig-pkg/zls-0.16.1-dev-rmm5ftfOJgAzIdWUGVB0↩
+|26: 8ycFbud2O3viKnGF1HZgfKZJ/src/zls.zig
+|27: 8 tree-sitter /home/goblin/00-projects/0x4200.cafe/02-pardes-code/zig-pkg/tree_sitter-0.26.0-8heIf3CaAQB4SSum↩
+|28: oGzq3gLSz2rkvXxcKFyskRWqDGBz/src/root.zig
+|29: 9 zstbi /home/goblin/00-projects/0x4200.cafe/02-pardes-code/zig-pkg/zstbi-0.11.0-dev-L0Ea_3GWBwAh7m54XX↩
+|30: 055vwLKPTPij5hyqyeq92MXPE2/src/zstbi.zig
+|31: 10 mvzr /home/goblin/00-projects/0x4200.cafe/02-pardes-code/zig-pkg/mvzr-0.3.9-ZSOky6t2AQCA7efmm5EYbPb5↩
+|32: sOdbXa4EFsUgYbQ6hZv9/src/mvzr.zig
+|33: 11 mupdf /home/goblin/00-projects/0x4200.cafe/02-pardes-code/src/pdf.zig
diff --git a/test/snapshots/lsprelpath.golden b/test/snapshots/lsprelpath.golden
index ae6a8605..8dfc5e14 100644
--- a/test/snapshots/lsprelpath.golden
+++ b/test/snapshots/lsprelpath.golden
@@ -34,41 +34,14 @@
| 1 /tmp/pardes-snap/lsprelpath/cwd/shade.zig:2:5-13 verdigris verdigris,
| 2 /tmp/pardes-snap/lsprelpath/cwd/shade.zig:3:5-12 cinnabar cinnabar,
== snap abslook grid=100x34 cursor=19,18
-|New Newcol Joincol Find Grep Help Changelog Tutor Dump NextColor Debug Kill
-| /tmp/pardes-snap/lsprelpath/cwd/sub/parent.zig * Save New Newtty Del
-| 1 const shade = @import("../shade.zig");
-| 2
-| 3 pub fn pick(s: shade.Shade) u8 {
-| 4 return switch (s) {
-| 5 .
-| 6 };
-| 7 }
-| 8
-|
-|
-|
-|
-|
-|
-| /tmp/pardes-snap/lsprelpath/cwd/shade.zig Save New Newtty Del
-| 1 pub const Shade = enum {
-| 2 verdigris,
-| 3 cinnabar,
-| 4 };
-| 5
-|
-|
-|
-|
-|
-|
-|
-|
-|
-| /tmp/pardes-snap/lsprelpath/cwd/sub/+Search Save New Newtty Del
-| 1 /tmp/pardes-snap/lsprelpath/cwd/shade.zig:2:5-13 verdigris verdigris,
-| 2 /tmp/pardes-snap/lsprelpath/cwd/shade.zig:3:5-12 cinnabar cinnabar,
-== style abslook
+|1: /tmp/pardes-snap/lsprelpath/cwd/sub/parent.zig * Save New Newtty Del
+|16: /tmp/pardes-snap/lsprelpath/cwd/shade.zig Save New Newtty Del
+|17: 1 pub const Shade = enum {
+|18: 2 verdigris,
+|19: 3 cinnabar,
+|20: 4 };
+|21: 5
+== style abslook grid=100x34
|0: 0-74 #949494,#121212, 75-99 d,#121212,
|1: 0-1 #ffffff,#262626, 2-79 #949494,#121212, 80-99 d,#121212,
|2: 0-0 d,#444444, 1-1 d,#080808, 2-6 #626262,#080808, 7-20 #bdbdbd,#080808, 21-27 #cf87e8,#080808,b 28-28 #bdbdbd,#080808, 29-42 #e3c78a,#080808, 43-44 #bdbdbd,#080808, 45-99 d,#080808,
@@ -139,41 +112,14 @@
| 1 inner/tint.zig:2:5-9 ochre ochre,
| 2 inner/tint.zig:3:5-10 indigo indigo,
== snap sublook grid=100x34 cursor=15,18
-|New Newcol Joincol Find Grep Help Changelog Tutor Dump NextColor Debug Kill
-| /tmp/pardes-snap/lsprelpath/cwd/sub/subdir.zig * Save New Newtty Del
-| 1 const tint = @import("inner/tint.zig");
-| 2
-| 3 pub fn hue(t: tint.Tint) u8 {
-| 4 return switch (t) {
-| 5 .
-| 6 };
-| 7 }
-| 8
-|
-|
-|
-|
-|
-|
-| /tmp/pardes-snap/lsprelpath/cwd/sub/inner/tint.zig Save New Newtty Del
-| 1 pub const Tint = enum {
-| 2 ochre,
-| 3 indigo,
-| 4 };
-| 5
-|
-|
-|
-|
-|
-|
-|
-|
-|
-| /tmp/pardes-snap/lsprelpath/cwd/sub/+Search Save New Newtty Del
-| 1 inner/tint.zig:2:5-9 ochre ochre,
-| 2 inner/tint.zig:3:5-10 indigo indigo,
-== style sublook
+|1: /tmp/pardes-snap/lsprelpath/cwd/sub/subdir.zig * Save New Newtty Del
+|16: /tmp/pardes-snap/lsprelpath/cwd/sub/inner/tint.zig Save New Newtty Del
+|17: 1 pub const Tint = enum {
+|18: 2 ochre,
+|19: 3 indigo,
+|20: 4 };
+|21: 5
+== style sublook grid=100x34
|0: 0-74 #949494,#121212, 75-99 d,#121212,
|1: 0-1 #ffffff,#262626, 2-79 #949494,#121212, 80-99 d,#121212,
|2: 0-0 d,#444444, 1-1 d,#080808, 2-6 #626262,#080808, 7-19 #bdbdbd,#080808, 20-26 #cf87e8,#080808,b 27-27 #bdbdbd,#080808, 28-43 #e3c78a,#080808, 44-45 #bdbdbd,#080808, 46-99 d,#080808,
@@ -209,37 +155,3 @@
|32: 0-0 d,#444444, 1-1 d,#080808, 2-6 #626262,#080808, 7-40 #bdbdbd,#080808, 41-99 d,#080808,
|33: 0-0 d,#121212, 1-1 d,#080808, 2-6 #626262,#080808, 7-43 #bdbdbd,#080808, 44-99 d,#080808,
== snap clicked grid=100x34 cursor=16,19
-|New Newcol Joincol Find Grep Help Changelog Tutor Dump NextColor Debug Kill
-| /tmp/pardes-snap/lsprelpath/cwd/sub/subdir.zig * Save New Newtty Del
-| 1 const tint = @import("inner/tint.zig");
-| 2
-| 3 pub fn hue(t: tint.Tint) u8 {
-| 4 return switch (t) {
-| 5 .
-| 6 };
-| 7 }
-| 8
-|
-|
-|
-|
-|
-|
-| /tmp/pardes-snap/lsprelpath/cwd/sub/inner/tint.zig Save New Newtty Del
-| 1 pub const Tint = enum {
-| 2 ochre,
-| 3 indigo,
-| 4 };
-| 5
-|
-|
-|
-|
-|
-|
-|
-|
-|
-| /tmp/pardes-snap/lsprelpath/cwd/sub/+Search Save New Newtty Del
-| 1 inner/tint.zig:2:5-9 ochre ochre,
-| 2 inner/tint.zig:3:5-10 indigo indigo,
diff --git a/test/snapshots/markup.golden b/test/snapshots/markup.golden
index 43d92885..d03e6b19 100644
--- a/test/snapshots/markup.golden
+++ b/test/snapshots/markup.golden
@@ -10,20 +10,7 @@
| 7 fn widget() u8 { return 99; }
| 8 ```
| 9
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-== style typst
+== style typst grid=92x24
|0: 0-74 #949494,#121212, 75-91 d,#121212,
|1: 0-1 #ffffff,#626262, 2-71 #949494,#121212, 72-91 d,#121212,
|2: 0-0 d,#444444, 1-1 d,#080808, 2-6 #949494,#121212, 7-21 #cf87e8,#080808,b 22-91 d,#080808,
@@ -59,21 +46,7 @@
| 6 fn gadget() u8 { return 77; }
| 7 ```
| 8
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-== style markdown
+== style markdown grid=92x24
|0: 0-74 #949494,#121212, 75-91 d,#121212,
|1: 0-1 #ffffff,#626262, 2-71 #949494,#121212, 72-91 d,#121212,
|2: 0-0 d,#444444, 1-1 d,#080808, 2-6 #949494,#121212, 7-8 #bdbdbd,#080808, 9-30 #cf87e8,#080808,b 31-38 #e3c78a,#080808, 39-91 d,#080808,
diff --git a/test/snapshots/modal.golden b/test/snapshots/modal.golden
index a336378b..f09badc5 100644
--- a/test/snapshots/modal.golden
+++ b/test/snapshots/modal.golden
@@ -18,80 +18,9 @@
| /tmp/pardes-snap/modal/cwd Save New Newtty Del F
| ls
| words.txt
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
== snap moved grid=100x30 cursor=8,4
-|New Newcol Joincol Find Grep Help Changelog Tutor Dump NextColor Debug Kill
-| /tmp/pardes-snap/modal/cwd Save New Newtty Del F /tmp/pardes-snap/modal/cwd Save New Newtty Del F
-| ls ls
-| words.txt words.txt
-| printf 'one two three\nfour five six\nseven ei
-| ght nine\n'
-| one two three
-| four five six
-| seven eight nine
-|
-|
-|
-|
-|
-|
-|
-| /tmp/pardes-snap/modal/cwd Save New Newtty Del F
-| ls
-| words.txt
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
== snap xsel grid=100x30 cursor=48,4
-|New Newcol Joincol Find Grep Help Changelog Tutor Dump NextColor Debug Kill
-| /tmp/pardes-snap/modal/cwd Save New Newtty Del F /tmp/pardes-snap/modal/cwd Save New Newtty Del F
-| ls ls
-| words.txt words.txt
-| printf 'one two three\nfour five six\nseven ei
-| ght nine\n'
-| one two three
-| four five six
-| seven eight nine
-|
-|
-|
-|
-|
-|
-|
-| /tmp/pardes-snap/modal/cwd Save New Newtty Del F
-| ls
-| words.txt
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-== style xsel
+== style xsel grid=100x30
|0: 0-74 #949494,#121212, 75-99 d,#121212,
|1: 0-1 #ffffff,#626262, 2-49 #949494,#121212, 50-51 #ffffff,#262626, 52-99 #949494,#121212,
|2: 0-0 d,#444444, 1-1 d,#080808, 2-3 #bdbdbd,#080808, 4-49 d,#080808, 50-50 d,#444444, 51-51 d,#080808, 52-53 #bdbdbd,#080808, 54-99 d,#080808,
@@ -123,250 +52,16 @@
|28: 0-0 d,#444444, 1-49 d,#080808, 50-50 d,#444444, 51-99 d,#080808,
|29: 0-0 d,#444444, 1-49 d,#080808, 50-50 d,#444444, 51-99 d,#080808,
== snap xsel2 grid=100x30 cursor=13,5
-|New Newcol Joincol Find Grep Help Changelog Tutor Dump NextColor Debug Kill
-| /tmp/pardes-snap/modal/cwd Save New Newtty Del F /tmp/pardes-snap/modal/cwd Save New Newtty Del F
-| ls ls
-| words.txt words.txt
-| printf 'one two three\nfour five six\nseven ei
-| ght nine\n'
-| one two three
-| four five six
-| seven eight nine
-|
-|
-|
-|
-|
-|
-|
-| /tmp/pardes-snap/modal/cwd Save New Newtty Del F
-| ls
-| words.txt
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
== snap yanked grid=100x30 cursor=13,5
-|New Newcol Joincol Find Grep Help Changelog Tutor Dump NextColor Debug Kill
-| /tmp/pardes-snap/modal/cwd Save New Newtty Del F /tmp/pardes-snap/modal/cwd Save New Newtty Del F
-| ls ls
-| words.txt words.txt
-| printf 'one two three\nfour five six\nseven ei
-| ght nine\n'
-| one two three
-| four five six
-| seven eight nine
-|
-|
-|
-|
-|
-|
-|
-| /tmp/pardes-snap/modal/cwd Save New Newtty Del F
-| ls
-| words.txt
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
== snap vsel grid=100x30 cursor=14,6
-|New Newcol Joincol Find Grep Help Changelog Tutor Dump NextColor Debug Kill
-| /tmp/pardes-snap/modal/cwd Save New Newtty Del F /tmp/pardes-snap/modal/cwd Save New Newtty Del F
-| ls ls
-| words.txt words.txt
-| printf 'one two three\nfour five six\nseven ei
-| ght nine\n'
-| one two three
-| four five six
-| seven eight nine
-|
-|
-|
-|
-|
-|
-|
-| /tmp/pardes-snap/modal/cwd Save New Newtty Del F
-| ls
-| words.txt
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-== style vsel
-|0: 0-74 #949494,#121212, 75-99 d,#121212,
-|1: 0-1 #ffffff,#626262, 2-49 #949494,#121212, 50-51 #ffffff,#262626, 52-99 #949494,#121212,
-|2: 0-0 d,#444444, 1-1 d,#080808, 2-3 #bdbdbd,#080808, 4-49 d,#080808, 50-50 d,#444444, 51-51 d,#080808, 52-53 #bdbdbd,#080808, 54-99 d,#080808,
-|3: 0-0 d,#444444, 1-1 d,#080808, 2-10 #bdbdbd,#080808, 11-49 d,#080808, 50-50 d,#444444, 51-51 d,#080808, 52-60 #bdbdbd,#080808, 61-99 d,#080808,
+== style vsel grid=100x30
|4: 0-0 d,#444444, 1-1 d,#080808, 2-49 #080808,#80a0ff, 50-50 d,#444444, 51-99 d,#080808,
|5: 0-0 d,#444444, 1-1 d,#080808, 2-49 #080808,#80a0ff, 50-50 d,#444444, 51-99 d,#080808,
|6: 0-0 d,#444444, 1-1 d,#080808, 2-14 #080808,#80a0ff, 15-49 d,#080808, 50-50 d,#444444, 51-99 d,#080808,
-|7: 0-0 d,#444444, 1-1 d,#080808, 2-14 #bdbdbd,#080808, 15-49 d,#080808, 50-50 d,#444444, 51-99 d,#080808,
-|8: 0-0 d,#444444, 1-1 d,#080808, 2-17 #bdbdbd,#080808, 18-49 d,#080808, 50-50 d,#444444, 51-99 d,#080808,
-|9: 0-0 d,#444444, 1-49 d,#080808, 50-50 d,#444444, 51-99 d,#080808,
-|10: 0-0 d,#444444, 1-49 d,#080808, 50-50 d,#444444, 51-99 d,#080808,
-|11: 0-0 d,#444444, 1-49 d,#080808, 50-50 d,#444444, 51-99 d,#080808,
-|12: 0-0 d,#444444, 1-49 d,#080808, 50-50 d,#444444, 51-99 d,#080808,
-|13: 0-0 d,#444444, 1-49 d,#080808, 50-50 d,#444444, 51-99 d,#080808,
-|14: 0-0 d,#444444, 1-49 d,#080808, 50-50 d,#444444, 51-99 d,#080808,
-|15: 0-0 d,#444444, 1-49 d,#080808, 50-50 d,#444444, 51-99 d,#080808,
-|16: 0-1 #ffffff,#262626, 2-49 #949494,#121212, 50-50 d,#444444, 51-99 d,#080808,
-|17: 0-0 d,#444444, 1-1 d,#080808, 2-3 #bdbdbd,#080808, 4-49 d,#080808, 50-50 d,#444444, 51-99 d,#080808,
-|18: 0-0 d,#444444, 1-1 d,#080808, 2-10 #bdbdbd,#080808, 11-49 d,#080808, 50-50 d,#444444, 51-99 d,#080808,
-|19: 0-0 d,#444444, 1-49 d,#080808, 50-50 d,#444444, 51-99 d,#080808,
-|20: 0-0 d,#444444, 1-49 d,#080808, 50-50 d,#444444, 51-99 d,#080808,
-|21: 0-0 d,#444444, 1-49 d,#080808, 50-50 d,#444444, 51-99 d,#080808,
-|22: 0-0 d,#444444, 1-49 d,#080808, 50-50 d,#444444, 51-99 d,#080808,
-|23: 0-0 d,#444444, 1-49 d,#080808, 50-50 d,#444444, 51-99 d,#080808,
-|24: 0-0 d,#444444, 1-49 d,#080808, 50-50 d,#444444, 51-99 d,#080808,
-|25: 0-0 d,#444444, 1-49 d,#080808, 50-50 d,#444444, 51-99 d,#080808,
-|26: 0-0 d,#444444, 1-49 d,#080808, 50-50 d,#444444, 51-99 d,#080808,
-|27: 0-0 d,#444444, 1-49 d,#080808, 50-50 d,#444444, 51-99 d,#080808,
-|28: 0-0 d,#444444, 1-49 d,#080808, 50-50 d,#444444, 51-99 d,#080808,
-|29: 0-0 d,#444444, 1-49 d,#080808, 50-50 d,#444444, 51-99 d,#080808,
== snap typed grid=100x30 cursor=7,4
-|New Newcol Joincol Find Grep Help Changelog Tutor Dump NextColor Debug Kill
-| /tmp/pardes-snap/modal/cwd Save New Newtty Del F /tmp/pardes-snap/modal/cwd Save New Newtty Del F
-| ls ls
-| words.txt words.txt
-| TYPEDprintf 'one two three\nfour five six\nseven
-| ght nine\n'
-| one two three
-| four five six
-| seven eight nine
-|
-|
-|
-|
-|
-|
-|
-| /tmp/pardes-snap/modal/cwd Save New Newtty Del F
-| ls
-| words.txt
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
+|4: TYPEDprintf 'one two three\nfour five six\nseven
== snap undone grid=100x30 cursor=14,6
-|New Newcol Joincol Find Grep Help Changelog Tutor Dump NextColor Debug Kill
-| /tmp/pardes-snap/modal/cwd Save New Newtty Del F /tmp/pardes-snap/modal/cwd Save New Newtty Del F
-| ls ls
-| words.txt words.txt
-| printf 'one two three\nfour five six\nseven ei
-| ght nine\n'
-| one two three
-| four five six
-| seven eight nine
-|
-|
-|
-|
-|
-|
-|
-| /tmp/pardes-snap/modal/cwd Save New Newtty Del F
-| ls
-| words.txt
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
+|4: printf 'one two three\nfour five six\nseven ei
== snap redone grid=100x30 cursor=7,4
-|New Newcol Joincol Find Grep Help Changelog Tutor Dump NextColor Debug Kill
-| /tmp/pardes-snap/modal/cwd Save New Newtty Del F /tmp/pardes-snap/modal/cwd Save New Newtty Del F
-| ls ls
-| words.txt words.txt
-| TYPEDprintf 'one two three\nfour five six\nseven
-| ght nine\n'
-| one two three
-| four five six
-| seven eight nine
-|
-|
-|
-|
-|
-|
-|
-| /tmp/pardes-snap/modal/cwd Save New Newtty Del F
-| ls
-| words.txt
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
+|4: TYPEDprintf 'one two three\nfour five six\nseven
== snap bottom grid=100x30 cursor=2,9
-|New Newcol Joincol Find Grep Help Changelog Tutor Dump NextColor Debug Kill
-| /tmp/pardes-snap/modal/cwd Save New Newtty Del F /tmp/pardes-snap/modal/cwd Save New Newtty Del F
-| ls ls
-| words.txt words.txt
-| TYPEDprintf 'one two three\nfour five six\nseven
-| ght nine\n'
-| one two three
-| four five six
-| seven eight nine
-|
-|
-|
-|
-|
-|
-|
-| /tmp/pardes-snap/modal/cwd Save New Newtty Del F
-| ls
-| words.txt
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
diff --git a/test/snapshots/msg.golden b/test/snapshots/msg.golden
index d456f75d..fcfe5f26 100644
--- a/test/snapshots/msg.golden
+++ b/test/snapshots/msg.golden
@@ -8,26 +8,8 @@
| 5 line 5
| 6 line 6
| 7
-|
-|
-|
-|
-|
== snap saved grid=70x14 cursor=7,2
-|New Newcol Joincol Find Grep Help Changelog Tutor Dump NextColor Debug
-| /tmp/pardes-snap/msg/cwd/a.txt Save New Newtty Del
-| 1 line 1
-| 2 line 2
-| 3 line 3
-| 4 line 4
-| 5 line 5
-| 6 line 6
-| 7
-|
-|
-|
-|
-| --:--:-- saved /tmp/pardes-snap/msg/cwd/a.txt
+|13: --:--:-- saved /tmp/pardes-snap/msg/cwd/a.txt
== snap repainted grid=70x16 cursor=7,2
|New Newcol Joincol Find Grep Help Changelog Tutor Dump NextColor Debug
| /tmp/pardes-snap/msg/cwd/a.txt Save New Newtty Del
@@ -46,138 +28,27 @@
|
| --:--:-- saved /tmp/pardes-snap/msg/cwd/a.txt
== snap keycleared grid=70x16 cursor=7,3
-|New Newcol Joincol Find Grep Help Changelog Tutor Dump NextColor Debug
-| /tmp/pardes-snap/msg/cwd/a.txt Save New Newtty Del
-| 1 line 1
-| 2 line 2
-| 3 line 3
-| 4 line 4
-| 5 line 5
-| 6 line 6
-| 7
-|
-|
-|
-|
-|
-|
-|
+|15:
== snap saved-again grid=70x16 cursor=7,3
-|New Newcol Joincol Find Grep Help Changelog Tutor Dump NextColor Debug
-| /tmp/pardes-snap/msg/cwd/a.txt Save New Newtty Del
-| 1 line 1
-| 2 line 2
-| 3 line 3
-| 4 line 4
-| 5 line 5
-| 6 line 6
-| 7
-|
-|
-|
-|
-|
-|
-| --:--:-- saved /tmp/pardes-snap/msg/cwd/a.txt
+|15: --:--:-- saved /tmp/pardes-snap/msg/cwd/a.txt
== snap mousecleared grid=70x16 cursor=7,3
-|New Newcol Joincol Find Grep Help Changelog Tutor Dump NextColor Debug
-| /tmp/pardes-snap/msg/cwd/a.txt Save New Newtty Del
-| 1 line 1
-| 2 line 2
-| 3 line 3
-| 4 line 4
-| 5 line 5
-| 6 line 6
-| 7
-|
-|
-|
-|
-|
-|
-|
+|15:
== snap reloaded grid=70x16 cursor=7,3
-|New Newcol Joincol Find Grep Help Changelog Tutor Dump NextColor Debug
-| /tmp/pardes-snap/msg/cwd/a.txt Save New Newtty Del
-| 1 EXTERNAL
-| 2
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-| --:--:-- reloaded /tmp/pardes-snap/msg/cwd/a.txt
+|2: 1 EXTERNAL
+|3: 2
+|4:
+|5:
+|6:
+|7:
+|8:
+|15: --:--:-- reloaded /tmp/pardes-snap/msg/cwd/a.txt
== snap prompt grid=70x16 cursor=7,15
-|New Newcol Joincol Find Grep Help Changelog Tutor Dump NextColor Debug
-| /tmp/pardes-snap/msg/cwd/a.txt Save New Newtty Del
-| 1 EXTERNAL
-| 2
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-| /EXT
+|15: /EXT
== snap prompt-wins grid=70x16 cursor=7,15
-|New Newcol Joincol Find Grep Help Changelog Tutor Dump NextColor Debug
-| /tmp/pardes-snap/msg/cwd/a.txt Save New Newtty Del
-| 1 AGAIN
-| 2
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-| /EXT
+|2: 1 AGAIN
== snap esc grid=70x16 cursor=7,3
-|New Newcol Joincol Find Grep Help Changelog Tutor Dump NextColor Debug
-| /tmp/pardes-snap/msg/cwd/a.txt Save New Newtty Del
-| 1 AGAIN
-| 2
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
+|15:
== snap msgbuiltin grid=70x16 cursor=29,4
-|New Newcol Joincol Find Grep Help Changelog Tutor Dump NextColor Debug
-| /tmp/pardes-snap/msg/cwd/a.txt * Save New Newtty Del
-| 1 AGAIN
-| 2
-| 3 Msg hand-written report
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-| hand-written report
+|1: /tmp/pardes-snap/msg/cwd/a.txt * Save New Newtty Del
+|4: 3 Msg hand-written report
+|15: hand-written report
diff --git a/test/snapshots/multicursor.golden b/test/snapshots/multicursor.golden
index eef3bf5e..2bc7c1c6 100644
--- a/test/snapshots/multicursor.golden
+++ b/test/snapshots/multicursor.golden
@@ -18,18 +18,7 @@
| /tmp/pardes-snap/multicursor/cwd Save New Newtty Del Filter
| ls
| f.txt
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-== style three-cursors
+== style three-cursors grid=150x30
|0: 0-74 #949494,#121212, 75-149 d,#121212,
|1: 0-1 #ffffff,#626262, 2-60 #949494,#121212, 61-74 d,#121212, 75-76 #ffffff,#262626, 77-135 #949494,#121212, 136-149 d,#121212,
|2: 0-0 d,#444444, 1-1 d,#080808, 2-6 #626262,#080808, 7-7 #80a0ff,#080808, 8-12 #bdbdbd,#080808, 13-74 d,#080808, 75-75 d,#444444, 76-76 d,#080808, 77-78 #bdbdbd,#080808, 79-149 d,#080808,
@@ -61,157 +50,21 @@
|28: 0-0 d,#444444, 1-74 d,#080808, 75-75 d,#444444, 76-149 d,#080808,
|29: 0-0 d,#444444, 1-74 d,#080808, 75-75 d,#444444, 76-149 d,#080808,
== snap edited-at-three grid=150x30 cursor=9,4
-|New Newcol Joincol Find Grep Help Changelog Tutor Dump NextColor Debug Kill
-| /tmp/pardes-snap/multicursor/cwd/f.txt * Save New Newtty Del /tmp/pardes-snap/multicursor/cwd Save New Newtty Del Filter
-| 1 >>line 1 ls
-| 2 >>line 2 f.txt
-| 3 >>line 3
-| 4 line 4
-| 5 line 5
-|╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌
-| /tmp/pardes-snap/multicursor/cwd Save New Newtty Del Filter
-| ls
-| f.txt
-|
-|
-|
-| f.txt
-|
-| /tmp/pardes-snap/multicursor/cwd Save New Newtty Del Filter
-| ls
-| f.txt
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
+|1: /tmp/pardes-snap/multicursor/cwd/f.txt * Save New Newtty Del /tmp/pardes-snap/multicursor/cwd Save New Newtty Del Filter
+|2: 1 >>line 1 ls
+|3: 2 >>line 2 f.txt
+|4: 3 >>line 3
+|8: /tmp/pardes-snap/multicursor/cwd Save New Newtty Del Filter
+|16: /tmp/pardes-snap/multicursor/cwd Save New Newtty Del Filter
== snap three-selections grid=150x30 cursor=8,4
-|New Newcol Joincol Find Grep Help Changelog Tutor Dump NextColor Debug Kill
-| /tmp/pardes-snap/multicursor/cwd/f.txt * Save New Newtty Del /tmp/pardes-snap/multicursor/cwd Save New Newtty Del Filter
-| 1 >>line 1 ls
-| 2 >>line 2 f.txt
-| 3 >>line 3
-| 4 line 4
-| 5 line 5
-|╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌
-| /tmp/pardes-snap/multicursor/cwd Save New Newtty Del Filter
-| ls
-| f.txt
-|
-|
-|
-| f.txt
-|
-| /tmp/pardes-snap/multicursor/cwd Save New Newtty Del Filter
-| ls
-| f.txt
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-== style three-selections
-|0: 0-74 #949494,#121212, 75-149 d,#121212,
+== style three-selections grid=150x30
|1: 0-1 #ffffff,#626262, 2-61 #949494,#121212, 62-74 d,#121212, 75-76 #ffffff,#262626, 77-135 #949494,#121212, 136-149 d,#121212,
|2: 0-0 d,#444444, 1-1 d,#080808, 2-6 #626262,#080808, 7-7 #080808,#445483, 8-8 #80a0ff,#080808, 9-14 #bdbdbd,#080808, 15-74 d,#080808, 75-75 d,#444444, 76-76 d,#080808, 77-78 #bdbdbd,#080808, 79-149 d,#080808,
|3: 0-0 d,#444444, 1-1 d,#080808, 2-6 #626262,#080808, 7-7 #080808,#445483, 8-8 #80a0ff,#080808, 9-14 #bdbdbd,#080808, 15-74 d,#080808, 75-75 d,#444444, 76-76 d,#080808, 77-81 #bdbdbd,#080808, 82-149 d,#080808,
|4: 0-0 d,#121212, 1-1 d,#080808, 2-6 #949494,#121212, 7-8 #080808,#80a0ff, 9-14 #bdbdbd,#080808, 15-74 d,#080808, 75-75 d,#444444, 76-149 d,#080808,
-|5: 0-0 d,#121212, 1-1 d,#080808, 2-6 #626262,#080808, 7-12 #bdbdbd,#080808, 13-74 d,#080808, 75-75 d,#444444, 76-149 d,#080808,
-|6: 0-0 d,#121212, 1-1 d,#080808, 2-6 #626262,#080808, 7-12 #bdbdbd,#080808, 13-74 d,#080808, 75-75 d,#444444, 76-149 d,#080808,
-|7: 0-0 d,#121212, 1-1 d,#080808, 2-6 #626262,#080808, 7-12 #bdbdbd,#080808, 13-74 d,#080808, 75-75 d,#444444, 76-149 d,#080808,
|8: 0-1 #ffffff,#262626, 2-61 #949494,#121212, 62-74 d,#121212, 75-75 d,#444444, 76-149 d,#080808,
-|9: 0-0 d,#444444, 1-1 d,#080808, 2-3 #bdbdbd,#080808, 4-74 d,#080808, 75-75 d,#444444, 76-149 d,#080808,
-|10: 0-0 d,#444444, 1-1 d,#080808, 2-6 #bdbdbd,#080808, 7-74 d,#080808, 75-75 d,#444444, 76-149 d,#080808,
-|11: 0-0 d,#444444, 1-74 d,#080808, 75-75 d,#444444, 76-149 d,#080808,
-|12: 0-0 d,#444444, 1-74 d,#080808, 75-75 d,#444444, 76-149 d,#080808,
-|13: 0-0 d,#444444, 1-74 d,#080808, 75-75 d,#444444, 76-149 d,#080808,
-|14: 0-0 d,#444444, 1-1 d,#080808, 2-8 #bdbdbd,#080808, 9-74 d,#080808, 75-75 d,#444444, 76-149 d,#080808,
-|15: 0-0 d,#444444, 1-74 d,#080808, 75-75 d,#444444, 76-149 d,#080808,
|16: 0-1 #ffffff,#262626, 2-61 #949494,#121212, 62-74 d,#121212, 75-75 d,#444444, 76-149 d,#080808,
-|17: 0-0 d,#444444, 1-1 d,#080808, 2-3 #bdbdbd,#080808, 4-74 d,#080808, 75-75 d,#444444, 76-149 d,#080808,
-|18: 0-0 d,#444444, 1-1 d,#080808, 2-6 #bdbdbd,#080808, 7-74 d,#080808, 75-75 d,#444444, 76-149 d,#080808,
-|19: 0-0 d,#444444, 1-74 d,#080808, 75-75 d,#444444, 76-149 d,#080808,
-|20: 0-0 d,#444444, 1-74 d,#080808, 75-75 d,#444444, 76-149 d,#080808,
-|21: 0-0 d,#444444, 1-74 d,#080808, 75-75 d,#444444, 76-149 d,#080808,
-|22: 0-0 d,#444444, 1-74 d,#080808, 75-75 d,#444444, 76-149 d,#080808,
-|23: 0-0 d,#444444, 1-74 d,#080808, 75-75 d,#444444, 76-149 d,#080808,
-|24: 0-0 d,#444444, 1-74 d,#080808, 75-75 d,#444444, 76-149 d,#080808,
-|25: 0-0 d,#444444, 1-74 d,#080808, 75-75 d,#444444, 76-149 d,#080808,
-|26: 0-0 d,#444444, 1-74 d,#080808, 75-75 d,#444444, 76-149 d,#080808,
-|27: 0-0 d,#444444, 1-74 d,#080808, 75-75 d,#444444, 76-149 d,#080808,
-|28: 0-0 d,#444444, 1-74 d,#080808, 75-75 d,#444444, 76-149 d,#080808,
-|29: 0-0 d,#444444, 1-74 d,#080808, 75-75 d,#444444, 76-149 d,#080808,
== snap keep-primary grid=150x30 cursor=8,4
-|New Newcol Joincol Find Grep Help Changelog Tutor Dump NextColor Debug Kill
-| /tmp/pardes-snap/multicursor/cwd/f.txt * Save New Newtty Del /tmp/pardes-snap/multicursor/cwd Save New Newtty Del Filter
-| 1 >>line 1 ls
-| 2 >>line 2 f.txt
-| 3 >>line 3
-| 4 line 4
-| 5 line 5
-|╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌
-| /tmp/pardes-snap/multicursor/cwd Save New Newtty Del Filter
-| ls
-| f.txt
-|
-|
-|
-| f.txt
-|
-| /tmp/pardes-snap/multicursor/cwd Save New Newtty Del Filter
-| ls
-| f.txt
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-== style keep-primary
-|0: 0-74 #949494,#121212, 75-149 d,#121212,
-|1: 0-1 #ffffff,#626262, 2-61 #949494,#121212, 62-74 d,#121212, 75-76 #ffffff,#262626, 77-135 #949494,#121212, 136-149 d,#121212,
+== style keep-primary grid=150x30
|2: 0-0 d,#444444, 1-1 d,#080808, 2-6 #626262,#080808, 7-14 #bdbdbd,#080808, 15-74 d,#080808, 75-75 d,#444444, 76-76 d,#080808, 77-78 #bdbdbd,#080808, 79-149 d,#080808,
|3: 0-0 d,#444444, 1-1 d,#080808, 2-6 #626262,#080808, 7-14 #bdbdbd,#080808, 15-74 d,#080808, 75-75 d,#444444, 76-76 d,#080808, 77-81 #bdbdbd,#080808, 82-149 d,#080808,
-|4: 0-0 d,#121212, 1-1 d,#080808, 2-6 #949494,#121212, 7-8 #080808,#80a0ff, 9-14 #bdbdbd,#080808, 15-74 d,#080808, 75-75 d,#444444, 76-149 d,#080808,
-|5: 0-0 d,#121212, 1-1 d,#080808, 2-6 #626262,#080808, 7-12 #bdbdbd,#080808, 13-74 d,#080808, 75-75 d,#444444, 76-149 d,#080808,
-|6: 0-0 d,#121212, 1-1 d,#080808, 2-6 #626262,#080808, 7-12 #bdbdbd,#080808, 13-74 d,#080808, 75-75 d,#444444, 76-149 d,#080808,
-|7: 0-0 d,#121212, 1-1 d,#080808, 2-6 #626262,#080808, 7-12 #bdbdbd,#080808, 13-74 d,#080808, 75-75 d,#444444, 76-149 d,#080808,
-|8: 0-1 #ffffff,#262626, 2-61 #949494,#121212, 62-74 d,#121212, 75-75 d,#444444, 76-149 d,#080808,
-|9: 0-0 d,#444444, 1-1 d,#080808, 2-3 #bdbdbd,#080808, 4-74 d,#080808, 75-75 d,#444444, 76-149 d,#080808,
-|10: 0-0 d,#444444, 1-1 d,#080808, 2-6 #bdbdbd,#080808, 7-74 d,#080808, 75-75 d,#444444, 76-149 d,#080808,
-|11: 0-0 d,#444444, 1-74 d,#080808, 75-75 d,#444444, 76-149 d,#080808,
-|12: 0-0 d,#444444, 1-74 d,#080808, 75-75 d,#444444, 76-149 d,#080808,
-|13: 0-0 d,#444444, 1-74 d,#080808, 75-75 d,#444444, 76-149 d,#080808,
-|14: 0-0 d,#444444, 1-1 d,#080808, 2-8 #bdbdbd,#080808, 9-74 d,#080808, 75-75 d,#444444, 76-149 d,#080808,
-|15: 0-0 d,#444444, 1-74 d,#080808, 75-75 d,#444444, 76-149 d,#080808,
-|16: 0-1 #ffffff,#262626, 2-61 #949494,#121212, 62-74 d,#121212, 75-75 d,#444444, 76-149 d,#080808,
-|17: 0-0 d,#444444, 1-1 d,#080808, 2-3 #bdbdbd,#080808, 4-74 d,#080808, 75-75 d,#444444, 76-149 d,#080808,
-|18: 0-0 d,#444444, 1-1 d,#080808, 2-6 #bdbdbd,#080808, 7-74 d,#080808, 75-75 d,#444444, 76-149 d,#080808,
-|19: 0-0 d,#444444, 1-74 d,#080808, 75-75 d,#444444, 76-149 d,#080808,
-|20: 0-0 d,#444444, 1-74 d,#080808, 75-75 d,#444444, 76-149 d,#080808,
-|21: 0-0 d,#444444, 1-74 d,#080808, 75-75 d,#444444, 76-149 d,#080808,
-|22: 0-0 d,#444444, 1-74 d,#080808, 75-75 d,#444444, 76-149 d,#080808,
-|23: 0-0 d,#444444, 1-74 d,#080808, 75-75 d,#444444, 76-149 d,#080808,
-|24: 0-0 d,#444444, 1-74 d,#080808, 75-75 d,#444444, 76-149 d,#080808,
-|25: 0-0 d,#444444, 1-74 d,#080808, 75-75 d,#444444, 76-149 d,#080808,
-|26: 0-0 d,#444444, 1-74 d,#080808, 75-75 d,#444444, 76-149 d,#080808,
-|27: 0-0 d,#444444, 1-74 d,#080808, 75-75 d,#444444, 76-149 d,#080808,
-|28: 0-0 d,#444444, 1-74 d,#080808, 75-75 d,#444444, 76-149 d,#080808,
-|29: 0-0 d,#444444, 1-74 d,#080808, 75-75 d,#444444, 76-149 d,#080808,
diff --git a/test/snapshots/nested-optout.golden b/test/snapshots/nested-optout.golden
index d1126aa4..fbb7ef0e 100644
--- a/test/snapshots/nested-optout.golden
+++ b/test/snapshots/nested-optout.golden
@@ -6,88 +6,14 @@
| 1 optout-marker
| 2 second-optout-line
| 3
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
== snap inner-shell grid=100x30 cursor=6,4
|New Newcol Joincol Find Grep Help Changelog Tutor Dump NextColor Debug Kill
|$ /tmp/pardes-snap/nested-optout/cwd Save New Newtty Del Filter
| New Newcol Joincol Find Grep Help Changelog Tutor Dump NextColor Debug Kill
| $ /tmp/pardes-snap/nested-optout/cwd/innerdir Save New Newtty Del Filter
| $
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
== snap inner-launch grid=100x30 cursor=11,6
-|New Newcol Joincol Find Grep Help Changelog Tutor Dump NextColor Debug Kill
-|$ /tmp/pardes-snap/nested-optout/cwd Save New Newtty Del Filter
-| New Newcol Joincol Find Grep Help Changelog Tutor Dump NextColor Debug Kill
-| $ /tmp/pardes-snap/nested-optout/cwd/innerdir Save New Newtty Del Filter
-| New Newcol Joincol Find Grep Help Changelog Tutor Dump NextColor Debug Kill
-| /tmp/pardes-snap/nested-optout/cwd/innerdir/deeper.txt Save New Newtty Del
-| 1 deepest-marker
-| 2
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
+|4: New Newcol Joincol Find Grep Help Changelog Tutor Dump NextColor Debug Kill
+|5: /tmp/pardes-snap/nested-optout/cwd/innerdir/deeper.txt Save New Newtty Del
+|6: 1 deepest-marker
+|7: 2
diff --git a/test/snapshots/nested.golden b/test/snapshots/nested.golden
index 692d5de7..6d0d0bf9 100644
--- a/test/snapshots/nested.golden
+++ b/test/snapshots/nested.golden
@@ -17,18 +17,6 @@
|$ /tmp/pardes-snap/nested/cwd Save New Newtty Del Filter
| $ $(readlink /proc/$PPID/exe) nested.txt
| $
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
== snap no-arg grid=100x30 cursor=4,6
|New Newcol Joincol Find Grep Help Changelog Tutor Dump NextColor Debug Kill
|$ /tmp/pardes-snap/nested/cwd Save New Newtty Del Filter
@@ -37,29 +25,6 @@
| is spicy. Name a file or a directory and the outer session opens it, or
| pass --nested if you really want a second one in here.
| $
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
== snap dir-arg grid=100x30 cursor=4,7
|New Newcol Joincol Find Grep Help Changelog Tutor Dump NextColor Debug Kill
|$ /tmp/pardes-snap/nested/cwd Save New Newtty Del Filter
@@ -68,26 +33,3 @@
| /tmp/pardes-snap/nested/cwd/nestdir Save New Newtty Del Filter
| ls
| inside-nested.txt
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
diff --git a/test/snapshots/pipe.golden b/test/snapshots/pipe.golden
index ede81b5f..8772f81e 100644
--- a/test/snapshots/pipe.golden
+++ b/test/snapshots/pipe.golden
@@ -12,28 +12,8 @@
|
| |tr a-z A-Z
== snap filtered grid=180x12 cursor=17,2
-|New Newcol Joincol Find Grep Help Changelog Tutor Dump NextColor Debug Kill
-| /tmp/pardes-snap/pipe/cwd/pipe.txt * Save New Newtty Del
-| 1 ALPHA BETA
-| 2 gamma delta
-|
-|
-|
-|
-|
-|
-|
-|
+|1: /tmp/pardes-snap/pipe/cwd/pipe.txt * Save New Newtty Del
+|2: 1 ALPHA BETA
+|11:
== snap undone grid=180x12 cursor=17,2
-|New Newcol Joincol Find Grep Help Changelog Tutor Dump NextColor Debug Kill
-| /tmp/pardes-snap/pipe/cwd/pipe.txt * Save New Newtty Del
-| 1 alpha beta
-| 2 gamma delta
-|
-|
-|
-|
-|
-|
-|
-|
+|2: 1 alpha beta
diff --git a/test/snapshots/psearch.golden b/test/snapshots/psearch.golden
index 4efbe9bf..785bd9ed 100644
--- a/test/snapshots/psearch.golden
+++ b/test/snapshots/psearch.golden
@@ -7,91 +7,14 @@
| x MARK b
| zz
| x MARK c
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
== snap typing grid=140x30 cursor=8,29
-|New Newcol Joincol Find Grep Help Changelog Tutor Dump NextColor Debug Kill
-| /tmp/pardes-snap/psearch/cwd Save New Newtty Del Filter
-| printf 'x MA''RK a\nzz\nx MA''RK b\nzz\nx MA''RK c\n'
-| x MARK a
-| zz
-| x MARK b
-| zz
-| x MARK c
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-| /MARK
+|29: /MARK
== snap results grid=140x30 cursor=7,3
-|New Newcol Joincol Find Grep Help Changelog Tutor Dump NextColor Debug Kill
-| /tmp/pardes-snap/psearch/cwd Save New Newtty Del Filter
-| printf 'x MA''RK a\nzz\nx MA''RK b\nzz\nx MA''RK c\n'
-| x MARK a
-| zz
-| x MARK b
-| zz
-| x MARK c
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-| /tmp/pardes-snap/psearch/cwd/+Search Save New Newtty Del
-| 1 @p0:2:3-6 x MARK a
-| 2 @p0:4:3-6 x MARK b
-| 3 @p0:6:3-6 x MARK c
-== style results
+|26: /tmp/pardes-snap/psearch/cwd/+Search Save New Newtty Del
+|27: 1 @p0:2:3-6 x MARK a
+|28: 2 @p0:4:3-6 x MARK b
+|29: 3 @p0:6:3-6 x MARK c
+== style results grid=140x30
|0: 0-74 #949494,#121212, 75-139 d,#121212,
|1: 0-1 #ffffff,#626262, 2-119 #949494,#121212, 120-139 d,#121212,
|2: 0-0 d,#444444, 1-1 d,#080808, 2-54 #bdbdbd,#080808, 55-139 d,#080808,
@@ -123,157 +46,15 @@
|28: 0-0 d,#444444, 1-1 d,#080808, 2-6 #626262,#080808, 7-24 #bdbdbd,#080808, 25-139 d,#080808,
|29: 0-0 d,#121212, 1-1 d,#080808, 2-6 #626262,#080808, 7-24 #bdbdbd,#080808, 25-139 d,#080808,
== snap second grid=140x30 cursor=7,5
-|New Newcol Joincol Find Grep Help Changelog Tutor Dump NextColor Debug Kill
-| /tmp/pardes-snap/psearch/cwd Save New Newtty Del Filter
-| printf 'x MA''RK a\nzz\nx MA''RK b\nzz\nx MA''RK c\n'
-| x MARK a
-| zz
-| x MARK b
-| zz
-| x MARK c
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-| /tmp/pardes-snap/psearch/cwd/+Search Save New Newtty Del
-| 1 @p0:2:3-6 x MARK a
-| 2 @p0:4:3-6 x MARK b
-| 3 @p0:6:3-6 x MARK c
== snap back grid=140x30 cursor=7,3
-|New Newcol Joincol Find Grep Help Changelog Tutor Dump NextColor Debug Kill
-| /tmp/pardes-snap/psearch/cwd Save New Newtty Del Filter
-| printf 'x MA''RK a\nzz\nx MA''RK b\nzz\nx MA''RK c\n'
-| x MARK a
-| zz
-| x MARK b
-| zz
-| x MARK c
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-| /tmp/pardes-snap/psearch/cwd/+Search Save New Newtty Del
-| 1 @p0:2:3-6 x MARK a
-| 2 @p0:4:3-6 x MARK b
-| 3 @p0:6:3-6 x MARK c
== snap nomatch grid=140x30 cursor=7,28
-|New Newcol Joincol Find Grep Help Changelog Tutor Dump NextColor Debug Kill
-| /tmp/pardes-snap/psearch/cwd Save New Newtty Del Filter
-| printf 'x MA''RK a\nzz\nx MA''RK b\nzz\nx MA''RK c\n'
-| x MARK a
-| zz
-| x MARK b
-| zz
-| x MARK c
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-| /tmp/pardes-snap/psearch/cwd/+Search Save New Newtty Del
-| 1
-| /tmp/pardes-snap/psearch/cwd/+Search Save New Newtty Del
-| 1 @p0:2:3-6 x MARK a
-| 2 @p0:4:3-6 x MARK b
-| 3 @p0:6:3-6 x MARK c
+|24: /tmp/pardes-snap/psearch/cwd/+Search Save New Newtty Del
+|25: 1
== snap ttyinert grid=140x30 cursor=4,8
-|New Newcol Joincol Find Grep Help Changelog Tutor Dump NextColor Debug Kill
-|$ /tmp/pardes-snap/psearch/cwd Save New Newtty Del Filter
-| $ printf 'x MA''RK a\nzz\nx MA''RK b\nzz\nx MA''RK c\n'
-| x MARK a
-| zz
-| x MARK b
-| zz
-| x MARK c
-| $
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-| /tmp/pardes-snap/psearch/cwd/+Search Save New Newtty Del
-| 1
-| /tmp/pardes-snap/psearch/cwd/+Search Save New Newtty Del
-| 1 @p0:2:3-6 x MARK a
-| 2 @p0:4:3-6 x MARK b
-| 3 @p0:6:3-6 x MARK c
+|1: $ /tmp/pardes-snap/psearch/cwd Save New Newtty Del Filter
+|2: $ printf 'x MA''RK a\nzz\nx MA''RK b\nzz\nx MA''RK c\n'
+|8: $
== snap rightsearch grid=140x30 cursor=7,5
-|New Newcol Joincol Find Grep Help Changelog Tutor Dump NextColor Debug Kill
-| /tmp/pardes-snap/psearch/cwd Save New Newtty Del Filter
-| printf 'x MA''RK a\nzz\nx MA''RK b\nzz\nx MA''RK c\n'
-| x MARK a
-| zz
-| x MARK b
-| zz
-| x MARK c
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-| /tmp/pardes-snap/psearch/cwd/+Search Save New Newtty Del
-| 1
-| /tmp/pardes-snap/psearch/cwd/+Search Save New Newtty Del
-| 1 @p0:2:3-6 x MARK a
-| 2 @p0:4:3-6 x MARK b
-| 3 @p0:6:3-6 x MARK c
+|1: /tmp/pardes-snap/psearch/cwd Save New Newtty Del Filter
+|2: printf 'x MA''RK a\nzz\nx MA''RK b\nzz\nx MA''RK c\n'
+|8:
diff --git a/test/snapshots/reflow.golden b/test/snapshots/reflow.golden
index 47650afa..fd96e68f 100644
--- a/test/snapshots/reflow.golden
+++ b/test/snapshots/reflow.golden
@@ -19,7 +19,3 @@
| yyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyy
| yyyyyyyyyyyyyyyyyyyyyyyyyyyyyydone
| $
-|
-|
-|
-|
diff --git a/test/snapshots/respawn.golden b/test/snapshots/respawn.golden
index 392ac6f8..f97a0233 100644
--- a/test/snapshots/respawn.golden
+++ b/test/snapshots/respawn.golden
@@ -1,31 +1,10 @@
-== snap respawn grid=100x30 cursor=4,26
+== snap respawn grid=100x30 cursor=4,8
|New Newcol Joincol Find Grep Help Changelog Tutor Dump NextColor Debug Kill
| /tmp/pardes-snap/respawn/cwd Save New Newtty Del /tmp/pardes-snap/respawn/cwd Save New Newtty Del
| ls ls
|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-| /tmp/pardes-snap/respawn/cwd Save New Newtty Del
-| ls
-|
-|$ /tmp/pardes-snap/respawn/cwd Save New Newtty Del
-| $ ls
-| $
|$ /tmp/pardes-snap/respawn/cwd Save New Newtty Del
| $ ls
| $ echo RESP''AWNOK
| RESPAWNOK
| $
-|
-|
-|
diff --git a/test/snapshots/respawn.snap b/test/snapshots/respawn.snap
index d276c89c..8fcd751c 100644
--- a/test/snapshots/respawn.snap
+++ b/test/snapshots/respawn.snap
@@ -4,10 +4,10 @@
start 30 100 -n 3
wait 8000 New Newcol
stable 700 20000
-# middle-click Del on the lower-left pane's tag (after the cwd prefix and
-# Save): the pane id is freed while its shell process stays alive in the slot
-press middle 41 17
-release middle 41 17
+# middle-click Del on the lower-left pane's tag: the pane id is freed while
+# its shell process stays alive in the slot
+press middle @Del 17
+release middle @Del 17
stable 700 10000
# Alt-n reuses the freed id -> spawn effect lands on the occupied slot
key a-n
diff --git a/test/snapshots/restore.golden b/test/snapshots/restore.golden
index 1fe05061..c1494983 100644
--- a/test/snapshots/restore.golden
+++ b/test/snapshots/restore.golden
@@ -5,58 +5,9 @@
| $ echo KEEP''ME
| KEEPME
| $
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
== snap restored grid=100x30 cursor=4,5
-|New Newcol Joincol Find Grep Help Changelog Tutor Dump NextColor Debug Kill
-| /tmp/pardes-snap/restore/cwd Save New Newtty Del Filter
-| ls
-| echo KEEP''ME
-| KEEPME
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
+|0: New Newcol Joincol Find Grep Help Changelog Tutor Dump NextColor Debug Kill
+|1: /tmp/pardes-snap/restore/cwd Save New Newtty Del Filter
+|2: ls
+|3: echo KEEP''ME
+|5:
diff --git a/test/snapshots/restore.snap b/test/snapshots/restore.snap
index 996dbc8b..c29eeb5e 100644
--- a/test/snapshots/restore.snap
+++ b/test/snapshots/restore.snap
@@ -11,15 +11,15 @@ text echo KEEP''ME
key enter
wait 8000 KEEPME
stable 700 10000
-press middle 52 1
-release middle 52 1
+press middle @Dump 1
+release middle @Dump 1
stable 700 10000
snap dumped
text echo GONE''SOON
key enter
wait 8000 GONESOON
stable 700 10000
-press middle 78 1
-release middle 78 1
+press middle @Restore 1
+release middle @Restore 1
stable 900 15000
snap restored
diff --git a/test/snapshots/rsearch.golden b/test/snapshots/rsearch.golden
index cb69a29f..b076ad0d 100644
--- a/test/snapshots/rsearch.golden
+++ b/test/snapshots/rsearch.golden
@@ -7,273 +7,25 @@
| 4 pick two words
|
| code.txt
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
== snap search grid=210x30 cursor=13,4
-|New Newcol Joincol Find Grep Help Changelog Tutor Dump NextColor Debug Kill
-| /tmp/pardes-snap/rsearch/cwd/code.txt Save New Newtty Del /tmp/pardes-snap/rsearch/cwd Save New Newtty Del Filter
-| 1 run count_x now ls
-| 2 open sub/dep.txt:3 here code.txt sub
-| 3 count_x again
-| 4 pick two words
-|
-| code.txt
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-| /tmp/pardes-snap/rsearch/cwd/+Search Save New Newtty Del
-| 1 code.txt:1:5-11 run count_x now
-| 2 code.txt:3:1-7 count_x again
+|27: /tmp/pardes-snap/rsearch/cwd/+Search Save New Newtty Del
+|28: 1 code.txt:1:5-11 run count_x now
+|29: 2 code.txt:3:1-7 count_x again
== snap select grid=210x30 cursor=14,5
-|New Newcol Joincol Find Grep Help Changelog Tutor Dump NextColor Debug Kill
-| /tmp/pardes-snap/rsearch/cwd/code.txt Save New Newtty Del /tmp/pardes-snap/rsearch/cwd Save New Newtty Del Filter
-| 1 run count_x now ls
-| 2 open sub/dep.txt:3 here code.txt sub
-| 3 count_x again
-| 4 pick two words
-|
-| code.txt
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-| /tmp/pardes-snap/rsearch/cwd/+Search Save New Newtty Del
-| 1 code.txt:4:1-8 pick two words
-| /tmp/pardes-snap/rsearch/cwd/+Search Save New Newtty Del
-| 1 code.txt:1:5-11 run count_x now
-| 2 code.txt:3:1-7 count_x again
+|25: /tmp/pardes-snap/rsearch/cwd/+Search Save New Newtty Del
+|26: 1 code.txt:4:1-8 pick two words
== snap path-open grid=210x30 cursor=7,16
-|New Newcol Joincol Find Grep Help Changelog Tutor Dump NextColor Debug Kill
-| /tmp/pardes-snap/rsearch/cwd/code.txt Save New Newtty Del /tmp/pardes-snap/rsearch/cwd Save New Newtty Del Filter
-| 1 run count_x now ls
-| 2 open sub/dep.txt:3 here code.txt sub
-| 3 count_x again
-| 4 pick two words
-|
-| code.txt
-|
-|
-|
-|
-|
-| /tmp/pardes-snap/rsearch/cwd/sub/dep.txt Save New Newtty Del
-| 1 d1
-| 2 d2
-| 3 DEPTARGET
-| 4 d4
-| 5 d5
-| 6 d6
-|
-|
-|
-|
-|
-| /tmp/pardes-snap/rsearch/cwd/+Search Save New Newtty Del
-| 1 code.txt:4:1-8 pick two words
-| /tmp/pardes-snap/rsearch/cwd/+Search Save New Newtty Del
-| 1 code.txt:1:5-11 run count_x now
-| 2 code.txt:3:1-7 count_x again
+|13: /tmp/pardes-snap/rsearch/cwd/sub/dep.txt Save New Newtty Del
+|14: 1 d1
+|15: 2 d2
+|16: 3 DEPTARGET
+|17: 4 d4
+|18: 5 d5
+|19: 6 d6
== snap step1 grid=210x30 cursor=13,4
-|New Newcol Joincol Find Grep Help Changelog Tutor Dump NextColor Debug Kill
-| /tmp/pardes-snap/rsearch/cwd/code.txt Save New Newtty Del /tmp/pardes-snap/rsearch/cwd Save New Newtty Del Filter
-| 1 run count_x now ls
-| 2 open sub/dep.txt:3 here code.txt sub
-| 3 count_x again
-| 4 pick two words
-|
-| code.txt
-|
-|
-|
-|
-|
-| /tmp/pardes-snap/rsearch/cwd/sub/dep.txt Save New Newtty Del
-| 1 d1
-| 2 d2
-| 3 DEPTARGET
-| 4 d4
-| 5 d5
-| 6 d6
-|
-|
-|
-|
-|
-| /tmp/pardes-snap/rsearch/cwd/+Search Save New Newtty Del
-| 1 code.txt:4:1-8 pick two words
-| /tmp/pardes-snap/rsearch/cwd/+Search Save New Newtty Del
-| 1 code.txt:1:5-11 run count_x now
-| 2 code.txt:3:1-7 count_x again
== snap step2 grid=210x30 cursor=17,2
-|New Newcol Joincol Find Grep Help Changelog Tutor Dump NextColor Debug Kill
-| /tmp/pardes-snap/rsearch/cwd/code.txt Save New Newtty Del /tmp/pardes-snap/rsearch/cwd Save New Newtty Del Filter
-| 1 run count_x now ls
-| 2 open sub/dep.txt:3 here code.txt sub
-| 3 count_x again
-| 4 pick two words
-|
-| code.txt
-|
-|
-|
-|
-|
-| /tmp/pardes-snap/rsearch/cwd/sub/dep.txt Save New Newtty Del
-| 1 d1
-| 2 d2
-| 3 DEPTARGET
-| 4 d4
-| 5 d5
-| 6 d6
-|
-|
-|
-|
-|
-| /tmp/pardes-snap/rsearch/cwd/+Search Save New Newtty Del
-| 1 code.txt:4:1-8 pick two words
-| /tmp/pardes-snap/rsearch/cwd/+Search Save New Newtty Del
-| 1 code.txt:1:5-11 run count_x now
-| 2 code.txt:3:1-7 count_x again
== snap step3 grid=210x30 cursor=17,2
-|New Newcol Joincol Find Grep Help Changelog Tutor Dump NextColor Debug Kill
-| /tmp/pardes-snap/rsearch/cwd/code.txt Save New Newtty Del /tmp/pardes-snap/rsearch/cwd Save New Newtty Del Filter
-| 1 run count_x now ls
-| 2 open sub/dep.txt:3 here code.txt sub
-| 3 count_x again
-| 4 pick two words
-|
-| code.txt
-|
-|
-|
-|
-|
-| /tmp/pardes-snap/rsearch/cwd/sub/dep.txt Save New Newtty Del
-| 1 d1
-| 2 d2
-| 3 DEPTARGET
-| 4 d4
-| 5 d5
-| 6 d6
-|
-|
-|
-|
-|
-| /tmp/pardes-snap/rsearch/cwd/+Search Save New Newtty Del
-| 1 code.txt:4:1-8 pick two words
-| /tmp/pardes-snap/rsearch/cwd/+Search Save New Newtty Del
-| 1 code.txt:1:5-11 run count_x now
-| 2 code.txt:3:1-7 count_x again
== snap selclick grid=210x30 cursor=14,5
-|New Newcol Joincol Find Grep Help Changelog Tutor Dump NextColor Debug Kill
-| /tmp/pardes-snap/rsearch/cwd/code.txt Save New Newtty Del /tmp/pardes-snap/rsearch/cwd Save New Newtty Del Filter
-| 1 run count_x now ls
-| 2 open sub/dep.txt:3 here code.txt sub
-| 3 count_x again
-| 4 pick two words
-|
-| code.txt
-|
-|
-|
-|
-|
-| /tmp/pardes-snap/rsearch/cwd/sub/dep.txt Save New Newtty Del
-| 1 d1
-| 2 d2
-| 3 DEPTARGET
-| 4 d4
-| 5 d5
-| 6 d6
-|
-|
-|
-|
-|
-| /tmp/pardes-snap/rsearch/cwd/+Search Save New Newtty Del
-| 1 code.txt:4:1-8 pick two words
-| /tmp/pardes-snap/rsearch/cwd/+Search Save New Newtty Del
-| 1 code.txt:1:5-11 run count_x now
-| 2 code.txt:3:1-7 count_x again
== snap outside grid=210x30 cursor=20,5
-|New Newcol Joincol Find Grep Help Changelog Tutor Dump NextColor Debug Kill
-| /tmp/pardes-snap/rsearch/cwd/code.txt Save New Newtty Del /tmp/pardes-snap/rsearch/cwd Save New Newtty Del Filter
-| 1 run count_x now ls
-| 2 open sub/dep.txt:3 here code.txt sub
-| 3 count_x again
-| 4 pick two words
-|
-| code.txt
-|
-|
-|
-| /tmp/pardes-snap/rsearch/cwd/+Search Save New Newtty Del
-| 1 code.txt:4:10-14 pick two words
-| /tmp/pardes-snap/rsearch/cwd/sub/dep.txt Save New Newtty Del
-| 1 d1
-| 2 d2
-| 3 DEPTARGET
-| 4 d4
-| 5 d5
-| 6 d6
-|
-|
-|
-|
-|
-| /tmp/pardes-snap/rsearch/cwd/+Search Save New Newtty Del
-| 1 code.txt:4:1-8 pick two words
-| /tmp/pardes-snap/rsearch/cwd/+Search Save New Newtty Del
-| 1 code.txt:1:5-11 run count_x now
-| 2 code.txt:3:1-7 count_x again
+|11: /tmp/pardes-snap/rsearch/cwd/+Search Save New Newtty Del
+|12: 1 code.txt:4:10-14 pick two words
diff --git a/test/snapshots/savepane.golden b/test/snapshots/savepane.golden
new file mode 100644
index 00000000..ddea4d55
--- /dev/null
+++ b/test/snapshots/savepane.golden
@@ -0,0 +1,15 @@
+== snap scratch grid=100x30 cursor=20,5
+|New Newcol Joincol Find Grep Help Changelog Tutor Dump NextColor Debug Kill
+| /tmp/pardes-snap/savepane/cwd Save New Newtty Del Filter
+| ls
+|
+| /tmp/pardes-snap/savepane/cwd/+New * Save New Newtty Del
+| 1 scratch bytes
+== snap prompt grid=100x30 cursor=38,29
+|29: Save /tmp/pardes-snap/savepane/cwd/
+== snap saved grid=100x30 cursor=20,5
+|4: /tmp/pardes-snap/savepane/cwd/saved.txt Save New Newtty Del
+|29: --:--:-- saved /tmp/pardes-snap/savepane/cwd/saved.txt
+== file bytes
+scratch bytes
+== end file
diff --git a/test/snapshots/savepane.snap b/test/snapshots/savepane.snap
new file mode 100644
index 00000000..f5a3b9e2
--- /dev/null
+++ b/test/snapshots/savepane.snap
@@ -0,0 +1,33 @@
+# `Save` with NO argument on a +New scratch: the prompt is drawn in the tag,
+# prefilled with the pane's own directory, and submitting it turns the scratch
+# into an ordinary file pane whose bytes are on disk.
+#
+# config.zig's save_marker is rendered in no other golden in the suite. Ten
+# unit tests assert the STRING startSavePrompt builds (pardes.zig's "Save on a
+# scratch asks for a path in its inherited dir and makes it a file"); none of
+# them can see it drawn, land on the tag rather than the message row, or show
+# what the pane becomes afterwards. That is what this script is for.
+start 30 100 -n 1
+wait 8000 New Newcol
+stable 700 20000
+# a scratch of our own, with something in it to save
+key space f n
+stable 400 5000
+key i
+text scratch bytes
+key esc
+settle 100
+stable 400 5000
+snap scratch
+# Save, no argument: the tag gains the armed ` Save <dir>/` prompt, and the
+# pane is still the scratch — nothing is written until the path is submitted
+key space f s
+stable 400 5000
+snap prompt
+# name it: the prompt submits, the pane becomes that file (its tag is the path,
+# and the `*` is gone because what is on screen is what is on disk)
+text saved.txt
+key enter
+stable 700 15000
+snap saved
+snapfile bytes saved.txt
diff --git a/test/snapshots/scroll.golden b/test/snapshots/scroll.golden
index d529116e..978e3781 100644
--- a/test/snapshots/scroll.golden
+++ b/test/snapshots/scroll.golden
@@ -18,142 +18,67 @@
| /tmp/pardes-snap/scroll/cwd Save New Newtty Del
| ls
| s.txt
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
== snap wheel3 grid=100x30 cursor=4,15
-|New Newcol Joincol Find Grep Help Changelog Tutor Dump NextColor Debug Kill
-| /tmp/pardes-snap/scroll/cwd Save New Newtty Del /tmp/pardes-snap/scroll/cwd Save New Newtty Del
-| 185 ls
-| 186 s.txt
-| 187
-| 188
-| 189
-| 190
-| 191
-| 192
-| 193
-| 194
-| 195
-| 196
-| 197
-| 198
-| /tmp/pardes-snap/scroll/cwd Save New Newtty Del
-| ls
-| s.txt
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
+|2: 185 ls
+|3: 186 s.txt
+|4: 187
+|5: 188
+|6: 189
+|7: 190
+|8: 191
+|9: 192
+|10: 193
+|11: 194
+|12: 195
+|13: 196
+|14: 197
+|15: 198
== snap gutter-up grid=100x30 cursor=4,15
-|New Newcol Joincol Find Grep Help Changelog Tutor Dump NextColor Debug Kill
-| /tmp/pardes-snap/scroll/cwd Save New Newtty Del /tmp/pardes-snap/scroll/cwd Save New Newtty Del
-| 178 ls
-| 179 s.txt
-| 180
-| 181
-| 182
-| 183
-| 184
-| 185
-| 186
-| 187
-| 188
-| 189
-| 190
-| 191
-| /tmp/pardes-snap/scroll/cwd Save New Newtty Del
-| ls
-| s.txt
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
+|2: 178 ls
+|3: 179 s.txt
+|4: 180
+|5: 181
+|6: 182
+|7: 183
+|8: 184
+|9: 185
+|10: 186
+|11: 187
+|12: 188
+|13: 189
+|14: 190
+|15: 191
== snap gutter-down grid=100x30 cursor=4,15
-|New Newcol Joincol Find Grep Help Changelog Tutor Dump NextColor Debug Kill
-| /tmp/pardes-snap/scroll/cwd Save New Newtty Del /tmp/pardes-snap/scroll/cwd Save New Newtty Del
-| 180 ls
-| 181 s.txt
-| 182
-| 183
-| 184
-| 185
-| 186
-| 187
-| 188
-| 189
-| 190
-| 191
-| 192
-| 193
-| /tmp/pardes-snap/scroll/cwd Save New Newtty Del
-| ls
-| s.txt
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
+|2: 180 ls
+|3: 181 s.txt
+|4: 182
+|5: 183
+|6: 184
+|7: 185
+|8: 186
+|9: 187
+|10: 188
+|11: 189
+|12: 190
+|13: 191
+|14: 192
+|15: 193
== snap wheel-down grid=100x30 cursor=4,15
-|New Newcol Joincol Find Grep Help Changelog Tutor Dump NextColor Debug Kill
-| /tmp/pardes-snap/scroll/cwd Save New Newtty Del /tmp/pardes-snap/scroll/cwd Save New Newtty Del
-| 181 ls
-| 182 s.txt
-| 183
-| 184
-| 185
-| 186
-| 187
-| 188
-| 189
-| 190
-| 191
-| 192
-| 193
-| 194
-| /tmp/pardes-snap/scroll/cwd Save New Newtty Del
-| ls
-| s.txt
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-== style wheel-down
+|2: 181 ls
+|3: 182 s.txt
+|4: 183
+|5: 184
+|6: 185
+|7: 186
+|8: 187
+|9: 188
+|10: 189
+|11: 190
+|12: 191
+|13: 192
+|14: 193
+|15: 194
+== style wheel-down grid=100x30
|0: 0-74 #949494,#121212, 75-99 d,#121212,
|1: 0-1 #ffffff,#626262, 2-49 #949494,#121212, 50-51 #ffffff,#262626, 52-99 #949494,#121212,
|2: 0-0 d,#121212, 1-1 d,#080808, 2-4 #bdbdbd,#080808, 5-49 d,#080808, 50-50 d,#444444, 51-51 d,#080808, 52-53 #bdbdbd,#080808, 54-99 d,#080808,
diff --git a/test/snapshots/scrolloff.golden b/test/snapshots/scrolloff.golden
index f51f043f..3651c8b7 100644
--- a/test/snapshots/scrolloff.golden
+++ b/test/snapshots/scrolloff.golden
@@ -11,74 +11,53 @@
| 8 line 8
| 9 line 9
== snap edge grid=210x11 cursor=7,7
-|New Newcol Joincol Find Grep Help Changelog Tutor Dump NextColor Debug Kill
-| /tmp/pardes-snap/scrolloff/cwd/g.txt Save New Newtty Del /tmp/pardes-snap/scrolloff/cwd Save New Newtty Del Filter
-| 1 line 1 ls
-| 2 line 2 g.txt
-| 3 line 3
-| 4 line 4
-| 5 line 5
-| 6 line 6
-| 7 line 7
-| 8 line 8
-| 9 line 9
== snap scrolled1 grid=210x11 cursor=7,7
-|New Newcol Joincol Find Grep Help Changelog Tutor Dump NextColor Debug Kill
-| /tmp/pardes-snap/scrolloff/cwd/g.txt Save New Newtty Del /tmp/pardes-snap/scrolloff/cwd Save New Newtty Del Filter
-| 2 line 2 ls
-| 3 line 3 g.txt
-| 4 line 4
-| 5 line 5
-| 6 line 6
-| 7 line 7
-| 8 line 8
-| 9 line 9
-| 10 line 10
+|2: 2 line 2 ls
+|3: 3 line 3 g.txt
+|4: 4 line 4
+|5: 5 line 5
+|6: 6 line 6
+|7: 7 line 7
+|8: 8 line 8
+|9: 9 line 9
+|10: 10 line 10
== snap jdown grid=210x11 cursor=7,7
-|New Newcol Joincol Find Grep Help Changelog Tutor Dump NextColor Debug Kill
-| /tmp/pardes-snap/scrolloff/cwd/g.txt Save New Newtty Del /tmp/pardes-snap/scrolloff/cwd Save New Newtty Del Filter
-| 6 line 6 ls
-| 7 line 7 g.txt
-| 8 line 8
-| 9 line 9
-| 10 line 10
-| 11 line 11
-| 12 line 12
-| 13 line 13
-| 14 line 14
+|2: 6 line 6 ls
+|3: 7 line 7 g.txt
+|4: 8 line 8
+|5: 9 line 9
+|6: 10 line 10
+|7: 11 line 11
+|8: 12 line 12
+|9: 13 line 13
+|10: 14 line 14
== snap end grid=210x11 cursor=7,9
-|New Newcol Joincol Find Grep Help Changelog Tutor Dump NextColor Debug Kill
-| /tmp/pardes-snap/scrolloff/cwd/g.txt Save New Newtty Del /tmp/pardes-snap/scrolloff/cwd Save New Newtty Del Filter
-| 33 line 33 ls
-| 34 line 34 g.txt
-| 35 line 35
-| 36 line 36
-| 37 line 37
-| 38 line 38
-| 39 line 39
-| 40 line 40
-| 41
+|2: 33 line 33 ls
+|3: 34 line 34 g.txt
+|4: 35 line 35
+|5: 36 line 36
+|6: 37 line 37
+|7: 38 line 38
+|8: 39 line 39
+|9: 40 line 40
+|10: 41
== snap kup grid=210x11 cursor=7,5
-|New Newcol Joincol Find Grep Help Changelog Tutor Dump NextColor Debug Kill
-| /tmp/pardes-snap/scrolloff/cwd/g.txt Save New Newtty Del /tmp/pardes-snap/scrolloff/cwd Save New Newtty Del Filter
-| 29 line 29 ls
-| 30 line 30 g.txt
-| 31 line 31
-| 32 line 32
-| 33 line 33
-| 34 line 34
-| 35 line 35
-| 36 line 36
-| 37 line 37
+|2: 29 line 29 ls
+|3: 30 line 30 g.txt
+|4: 31 line 31
+|5: 32 line 32
+|6: 33 line 33
+|7: 34 line 34
+|8: 35 line 35
+|9: 36 line 36
+|10: 37 line 37
== snap top2 grid=210x11 cursor=7,2
-|New Newcol Joincol Find Grep Help Changelog Tutor Dump NextColor Debug Kill
-| /tmp/pardes-snap/scrolloff/cwd/g.txt Save New Newtty Del /tmp/pardes-snap/scrolloff/cwd Save New Newtty Del Filter
-| 1 line 1 ls
-| 2 line 2 g.txt
-| 3 line 3
-| 4 line 4
-| 5 line 5
-| 6 line 6
-| 7 line 7
-| 8 line 8
-| 9 line 9
+|2: 1 line 1 ls
+|3: 2 line 2 g.txt
+|4: 3 line 3
+|5: 4 line 4
+|6: 5 line 5
+|7: 6 line 6
+|8: 7 line 7
+|9: 8 line 8
+|10: 9 line 9
diff --git a/test/snapshots/selarg.golden b/test/snapshots/selarg.golden
index b1d761f3..bd0b1c1d 100644
--- a/test/snapshots/selarg.golden
+++ b/test/snapshots/selarg.golden
@@ -18,76 +18,9 @@
| /tmp/pardes-snap/selarg/cwd Save New Newtty Del
| ls
| s.txt
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
== snap crosspane grid=100x30 cursor=6,2
-|New Newcol Joincol Find Grep Help Changelog Tutor Dump NextColor Debug Kill
-| /tmp/pardes-snap/selarg/cwd Save New Newtty Del /tmp/pardes-snap/selarg/cwd Save New Newtty Del
-| ZZARG ZZVEE ./c.sh
-| ./c.sh ZZARG
-| CHORDARG:ZZARG
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-| /tmp/pardes-snap/selarg/cwd Save New Newtty Del
-| ls
-| s.txt
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
+|3: ./c.sh ZZARG
+|4: CHORDARG:ZZARG
== snap vselarg grid=100x30 cursor=12,2
-|New Newcol Joincol Find Grep Help Changelog Tutor Dump NextColor Debug Kill
-| /tmp/pardes-snap/selarg/cwd Save New Newtty Del /tmp/pardes-snap/selarg/cwd Save New Newtty Del
-| ZZARG ZZVEE ./c.sh
-| ./c.sh ZZARG
-| CHORDARG:ZZARG
-| ./c.sh ZZVEE
-| CHORDARG:ZZVEE
-|
-|
-|
-|
-|
-|
-|
-|
-|
-| /tmp/pardes-snap/selarg/cwd Save New Newtty Del
-| ls
-| s.txt
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
+|5: ./c.sh ZZVEE
+|6: CHORDARG:ZZVEE
diff --git a/test/snapshots/selregex.golden b/test/snapshots/selregex.golden
index 16d06b51..ac15f693 100644
--- a/test/snapshots/selregex.golden
+++ b/test/snapshots/selregex.golden
@@ -24,31 +24,8 @@
|
| Select /
== snap preview grid=160x24 cursor=16,23
-|New Newcol Joincol Find Grep Help Changelog Tutor Dump NextColor Debug Kill
-| /tmp/pardes-snap/selregex/cwd/m.zig Save New Newtty Del
-| 1 const one = 1;
-| 2 const two = 2;
-| 3 const three = 3;
-| 4
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-| Select /const
-== style preview
+|23: Select /const
+== style preview grid=160x24
|0: 0-74 #949494,#121212, 75-159 d,#121212,
|1: 0-1 #ffffff,#626262, 2-139 #949494,#121212, 140-159 d,#121212,
|2: 0-0 d,#444444, 1-1 d,#080808, 2-6 #626262,#080808, 7-10 #080808,#80a0ff, 11-11 #80a0ff,#080808, 12-18 #bdbdbd,#080808, 19-19 #e3c78a,#080808, 20-20 #bdbdbd,#080808, 21-159 d,#080808,
@@ -74,202 +51,30 @@
|22: 0-0 d,#444444, 1-1 d,#080808, 2-6 #626262,#080808, 7-159 d,#080808,
|23: 0-0 d,#444444, 1-1 d,#080808, 2-15 #bdbdbd,#080808, 16-159 d,#080808,
== snap three-selected grid=160x24 cursor=11,2
-|New Newcol Joincol Find Grep Help Changelog Tutor Dump NextColor Debug Kill
-| /tmp/pardes-snap/selregex/cwd/m.zig Save New Newtty Del
-| 1 const one = 1;
-| 2 const two = 2;
-| 3 const three = 3;
-| 4
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-== style three-selected
-|0: 0-74 #949494,#121212, 75-159 d,#121212,
-|1: 0-1 #ffffff,#626262, 2-139 #949494,#121212, 140-159 d,#121212,
+|23:
+== style three-selected grid=160x24
|2: 0-0 d,#444444, 1-1 d,#080808, 2-6 #949494,#121212, 7-11 #080808,#80a0ff, 12-18 #bdbdbd,#080808, 19-19 #e3c78a,#080808, 20-20 #bdbdbd,#080808, 21-159 d,#080808,
-|3: 0-0 d,#444444, 1-1 d,#080808, 2-6 #626262,#080808, 7-10 #080808,#445483, 11-11 #80a0ff,#080808, 12-18 #bdbdbd,#080808, 19-19 #e3c78a,#080808, 20-20 #bdbdbd,#080808, 21-159 d,#080808,
-|4: 0-0 d,#444444, 1-1 d,#080808, 2-6 #626262,#080808, 7-10 #080808,#445483, 11-11 #80a0ff,#080808, 12-20 #bdbdbd,#080808, 21-21 #e3c78a,#080808, 22-22 #bdbdbd,#080808, 23-159 d,#080808,
-|5: 0-0 d,#444444, 1-1 d,#080808, 2-6 #626262,#080808, 7-159 d,#080808,
-|6: 0-0 d,#444444, 1-1 d,#080808, 2-6 #626262,#080808, 7-159 d,#080808,
-|7: 0-0 d,#444444, 1-1 d,#080808, 2-6 #626262,#080808, 7-159 d,#080808,
-|8: 0-0 d,#444444, 1-1 d,#080808, 2-6 #626262,#080808, 7-159 d,#080808,
-|9: 0-0 d,#444444, 1-1 d,#080808, 2-6 #626262,#080808, 7-159 d,#080808,
-|10: 0-0 d,#444444, 1-1 d,#080808, 2-6 #626262,#080808, 7-159 d,#080808,
-|11: 0-0 d,#444444, 1-1 d,#080808, 2-6 #626262,#080808, 7-159 d,#080808,
-|12: 0-0 d,#444444, 1-1 d,#080808, 2-6 #626262,#080808, 7-159 d,#080808,
-|13: 0-0 d,#444444, 1-1 d,#080808, 2-6 #626262,#080808, 7-159 d,#080808,
-|14: 0-0 d,#444444, 1-1 d,#080808, 2-6 #626262,#080808, 7-159 d,#080808,
-|15: 0-0 d,#444444, 1-1 d,#080808, 2-6 #626262,#080808, 7-159 d,#080808,
-|16: 0-0 d,#444444, 1-1 d,#080808, 2-6 #626262,#080808, 7-159 d,#080808,
-|17: 0-0 d,#444444, 1-1 d,#080808, 2-6 #626262,#080808, 7-159 d,#080808,
-|18: 0-0 d,#444444, 1-1 d,#080808, 2-6 #626262,#080808, 7-159 d,#080808,
-|19: 0-0 d,#444444, 1-1 d,#080808, 2-6 #626262,#080808, 7-159 d,#080808,
-|20: 0-0 d,#444444, 1-1 d,#080808, 2-6 #626262,#080808, 7-159 d,#080808,
-|21: 0-0 d,#444444, 1-1 d,#080808, 2-6 #626262,#080808, 7-159 d,#080808,
-|22: 0-0 d,#444444, 1-1 d,#080808, 2-6 #626262,#080808, 7-159 d,#080808,
|23: 0-0 d,#444444, 1-1 d,#080808, 2-6 #626262,#080808, 7-159 d,#080808,
== snap narrowed grid=160x24 cursor=12,23
-|New Newcol Joincol Find Grep Help Changelog Tutor Dump NextColor Debug Kill
-| /tmp/pardes-snap/selregex/cwd/m.zig Save New Newtty Del
-| 1 const one = 1;
-| 2 const two = 2;
-| 3 const three = 3;
-| 4
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-| Select /t
-== style narrowed
-|0: 0-74 #949494,#121212, 75-159 d,#121212,
-|1: 0-1 #ffffff,#626262, 2-139 #949494,#121212, 140-159 d,#121212,
+|23: Select /t
+== style narrowed grid=160x24
|2: 0-0 d,#444444, 1-1 d,#080808, 2-6 #626262,#080808, 7-10 #bdbdbd,#080808, 11-11 #80a0ff,#080808, 12-18 #bdbdbd,#080808, 19-19 #e3c78a,#080808, 20-20 #bdbdbd,#080808, 21-159 d,#080808,
|3: 0-0 d,#444444, 1-1 d,#080808, 2-6 #626262,#080808, 7-10 #bdbdbd,#080808, 11-11 #80a0ff,#080808, 12-18 #bdbdbd,#080808, 19-19 #e3c78a,#080808, 20-20 #bdbdbd,#080808, 21-159 d,#080808,
|4: 0-0 d,#444444, 1-1 d,#080808, 2-6 #626262,#080808, 7-10 #bdbdbd,#080808, 11-11 #80a0ff,#080808, 12-20 #bdbdbd,#080808, 21-21 #e3c78a,#080808, 22-22 #bdbdbd,#080808, 23-159 d,#080808,
-|5: 0-0 d,#444444, 1-1 d,#080808, 2-6 #626262,#080808, 7-159 d,#080808,
-|6: 0-0 d,#444444, 1-1 d,#080808, 2-6 #626262,#080808, 7-159 d,#080808,
-|7: 0-0 d,#444444, 1-1 d,#080808, 2-6 #626262,#080808, 7-159 d,#080808,
-|8: 0-0 d,#444444, 1-1 d,#080808, 2-6 #626262,#080808, 7-159 d,#080808,
-|9: 0-0 d,#444444, 1-1 d,#080808, 2-6 #626262,#080808, 7-159 d,#080808,
-|10: 0-0 d,#444444, 1-1 d,#080808, 2-6 #626262,#080808, 7-159 d,#080808,
-|11: 0-0 d,#444444, 1-1 d,#080808, 2-6 #626262,#080808, 7-159 d,#080808,
-|12: 0-0 d,#444444, 1-1 d,#080808, 2-6 #626262,#080808, 7-159 d,#080808,
-|13: 0-0 d,#444444, 1-1 d,#080808, 2-6 #626262,#080808, 7-159 d,#080808,
-|14: 0-0 d,#444444, 1-1 d,#080808, 2-6 #626262,#080808, 7-159 d,#080808,
-|15: 0-0 d,#444444, 1-1 d,#080808, 2-6 #626262,#080808, 7-159 d,#080808,
-|16: 0-0 d,#444444, 1-1 d,#080808, 2-6 #626262,#080808, 7-159 d,#080808,
-|17: 0-0 d,#444444, 1-1 d,#080808, 2-6 #626262,#080808, 7-159 d,#080808,
-|18: 0-0 d,#444444, 1-1 d,#080808, 2-6 #626262,#080808, 7-159 d,#080808,
-|19: 0-0 d,#444444, 1-1 d,#080808, 2-6 #626262,#080808, 7-159 d,#080808,
-|20: 0-0 d,#444444, 1-1 d,#080808, 2-6 #626262,#080808, 7-159 d,#080808,
-|21: 0-0 d,#444444, 1-1 d,#080808, 2-6 #626262,#080808, 7-159 d,#080808,
-|22: 0-0 d,#444444, 1-1 d,#080808, 2-6 #626262,#080808, 7-159 d,#080808,
|23: 0-0 d,#444444, 1-1 d,#080808, 2-11 #bdbdbd,#080808, 12-159 d,#080808,
== snap esc-restores grid=160x24 cursor=11,2
-|New Newcol Joincol Find Grep Help Changelog Tutor Dump NextColor Debug Kill
-| /tmp/pardes-snap/selregex/cwd/m.zig Save New Newtty Del
-| 1 const one = 1;
-| 2 const two = 2;
-| 3 const three = 3;
-| 4
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-== style esc-restores
-|0: 0-74 #949494,#121212, 75-159 d,#121212,
-|1: 0-1 #ffffff,#626262, 2-139 #949494,#121212, 140-159 d,#121212,
+|23:
+== style esc-restores grid=160x24
|2: 0-0 d,#444444, 1-1 d,#080808, 2-6 #949494,#121212, 7-11 #080808,#80a0ff, 12-18 #bdbdbd,#080808, 19-19 #e3c78a,#080808, 20-20 #bdbdbd,#080808, 21-159 d,#080808,
|3: 0-0 d,#444444, 1-1 d,#080808, 2-6 #626262,#080808, 7-10 #080808,#445483, 11-11 #80a0ff,#080808, 12-18 #bdbdbd,#080808, 19-19 #e3c78a,#080808, 20-20 #bdbdbd,#080808, 21-159 d,#080808,
|4: 0-0 d,#444444, 1-1 d,#080808, 2-6 #626262,#080808, 7-10 #080808,#445483, 11-11 #80a0ff,#080808, 12-20 #bdbdbd,#080808, 21-21 #e3c78a,#080808, 22-22 #bdbdbd,#080808, 23-159 d,#080808,
-|5: 0-0 d,#444444, 1-1 d,#080808, 2-6 #626262,#080808, 7-159 d,#080808,
-|6: 0-0 d,#444444, 1-1 d,#080808, 2-6 #626262,#080808, 7-159 d,#080808,
-|7: 0-0 d,#444444, 1-1 d,#080808, 2-6 #626262,#080808, 7-159 d,#080808,
-|8: 0-0 d,#444444, 1-1 d,#080808, 2-6 #626262,#080808, 7-159 d,#080808,
-|9: 0-0 d,#444444, 1-1 d,#080808, 2-6 #626262,#080808, 7-159 d,#080808,
-|10: 0-0 d,#444444, 1-1 d,#080808, 2-6 #626262,#080808, 7-159 d,#080808,
-|11: 0-0 d,#444444, 1-1 d,#080808, 2-6 #626262,#080808, 7-159 d,#080808,
-|12: 0-0 d,#444444, 1-1 d,#080808, 2-6 #626262,#080808, 7-159 d,#080808,
-|13: 0-0 d,#444444, 1-1 d,#080808, 2-6 #626262,#080808, 7-159 d,#080808,
-|14: 0-0 d,#444444, 1-1 d,#080808, 2-6 #626262,#080808, 7-159 d,#080808,
-|15: 0-0 d,#444444, 1-1 d,#080808, 2-6 #626262,#080808, 7-159 d,#080808,
-|16: 0-0 d,#444444, 1-1 d,#080808, 2-6 #626262,#080808, 7-159 d,#080808,
-|17: 0-0 d,#444444, 1-1 d,#080808, 2-6 #626262,#080808, 7-159 d,#080808,
-|18: 0-0 d,#444444, 1-1 d,#080808, 2-6 #626262,#080808, 7-159 d,#080808,
-|19: 0-0 d,#444444, 1-1 d,#080808, 2-6 #626262,#080808, 7-159 d,#080808,
-|20: 0-0 d,#444444, 1-1 d,#080808, 2-6 #626262,#080808, 7-159 d,#080808,
-|21: 0-0 d,#444444, 1-1 d,#080808, 2-6 #626262,#080808, 7-159 d,#080808,
-|22: 0-0 d,#444444, 1-1 d,#080808, 2-6 #626262,#080808, 7-159 d,#080808,
|23: 0-0 d,#444444, 1-1 d,#080808, 2-6 #626262,#080808, 7-159 d,#080808,
== snap commented grid=160x24 cursor=14,2
-|New Newcol Joincol Find Grep Help Changelog Tutor Dump NextColor Debug Kill
-| /tmp/pardes-snap/selregex/cwd/m.zig * Save New Newtty Del
-| 1 // const one = 1;
-| 2 // const two = 2;
-| 3 // const three = 3;
-| 4
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
+|1: /tmp/pardes-snap/selregex/cwd/m.zig * Save New Newtty Del
+|2: 1 // const one = 1;
+|3: 2 // const two = 2;
+|4: 3 // const three = 3;
== snap uncommented grid=160x24 cursor=11,2
-|New Newcol Joincol Find Grep Help Changelog Tutor Dump NextColor Debug Kill
-| /tmp/pardes-snap/selregex/cwd/m.zig * Save New Newtty Del
-| 1 const one = 1;
-| 2 const two = 2;
-| 3 const three = 3;
-| 4
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
+|2: 1 const one = 1;
+|3: 2 const two = 2;
+|4: 3 const three = 3;
diff --git a/test/snapshots/shellset.golden b/test/snapshots/shellset.golden
index 9ef46cef..37866d46 100644
--- a/test/snapshots/shellset.golden
+++ b/test/snapshots/shellset.golden
@@ -2,62 +2,8 @@
|New Newcol Joincol Find Grep Help Changelog Tutor Dump NextColor Debug Kill
| /tmp/pardes-snap/shellset/cwd/cmd.txt Save New Newtty Del
| 1 Shell zznosuchshell
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
== snap builtin-ran grid=90x20 cursor=25,2
-|New Newcol Joincol Find Grep Help Changelog Tutor Dump NextColor Debug Kill
-| /tmp/pardes-snap/shellset/cwd/cmd.txt Save New Newtty Del
-| 1 Shell zznosuchshell
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
== snap fallback-shell grid=90x20 cursor=49,4
-|New Newcol Joincol Find Grep Help Changelog Tutor Dump NextColor Debug Kill
-| /tmp/pardes-snap/shellset/cwd/cmd.txt Save /tmp/pardes-snap/shellset/cwd Save New Newt
-| 1 Shell zznosuchshell ls
-| cmd.txt zmarkfile.txt
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
+|1: /tmp/pardes-snap/shellset/cwd/cmd.txt Save /tmp/pardes-snap/shellset/cwd Save New Newt
+|2: 1 Shell zznosuchshell ls
+|3: cmd.txt zmarkfile.txt
diff --git a/test/snapshots/shrinktag.golden b/test/snapshots/shrinktag.golden
index 95a9442c..e186d330 100644
--- a/test/snapshots/shrinktag.golden
+++ b/test/snapshots/shrinktag.golden
@@ -18,138 +18,26 @@
| /tmp/pardes-snap/shrinktag/cwd Save New Newtty D
| ls
| w.txt
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
== snap shrunk grid=100x30 cursor=2,8
-|New Newcol Joincol Find Grep Help Changelog Tutor Dump NextColor Debug Kill
-| /tmp/pardes-snap/shrinktag/cwd Save New Newtty D /tmp/pardes-snap/shrinktag/cwd Save New Newtty D
-| /tmp/pardes-snap/shrinktag/cwd Save New Newtty D ls
-| ls w.txt
-| w.txt
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
+|2: /tmp/pardes-snap/shrinktag/cwd Save New Newtty D ls
+|3: ls w.txt
+|4: w.txt
+|7:
+|16:
+|17:
+|18:
== snap move-preview grid=100x30 cursor=2,8
-|New Newcol Joincol Find Grep Help Changelog Tutor Dump NextColor Debug Kill
-| /tmp/pardes-snap/shrinktag/cwd Save New Newtty D /tmp/pardes-snap/shrinktag/cwd Save New Newtty D
-| /tmp/pardes-snap/shrinktag/cwd Save New Newtty D ls
-| ls w.txt
-| w.txt
-|
-|
-| ╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌▌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
+|7: ╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌▌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌
== snap restored grid=100x30 cursor=2,8
-|New Newcol Joincol Find Grep Help Changelog Tutor Dump NextColor Debug Kill
-| /tmp/pardes-snap/shrinktag/cwd Save New Newtty D /tmp/pardes-snap/shrinktag/cwd Save New Newtty D
-| ls ls
-| w.txt w.txt
-|
-|
-|
-| echo one; echo two
-|
-|
-|
-|
-|
-|
-|
-|
-| /tmp/pardes-snap/shrinktag/cwd Save New Newtty D
-| ls
-| w.txt
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
+|2: ls ls
+|3: w.txt w.txt
+|4:
+|7: echo one; echo two
+|16: /tmp/pardes-snap/shrinktag/cwd Save New Newtty D
+|17: ls
+|18: w.txt
== snap bottom-shrunk grid=100x30 cursor=2,8
-|New Newcol Joincol Find Grep Help Changelog Tutor Dump NextColor Debug Kill
-| /tmp/pardes-snap/shrinktag/cwd Save New Newtty D /tmp/pardes-snap/shrinktag/cwd Save New Newtty D
-| ls ls
-| w.txt w.txt
-|
-|
-|
-| echo one; echo two
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-| /tmp/pardes-snap/shrinktag/cwd Save New Newtty D
+|16:
+|17:
+|18:
+|29: /tmp/pardes-snap/shrinktag/cwd Save New Newtty D
diff --git a/test/snapshots/splitparent.golden b/test/snapshots/splitparent.golden
index b2736efe..cc3a785b 100644
--- a/test/snapshots/splitparent.golden
+++ b/test/snapshots/splitparent.golden
@@ -3,69 +3,14 @@
| /tmp/pardes-snap/splitparent/cwd Save New Newtty /tmp/pardes-snap/splitparent/cwd Save New Newtty
| /tmp/pardes-snap/splitparent/cwd Save New Newtty ls
| ls
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
== snap swap-parent grid=100x30 cursor=4,7
-|New Newcol Joincol Find Grep Help Changelog Tutor Dump NextColor Debug Kill
-| /tmp/pardes-snap/splitparent/cwd Save New Newtty /tmp/pardes-snap/splitparent/cwd Save New Newtty
-| /tmp/pardes-snap/splitparent/cwd Save New Newtty ls
-| ls
-|
-| /tmp/pardes-snap/splitparent/cwd Save New Newtty
-| ls
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
+|5: /tmp/pardes-snap/splitparent/cwd Save New Newtty
+|6: ls
== snap tallest grid=100x5 cursor=54,4
|New Newcol Joincol Find Grep Help Changelog Tutor Dump NextColor Debug Kill
| /tmp/pardes-snap/splitparent/cwd Save New Newtty /tmp/pardes-snap/splitparent/cwd Save New Newtty
| /tmp/pardes-snap/splitparent/cwd Save New Newtty
| /tmp/pardes-snap/splitparent/cwd Save New Newtty /tmp/pardes-snap/splitparent/cwd Save New Newtty
-|
== snap regrown grid=100x30 cursor=54,18
|New Newcol Joincol Find Grep Help Changelog Tutor Dump NextColor Debug Kill
| /tmp/pardes-snap/splitparent/cwd Save New Newtty /tmp/pardes-snap/splitparent/cwd Save New Newtty
@@ -85,15 +30,3 @@
|
| /tmp/pardes-snap/splitparent/cwd Save New Newtty
| ls
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
diff --git a/test/snapshots/stepgrain.golden b/test/snapshots/stepgrain.golden
index 73570126..1baf8ff1 100644
--- a/test/snapshots/stepgrain.golden
+++ b/test/snapshots/stepgrain.golden
@@ -30,37 +30,7 @@
| 2 a.txt:2:24-29 see also sub/b.txt for ZQMARK two
| 3 sub/b.txt:1:1-6 ZQMARK inside sub
== snap step-row1 grid=150x30 cursor=7,27
-|New Newcol Joincol Find Grep Help Changelog Tutor Dump NextColor Debug Kill
-| /tmp/pardes-snap/stepgrain/cwd/a.txt Save New Newtty Del
-| 1 hello ZQMARK one
-| 2 see also sub/b.txt for ZQMARK two
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-| /tmp/pardes-snap/stepgrain/cwd/+Search Save New Newtty Del
-| 1 a.txt:1:7-12 hello ZQMARK one
-| 2 a.txt:2:24-29 see also sub/b.txt for ZQMARK two
-| 3 sub/b.txt:1:1-6 ZQMARK inside sub
-== style step-row1
+== style step-row1 grid=150x30
|0: 0-74 #949494,#121212, 75-149 d,#121212,
|1: 0-1 #ffffff,#262626, 2-129 #949494,#121212, 130-149 d,#121212,
|2: 0-0 d,#444444, 1-1 d,#080808, 2-6 #626262,#080808, 7-22 #bdbdbd,#080808, 23-149 d,#080808,
@@ -92,219 +62,26 @@
|28: 0-0 d,#444444, 1-1 d,#080808, 2-6 #626262,#080808, 7-53 #bdbdbd,#080808, 54-149 d,#080808,
|29: 0-0 d,#121212, 1-1 d,#080808, 2-6 #626262,#080808, 7-39 #bdbdbd,#080808, 40-149 d,#080808,
== snap step-row2 grid=150x30 cursor=7,28
-|New Newcol Joincol Find Grep Help Changelog Tutor Dump NextColor Debug Kill
-| /tmp/pardes-snap/stepgrain/cwd/a.txt Save New Newtty Del
-| 1 hello ZQMARK one
-| 2 see also sub/b.txt for ZQMARK two
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-| /tmp/pardes-snap/stepgrain/cwd/+Search Save New Newtty Del
-| 1 a.txt:1:7-12 hello ZQMARK one
-| 2 a.txt:2:24-29 see also sub/b.txt for ZQMARK two
-| 3 sub/b.txt:1:1-6 ZQMARK inside sub
-== style step-row2
-|0: 0-74 #949494,#121212, 75-149 d,#121212,
-|1: 0-1 #ffffff,#262626, 2-129 #949494,#121212, 130-149 d,#121212,
-|2: 0-0 d,#444444, 1-1 d,#080808, 2-6 #626262,#080808, 7-22 #bdbdbd,#080808, 23-149 d,#080808,
-|3: 0-0 d,#444444, 1-1 d,#080808, 2-6 #626262,#080808, 7-39 #bdbdbd,#080808, 40-149 d,#080808,
-|4: 0-0 d,#444444, 1-1 d,#080808, 2-6 #626262,#080808, 7-149 d,#080808,
-|5: 0-0 d,#444444, 1-1 d,#080808, 2-6 #626262,#080808, 7-149 d,#080808,
-|6: 0-0 d,#444444, 1-1 d,#080808, 2-6 #626262,#080808, 7-149 d,#080808,
-|7: 0-0 d,#444444, 1-1 d,#080808, 2-6 #626262,#080808, 7-149 d,#080808,
-|8: 0-0 d,#444444, 1-1 d,#080808, 2-6 #626262,#080808, 7-149 d,#080808,
-|9: 0-0 d,#444444, 1-1 d,#080808, 2-6 #626262,#080808, 7-149 d,#080808,
-|10: 0-0 d,#444444, 1-1 d,#080808, 2-6 #626262,#080808, 7-149 d,#080808,
-|11: 0-0 d,#444444, 1-1 d,#080808, 2-6 #626262,#080808, 7-149 d,#080808,
-|12: 0-0 d,#444444, 1-1 d,#080808, 2-6 #626262,#080808, 7-149 d,#080808,
-|13: 0-0 d,#444444, 1-1 d,#080808, 2-6 #626262,#080808, 7-149 d,#080808,
-|14: 0-0 d,#444444, 1-1 d,#080808, 2-6 #626262,#080808, 7-149 d,#080808,
-|15: 0-0 d,#444444, 1-1 d,#080808, 2-6 #626262,#080808, 7-149 d,#080808,
-|16: 0-0 d,#444444, 1-1 d,#080808, 2-6 #626262,#080808, 7-149 d,#080808,
-|17: 0-0 d,#444444, 1-1 d,#080808, 2-6 #626262,#080808, 7-149 d,#080808,
-|18: 0-0 d,#444444, 1-1 d,#080808, 2-6 #626262,#080808, 7-149 d,#080808,
-|19: 0-0 d,#444444, 1-1 d,#080808, 2-6 #626262,#080808, 7-149 d,#080808,
-|20: 0-0 d,#444444, 1-1 d,#080808, 2-6 #626262,#080808, 7-149 d,#080808,
-|21: 0-0 d,#444444, 1-1 d,#080808, 2-6 #626262,#080808, 7-149 d,#080808,
-|22: 0-0 d,#444444, 1-1 d,#080808, 2-6 #626262,#080808, 7-149 d,#080808,
-|23: 0-0 d,#444444, 1-1 d,#080808, 2-6 #626262,#080808, 7-149 d,#080808,
-|24: 0-0 d,#444444, 1-1 d,#080808, 2-6 #626262,#080808, 7-149 d,#080808,
-|25: 0-0 d,#444444, 1-1 d,#080808, 2-6 #626262,#080808, 7-149 d,#080808,
-|26: 0-1 #ffffff,#626262, 2-129 #949494,#121212, 130-149 d,#121212,
+== style step-row2 grid=150x30
|27: 0-0 d,#444444, 1-1 d,#080808, 2-6 #626262,#080808, 7-35 #bdbdbd,#080808, 36-149 d,#080808,
|28: 0-0 d,#444444, 1-1 d,#080808, 2-6 #949494,#121212, 7-19 #080808,#80a0ff, 20-53 #bdbdbd,#080808, 54-149 d,#080808,
-|29: 0-0 d,#121212, 1-1 d,#080808, 2-6 #626262,#080808, 7-39 #bdbdbd,#080808, 40-149 d,#080808,
== snap step-row3 grid=150x30 cursor=7,28
-|New Newcol Joincol Find Grep Help Changelog Tutor Dump NextColor Debug Kill
-| /tmp/pardes-snap/stepgrain/cwd/a.txt Save New Newtty Del
-| 1 hello ZQMARK one
-| 2 see also sub/b.txt for ZQMARK two
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-| /tmp/pardes-snap/stepgrain/cwd/+Search Save New Newtty Del
-| 2 a.txt:2:24-29 see also sub/b.txt for ZQMARK two
-| 3 sub/b.txt:1:1-6 ZQMARK inside sub
-| 4
+|27: 2 a.txt:2:24-29 see also sub/b.txt for ZQMARK two
+|28: 3 sub/b.txt:1:1-6 ZQMARK inside sub
+|29: 4
== snap step-wrap grid=150x30 cursor=7,27
-|New Newcol Joincol Find Grep Help Changelog Tutor Dump NextColor Debug Kill
-| /tmp/pardes-snap/stepgrain/cwd/a.txt Save New Newtty Del
-| 1 hello ZQMARK one
-| 2 see also sub/b.txt for ZQMARK two
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-| /tmp/pardes-snap/stepgrain/cwd/+Search Save New Newtty Del
-| 1 a.txt:1:7-12 hello ZQMARK one
-| 2 a.txt:2:24-29 see also sub/b.txt for ZQMARK two
-| 3 sub/b.txt:1:1-6 ZQMARK inside sub
+|27: 1 a.txt:1:7-12 hello ZQMARK one
+|28: 2 a.txt:2:24-29 see also sub/b.txt for ZQMARK two
+|29: 3 sub/b.txt:1:1-6 ZQMARK inside sub
== snap blank-in-path grid=150x30 cursor=7,25
-|New Newcol Joincol Find Grep Help Changelog Tutor Dump NextColor Debug Kill
-| /tmp/pardes-snap/stepgrain/cwd/a.txt Save New Newtty Del
-| 1 hello ZQMARK one
-| 2 see also sub/b.txt for ZQMARK two
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-| /tmp/pardes-snap/stepgrain/cwd/+Search Save New Newtty Del
-| 1 two words.txt
-| /tmp/pardes-snap/stepgrain/cwd/+Search Save New Newtty Del
-| 1 a.txt:1:7-12 hello ZQMARK one
-| 2 a.txt:2:24-29 see also sub/b.txt for ZQMARK two
-| 3 sub/b.txt:1:1-6 ZQMARK inside sub
-== style blank-in-path
-|0: 0-74 #949494,#121212, 75-149 d,#121212,
-|1: 0-1 #ffffff,#262626, 2-129 #949494,#121212, 130-149 d,#121212,
-|2: 0-0 d,#444444, 1-1 d,#080808, 2-6 #626262,#080808, 7-22 #bdbdbd,#080808, 23-149 d,#080808,
-|3: 0-0 d,#444444, 1-1 d,#080808, 2-6 #626262,#080808, 7-39 #bdbdbd,#080808, 40-149 d,#080808,
-|4: 0-0 d,#444444, 1-1 d,#080808, 2-6 #626262,#080808, 7-149 d,#080808,
-|5: 0-0 d,#444444, 1-1 d,#080808, 2-6 #626262,#080808, 7-149 d,#080808,
-|6: 0-0 d,#444444, 1-1 d,#080808, 2-6 #626262,#080808, 7-149 d,#080808,
-|7: 0-0 d,#444444, 1-1 d,#080808, 2-6 #626262,#080808, 7-149 d,#080808,
-|8: 0-0 d,#444444, 1-1 d,#080808, 2-6 #626262,#080808, 7-149 d,#080808,
-|9: 0-0 d,#444444, 1-1 d,#080808, 2-6 #626262,#080808, 7-149 d,#080808,
-|10: 0-0 d,#444444, 1-1 d,#080808, 2-6 #626262,#080808, 7-149 d,#080808,
-|11: 0-0 d,#444444, 1-1 d,#080808, 2-6 #626262,#080808, 7-149 d,#080808,
-|12: 0-0 d,#444444, 1-1 d,#080808, 2-6 #626262,#080808, 7-149 d,#080808,
-|13: 0-0 d,#444444, 1-1 d,#080808, 2-6 #626262,#080808, 7-149 d,#080808,
-|14: 0-0 d,#444444, 1-1 d,#080808, 2-6 #626262,#080808, 7-149 d,#080808,
-|15: 0-0 d,#444444, 1-1 d,#080808, 2-6 #626262,#080808, 7-149 d,#080808,
-|16: 0-0 d,#444444, 1-1 d,#080808, 2-6 #626262,#080808, 7-149 d,#080808,
-|17: 0-0 d,#444444, 1-1 d,#080808, 2-6 #626262,#080808, 7-149 d,#080808,
-|18: 0-0 d,#444444, 1-1 d,#080808, 2-6 #626262,#080808, 7-149 d,#080808,
-|19: 0-0 d,#444444, 1-1 d,#080808, 2-6 #626262,#080808, 7-149 d,#080808,
-|20: 0-0 d,#444444, 1-1 d,#080808, 2-6 #626262,#080808, 7-149 d,#080808,
-|21: 0-0 d,#444444, 1-1 d,#080808, 2-6 #626262,#080808, 7-149 d,#080808,
-|22: 0-0 d,#444444, 1-1 d,#080808, 2-6 #626262,#080808, 7-149 d,#080808,
-|23: 0-0 d,#444444, 1-1 d,#080808, 2-6 #626262,#080808, 7-149 d,#080808,
+|24: /tmp/pardes-snap/stepgrain/cwd/+Search Save New Newtty Del
+|25: 1 two words.txt
+== style blank-in-path grid=150x30
|24: 0-1 #ffffff,#626262, 2-129 #949494,#121212, 130-149 d,#121212,
|25: 0-0 d,#444444, 1-1 d,#080808, 2-6 #949494,#121212, 7-19 #080808,#80a0ff, 20-149 d,#080808,
|26: 0-1 #ffffff,#262626, 2-129 #949494,#121212, 130-149 d,#121212,
|27: 0-0 d,#444444, 1-1 d,#080808, 2-6 #626262,#080808, 7-18 #080808,#80a0ff, 19-35 #bdbdbd,#080808, 36-149 d,#080808,
|28: 0-0 d,#444444, 1-1 d,#080808, 2-6 #626262,#080808, 7-53 #bdbdbd,#080808, 54-149 d,#080808,
-|29: 0-0 d,#121212, 1-1 d,#080808, 2-6 #626262,#080808, 7-39 #bdbdbd,#080808, 40-149 d,#080808,
== snap blank-opened grid=150x30 cursor=7,14
-|New Newcol Joincol Find Grep Help Changelog Tutor Dump NextColor Debug Kill
-| /tmp/pardes-snap/stepgrain/cwd/a.txt Save New Newtty Del
-| 1 hello ZQMARK one
-| 2 see also sub/b.txt for ZQMARK two
-|
-|
-|
-|
-|
-|
-|
-|
-|
-| /tmp/pardes-snap/stepgrain/cwd/two words.txt Save New Newtty Del
-| 1
-|
-|
-|
-|
-|
-|
-|
-|
-|
-| /tmp/pardes-snap/stepgrain/cwd/+Search Save New Newtty Del
-| 1 two words.txt
-| /tmp/pardes-snap/stepgrain/cwd/+Search Save New Newtty Del
-| 1 a.txt:1:7-12 hello ZQMARK one
-| 2 a.txt:2:24-29 see also sub/b.txt for ZQMARK two
-| 3 sub/b.txt:1:1-6 ZQMARK inside sub
+|13: /tmp/pardes-snap/stepgrain/cwd/two words.txt Save New Newtty Del
+|14: 1
diff --git a/test/snapshots/syntax.golden b/test/snapshots/syntax.golden
index fc8092de..9dc22e83 100644
--- a/test/snapshots/syntax.golden
+++ b/test/snapshots/syntax.golden
@@ -18,18 +18,7 @@
| /tmp/pardes-snap/syntax/cwd Save New Newtty Del Filter
| ls
| demo.zig
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-== style zig-open
+== style zig-open grid=150x30
|0: 0-74 #949494,#121212, 75-149 d,#121212,
|1: 0-1 #ffffff,#626262, 2-57 #949494,#121212, 58-74 d,#121212, 75-76 #ffffff,#262626, 77-130 #949494,#121212, 131-149 d,#121212,
|2: 0-0 d,#444444, 1-1 d,#080808, 2-6 #949494,#121212, 7-18 #bdbdbd,#080808, 19-25 #cf87e8,#080808,b 26-26 #bdbdbd,#080808, 27-31 #e3c78a,#080808, 32-34 #bdbdbd,#080808, 35-42 #ffffff,#080808,b 43-74 d,#080808, 75-75 d,#444444, 76-76 d,#080808, 77-78 #bdbdbd,#080808, 79-149 d,#080808,
@@ -60,65 +49,11 @@
|27: 0-0 d,#444444, 1-74 d,#080808, 75-75 d,#444444, 76-149 d,#080808,
|28: 0-0 d,#444444, 1-74 d,#080808, 75-75 d,#444444, 76-149 d,#080808,
|29: 0-0 d,#444444, 1-74 d,#080808, 75-75 d,#444444, 76-149 d,#080808,
-== style colors-off
-|0: 0-74 #949494,#121212, 75-149 d,#121212,
-|1: 0-1 #ffffff,#626262, 2-57 #949494,#121212, 58-74 d,#121212, 75-76 #ffffff,#262626, 77-130 #949494,#121212, 131-149 d,#121212,
+== style colors-off grid=150x30
|2: 0-0 d,#444444, 1-1 d,#080808, 2-6 #949494,#121212, 7-42 #bdbdbd,#080808, 43-74 d,#080808, 75-75 d,#444444, 76-76 d,#080808, 77-78 #bdbdbd,#080808, 79-149 d,#080808,
|3: 0-0 d,#444444, 1-1 d,#080808, 2-6 #626262,#080808, 7-26 #bdbdbd,#080808, 27-74 d,#080808, 75-75 d,#444444, 76-76 d,#080808, 77-84 #bdbdbd,#080808, 85-149 d,#080808,
|4: 0-0 d,#444444, 1-1 d,#080808, 2-6 #626262,#080808, 7-26 #bdbdbd,#080808, 27-74 d,#080808, 75-75 d,#444444, 76-149 d,#080808,
-|5: 0-0 d,#444444, 1-1 d,#080808, 2-6 #626262,#080808, 7-16 #bdbdbd,#080808, 17-74 d,#080808, 75-75 d,#444444, 76-149 d,#080808,
-|6: 0-0 d,#444444, 1-1 d,#080808, 2-6 #626262,#080808, 7-7 #bdbdbd,#080808, 8-74 d,#080808, 75-75 d,#444444, 76-149 d,#080808,
-|7: 0-0 d,#444444, 1-1 d,#080808, 2-6 #626262,#080808, 7-74 d,#080808, 75-75 d,#444444, 76-149 d,#080808,
-|8: 0-1 #ffffff,#262626, 2-57 #949494,#121212, 58-74 d,#121212, 75-75 d,#444444, 76-149 d,#080808,
-|9: 0-0 d,#444444, 1-1 d,#080808, 2-3 #bdbdbd,#080808, 4-74 d,#080808, 75-75 d,#444444, 76-149 d,#080808,
-|10: 0-0 d,#444444, 1-1 d,#080808, 2-9 #bdbdbd,#080808, 10-74 d,#080808, 75-75 d,#444444, 76-149 d,#080808,
-|11: 0-0 d,#444444, 1-74 d,#080808, 75-75 d,#444444, 76-149 d,#080808,
-|12: 0-0 d,#444444, 1-74 d,#080808, 75-75 d,#444444, 76-149 d,#080808,
-|13: 0-0 d,#444444, 1-74 d,#080808, 75-75 d,#444444, 76-149 d,#080808,
-|14: 0-0 d,#444444, 1-1 d,#080808, 2-11 #bdbdbd,#080808, 12-74 d,#080808, 75-75 d,#444444, 76-149 d,#080808,
-|15: 0-0 d,#444444, 1-74 d,#080808, 75-75 d,#444444, 76-149 d,#080808,
-|16: 0-1 #ffffff,#262626, 2-57 #949494,#121212, 58-74 d,#121212, 75-75 d,#444444, 76-149 d,#080808,
-|17: 0-0 d,#444444, 1-1 d,#080808, 2-3 #bdbdbd,#080808, 4-74 d,#080808, 75-75 d,#444444, 76-149 d,#080808,
-|18: 0-0 d,#444444, 1-1 d,#080808, 2-9 #bdbdbd,#080808, 10-74 d,#080808, 75-75 d,#444444, 76-149 d,#080808,
-|19: 0-0 d,#444444, 1-74 d,#080808, 75-75 d,#444444, 76-149 d,#080808,
-|20: 0-0 d,#444444, 1-74 d,#080808, 75-75 d,#444444, 76-149 d,#080808,
-|21: 0-0 d,#444444, 1-74 d,#080808, 75-75 d,#444444, 76-149 d,#080808,
-|22: 0-0 d,#444444, 1-74 d,#080808, 75-75 d,#444444, 76-149 d,#080808,
-|23: 0-0 d,#444444, 1-74 d,#080808, 75-75 d,#444444, 76-149 d,#080808,
-|24: 0-0 d,#444444, 1-74 d,#080808, 75-75 d,#444444, 76-149 d,#080808,
-|25: 0-0 d,#444444, 1-74 d,#080808, 75-75 d,#444444, 76-149 d,#080808,
-|26: 0-0 d,#444444, 1-74 d,#080808, 75-75 d,#444444, 76-149 d,#080808,
-|27: 0-0 d,#444444, 1-74 d,#080808, 75-75 d,#444444, 76-149 d,#080808,
-|28: 0-0 d,#444444, 1-74 d,#080808, 75-75 d,#444444, 76-149 d,#080808,
-|29: 0-0 d,#444444, 1-74 d,#080808, 75-75 d,#444444, 76-149 d,#080808,
-== style colors-on
-|0: 0-74 #949494,#121212, 75-149 d,#121212,
-|1: 0-1 #ffffff,#626262, 2-57 #949494,#121212, 58-74 d,#121212, 75-76 #ffffff,#262626, 77-130 #949494,#121212, 131-149 d,#121212,
+== style colors-on grid=150x30
|2: 0-0 d,#444444, 1-1 d,#080808, 2-6 #949494,#121212, 7-18 #bdbdbd,#080808, 19-25 #cf87e8,#080808,b 26-26 #bdbdbd,#080808, 27-31 #e3c78a,#080808, 32-34 #bdbdbd,#080808, 35-42 #ffffff,#080808,b 43-74 d,#080808, 75-75 d,#444444, 76-76 d,#080808, 77-78 #bdbdbd,#080808, 79-149 d,#080808,
|3: 0-0 d,#444444, 1-1 d,#080808, 2-6 #626262,#080808, 7-10 #bdbdbd,#080808, 11-12 #cf87e8,#080808,b 13-26 #bdbdbd,#080808, 27-74 d,#080808, 75-75 d,#444444, 76-76 d,#080808, 77-84 #bdbdbd,#080808, 85-149 d,#080808,
|4: 0-0 d,#444444, 1-1 d,#080808, 2-6 #626262,#080808, 7-23 #bdbdbd,#080808, 24-25 #e3c78a,#080808, 26-26 #bdbdbd,#080808, 27-74 d,#080808, 75-75 d,#444444, 76-149 d,#080808,
-|5: 0-0 d,#444444, 1-1 d,#080808, 2-6 #626262,#080808, 7-16 #bdbdbd,#080808, 17-74 d,#080808, 75-75 d,#444444, 76-149 d,#080808,
-|6: 0-0 d,#444444, 1-1 d,#080808, 2-6 #626262,#080808, 7-7 #bdbdbd,#080808, 8-74 d,#080808, 75-75 d,#444444, 76-149 d,#080808,
-|7: 0-0 d,#444444, 1-1 d,#080808, 2-6 #626262,#080808, 7-74 d,#080808, 75-75 d,#444444, 76-149 d,#080808,
-|8: 0-1 #ffffff,#262626, 2-57 #949494,#121212, 58-74 d,#121212, 75-75 d,#444444, 76-149 d,#080808,
-|9: 0-0 d,#444444, 1-1 d,#080808, 2-3 #bdbdbd,#080808, 4-74 d,#080808, 75-75 d,#444444, 76-149 d,#080808,
-|10: 0-0 d,#444444, 1-1 d,#080808, 2-9 #bdbdbd,#080808, 10-74 d,#080808, 75-75 d,#444444, 76-149 d,#080808,
-|11: 0-0 d,#444444, 1-74 d,#080808, 75-75 d,#444444, 76-149 d,#080808,
-|12: 0-0 d,#444444, 1-74 d,#080808, 75-75 d,#444444, 76-149 d,#080808,
-|13: 0-0 d,#444444, 1-74 d,#080808, 75-75 d,#444444, 76-149 d,#080808,
-|14: 0-0 d,#444444, 1-1 d,#080808, 2-11 #bdbdbd,#080808, 12-74 d,#080808, 75-75 d,#444444, 76-149 d,#080808,
-|15: 0-0 d,#444444, 1-74 d,#080808, 75-75 d,#444444, 76-149 d,#080808,
-|16: 0-1 #ffffff,#262626, 2-57 #949494,#121212, 58-74 d,#121212, 75-75 d,#444444, 76-149 d,#080808,
-|17: 0-0 d,#444444, 1-1 d,#080808, 2-3 #bdbdbd,#080808, 4-74 d,#080808, 75-75 d,#444444, 76-149 d,#080808,
-|18: 0-0 d,#444444, 1-1 d,#080808, 2-9 #bdbdbd,#080808, 10-74 d,#080808, 75-75 d,#444444, 76-149 d,#080808,
-|19: 0-0 d,#444444, 1-74 d,#080808, 75-75 d,#444444, 76-149 d,#080808,
-|20: 0-0 d,#444444, 1-74 d,#080808, 75-75 d,#444444, 76-149 d,#080808,
-|21: 0-0 d,#444444, 1-74 d,#080808, 75-75 d,#444444, 76-149 d,#080808,
-|22: 0-0 d,#444444, 1-74 d,#080808, 75-75 d,#444444, 76-149 d,#080808,
-|23: 0-0 d,#444444, 1-74 d,#080808, 75-75 d,#444444, 76-149 d,#080808,
-|24: 0-0 d,#444444, 1-74 d,#080808, 75-75 d,#444444, 76-149 d,#080808,
-|25: 0-0 d,#444444, 1-74 d,#080808, 75-75 d,#444444, 76-149 d,#080808,
-|26: 0-0 d,#444444, 1-74 d,#080808, 75-75 d,#444444, 76-149 d,#080808,
-|27: 0-0 d,#444444, 1-74 d,#080808, 75-75 d,#444444, 76-149 d,#080808,
-|28: 0-0 d,#444444, 1-74 d,#080808, 75-75 d,#444444, 76-149 d,#080808,
-|29: 0-0 d,#444444, 1-74 d,#080808, 75-75 d,#444444, 76-149 d,#080808,
diff --git a/test/snapshots/tag.golden b/test/snapshots/tag.golden
index 19032618..cea7fdb1 100644
--- a/test/snapshots/tag.golden
+++ b/test/snapshots/tag.golden
@@ -18,138 +18,16 @@
| /tmp/pardes-snap/tag/cwd Save New Newtty Del Filter
| ls
| t.txt
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
== snap tag-typed grid=150x30 cursor=33,1
-|New Newcol Joincol Find Grep Help Changelog Tutor Dump NextColor Debug Kill
-| /tmp/pardes-snap/tag/cwd t.txt Save New Newtty Del Filter /tmp/pardes-snap/tag/cwd Save New Newtty Del Filter
-| ls ls
-| t.txt t.txt
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-| /tmp/pardes-snap/tag/cwd Save New Newtty Del Filter
-| ls
-| t.txt
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
+|1: /tmp/pardes-snap/tag/cwd t.txt Save New Newtty Del Filter /tmp/pardes-snap/tag/cwd Save New Newtty Del Filter
== snap tag-del grid=150x30 cursor=29,1
-|New Newcol Joincol Find Grep Help Changelog Tutor Dump NextColor Debug Kill
-| /tmp/pardes-snap/tag/cwd t Save New Newtty Del Filter /tmp/pardes-snap/tag/cwd Save New Newtty Del Filter
-| ls ls
-| t.txt t.txt
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-| /tmp/pardes-snap/tag/cwd Save New Newtty Del Filter
-| ls
-| t.txt
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
+|1: /tmp/pardes-snap/tag/cwd t Save New Newtty Del Filter /tmp/pardes-snap/tag/cwd Save New Newtty Del Filter
== snap tag-exit grid=150x30 cursor=4,4
-|New Newcol Joincol Find Grep Help Changelog Tutor Dump NextColor Debug Kill
-| /tmp/pardes-snap/tag/cwd t.txt Save New Newtty Del Filter /tmp/pardes-snap/tag/cwd Save New Newtty Del Filter
-| ls ls
-| t.txt t.txt
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-| /tmp/pardes-snap/tag/cwd Save New Newtty Del Filter
-| ls
-| t.txt
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
+|1: /tmp/pardes-snap/tag/cwd t.txt Save New Newtty Del Filter /tmp/pardes-snap/tag/cwd Save New Newtty Del Filter
== snap tag-look grid=150x30 cursor=7,2
-|New Newcol Joincol Find Grep Help Changelog Tutor Dump NextColor Debug Kill
-| /tmp/pardes-snap/tag/cwd/t.txt Save New Newtty Del /tmp/pardes-snap/tag/cwd Save New Newtty Del Filter
-| 1 ZZLOOKED ls
-| t.txt
-|
-|
-|
-|
-| /tmp/pardes-snap/tag/cwd t.txt Save New Newtty Del Filter
-| ls
-| t.txt
-|
-|
-|
-|
-|
-| /tmp/pardes-snap/tag/cwd Save New Newtty Del Filter
-| ls
-| t.txt
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
+|1: /tmp/pardes-snap/tag/cwd/t.txt Save New Newtty Del /tmp/pardes-snap/tag/cwd Save New Newtty Del Filter
+|2: 1 ZZLOOKED ls
+|3: t.txt
+|8: /tmp/pardes-snap/tag/cwd t.txt Save New Newtty Del Filter
+|9: ls
+|10: t.txt
diff --git a/test/snapshots/tag.snap b/test/snapshots/tag.snap
index 37f0b751..f37b2ac7 100644
--- a/test/snapshots/tag.snap
+++ b/test/snapshots/tag.snap
@@ -6,14 +6,19 @@ file t.txt ZZLOOKED
start 30 150 -n 3
wait 8000 t.txt
stable 700 20000
-# click into the tag tail of pane 0: straight into insert. Column 40 is inside
-# the gap that right-aligns the builtins — ordinary spaces in the tag, so this
-# is the tail like any other part of it. The layout box shows
+# click into the tag tail of pane 0: straight into insert. `@Save-2` is two
+# columns left of the first builtin - inside the gap that right-aligns them,
+# ordinary spaces in the tag, so this is the tail like any other part of it.
+# Anchored on the builtins rather than on a column or on the path, because the
+# builtins are the side that MOVES: one more builtin word slides them left and
+# a frozen column 28 (or a `@cwd+4`, which is the same fixed column, since the
+# path is left-anchored) would land on `Save` instead of in the gap.
+# The layout box shows
# the pane's BODY mode, not the tag's, so the evidence for "this click went to
# insert" is the next step — the typed text lands as text instead of running as
# normal-mode commands.
-press left 28 2
-release left 28 2
+press left @Save-2 2
+release left @Save-2 2
stable 400 5000
snap tag-focus
send \x20t.txt
@@ -35,11 +40,11 @@ settle 100
stable 400 5000
snap tag-exit
# re-enter the tag and look the typed word: Enter opens t.txt as a file pane.
-# Clicked ON the word rather than past the end of the tag and walked back into
-# it — the builtins are right-aligned now (config.tag_right_pad), so the tag no
-# longer ends where the typing does and a click past it lands in the gap.
-press left 31 2
-release left 31 2
+# Clicked ON the word itself rather than past the end of the tag and walked
+# back into it — the builtins are right-aligned (config.tag_right_pad), so the
+# tag no longer ends where the typing does and a click past it lands in the gap.
+press left @t.txt 2
+release left @t.txt 2
stable 400 5000
key enter
wait 10000 ZZLOOKED
diff --git a/test/snapshots/tagalign.golden b/test/snapshots/tagalign.golden
index 625a7f2a..a37ecefc 100644
--- a/test/snapshots/tagalign.golden
+++ b/test/snapshots/tagalign.golden
@@ -18,17 +18,6 @@
| /tmp/pardes-snap/tagalign/cwd Save New Newtty Del Filter
| ls
| deep
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
== snap fits grid=87x30 cursor=4,19
|New Newcol Joincol Find Grep Help Changelog Tutor Dump NextColor Debug Kill
| /tmp/pardes-snap/tagalign/cwd/deep/nested-project-directory/document.txt Save New New
@@ -49,17 +38,6 @@
| /tmp/pardes-snap/tagalign/cwd Save New Newtty Del Filter
| ls
| deep
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
== snap overby1 grid=86x30 cursor=4,19
|New Newcol Joincol Find Grep Help Changelog Tutor Dump NextColor Debug Kill
| /tmp/pardes-snap/tagalign/cwd/deep/nested-project-directory/document.txt Save New Ne
@@ -80,17 +58,6 @@
| /tmp/pardes-snap/tagalign/cwd Save New Newtty Del Filter
| ls
| deep
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
== snap clicked grid=100x30 cursor=11,1
|New Newcol Joincol Find Grep Help Changelog Tutor Dump NextColor Debug Kill
| /tmp/pardes-snap/tagalign/cwd/deep/nested-project-directory/document.txt Save New Newtty Del
@@ -111,45 +78,11 @@
| /tmp/pardes-snap/tagalign/cwd Save New Newtty Del Filter
| ls
| deep
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-== snap alone grid=100x30 cursor=4,12
-|New Newcol Joincol Find Grep Help Changelog Tutor Dump NextColor Debug Kill
-| /tmp/pardes-snap/tagalign/cwd/deep/nested-project-directory/document.txt Save New Newtty Del
-| 1 alpha
-| 2 beta
-| 3 gamma
-|
-|
-|
-|
-|$ /tmp/pardes-snap/tagalign/cwd/deep/nested-project-directory Save New Newtty Del Filter
-| $ ls
-| document.txt
-| $
-|
-|
-|
-| /tmp/pardes-snap/tagalign/cwd Save New Newtty Del Filter
-| ls
-| deep
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
+== snap alone grid=100x30 cursor=4,4
+|1: /tmp/pardes-snap/tagalign/cwd Save New Newtty Del Filter
+|2: ls
+|3: deep
+|4:
+|16:
+|17:
+|18:
diff --git a/test/snapshots/tagalign.snap b/test/snapshots/tagalign.snap
index 4a3fa2a8..0d2cad12 100644
--- a/test/snapshots/tagalign.snap
+++ b/test/snapshots/tagalign.snap
@@ -43,11 +43,11 @@ press left 12 2
release left 12 2
stable 400 5000
snap clicked
-# ...and proving that with the words themselves: Del at the columns the two
-# snaps above put it. It closes the file, so the shell is alone in the column
+# ...and proving that with the words themselves. Where Del SITS is asserted by
+# the two snaps above; this step clicks it. It closes the file, so the shell is alone in the column
# and falls back to tag_right_pad short of its own edge — the shared end is
# the LIVE widest, not a high-water mark.
-press middle 86 2
-release middle 86 2
+press middle @Del 2
+release middle @Del 2
stable 700 15000
snap alone
diff --git a/test/snapshots/tagalign2col.golden b/test/snapshots/tagalign2col.golden
index 50ba7cda..bb01c1e6 100644
--- a/test/snapshots/tagalign2col.golden
+++ b/test/snapshots/tagalign2col.golden
@@ -4,90 +4,37 @@
| 1 alpha ls
| 2 beta deep
| 3 gamma
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
== snap aligned grid=160x30 cursor=4,19
-|New Newcol Joincol Find Grep Help Changelog Tutor Dump NextColor Debug Kill
-| /tmp/pardes-snap/tagalign2col/cwd/deep/proj/document.txt Save New Newtty Del /tmp/pardes-snap/tagalign2col/cwd Save New Newtty Del Filter
-| 1 alpha ls
-| 2 beta deep
-| 3 gamma
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-| /tmp/pardes-snap/tagalign2col/cwd Save New Newtty Del Filter
-| ls
-| deep
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
+|16: /tmp/pardes-snap/tagalign2col/cwd Save New Newtty Del Filter
+|17: ls
+|18: deep
== snap widened grid=160x30 cursor=4,19
-|New Newcol Joincol Find Grep Help Changelog Tutor Dump NextColor Debug Kill
-| /tmp/pardes-snap/tagalign2col/cwd/deep/proj/document.txt Save New Newtty Del ╎ /tmp/pardes-snap/tagalign2col/cwd Save New Newtty Del Filt
-| 1 alpha ╎ ls
-| 2 beta ╎ deep
-| 3 gamma ╎
-| ╎
-| ╎
-| ╎
-| ╎
-| ╎
-| ╎
-| ╎
-| ╎
-| ╎
-| ╎
-| ╎
-| /tmp/pardes-snap/tagalign2col/cwd Save New Newtty Del Filter ╎
-| ls ╎
-| deep ╎
-| ╎
-| ╎
-| ╎
-| ╎
-| ╎
-| ╎
-| ╎
-| ╎
-| ╎
-| ╎
-| ╎
+|1: /tmp/pardes-snap/tagalign2col/cwd/deep/proj/document.txt Save New Newtty Del ╎ /tmp/pardes-snap/tagalign2col/cwd Save New Newtty Del Filt
+|2: 1 alpha ╎ ls
+|3: 2 beta ╎ deep
+|4: 3 gamma ╎
+|5: ╎
+|6: ╎
+|7: ╎
+|8: ╎
+|9: ╎
+|10: ╎
+|11: ╎
+|12: ╎
+|13: ╎
+|14: ╎
+|15: ╎
+|16: /tmp/pardes-snap/tagalign2col/cwd Save New Newtty Del Filter ╎
+|17: ls ╎
+|18: deep ╎
+|19: ╎
+|20: ╎
+|21: ╎
+|22: ╎
+|23: ╎
+|24: ╎
+|25: ╎
+|26: ╎
+|27: ╎
+|28: ╎
+|29: ╎
diff --git a/test/snapshots/tagbottom.golden b/test/snapshots/tagbottom.golden
index 36f89143..8aa4ce5c 100644
--- a/test/snapshots/tagbottom.golden
+++ b/test/snapshots/tagbottom.golden
@@ -27,349 +27,144 @@
| 24 xxx
| 25 yyy
| 26 zzz
-|
-|
== snap on grid=100x30 cursor=7,1
-|New Newcol Joincol Find Grep Help Changelog Tutor Dump NextColor Debug Kill
-| 1 aaa
-| 2 bbb
-| 3 ccc
-| 4 ddd
-| 5 eee
-| 6 fff
-| 7 ggg
-| 8 hhh
-| 9 iii
-| 10 jjj
-| 11 kkk
-| 12 lll
-| 13 mmm
-| 14 nnn
-| 15 ooo
-| 16 ppp
-| 17 qqq
-| 18 rrr
-| 19 sss
-| 20 ttt
-| 21 uuu
-| 22 vvv
-| 23 www
-| 24 xxx
-| 25 yyy
-| 26 zzz
-|
-|
-| /tmp/pardes-snap/tagbottom/cwd/top.txt Save New Newtty Del
+|1: 1 aaa
+|2: 2 bbb
+|3: 3 ccc
+|4: 4 ddd
+|5: 5 eee
+|6: 6 fff
+|7: 7 ggg
+|8: 8 hhh
+|9: 9 iii
+|10: 10 jjj
+|11: 11 kkk
+|12: 12 lll
+|13: 13 mmm
+|14: 14 nnn
+|15: 15 ooo
+|16: 16 ppp
+|17: 17 qqq
+|18: 18 rrr
+|19: 19 sss
+|20: 20 ttt
+|21: 21 uuu
+|22: 22 vvv
+|23: 23 www
+|24: 24 xxx
+|25: 25 yyy
+|26: 26 zzz
+|27:
+|29: /tmp/pardes-snap/tagbottom/cwd/top.txt Save New Newtty Del
== snap off grid=100x30 cursor=7,2
-|New Newcol Joincol Find Grep Help Changelog Tutor Dump NextColor Debug Kill
-| /tmp/pardes-snap/tagbottom/cwd/top.txt Save New Newtty Del
-| 1 aaa
-| 2 bbb
-| 3 ccc
-| 4 ddd
-| 5 eee
-| 6 fff
-| 7 ggg
-| 8 hhh
-| 9 iii
-| 10 jjj
-| 11 kkk
-| 12 lll
-| 13 mmm
-| 14 nnn
-| 15 ooo
-| 16 ppp
-| 17 qqq
-| 18 rrr
-| 19 sss
-| 20 ttt
-| 21 uuu
-| 22 vvv
-| 23 www
-| 24 xxx
-| 25 yyy
-| 26 zzz
-|
-|
+|1: /tmp/pardes-snap/tagbottom/cwd/top.txt Save New Newtty Del
+|2: 1 aaa
+|3: 2 bbb
+|4: 3 ccc
+|5: 4 ddd
+|6: 5 eee
+|7: 6 fff
+|8: 7 ggg
+|9: 8 hhh
+|10: 9 iii
+|11: 10 jjj
+|12: 11 kkk
+|13: 12 lll
+|14: 13 mmm
+|15: 14 nnn
+|16: 15 ooo
+|17: 16 ppp
+|18: 17 qqq
+|19: 18 rrr
+|20: 19 sss
+|21: 20 ttt
+|22: 21 uuu
+|23: 22 vvv
+|24: 23 www
+|25: 24 xxx
+|26: 25 yyy
+|27: 26 zzz
+|29:
== snap tag-typed grid=100x30 cursor=60,29
-|New Newcol Joincol Find Grep Help Changelog Tutor Dump NextColor Debug Kill
-| 1 aaa
-| 2 bbb
-| 3 ccc
-| 4 ddd
-| 5 eee
-| 6 fff
-| 7 ggg
-| 8 hhh
-| 9 iii
-| 10 jjj
-| 11 kkk
-| 12 lll
-| 13 mmm
-| 14 nnn
-| 15 ooo
-| 16 ppp
-| 17 qqq
-| 18 rrr
-| 19 sss
-| 20 ttt
-| 21 uuu
-| 22 vvv
-| 23 www
-| 24 xxx
-| 25 yyy
-| 26 zzz
-|
-|
-| /tmp/pardes-snap/tagbottom/cwd/top.txt bottom.txt Save New Newtty Del
+|1: 1 aaa
+|2: 2 bbb
+|3: 3 ccc
+|4: 4 ddd
+|5: 5 eee
+|6: 6 fff
+|7: 7 ggg
+|8: 8 hhh
+|9: 9 iii
+|10: 10 jjj
+|11: 11 kkk
+|12: 12 lll
+|13: 13 mmm
+|14: 14 nnn
+|15: 15 ooo
+|16: 16 ppp
+|17: 17 qqq
+|18: 18 rrr
+|19: 19 sss
+|20: 20 ttt
+|21: 21 uuu
+|22: 22 vvv
+|23: 23 www
+|24: 24 xxx
+|25: 25 yyy
+|26: 26 zzz
+|27:
+|29: /tmp/pardes-snap/tagbottom/cwd/top.txt bottom.txt Save New Newtty Del
== snap look-bottom-tag grid=100x30 cursor=7,16
-|New Newcol Joincol Find Grep Help Changelog Tutor Dump NextColor Debug Kill
-| 1 aaa
-| 2 bbb
-| 3 ccc
-| 4 ddd
-| 5 eee
-| 6 fff
-| 7 ggg
-| 8 hhh
-| 9 iii
-| 10 jjj
-| 11 kkk
-| 12 lll
-| 13 mmm
-| 14 nnn
-| /tmp/pardes-snap/tagbottom/cwd/top.txt bottom.txt Save New Newtty Del
-| 1 ZZONE
-| 2 ZZTWO
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-| /tmp/pardes-snap/tagbottom/cwd/bottom.txt Save New Newtty Del
+|15: /tmp/pardes-snap/tagbottom/cwd/top.txt bottom.txt Save New Newtty Del
+|16: 1 ZZONE
+|17: 2 ZZTWO
+|18:
+|19:
+|20:
+|21:
+|22:
+|23:
+|24:
+|25:
+|26:
+|29: /tmp/pardes-snap/tagbottom/cwd/bottom.txt Save New Newtty Del
== snap body-cursor grid=100x30 cursor=9,5
-|New Newcol Joincol Find Grep Help Changelog Tutor Dump NextColor Debug Kill
-| 1 aaa
-| 2 bbb
-| 3 ccc
-| 4 ddd
-| 5 eee
-| 6 fff
-| 7 ggg
-| 8 hhh
-| 9 iii
-| 10 jjj
-| 11 kkk
-| 12 lll
-| 13 mmm
-| 14 nnn
-| /tmp/pardes-snap/tagbottom/cwd/top.txt bottom.txt Save New Newtty Del
-| 1 ZZONE
-| 2 ZZTWO
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-| /tmp/pardes-snap/tagbottom/cwd/bottom.txt Save New Newtty Del
== snap seam-noop grid=100x30 cursor=9,5
-|New Newcol Joincol Find Grep Help Changelog Tutor Dump NextColor Debug Kill
-| 1 aaa
-| 2 bbb
-| 3 ccc
-| 4 ddd
-| 5 eee
-| 6 fff
-| 7 ggg
-| 8 hhh
-| 9 iii
-| 10 jjj
-| 11 kkk
-| 12 lll
-| 13 mmm
-| 14 nnn
-| /tmp/pardes-snap/tagbottom/cwd/top.txt bottom.txt Save New Newtty Del
-| 1 ZZONE
-| 2 ZZTWO
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-| /tmp/pardes-snap/tagbottom/cwd/bottom.txt Save New Newtty Del
== snap seam-dragged grid=100x30 cursor=9,5
-|New Newcol Joincol Find Grep Help Changelog Tutor Dump NextColor Debug Kill
-| 1 aaa
-| 2 bbb
-| 3 ccc
-| 4 ddd
-| 5 eee
-| 6 fff
-| 7 ggg
-| 8 hhh
-| 9 iii
-| /tmp/pardes-snap/tagbottom/cwd/top.txt bottom.txt Save New Newtty Del
-| 1 ZZONE
-| 2 ZZTWO
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-| /tmp/pardes-snap/tagbottom/cwd/bottom.txt Save New Newtty Del
+|10: /tmp/pardes-snap/tagbottom/cwd/top.txt bottom.txt Save New Newtty Del
+|11: 1 ZZONE
+|12: 2 ZZTWO
+|13:
+|14:
+|15:
+|16:
+|17:
== snap gutter-click grid=100x30 cursor=9,4
-|New Newcol Joincol Find Grep Help Changelog Tutor Dump NextColor Debug Kill
-| 2 bbb
-| 3 ccc
-| 4 ddd
-| 5 eee
-| 6 fff
-| 7 ggg
-| 8 hhh
-| 9 iii
-| 10 jjj
-| /tmp/pardes-snap/tagbottom/cwd/top.txt bottom.txt Save New Newtty Del
-| 1 ZZONE
-| 2 ZZTWO
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-| /tmp/pardes-snap/tagbottom/cwd/bottom.txt Save New Newtty Del
+|1: 2 bbb
+|2: 3 ccc
+|3: 4 ddd
+|4: 5 eee
+|5: 6 fff
+|6: 7 ggg
+|7: 8 hhh
+|8: 9 iii
+|9: 10 jjj
== snap search-prompt grid=100x30 cursor=6,28
-|New Newcol Joincol Find Grep Help Changelog Tutor Dump NextColor Debug Kill
-| 2 bbb
-| 3 ccc
-| 4 ddd
-| 5 eee
-| 6 fff
-| 7 ggg
-| 8 hhh
-| 9 iii
-| 10 jjj
-| /tmp/pardes-snap/tagbottom/cwd/top.txt bottom.txt Save New Newtty Del
-| 1 ZZONE
-| 2 ZZTWO
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-| /ZZ
-| /tmp/pardes-snap/tagbottom/cwd/bottom.txt Save New Newtty Del
+|28: /ZZ
== snap leader grid=100x30 cursor=9,13
-|New Newcol Joincol Find Grep Help Changelog Tutor Dump NextColor Debug Kill
-| 2 bbb
-| 3 ccc
-| 4 ddd
-| 5 eee
-| 6 fff
-| 7 ggg
-| 8 hhh
-| 9 iii
-| 10 jjj
-| /tmp/pardes-snap/tagbottom/cwd/top.txt bottom.txt Save New Newtty Del
-| 1 ZZONE
-| 2 ZZTWO
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-| SPC
-| /tmp/pardes-snap/tagbottom/cwd/bottom.txt Save New Newtty Del
+|28: SPC
== snap cut-down grid=100x30 cursor=7,4
-|New Newcol Joincol Find Grep Help Changelog Tutor Dump NextColor Debug Kill
-| 1 aaa
-| 2 bbb
-| 3 ccc
-| 4 jj
-| 5 kkk
-| 6 lll
-| 7 mmm
-| 8 nnn
-| 9 ooo
-| /tmp/pardes-snap/tagbottom/cwd/top.txt * bottom.txt Save New Newtty Del
-| 1 ZZONE
-| 2 ZZTWO
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-| /tmp/pardes-snap/tagbottom/cwd/bottom.txt Save New Newtty Del
+|1: 1 aaa
+|2: 2 bbb
+|3: 3 ccc
+|4: 4 jj
+|5: 5 kkk
+|6: 6 lll
+|7: 7 mmm
+|8: 8 nnn
+|9: 9 ooo
+|10: /tmp/pardes-snap/tagbottom/cwd/top.txt * bottom.txt Save New Newtty Del
+|28:
== file cut-buffer
aaa
bbb
@@ -393,64 +188,38 @@ yyy
zzz
== end file
== snap del-bottom-tag grid=100x30 cursor=7,4
-|New Newcol Joincol Find Grep Help Changelog Tutor Dump NextColor Debug Kill
-| 1 aaa
-| 2 bbb
-| 3 ccc
-| 4 jj
-| 5 kkk
-| 6 lll
-| 7 mmm
-| 8 nnn
-| 9 ooo
-| 10 ppp
-| 11 qqq
-| 12 rrr
-| 13 sss
-| 14 ttt
-| 15 uuu
-| 16 vvv
-| 17 www
-| 18 xxx
-| 19 yyy
-| 20 zzz
-|
-|
-|
-|
-|
-|
-|
-|
-| /tmp/pardes-snap/tagbottom/cwd/top.txt bottom.txt Save New Newtty Del
+|10: 10 ppp
+|11: 11 qqq
+|12: 12 rrr
+|13: 13 sss
+|14: 14 ttt
+|15: 15 uuu
+|16: 16 vvv
+|17: 17 www
+|18: 18 xxx
+|19: 19 yyy
+|20: 20 zzz
+|29: /tmp/pardes-snap/tagbottom/cwd/top.txt bottom.txt Save New Newtty Del
== snap off-again grid=100x30 cursor=7,5
-|New Newcol Joincol Find Grep Help Changelog Tutor Dump NextColor Debug Kill
-| /tmp/pardes-snap/tagbottom/cwd/top.txt bottom.txt Save New Newtty Del
-| 1 aaa
-| 2 bbb
-| 3 ccc
-| 4 jj
-| 5 kkk
-| 6 lll
-| 7 mmm
-| 8 nnn
-| 9 ooo
-| 10 ppp
-| 11 qqq
-| 12 rrr
-| 13 sss
-| 14 ttt
-| 15 uuu
-| 16 vvv
-| 17 www
-| 18 xxx
-| 19 yyy
-| 20 zzz
-|
-|
-|
-|
-|
-|
-|
-|
+|1: /tmp/pardes-snap/tagbottom/cwd/top.txt bottom.txt Save New Newtty Del
+|2: 1 aaa
+|3: 2 bbb
+|4: 3 ccc
+|5: 4 jj
+|6: 5 kkk
+|7: 6 lll
+|8: 7 mmm
+|9: 8 nnn
+|10: 9 ooo
+|11: 10 ppp
+|12: 11 qqq
+|13: 12 rrr
+|14: 13 sss
+|15: 14 ttt
+|16: 15 uuu
+|17: 16 vvv
+|18: 17 www
+|19: 18 xxx
+|20: 19 yyy
+|21: 20 zzz
+|29:
diff --git a/test/snapshots/tagbottom.snap b/test/snapshots/tagbottom.snap
index 5d30f7c6..57b6e749 100644
--- a/test/snapshots/tagbottom.snap
+++ b/test/snapshots/tagbottom.snap
@@ -141,8 +141,8 @@ snapfile cut-buffer /tmp/pardes-snap/tagbottom/cwd/top.txt
# EXECUTE `Del` on the lower pane's bottom tagline: the pane goes away and the
# upper one takes the whole column back. The middle button's half of the same
# tag mapping the look used above.
-press middle 78 30
-release middle 78 30
+press middle @Del 30
+release middle @Del 30
stable 700 15000
snap del-bottom-tag
# and off again, one pane, its tagline back on row 1 with the body under it
diff --git a/test/snapshots/tagbottomimage.golden b/test/snapshots/tagbottomimage.golden
index 82929d33..fd518bb3 100644
--- a/test/snapshots/tagbottomimage.golden
+++ b/test/snapshots/tagbottomimage.golden
@@ -21,46 +21,28 @@
|
|
| pic.ppm
-|
-|
-|
-|
-|
-|
-|
-|
== snap img-bottom grid=150x30 cursor=11,7
-|New Newcol Joincol Find Grep Help Changelog Tutor Dump NextColor Debug Kill
-| 9d4🬫▚{▙v]O*🬥🬣n🬍🬕5S6#4🬵C[🬆🬻
-| {🬲🬍s🬕/*%!🬖🬹╱?🬷C🬔3q🬗]Q┼🬆🬹
-| }=^!t🬺R'My┼▐jP▞🬡y}▄V🬆~
-| 6(9?🬝🬳J1🬢k?g🬶🬙SY%t🬆▄█
-| ╲Ep^w🬪2zJbxF&🬷🬦a🬝~
-| 🬥K`🬙🬲$'#3x(▜🬌a▛🬹
-| zj🬡{U🬨(j🬗🬔E[▛🬹█
-| 🬺🬊*V*]g^🬳p▀🬹
-| [;🬬/M🬊🬲🬻🬆🬻
-| │🬕r🬜┼e🬆🬻
-| [🬝g4🬆🬹
-| 🬐🬹🬆🬹
-| 🬎🬻█
-| img petscii:off palette:commodore ascii:on /tmp/pardes-snap/tagbottomimage/cwd/pic.ppm New Newtty Del
-| ls
-| pic.ppm
-|
-|
-|
-| pic.ppm
-|
-|
-|
-|
-|
-|
-|
-|
-| /tmp/pardes-snap/tagbottomimage/cwd Save New Newtty Del Filter
-== style img-bottom
+|1: 9d4🬫▚{▙v]O*🬥🬣n🬍🬕5S6#4🬵C[🬆🬻
+|2: {🬲🬍s🬕/*%!🬖🬹╱?🬷C🬔3q🬗]Q┼🬆🬹
+|3: }=^!t🬺R'My┼▐jP▞🬡y}▄V🬆~
+|4: 6(9?🬝🬳J1🬢k?g🬶🬙SY%t🬆▄█
+|5: ╲Ep^w🬪2zJbxF&🬷🬦a🬝~
+|6: 🬥K`🬙🬲$'#3x(▜🬌a▛🬹
+|7: zj🬡{U🬨(j🬗🬔E[▛🬹█
+|8: 🬺🬊*V*]g^🬳p▀🬹
+|9: [;🬬/M🬊🬲🬻🬆🬻
+|10: │🬕r🬜┼e🬆🬻
+|11: [🬝g4🬆🬹
+|12: 🬐🬹🬆🬹
+|13: 🬎🬻█
+|14: img petscii:off palette:commodore ascii:on /tmp/pardes-snap/tagbottomimage/cwd/pic.ppm New Newtty Del
+|15: ls
+|16: pic.ppm
+|17:
+|20: pic.ppm
+|21:
+|29: /tmp/pardes-snap/tagbottomimage/cwd Save New Newtty Del Filter
+== style img-bottom grid=150x30
|0: 0-74 #949494,#121212, 75-149 d,#121212,
|1: 0-0 d,#121212, 1-62 d,#080808, 63-64 #959595,#6c6c6c, 65-66 #6c6c6c,#959595, 67-68 #959595,#6c6c6c, 69-69 #6c6c6c,#959595, 70-71 #959595,#6c6c6c, 72-72 #6c6c6c,#959595, 73-74 #959595,#6c6c6c, 75-76 #6c6c6c,#959595, 77-77 #959595,#6c6c6c, 78-78 #6c6c6c,#959595, 79-79 #959595,#6c6c6c, 80-80 #6c6c6c,#959595, 81-81 #959595,#6c6c6c, 82-82 #6c6c6c,#959595, 83-83 #959595,#6c6c6c, 84-84 #6c6c6c,#959595, 85-86 #959595,#6c6c6c, 87-87 #959595,#6c5eb5, 88-88 #352879,#959595, 89-149 d,#080808,
|2: 0-0 d,#121212, 1-62 d,#080808, 63-64 #6c6c6c,#959595, 65-65 #959595,#6c6c6c, 66-67 #6c6c6c,#959595, 68-75 #959595,#6c6c6c, 76-81 #6c6c6c,#959595, 82-82 #959595,#6c6c6c, 83-83 #6c6c6c,#959595, 84-84 #959595,#6c6c6c, 85-85 #6c6c6c,#6c5eb5, 86-86 #352879,#6c5eb5, 87-88 #352879,#352879, 89-149 d,#080808,
@@ -92,64 +74,22 @@
|28: 0-0 d,#444444, 1-149 d,#080808,
|29: 0-1 #ffffff,#262626, 2-129 #949494,#121212, 130-149 d,#121212,
== snap search-prompt grid=150x30 cursor=6,13
-|New Newcol Joincol Find Grep Help Changelog Tutor Dump NextColor Debug Kill
-| 9d4🬫▚{▙v]O*🬥🬣n🬍🬕5S6#4🬵C[🬆🬻
-| {🬲🬍s🬕/*%!🬖🬹╱?🬷C🬔3q🬗]Q┼🬆🬹
-| }=^!t🬺R'My┼▐jP▞🬡y}▄V🬆~
-| 6(9?🬝🬳J1🬢k?g🬶🬙SY%t🬆▄█
-| ╲Ep^w🬪2zJbxF&🬷🬦a🬝~
-| 🬥K`🬙🬲$'#3x(▜🬌a▛🬹
-| zj🬡{U🬨(j🬗🬔E[▛🬹█
-| 🬺🬊*V*]g^🬳p▀🬹
-| [;🬬/M🬊🬲🬻🬆🬻
-| │🬕r🬜┼e🬆🬻
-| [🬝g4🬆🬹
-| 🬐🬹🬆🬹
-| /ZZ
-| img petscii:off palette:commodore ascii:on /tmp/pardes-snap/tagbottomimage/cwd/pic.ppm New Newtty Del
-| ls
-| pic.ppm
-|
-|
-|
-| pic.ppm
-|
-|
-|
-|
-|
-|
-|
-|
-| /tmp/pardes-snap/tagbottomimage/cwd Save New Newtty Del Filter
-== snap del-image grid=150x30 cursor=149,29
-|New Newcol Joincol Find Grep Help Changelog Tutor Dump NextColor Debug Kill
-| 9d4🬫▚{▙v]O*🬥🬣n🬍🬕5S6#4🬵C[🬆🬻
-| {🬲🬍s🬕/*%!🬖🬹╱?🬷C🬔3q🬗]Q┼🬆🬹
-| }=^!t🬺R'My┼▐jP▞🬡y}▄V🬆~
-| 6(9?🬝🬳J1🬢k?g🬶🬙SY%t🬆▄█
-| ╲Ep^w🬪2zJbxF&🬷🬦a🬝~
-| 🬥K`🬙🬲$'#3x(▜🬌a▛🬹
-| zj🬡{U🬨(j🬗🬔E[▛🬹█
-| 🬺🬊*V*]g^🬳p▀🬹
-| [;🬬/M🬊🬲🬻🬆🬻
-| │🬕r🬜┼e🬆🬻
-| [🬝g4🬆🬹
-| 🬐🬹🬆🬹
-| 🬎🬻█
-| img petscii:off palette:commodore ascii:on /tmp/pardes-snap/tagbottomimage/cwd/pic.ppm New Newtty Del
-| ls
-| pic.ppm
-|
-|
-|
-| pic.ppm
-|
-|
-|
-|
-|
-|
-|
-|
-| /tmp/pardes-snap/tagbottomimage/cwd Save New Newtty Del Filter
+|13: /ZZ
+== snap del-image grid=150x30 cursor=5,6
+|1: ls
+|2: pic.ppm
+|3:
+|4:
+|5:
+|6: pic.ppm
+|7:
+|8:
+|9:
+|10:
+|11:
+|12:
+|13:
+|14:
+|15:
+|16:
+|20:
diff --git a/test/snapshots/tagbottomimage.snap b/test/snapshots/tagbottomimage.snap
index f361186d..94f1e013 100644
--- a/test/snapshots/tagbottomimage.snap
+++ b/test/snapshots/tagbottomimage.snap
@@ -43,16 +43,18 @@ key esc
settle 100
stable 400 5000
# ...and EXECUTE `Del` on that bottom tagline, which is the assertion the
-# pixels cannot make: the middle click has to map row 29 to the image pane's
+# pixels cannot make: the middle click has to map row 15 to the image pane's
# TAG row rather than to a body row it has no body for. The image pane goes
-# away entirely and the shell takes the whole window back. Source-local
-# columns plus the image-state prefix clip Del at 150 columns, so briefly widen
-# the grid: the test still clicks the visible bottom-tag word, never the path.
-resize 30 300
-stable 400 5000
-press middle 95 30
-release middle 95 30
-stable 400 5000
-resize 30 150
+# away entirely and the shell takes the whole window back.
+#
+# Row 15 is the image pane's OWN last row, which is where Tagbottom puts its
+# tag; row 30 is the shell's. This used to click column 95 of row 30, which is
+# blank space 176 columns short of the shell's right-aligned `Del` and in the
+# wrong pane besides, so it deleted nothing and the golden recorded an image
+# pane that never went away - along with a widen-to-300-and-back either side of
+# it, scaffolding for a column that was wrong anyway. `New Newtty Del` is fully
+# on screen at 150 columns (see the img-bottom capture above).
+press middle @Del 15
+release middle @Del 15
stable 700 15000
snap del-image
diff --git a/test/snapshots/tagcmd.golden b/test/snapshots/tagcmd.golden
index 6879a051..ac4071f0 100644
--- a/test/snapshots/tagcmd.golden
+++ b/test/snapshots/tagcmd.golden
@@ -8,120 +8,11 @@
| 5 line 5
| 6 line 6
| 7
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
== snap colon grid=100x30 cursor=61,1
-|New Newcol Joincol Find Grep Help Changelog Tutor Dump NextColor Debug Kill
-| /tmp/pardes-snap/tagcmd/cwd/c.txt * Save New Newtty Del
-| 1 ZZEDITline 1
-| 2 line 2
-| 3 line 3
-| 4 line 4
-| 5 line 5
-| 6 line 6
-| 7
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
== snap word grid=100x30 cursor=65,1
-|New Newcol Joincol Find Grep Help Changelog Tutor Dump NextColor Debug Kill
-| /tmp/pardes-snap/tagcmd/cwd/c.txt * Save New Newtty Del
-| 1 ZZEDITline 1
-| 2 line 2
-| 3 line 3
-| 4 line 4
-| 5 line 5
-| 6 line 6
-| 7
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
== snap saved grid=100x30 cursor=13,2
-|New Newcol Joincol Find Grep Help Changelog Tutor Dump NextColor Debug Kill
-| /tmp/pardes-snap/tagcmd/cwd/c.txt Save New Newtty Del
-| 1 ZZEDITline 1
-| 2 line 2
-| 3 line 3
-| 4 line 4
-| 5 line 5
-| 6 line 6
-| 7
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-| --:--:-- saved /tmp/pardes-snap/tagcmd/cwd/c.txt
+|1: /tmp/pardes-snap/tagcmd/cwd/c.txt Save New Newtty Del
+|29: --:--:-- saved /tmp/pardes-snap/tagcmd/cwd/c.txt
== file written
ZZEDITline 1
line 2
@@ -132,33 +23,4 @@ line 6
== end file
== snap escaped grid=100x30 cursor=13,2
-|New Newcol Joincol Find Grep Help Changelog Tutor Dump NextColor Debug Kill
-| /tmp/pardes-snap/tagcmd/cwd/c.txt Save New Newtty Del
-| 1 ZZEDITline 1
-| 2 line 2
-| 3 line 3
-| 4 line 4
-| 5 line 5
-| 6 line 6
-| 7
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
+|29:
diff --git a/test/snapshots/tagnav.golden b/test/snapshots/tagnav.golden
index da9454cd..d32a9825 100644
--- a/test/snapshots/tagnav.golden
+++ b/test/snapshots/tagnav.golden
@@ -18,603 +18,34 @@
| /tmp/pardes-snap/tagnav/cwd Save New Newtty Del
| ls
| w.txt
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
== snap colon grid=100x30 cursor=36,1
-|New Newcol Joincol Find Grep Help Changelog Tutor Dump NextColor Debug Kill
-| /tmp/pardes-snap/tagnav/cwd/w.txt Save New Newtt /tmp/pardes-snap/tagnav/cwd Save New Newtty Del
-| 1 alpha ls
-| 2 beta w.txt
-| 3 gamma
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-| /tmp/pardes-snap/tagnav/cwd Save New Newtty Del
-| ls
-| w.txt
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
== snap right-tag grid=100x30 cursor=80,1
-|New Newcol Joincol Find Grep Help Changelog Tutor Dump NextColor Debug Kill
-| /tmp/pardes-snap/tagnav/cwd/w.txt Save New Newtt /tmp/pardes-snap/tagnav/cwd Save New Newtty Del
-| 1 alpha ls
-| 2 beta w.txt
-| 3 gamma
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-| /tmp/pardes-snap/tagnav/cwd Save New Newtty Del
-| ls
-| w.txt
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
== snap left-tag grid=100x30 cursor=36,1
-|New Newcol Joincol Find Grep Help Changelog Tutor Dump NextColor Debug Kill
-| /tmp/pardes-snap/tagnav/cwd/w.txt Save New Newtt /tmp/pardes-snap/tagnav/cwd Save New Newtty Del
-| 1 alpha ls
-| 2 beta w.txt
-| 3 gamma
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-| /tmp/pardes-snap/tagnav/cwd Save New Newtty Del
-| ls
-| w.txt
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
== snap down-tag grid=100x30 cursor=30,16
-|New Newcol Joincol Find Grep Help Changelog Tutor Dump NextColor Debug Kill
-| /tmp/pardes-snap/tagnav/cwd/w.txt Save New Newtt /tmp/pardes-snap/tagnav/cwd Save New Newtty Del
-| 1 alpha ls
-| 2 beta w.txt
-| 3 gamma
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-| /tmp/pardes-snap/tagnav/cwd Save New Newtty Del
-| ls
-| w.txt
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
== snap up-tag grid=100x30 cursor=36,1
-|New Newcol Joincol Find Grep Help Changelog Tutor Dump NextColor Debug Kill
-| /tmp/pardes-snap/tagnav/cwd/w.txt Save New Newtt /tmp/pardes-snap/tagnav/cwd Save New Newtty Del
-| 1 alpha ls
-| 2 beta w.txt
-| 3 gamma
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-| /tmp/pardes-snap/tagnav/cwd Save New Newtty Del
-| ls
-| w.txt
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
== snap up-edge grid=100x30 cursor=0,0
-|New Newcol Joincol Find Grep Help Changelog Tutor Dump NextColor Debug Kill
-| /tmp/pardes-snap/tagnav/cwd/w.txt Save New Newtt /tmp/pardes-snap/tagnav/cwd Save New Newtty Del
-| 1 alpha ls
-| 2 beta w.txt
-| 3 gamma
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-| /tmp/pardes-snap/tagnav/cwd Save New Newtty Del
-| ls
-| w.txt
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
== snap topbar-word grid=100x30 cursor=3,0
-|New Newcol Joincol Find Grep Help Changelog Tutor Dump NextColor Debug Kill
-| /tmp/pardes-snap/tagnav/cwd/w.txt Save New Newtt /tmp/pardes-snap/tagnav/cwd Save New Newtty Del
-| 1 alpha ls
-| 2 beta w.txt
-| 3 gamma
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-| /tmp/pardes-snap/tagnav/cwd Save New Newtty Del
-| ls
-| w.txt
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
== snap topbar-graphemes grid=100x30 cursor=5,0
-|New Newcol Joincol Find Grep Help Changelog Tutor Dump NextColor Debug Kill
-| /tmp/pardes-snap/tagnav/cwd/w.txt Save New Newtt /tmp/pardes-snap/tagnav/cwd Save New Newtty Del
-| 1 alpha ls
-| 2 beta w.txt
-| 3 gamma
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-| /tmp/pardes-snap/tagnav/cwd Save New Newtty Del
-| ls
-| w.txt
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
== snap back-down grid=100x30 cursor=36,1
-|New Newcol Joincol Find Grep Help Changelog Tutor Dump NextColor Debug Kill
-| /tmp/pardes-snap/tagnav/cwd/w.txt Save New Newtt /tmp/pardes-snap/tagnav/cwd Save New Newtty Del
-| 1 alpha ls
-| 2 beta w.txt
-| 3 gamma
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-| /tmp/pardes-snap/tagnav/cwd Save New Newtty Del
-| ls
-| w.txt
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
== snap arrows-still-motion grid=100x30 cursor=38,1
-|New Newcol Joincol Find Grep Help Changelog Tutor Dump NextColor Debug Kill
-| /tmp/pardes-snap/tagnav/cwd/w.txt Save New Newtt /tmp/pardes-snap/tagnav/cwd Save New Newtty Del
-| 1 alpha ls
-| 2 beta w.txt
-| 3 gamma
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-| /tmp/pardes-snap/tagnav/cwd Save New Newtty Del
-| ls
-| w.txt
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
== snap back-to-body grid=100x30 cursor=7,2
-|New Newcol Joincol Find Grep Help Changelog Tutor Dump NextColor Debug Kill
-| /tmp/pardes-snap/tagnav/cwd/w.txt Save New Newtt /tmp/pardes-snap/tagnav/cwd Save New Newtty Del
-| 1 alpha ls
-| 2 beta w.txt
-| 3 gamma
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-| /tmp/pardes-snap/tagnav/cwd Save New Newtty Del
-| ls
-| w.txt
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
== snap tty-on grid=100x30 cursor=54,4
-|New Newcol Joincol Find Grep Help Changelog Tutor Dump NextColor Debug Kill
-| /tmp/pardes-snap/tagnav/cwd/w.txt Save New Newtt$ /tmp/pardes-snap/tagnav/cwd Save New Newtty Del
-| 1 alpha $ ls
-| 2 beta w.txt
-| 3 gamma $
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-| /tmp/pardes-snap/tagnav/cwd Save New Newtty Del
-| ls
-| w.txt
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
+|1: /tmp/pardes-snap/tagnav/cwd/w.txt Save New Newtt$ /tmp/pardes-snap/tagnav/cwd Save New Newtty Del
+|2: 1 alpha $ ls
+|4: 3 gamma $
== snap tty-tag grid=100x30 cursor=80,1
-|New Newcol Joincol Find Grep Help Changelog Tutor Dump NextColor Debug Kill
-| /tmp/pardes-snap/tagnav/cwd/w.txt Save New Newtt$ /tmp/pardes-snap/tagnav/cwd Save New Newtty Del
-| 1 alpha ls
-| 2 beta w.txt
-| 3 gamma
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-| /tmp/pardes-snap/tagnav/cwd Save New Newtty Del
-| ls
-| w.txt
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
+|2: 1 alpha ls
+|4: 3 gamma
== snap tty-restored grid=100x30 cursor=54,4
-|New Newcol Joincol Find Grep Help Changelog Tutor Dump NextColor Debug Kill
-| /tmp/pardes-snap/tagnav/cwd/w.txt Save New Newtt$ /tmp/pardes-snap/tagnav/cwd Save New Newtty Del
-| 1 alpha $ ls
-| 2 beta w.txt
-| 3 gamma $
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-| /tmp/pardes-snap/tagnav/cwd Save New Newtty Del
-| ls
-| w.txt
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
+|2: 1 alpha $ ls
+|4: 3 gamma $
== snap topbar-dollar grid=100x30 cursor=74,0
-|New Newcol Joincol Find Grep Help Changelog Tutor Dump NextColor Debug Kill
-| /tmp/pardes-snap/tagnav/cwd/w.txt Save New Newtt$ /tmp/pardes-snap/tagnav/cwd Save New Newtty Del
-| 1 alpha $ ls
-| 2 beta w.txt
-| 3 gamma $
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-| /tmp/pardes-snap/tagnav/cwd Save New Newtty Del
-| ls
-| w.txt
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
== snap topbar-dump-word grid=100x30 cursor=50,0
-|New Newcol Joincol Find Grep Help Changelog Tutor Dump NextColor Debug Kill
-| /tmp/pardes-snap/tagnav/cwd/w.txt Save New Newtt$ /tmp/pardes-snap/tagnav/cwd Save New Newtty Del
-| 1 alpha $ ls
-| 2 beta w.txt
-| 3 gamma $
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-| /tmp/pardes-snap/tagnav/cwd Save New Newtty Del
-| ls
-| w.txt
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
== snap topbar-exec grid=100x30 cursor=7,2
-|New Newcol Joincol Find Grep Help Changelog Tutor Dump NextColor Debug Kill Restore /tmp/pardes-snap
-| /tmp/pardes-snap/tagnav/cwd/w.txt Save New Newtt$ /tmp/pardes-snap/tagnav/cwd Save New Newtty Del
-| 1 alpha $ ls
-| 2 beta w.txt
-| 3 gamma $
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-| /tmp/pardes-snap/tagnav/cwd Save New Newtty Del
-| ls
-| w.txt
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
+|0: New Newcol Joincol Find Grep Help Changelog Tutor Dump NextColor Debug Kill Restore /tmp/pardes-snap
== snap topbar-restore-word grid=100x30 cursor=76,0
-|New Newcol Joincol Find Grep Help Changelog Tutor Dump NextColor Debug Kill Restore /tmp/pardes-snap
-| /tmp/pardes-snap/tagnav/cwd/w.txt Save New Newtt$ /tmp/pardes-snap/tagnav/cwd Save New Newtty Del
-| 1 alpha $ ls
-| 2 beta w.txt
-| 3 gamma $
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-| /tmp/pardes-snap/tagnav/cwd Save New Newtty Del
-| ls
-| w.txt
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
== snap topbar-restored grid=100x30 cursor=7,2
-|New Newcol Joincol Find Grep Help Changelog Tutor Dump NextColor Debug Kill
-| /tmp/pardes-snap/tagnav/cwd/w.txt Save New Newtt /tmp/pardes-snap/tagnav/cwd Save New Newtty Del
-| 1 alpha ls
-| 2 beta w.txt
-| 3 gamma
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-| /tmp/pardes-snap/tagnav/cwd Save New Newtty Del
-| ls
-| w.txt
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
+|0: New Newcol Joincol Find Grep Help Changelog Tutor Dump NextColor Debug Kill
+|1: /tmp/pardes-snap/tagnav/cwd/w.txt Save New Newtt /tmp/pardes-snap/tagnav/cwd Save New Newtty Del
+|2: 1 alpha ls
+|4: 3 gamma
diff --git a/test/snapshots/tagpath.golden b/test/snapshots/tagpath.golden
index 22322b5d..3866e8f2 100644
--- a/test/snapshots/tagpath.golden
+++ b/test/snapshots/tagpath.golden
@@ -6,123 +6,10 @@
| 3 line 3
| 4 line 4
| 5
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
== snap colon grid=100x30 cursor=61,1
-|New Newcol Joincol Find Grep Help Changelog Tutor Dump NextColor Debug Kill
-| /tmp/pardes-snap/tagpath/cwd/c.txt Save New Newtty Del
-| 1 line 1
-| 2 line 2
-| 3 line 3
-| 4 line 4
-| 5
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
== snap col0 grid=100x30 cursor=2,1
-|New Newcol Joincol Find Grep Help Changelog Tutor Dump NextColor Debug Kill
-| /tmp/pardes-snap/tagpath/cwd/c.txt Save New Newtty Del
-| 1 line 1
-| 2 line 2
-| 3 line 3
-| 4 line 4
-| 5
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
== snap sel-path grid=100x30 cursor=35,1
-|New Newcol Joincol Find Grep Help Changelog Tutor Dump NextColor Debug Kill
-| /tmp/pardes-snap/tagpath/cwd/c.txt Save New Newtty Del
-| 1 line 1
-| 2 line 2
-| 3 line 3
-| 4 line 4
-| 5
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-== style sel-path
+== style sel-path grid=100x30
|0: 0-74 #949494,#121212, 75-99 d,#121212,
|1: 0-1 #ffffff,#626262, 2-35 #080808,#80a0ff, 36-79 #949494,#121212, 80-99 d,#121212,
|2: 0-0 d,#444444, 1-1 d,#080808, 2-6 #626262,#080808, 7-12 #bdbdbd,#080808, 13-99 d,#080808,
@@ -154,126 +41,10 @@
|28: 0-0 d,#444444, 1-1 d,#080808, 2-6 #626262,#080808, 7-99 d,#080808,
|29: 0-0 d,#444444, 1-1 d,#080808, 2-6 #626262,#080808, 7-99 d,#080808,
== snap yanked-path grid=100x30 cursor=41,2
-|New Newcol Joincol Find Grep Help Changelog Tutor Dump NextColor Debug Kill
-| /tmp/pardes-snap/tagpath/cwd/c.txt * Save New Newtty Del
-| 1 l/tmp/pardes-snap/tagpath/cwd/c.txtine 1
-| 2 line 2
-| 3 line 3
-| 4 line 4
-| 5
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
+|1: /tmp/pardes-snap/tagpath/cwd/c.txt * Save New Newtty Del
+|2: 1 l/tmp/pardes-snap/tagpath/cwd/c.txtine 1
== snap drag-cross grid=100x30 cursor=41,1
-|New Newcol Joincol Find Grep Help Changelog Tutor Dump NextColor Debug Kill
-| /tmp/pardes-snap/tagpath/cwd/c.txt * Save New Newtty Del
-| 1 l/tmp/pardes-snap/tagpath/cwd/c.txtine 1
-| 2 line 2
-| 3 line 3
-| 4 line 4
-| 5
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-== style drag-cross
-|0: 0-74 #949494,#121212, 75-99 d,#121212,
+== style drag-cross grid=100x30
|1: 0-1 #ffffff,#626262, 2-10 #949494,#121212, 11-41 #080808,#80a0ff, 42-81 #949494,#121212, 82-99 d,#121212,
|2: 0-0 d,#444444, 1-1 d,#080808, 2-6 #626262,#080808, 7-46 #bdbdbd,#080808, 47-99 d,#080808,
-|3: 0-0 d,#444444, 1-1 d,#080808, 2-6 #626262,#080808, 7-12 #bdbdbd,#080808, 13-99 d,#080808,
-|4: 0-0 d,#444444, 1-1 d,#080808, 2-6 #626262,#080808, 7-12 #bdbdbd,#080808, 13-99 d,#080808,
-|5: 0-0 d,#444444, 1-1 d,#080808, 2-6 #626262,#080808, 7-12 #bdbdbd,#080808, 13-99 d,#080808,
-|6: 0-0 d,#444444, 1-1 d,#080808, 2-6 #626262,#080808, 7-99 d,#080808,
-|7: 0-0 d,#444444, 1-1 d,#080808, 2-6 #626262,#080808, 7-99 d,#080808,
-|8: 0-0 d,#444444, 1-1 d,#080808, 2-6 #626262,#080808, 7-99 d,#080808,
-|9: 0-0 d,#444444, 1-1 d,#080808, 2-6 #626262,#080808, 7-99 d,#080808,
-|10: 0-0 d,#444444, 1-1 d,#080808, 2-6 #626262,#080808, 7-99 d,#080808,
-|11: 0-0 d,#444444, 1-1 d,#080808, 2-6 #626262,#080808, 7-99 d,#080808,
-|12: 0-0 d,#444444, 1-1 d,#080808, 2-6 #626262,#080808, 7-99 d,#080808,
-|13: 0-0 d,#444444, 1-1 d,#080808, 2-6 #626262,#080808, 7-99 d,#080808,
-|14: 0-0 d,#444444, 1-1 d,#080808, 2-6 #626262,#080808, 7-99 d,#080808,
-|15: 0-0 d,#444444, 1-1 d,#080808, 2-6 #626262,#080808, 7-99 d,#080808,
-|16: 0-0 d,#444444, 1-1 d,#080808, 2-6 #626262,#080808, 7-99 d,#080808,
-|17: 0-0 d,#444444, 1-1 d,#080808, 2-6 #626262,#080808, 7-99 d,#080808,
-|18: 0-0 d,#444444, 1-1 d,#080808, 2-6 #626262,#080808, 7-99 d,#080808,
-|19: 0-0 d,#444444, 1-1 d,#080808, 2-6 #626262,#080808, 7-99 d,#080808,
-|20: 0-0 d,#444444, 1-1 d,#080808, 2-6 #626262,#080808, 7-99 d,#080808,
-|21: 0-0 d,#444444, 1-1 d,#080808, 2-6 #626262,#080808, 7-99 d,#080808,
-|22: 0-0 d,#444444, 1-1 d,#080808, 2-6 #626262,#080808, 7-99 d,#080808,
-|23: 0-0 d,#444444, 1-1 d,#080808, 2-6 #626262,#080808, 7-99 d,#080808,
-|24: 0-0 d,#444444, 1-1 d,#080808, 2-6 #626262,#080808, 7-99 d,#080808,
-|25: 0-0 d,#444444, 1-1 d,#080808, 2-6 #626262,#080808, 7-99 d,#080808,
-|26: 0-0 d,#444444, 1-1 d,#080808, 2-6 #626262,#080808, 7-99 d,#080808,
-|27: 0-0 d,#444444, 1-1 d,#080808, 2-6 #626262,#080808, 7-99 d,#080808,
-|28: 0-0 d,#444444, 1-1 d,#080808, 2-6 #626262,#080808, 7-99 d,#080808,
-|29: 0-0 d,#444444, 1-1 d,#080808, 2-6 #626262,#080808, 7-99 d,#080808,
== snap path-inert grid=100x30 cursor=11,1
-|New Newcol Joincol Find Grep Help Changelog Tutor Dump NextColor Debug Kill
-| /tmp/pardes-snap/tagpath/cwd/c.txt * Save New Newtty Del
-| 1 l/tmp/pardes-snap/tagpath/cwd/c.txtine 1
-| 2 line 2
-| 3 line 3
-| 4 line 4
-| 5
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
diff --git a/test/snapshots/theme.golden b/test/snapshots/theme.golden
index cb272e3a..6d720f74 100644
--- a/test/snapshots/theme.golden
+++ b/test/snapshots/theme.golden
@@ -18,18 +18,7 @@
| /tmp/pardes-snap/theme/cwd Save New Newtty Del F
| ls
| t.txt
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-== style helix
+== style helix grid=100x30
|0: 0-74 #949494,#121212, 75-99 d,#121212,
|1: 0-1 #ffffff,#626262, 2-49 #949494,#121212, 50-51 #ffffff,#262626, 52-99 #949494,#121212,
|2: 0-0 d,#444444, 1-1 d,#080808, 2-3 #bdbdbd,#080808, 4-49 d,#080808, 50-50 d,#444444, 51-51 d,#080808, 52-53 #bdbdbd,#080808, 54-99 d,#080808,
@@ -61,37 +50,7 @@
|28: 0-0 d,#444444, 1-49 d,#080808, 50-50 d,#444444, 51-99 d,#080808,
|29: 0-0 d,#444444, 1-49 d,#080808, 50-50 d,#444444, 51-99 d,#080808,
== snap dark grid=100x30 cursor=4,4
-|New Newcol Joincol Find Grep Help Changelog Tutor Dump NextColor Debug Kill
-| /tmp/pardes-snap/theme/cwd Save New Newtty Del F /tmp/pardes-snap/theme/cwd Save New Newtty Del F
-| ls ls
-| t.txt t.txt
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-| /tmp/pardes-snap/theme/cwd Save New Newtty Del F
-| ls
-| t.txt
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-== style dark
+== style dark grid=100x30
|0: 0-54 #969696,#2c2a3e, 55-63 #d8c8a8,#4a3a1e, 64-74 #969696,#2c2a3e, 75-99 d,#2c2a3e,
|1: 0-1 #ffffff,#6e4fd0, 2-49 #969696,#2c2a3e, 50-51 #ffffff,#383c54, 52-99 #969696,#2c2a3e,
|2: 0-0 d,#525252, 1-49 d,d, 50-50 d,#525252, 51-99 d,d,
@@ -123,37 +82,7 @@
|28: 0-0 d,#525252, 1-49 d,d, 50-50 d,#525252, 51-99 d,d,
|29: 0-0 d,#525252, 1-49 d,d, 50-50 d,#525252, 51-99 d,d,
== snap acme grid=100x30 cursor=4,4
-|New Newcol Joincol Find Grep Help Changelog Tutor Dump NextColor Debug Kill
-| /tmp/pardes-snap/theme/cwd Save New Newtty Del F /tmp/pardes-snap/theme/cwd Save New Newtty Del F
-| ls ls
-| t.txt t.txt
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-| /tmp/pardes-snap/theme/cwd Save New Newtty Del F
-| ls
-| t.txt
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-== style acme
+== style acme grid=100x30
|0: 0-54 #000000,#eaffff, 55-63 #000000,#eeee9e, 64-74 #000000,#eaffff, 75-99 d,#eaffff,
|1: 0-1 #ffffff,#6e4fd0, 2-49 #000000,#eaffff, 50-51 #ffffff,#383c54, 52-99 #000000,#eaffff,
|2: 0-1 d,#ffffea, 2-3 #000000,#ffffea, 4-51 d,#ffffea, 52-53 #000000,#ffffea, 54-99 d,#ffffea,
@@ -185,99 +114,9 @@
|28: 0-99 d,#ffffea,
|29: 0-99 d,#ffffea,
== snap colors-off grid=100x30 cursor=4,4
-|New Newcol Joincol Find Grep Help Changelog Tutor Dump NextColor Debug Kill
-| /tmp/pardes-snap/theme/cwd Save New Newtty Del F /tmp/pardes-snap/theme/cwd Save New Newtty Del F
-| ls ls
-| t.txt t.txt
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-| /tmp/pardes-snap/theme/cwd Save New Newtty Del F
-| ls
-| t.txt
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-== style colors-off
-|0: 0-54 #000000,#eaffff, 55-63 #000000,#eeee9e, 64-74 #000000,#eaffff, 75-99 d,#eaffff,
-|1: 0-1 #ffffff,#6e4fd0, 2-49 #000000,#eaffff, 50-51 #ffffff,#383c54, 52-99 #000000,#eaffff,
-|2: 0-1 d,#ffffea, 2-3 #000000,#ffffea, 4-51 d,#ffffea, 52-53 #000000,#ffffea, 54-99 d,#ffffea,
-|3: 0-1 d,#ffffea, 2-6 #000000,#ffffea, 7-51 d,#ffffea, 52-56 #000000,#ffffea, 57-99 d,#ffffea,
-|4: 0-99 d,#ffffea,
-|5: 0-99 d,#ffffea,
-|6: 0-99 d,#ffffea,
-|7: 0-99 d,#ffffea,
-|8: 0-99 d,#ffffea,
-|9: 0-99 d,#ffffea,
-|10: 0-99 d,#ffffea,
-|11: 0-99 d,#ffffea,
-|12: 0-99 d,#ffffea,
-|13: 0-99 d,#ffffea,
-|14: 0-99 d,#ffffea,
-|15: 0-99 d,#ffffea,
-|16: 0-1 #ffffff,#383c54, 2-49 #000000,#eaffff, 50-99 d,#ffffea,
-|17: 0-1 d,#ffffea, 2-3 #000000,#ffffea, 4-99 d,#ffffea,
-|18: 0-1 d,#ffffea, 2-6 #000000,#ffffea, 7-99 d,#ffffea,
-|19: 0-99 d,#ffffea,
-|20: 0-99 d,#ffffea,
-|21: 0-99 d,#ffffea,
-|22: 0-99 d,#ffffea,
-|23: 0-99 d,#ffffea,
-|24: 0-99 d,#ffffea,
-|25: 0-99 d,#ffffea,
-|26: 0-99 d,#ffffea,
-|27: 0-99 d,#ffffea,
-|28: 0-99 d,#ffffea,
-|29: 0-99 d,#ffffea,
+== style colors-off grid=100x30
== snap generated grid=100x30 cursor=4,4
-|New Newcol Joincol Find Grep Help Changelog Tutor Dump NextColor Debug Kill
-| /tmp/pardes-snap/theme/cwd Save New Newtty Del F /tmp/pardes-snap/theme/cwd Save New Newtty Del F
-| ls ls
-| t.txt t.txt
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-| /tmp/pardes-snap/theme/cwd Save New Newtty Del F
-| ls
-| t.txt
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-== style generated
+== style generated grid=100x30
|0: 0-54 #e0e0e0,#1e262e, 55-63 #e0e0e0,#303840, 64-74 #e0e0e0,#1e262e, 75-99 d,#1e262e,
|1: 0-1 #000000,#ffa060, 2-49 #e0e0e0,#1e262e, 50-51 #ffffff,#303840, 52-99 #e0e0e0,#1e262e,
|2: 0-0 d,#303840, 1-1 d,#161e26, 2-3 #e0e0e0,#161e26, 4-49 d,#161e26, 50-50 d,#303840, 51-51 d,#161e26, 52-53 #e0e0e0,#161e26, 54-99 d,#161e26,
diff --git a/test/snapshots/theme.snap b/test/snapshots/theme.snap
index 3e1715f3..fbaf849f 100644
--- a/test/snapshots/theme.snap
+++ b/test/snapshots/theme.snap
@@ -19,13 +19,13 @@ wait 8000 t.txt
stable 700 20000
snap helix
snapstyle helix
-press middle 57 1
-release middle 57 1
+press middle @NextColor 1
+release middle @NextColor 1
stable 700 10000
snap dark
snapstyle dark
-press middle 57 1
-release middle 57 1
+press middle @NextColor 1
+release middle @NextColor 1
stable 700 10000
snap acme
snapstyle acme
@@ -39,8 +39,8 @@ key space
key t
key c
stable 700 10000
-press middle 57 1
-release middle 57 1
+press middle @NextColor 1
+release middle @NextColor 1
stable 700 10000
snap generated
snapstyle generated
diff --git a/test/snapshots/themesel.golden b/test/snapshots/themesel.golden
index f85b2c50..e69ad3de 100644
--- a/test/snapshots/themesel.golden
+++ b/test/snapshots/themesel.golden
@@ -30,68 +30,22 @@
| 27 line 27
| 28 line 28
== snap list grid=100x30 cursor=7,2
-|New Newcol Joincol Find Grep Help Changelog Tutor Dump NextColor Debug Kill
-| /tmp/pardes-snap/themesel/cwd/t.txt Save New Newtty Del
-| 1 line 1
-| 2 line 2
-| 3 line 3
-| 4 line 4
-| 5 line 5
-| 6 line 6
-| 7 line 7
-| 8 line 8
-| 9 line 9
-| 10 line 10
-| 11 line 11
-| 12 line 12
-| 13 line 13
-| 14 line 14
-| /tmp/pardes-snap/themesel/cwd/+Themes Save New Newtty Del
-| 1 Theme helix
-| 2 Theme dark
-| 3 Theme acme
-| 4 Theme acid
-| 5 Theme acme_helix
-| 6 Theme adwaita_dark
-| 7 Theme adwaita_light
-| 8 Theme akari_dawn
-| 9 Theme akari_night
-| 10 Theme amberwood
-| 11 Theme andromeda
-| 12 Theme ao
-| 13 Theme ashen
+|16: /tmp/pardes-snap/themesel/cwd/+Themes Save New Newtty Del
+|17: 1 Theme helix
+|18: 2 Theme dark
+|19: 3 Theme acme
+|20: 4 Theme acid
+|21: 5 Theme acme_helix
+|22: 6 Theme adwaita_dark
+|23: 7 Theme adwaita_light
+|24: 8 Theme akari_dawn
+|25: 9 Theme akari_night
+|26: 10 Theme amberwood
+|27: 11 Theme andromeda
+|28: 12 Theme ao
+|29: 13 Theme ashen
== snap step-helix grid=100x30 cursor=7,17
-|New Newcol Joincol Find Grep Help Changelog Tutor Dump NextColor Debug Kill
-| /tmp/pardes-snap/themesel/cwd/t.txt Save New Newtty Del
-| 1 line 1
-| 2 line 2
-| 3 line 3
-| 4 line 4
-| 5 line 5
-| 6 line 6
-| 7 line 7
-| 8 line 8
-| 9 line 9
-| 10 line 10
-| 11 line 11
-| 12 line 12
-| 13 line 13
-| 14 line 14
-| /tmp/pardes-snap/themesel/cwd/+Themes Save New Newtty Del
-| 1 Theme helix
-| 2 Theme dark
-| 3 Theme acme
-| 4 Theme acid
-| 5 Theme acme_helix
-| 6 Theme adwaita_dark
-| 7 Theme adwaita_light
-| 8 Theme akari_dawn
-| 9 Theme akari_night
-| 10 Theme amberwood
-| 11 Theme andromeda
-| 12 Theme ao
-| 13 Theme ashen
-== style step-helix
+== style step-helix grid=100x30
|0: 0-74 #949494,#121212, 75-99 d,#121212,
|1: 0-1 #ffffff,#262626, 2-79 #949494,#121212, 80-99 d,#121212,
|2: 0-0 d,#444444, 1-1 d,#080808, 2-6 #626262,#080808, 7-12 #bdbdbd,#080808, 13-99 d,#080808,
@@ -123,37 +77,7 @@
|28: 0-0 d,#121212, 1-1 d,#080808, 2-6 #626262,#080808, 7-14 #bdbdbd,#080808, 15-99 d,#080808,
|29: 0-0 d,#121212, 1-1 d,#080808, 2-6 #626262,#080808, 7-17 #bdbdbd,#080808, 18-99 d,#080808,
== snap step-dark grid=100x30 cursor=7,18
-|New Newcol Joincol Find Grep Help Changelog Tutor Dump NextColor Debug Kill
-| /tmp/pardes-snap/themesel/cwd/t.txt Save New Newtty Del
-| 1 line 1
-| 2 line 2
-| 3 line 3
-| 4 line 4
-| 5 line 5
-| 6 line 6
-| 7 line 7
-| 8 line 8
-| 9 line 9
-| 10 line 10
-| 11 line 11
-| 12 line 12
-| 13 line 13
-| 14 line 14
-| /tmp/pardes-snap/themesel/cwd/+Themes Save New Newtty Del
-| 1 Theme helix
-| 2 Theme dark
-| 3 Theme acme
-| 4 Theme acid
-| 5 Theme acme_helix
-| 6 Theme adwaita_dark
-| 7 Theme adwaita_light
-| 8 Theme akari_dawn
-| 9 Theme akari_night
-| 10 Theme amberwood
-| 11 Theme andromeda
-| 12 Theme ao
-| 13 Theme ashen
-== style step-dark
+== style step-dark grid=100x30
|0: 0-74 #969696,#2c2a3e, 75-99 d,#2c2a3e,
|1: 0-1 #ffffff,#383c54, 2-79 #969696,#2c2a3e, 80-99 d,#2c2a3e,
|2: 0-0 d,#525252, 1-1 d,d, 2-6 #5a5a5a,d, 7-99 d,d,
@@ -185,37 +109,7 @@
|28: 0-0 d,#2a2a2a, 1-1 d,d, 2-6 #5a5a5a,d, 7-99 d,d,
|29: 0-0 d,#2a2a2a, 1-1 d,d, 2-6 #5a5a5a,d, 7-99 d,d,
== snap step-acme grid=100x30 cursor=7,19
-|New Newcol Joincol Find Grep Help Changelog Tutor Dump NextColor Debug Kill
-| /tmp/pardes-snap/themesel/cwd/t.txt Save New Newtty Del
-| 1 line 1
-| 2 line 2
-| 3 line 3
-| 4 line 4
-| 5 line 5
-| 6 line 6
-| 7 line 7
-| 8 line 8
-| 9 line 9
-| 10 line 10
-| 11 line 11
-| 12 line 12
-| 13 line 13
-| 14 line 14
-| /tmp/pardes-snap/themesel/cwd/+Themes Save New Newtty Del
-| 1 Theme helix
-| 2 Theme dark
-| 3 Theme acme
-| 4 Theme acid
-| 5 Theme acme_helix
-| 6 Theme adwaita_dark
-| 7 Theme adwaita_light
-| 8 Theme akari_dawn
-| 9 Theme akari_night
-| 10 Theme amberwood
-| 11 Theme andromeda
-| 12 Theme ao
-| 13 Theme ashen
-== style step-acme
+== style step-acme grid=100x30
|0: 0-74 #000000,#eaffff, 75-99 d,#eaffff,
|1: 0-1 #ffffff,#383c54, 2-79 #000000,#eaffff, 80-99 d,#eaffff,
|2: 0-1 d,#ffffea, 2-6 #999980,#ffffea, 7-12 #000000,#ffffea, 13-99 d,#ffffea,
@@ -247,37 +141,7 @@
|28: 0-0 d,#99994c, 1-1 d,#ffffea, 2-6 #999980,#ffffea, 7-14 #000000,#ffffea, 15-99 d,#ffffea,
|29: 0-0 d,#99994c, 1-1 d,#ffffea, 2-6 #999980,#ffffea, 7-17 #000000,#ffffea, 18-99 d,#ffffea,
== snap step-generated grid=100x30 cursor=7,20
-|New Newcol Joincol Find Grep Help Changelog Tutor Dump NextColor Debug Kill
-| /tmp/pardes-snap/themesel/cwd/t.txt Save New Newtty Del
-| 1 line 1
-| 2 line 2
-| 3 line 3
-| 4 line 4
-| 5 line 5
-| 6 line 6
-| 7 line 7
-| 8 line 8
-| 9 line 9
-| 10 line 10
-| 11 line 11
-| 12 line 12
-| 13 line 13
-| 14 line 14
-| /tmp/pardes-snap/themesel/cwd/+Themes Save New Newtty Del
-| 1 Theme helix
-| 2 Theme dark
-| 3 Theme acme
-| 4 Theme acid
-| 5 Theme acme_helix
-| 6 Theme adwaita_dark
-| 7 Theme adwaita_light
-| 8 Theme akari_dawn
-| 9 Theme akari_night
-| 10 Theme amberwood
-| 11 Theme andromeda
-| 12 Theme ao
-| 13 Theme ashen
-== style step-generated
+== style step-generated grid=100x30
|0: 0-74 #e0e0e0,#1e262e, 75-99 d,#1e262e,
|1: 0-1 #ffffff,#303840, 2-79 #e0e0e0,#1e262e, 80-99 d,#1e262e,
|2: 0-0 d,#303840, 1-1 d,#161e26, 2-6 #303840,#161e26, 7-12 #e0e0e0,#161e26, 13-99 d,#161e26,
@@ -309,37 +173,7 @@
|28: 0-0 d,#1e262e, 1-1 d,#161e26, 2-6 #303840,#161e26, 7-14 #e0e0e0,#161e26, 15-99 d,#161e26,
|29: 0-0 d,#1e262e, 1-1 d,#161e26, 2-6 #303840,#161e26, 7-17 #e0e0e0,#161e26, 18-99 d,#161e26,
== snap step-back grid=100x30 cursor=7,19
-|New Newcol Joincol Find Grep Help Changelog Tutor Dump NextColor Debug Kill
-| /tmp/pardes-snap/themesel/cwd/t.txt Save New Newtty Del
-| 1 line 1
-| 2 line 2
-| 3 line 3
-| 4 line 4
-| 5 line 5
-| 6 line 6
-| 7 line 7
-| 8 line 8
-| 9 line 9
-| 10 line 10
-| 11 line 11
-| 12 line 12
-| 13 line 13
-| 14 line 14
-| /tmp/pardes-snap/themesel/cwd/+Themes Save New Newtty Del
-| 1 Theme helix
-| 2 Theme dark
-| 3 Theme acme
-| 4 Theme acid
-| 5 Theme acme_helix
-| 6 Theme adwaita_dark
-| 7 Theme adwaita_light
-| 8 Theme akari_dawn
-| 9 Theme akari_night
-| 10 Theme amberwood
-| 11 Theme andromeda
-| 12 Theme ao
-| 13 Theme ashen
-== style step-back
+== style step-back grid=100x30
|0: 0-74 #000000,#eaffff, 75-99 d,#eaffff,
|1: 0-1 #ffffff,#383c54, 2-79 #000000,#eaffff, 80-99 d,#eaffff,
|2: 0-1 d,#ffffea, 2-6 #999980,#ffffea, 7-12 #000000,#ffffea, 13-99 d,#ffffea,
@@ -371,74 +205,37 @@
|28: 0-0 d,#99994c, 1-1 d,#ffffea, 2-6 #999980,#ffffea, 7-14 #000000,#ffffea, 15-99 d,#ffffea,
|29: 0-0 d,#99994c, 1-1 d,#ffffea, 2-6 #999980,#ffffea, 7-17 #000000,#ffffea, 18-99 d,#ffffea,
== snap tail grid=100x30 cursor=7,28
-|New Newcol Joincol Find Grep Help Changelog Tutor Dump NextColor Debug Kill
-| /tmp/pardes-snap/themesel/cwd/t.txt Save New Newtty Del
-| 1 line 1
-| 2 line 2
-| 3 line 3
-| 4 line 4
-| 5 line 5
-| 6 line 6
-| 7 line 7
-| 8 line 8
-| 9 line 9
-| 10 line 10
-| 11 line 11
-| 12 line 12
-| 13 line 13
-| 14 line 14
-| /tmp/pardes-snap/themesel/cwd/+Themes Save New Newtty Del
-| 217 Theme wolf_alabaster_dark_bg
-| 218 Theme wolf_alabaster_dark_mono
-| 219 Theme wolf_alabaster_light
-| 220 Theme wolf_alabaster_light_bg
-| 221 Theme wolf_alabaster_light_mono
-| 222 Theme yellowed
-| 223 Theme yo
-| 224 Theme yo_berry
-| 225 Theme yo_light
-| 226 Theme zed_onedark
-| 227 Theme zed_onelight
-| 228 Theme zenburn
-| 229
+|17: 217 Theme wolf_alabaster_dark_bg
+|18: 218 Theme wolf_alabaster_dark_mono
+|19: 219 Theme wolf_alabaster_light
+|20: 220 Theme wolf_alabaster_light_bg
+|21: 221 Theme wolf_alabaster_light_mono
+|22: 222 Theme yellowed
+|23: 223 Theme yo
+|24: 224 Theme yo_berry
+|25: 225 Theme yo_light
+|26: 226 Theme zed_onedark
+|27: 227 Theme zed_onelight
+|28: 228 Theme zenburn
+|29: 229
== snap picked grid=100x30 cursor=7,2
-|New Newcol Joincol Find Grep Help Changelog Tutor Dump NextColor Debug Kill
-| /tmp/pardes-snap/themesel/cwd/t.txt Save New Newtty Del
-| 1 line 1
-| 2 line 2
-| 3 line 3
-| 4 line 4
-| 5 line 5
-| 6 line 6
-| 7 line 7
-| 8 line 8
-| 9 line 9
-| 10 line 10
-| 11 line 11
-| 12 line 12
-| 13 line 13
-| 14 line 14
-| 15 line 15
-| 16 line 16
-| 17 line 17
-| 18 line 18
-| 19 line 19
-| 20 line 20
-| 21 line 21
-| 22 line 22
-| 23 line 23
-| 24 line 24
-| 25 line 25
-| 26 line 26
-| 27 line 27
-| 28 line 28
-== style picked
-|0: 0-74 #000000,#eaffff, 75-99 d,#eaffff,
+|16: 15 line 15
+|17: 16 line 16
+|18: 17 line 17
+|19: 18 line 18
+|20: 19 line 19
+|21: 20 line 20
+|22: 21 line 21
+|23: 22 line 22
+|24: 23 line 23
+|25: 24 line 24
+|26: 25 line 25
+|27: 26 line 26
+|28: 27 line 27
+|29: 28 line 28
+== style picked grid=100x30
|1: 0-1 #ffffff,#6e4fd0, 2-79 #000000,#eaffff, 80-99 d,#eaffff,
|2: 0-1 d,#ffffea, 2-6 #000000,#eaffff, 7-12 #000000,#ffffea, 13-99 d,#ffffea,
-|3: 0-1 d,#ffffea, 2-6 #999980,#ffffea, 7-12 #000000,#ffffea, 13-99 d,#ffffea,
-|4: 0-1 d,#ffffea, 2-6 #999980,#ffffea, 7-12 #000000,#ffffea, 13-99 d,#ffffea,
-|5: 0-1 d,#ffffea, 2-6 #999980,#ffffea, 7-12 #000000,#ffffea, 13-99 d,#ffffea,
|6: 0-1 d,#ffffea, 2-6 #999980,#ffffea, 7-12 #000000,#ffffea, 13-99 d,#ffffea,
|7: 0-1 d,#ffffea, 2-6 #999980,#ffffea, 7-12 #000000,#ffffea, 13-99 d,#ffffea,
|8: 0-1 d,#ffffea, 2-6 #999980,#ffffea, 7-12 #000000,#ffffea, 13-99 d,#ffffea,
diff --git a/test/snapshots/tinywin.golden b/test/snapshots/tinywin.golden
index 61fc657c..0be29acb 100644
--- a/test/snapshots/tinywin.golden
+++ b/test/snapshots/tinywin.golden
@@ -13,22 +13,6 @@
|
| /tmp/pardes-snap/tinywin/cwd Save New Newtty Del Filter
| ls
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
== snap shrunk grid=60x3 cursor=59,2
|New Newcol Joincol Find Grep Help Changelog Tutor Dump NextC
|$ /tmp/pardes-snap/tinywin/cwd Save New Newtty Del Filter
@@ -48,50 +32,5 @@
|
| /tmp/pardes-snap/tinywin/cwd Save New Newtty Del
| ls
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
== snap narrow grid=4x30 cursor=3,29
|New
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
diff --git a/test/snapshots/topbarexec.golden b/test/snapshots/topbarexec.golden
index 1b3b20a8..4ab55473 100644
--- a/test/snapshots/topbarexec.golden
+++ b/test/snapshots/topbarexec.golden
@@ -13,51 +13,25 @@
| /tmp/pardes-snap/topbarexec/cwd Save New Ne
| ls
| zmarkfile.txt
-|
-|
-|
-|
-|
-|
== snap noarg-runs grid=90x20 cursor=14,3
-|New Newcol Joincol Find Grep Help Changelog Tutor Dump NextColor Debug Kill
-| /tmp/pardes-snap/topbarexec/cwd Save New Ne /tmp/╭────────────────────────────────────╮
-| ls ls │pardes resizes=1 │
-| zmarkfile.txt zmark│theme helix │
-| │font default │
-| │terms 3 cols 2 │
-| │active #0 43x9 │
-| │scroll 0/9 │
-| │pinch 1.0000 │
-| │tscroll 0.0000 │
-| ╰────────────────────────────────────╯
-| /tmp/pardes-snap/topbarexec/cwd Save New Ne
-| ls
-| zmarkfile.txt
-|
-|
-|
-|
-|
-|
+|1: /tmp/pardes-snap/topbarexec/cwd Save New Ne /tmp/╭────────────────────────────────────╮
+|2: ls ls │pardes resizes=1 │
+|3: zmarkfile.txt zmark│theme helix │
+|4: │font default │
+|5: │terms 3 cols 2 │
+|6: │active #0 43x9 │
+|7: │scroll 0/9 │
+|8: │pinch 1.0000 │
+|9: │tscroll 0.0000 │
+|10: ╰────────────────────────────────────╯
== snap arg-still-spliced grid=90x20 cursor=14,3
-|New Newcol Joincol Find Grep Help Changelog Tutor Dump NextColor Debug Kill
-| /tmp/pardes-snap/topbarexec/cwd Save New Ne /tmp/pardes-snap/topbarexec/cwd Save New Ne
-| ls ls
-| zmarkfile.txt zmarkfile.txt
-|
-|
-|
-|
-|
-| /tmp/pardes-snap/topbarexec/cwd/+Search Sav
-| 1 zmarkfile.txt
-| /tmp/pardes-snap/topbarexec/cwd Save New Ne
-| ls
-| zmarkfile.txt
-|
-|
-|
-|
-|
-|
+|1: /tmp/pardes-snap/topbarexec/cwd Save New Ne /tmp/pardes-snap/topbarexec/cwd Save New Ne
+|2: ls ls
+|3: zmarkfile.txt zmarkfile.txt
+|4:
+|5:
+|6:
+|7:
+|8:
+|9: /tmp/pardes-snap/topbarexec/cwd/+Search Sav
+|10: 1 zmarkfile.txt
diff --git a/test/snapshots/topbarexec.snap b/test/snapshots/topbarexec.snap
index c73bf4d7..f1661da4 100644
--- a/test/snapshots/topbarexec.snap
+++ b/test/snapshots/topbarexec.snap
@@ -26,20 +26,20 @@ stable 700 15000
snap selected
# Debug takes NO argument. Middle-clicked with that sweep live it must open the
# overlay — not send `Debug zmarkfile.txt` to bash. The box IS the assertion.
-press middle 67 1
-release middle 67 1
+press middle @Debug 1
+release middle @Debug 1
stable 700 15000
snap noarg-runs
# ...and off again, so the overlay does not cover what comes next
-press middle 67 1
-release middle 67 1
+press middle @Debug 1
+release middle @Debug 1
stable 700 15000
# Find DOES take one, and still gets it: the sweep is the pattern, so the
# results buffer names the file it matched. An empty buffer would mean Find
# ran with no argument (which arms the prompt instead), so the ROW is the
# assertion — the splice is what put it there.
-press middle 21 1
-release middle 21 1
+press middle @Find 1
+release middle @Find 1
wait 10000 +Search
stable 700 15000
snap arg-still-spliced
diff --git a/test/snapshots/tty.golden b/test/snapshots/tty.golden
index 64c3851f..f4781349 100644
--- a/test/snapshots/tty.golden
+++ b/test/snapshots/tty.golden
@@ -18,169 +18,23 @@
| /tmp/pardes-snap/tty/cwd Save New Newtty Del Fil
| ls
| m.txt
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
== snap tty-echo grid=100x30 cursor=4,6
-|New Newcol Joincol Find Grep Help Changelog Tutor Dump NextColor Debug Kill
-|$ /tmp/pardes-snap/tty/cwd Save New Newtty Del Fil /tmp/pardes-snap/tty/cwd Save New Newtty Del Fil
-| $ ls ls
-| m.txt m.txt
-| $ echo SNAP''OK
-| SNAPOK
-| $
-|
-|
-|
-|
-|
-|
-|
-|
-|
-| /tmp/pardes-snap/tty/cwd Save New Newtty Del Fil
-| ls
-| m.txt
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
+|4: $ echo SNAP''OK
+|5: SNAPOK
+|6: $
== snap tty-off grid=100x30 cursor=4,6
-|New Newcol Joincol Find Grep Help Changelog Tutor Dump NextColor Debug Kill
-| /tmp/pardes-snap/tty/cwd Save New Newtty Del Fil /tmp/pardes-snap/tty/cwd Save New Newtty Del Fil
-| ls ls
-| m.txt m.txt
-| echo SNAP''OK
-| SNAPOK
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-| /tmp/pardes-snap/tty/cwd Save New Newtty Del Fil
-| ls
-| m.txt
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
+|1: /tmp/pardes-snap/tty/cwd Save New Newtty Del Fil /tmp/pardes-snap/tty/cwd Save New Newtty Del Fil
+|2: ls ls
+|4: echo SNAP''OK
+|6:
== snap shift-esc-on grid=100x30 cursor=4,6
-|New Newcol Joincol Find Grep Help Changelog Tutor Dump NextColor Debug Kill
-|$ /tmp/pardes-snap/tty/cwd Save New Newtty Del Fil /tmp/pardes-snap/tty/cwd Save New Newtty Del Fil
-| $ ls ls
-| m.txt m.txt
-| $ echo SNAP''OK
-| SNAPOK
-| $
-|
-|
-|
-|
-|
-|
-|
-|
-|
-| /tmp/pardes-snap/tty/cwd Save New Newtty Del Fil
-| ls
-| m.txt
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
+|1: $ /tmp/pardes-snap/tty/cwd Save New Newtty Del Fil /tmp/pardes-snap/tty/cwd Save New Newtty Del Fil
+|2: $ ls ls
+|4: $ echo SNAP''OK
+|6: $
== snap shift-esc-nodoc grid=100x30 cursor=4,6
-|New Newcol Joincol Find Grep Help Changelog Tutor Dump NextColor Debug Kill
-|$ /tmp/pardes-snap/tty/cwd Save New Newtty Del Fil /tmp/pardes-snap/tty/cwd Save New Newtty Del Fil
-| $ ls ls
-| m.txt m.txt
-| $ echo SNAP''OK
-| SNAPOK
-| $
-|
-|
-|
-|
-|
-|
-|
-|
-|
-| /tmp/pardes-snap/tty/cwd Save New Newtty Del Fil
-| ls
-| m.txt
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
== snap ctrl-b-off grid=100x30 cursor=4,6
-|New Newcol Joincol Find Grep Help Changelog Tutor Dump NextColor Debug Kill
-| /tmp/pardes-snap/tty/cwd Save New Newtty Del Fil /tmp/pardes-snap/tty/cwd Save New Newtty Del Fil
-| ls ls
-| m.txt m.txt
-| echo SNAP''OK
-| SNAPOK
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-| /tmp/pardes-snap/tty/cwd Save New Newtty Del Fil
-| ls
-| m.txt
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
+|1: /tmp/pardes-snap/tty/cwd Save New Newtty Del Fil /tmp/pardes-snap/tty/cwd Save New Newtty Del Fil
+|2: ls ls
+|4: echo SNAP''OK
+|6:
diff --git a/test/snapshots/ttyclick.golden b/test/snapshots/ttyclick.golden
index a4b3e10c..2224be82 100644
--- a/test/snapshots/ttyclick.golden
+++ b/test/snapshots/ttyclick.golden
@@ -18,107 +18,13 @@
| /tmp/pardes-snap/ttyclick/cwd Save New Newtty De
| ls
| probe.txt
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-== snap tty-tagedit grid=100x30 cursor=39,1
-|New Newcol Joincol Find Grep Help Changelog Tutor Dump NextColor Debug Kill
-|$ /tmp/pardes-snap/ttyclick/cwd Save New Newtty De /tmp/pardes-snap/ttyclick/cwd Save New Newtty De
-| ls ls
-| probe.txt probe.txt
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-| /tmp/pardes-snap/ttyclick/cwd Save New Newtty De
-| ls
-| probe.txt
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
+== snap tty-tagedit grid=100x30 cursor=37,1
+|2: ls ls
+|4:
== snap tty-tagexit grid=100x30 cursor=4,4
-|New Newcol Joincol Find Grep Help Changelog Tutor Dump NextColor Debug Kill
-|$ /tmp/pardes-snap/ttyclick/cwd Save New Newtty De /tmp/pardes-snap/ttyclick/cwd Save New Newtty De
-| $ ls ls
-| probe.txt probe.txt
-| $
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-| /tmp/pardes-snap/ttyclick/cwd Save New Newtty De
-| ls
-| probe.txt
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
+|2: $ ls ls
+|4: $
== snap ins-bodyclick grid=100x30 cursor=11,3
-|New Newcol Joincol Find Grep Help Changelog Tutor Dump NextColor Debug Kill
-|^ /tmp/pardes-snap/ttyclick/cwd Save New Newtty De /tmp/pardes-snap/ttyclick/cwd Save New Newtty De
-| ls ls
-| probe.txt probe.txt
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-| /tmp/pardes-snap/ttyclick/cwd Save New Newtty De
-| ls
-| probe.txt
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
+|1: ^ /tmp/pardes-snap/ttyclick/cwd Save New Newtty De /tmp/pardes-snap/ttyclick/cwd Save New Newtty De
+|2: ls ls
+|4:
diff --git a/test/snapshots/ttyclick.snap b/test/snapshots/ttyclick.snap
index a23de75b..ca32568b 100644
--- a/test/snapshots/ttyclick.snap
+++ b/test/snapshots/ttyclick.snap
@@ -18,8 +18,8 @@ snap tty-bodyclick
# tag edit from tty: the box still reads `$` while the tag is being edited (the
# body mode is PARKED, which is the invariant), and Esc hands it back — a bug
# that lost it would show `•` in one snap or the other
-press left 40 2
-release left 40 2
+press left @New 2
+release left @New 2
stable 400 5000
snap tty-tagedit
key esc
diff --git a/test/snapshots/ttyedit.golden b/test/snapshots/ttyedit.golden
index d87599cf..0fe295ff 100644
--- a/test/snapshots/ttyedit.golden
+++ b/test/snapshots/ttyedit.golden
@@ -18,138 +18,24 @@
| /tmp/pardes-snap/ttyedit/cwd Save New Newtty Del
| ls
| words.txt
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
== snap split grid=100x30 cursor=2,7
-|New Newcol Joincol Find Grep Help Changelog Tutor Dump NextColor Debug Kill
-|^ /tmp/pardes-snap/ttyedit/cwd Save New Newtty Del /tmp/pardes-snap/ttyedit/cwd Save New Newtty Del
-| ls ls
-| words.txt words.txt
-| printf 'one two three\nfour five six\nseven ei
-| ght nine\n'
-| one t
-| wo three
-| four five six
-| seven eight nine
-|
-|
-|
-|
-|
-|
-| /tmp/pardes-snap/ttyedit/cwd Save New Newtty Del
-| ls
-| words.txt
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
+|1: ^ /tmp/pardes-snap/ttyedit/cwd Save New Newtty Del /tmp/pardes-snap/ttyedit/cwd Save New Newtty Del
+|6: one t
+|7: wo three
+|8: four five six
+|9: seven eight nine
== snap opened grid=100x30 cursor=6,8
-|New Newcol Joincol Find Grep Help Changelog Tutor Dump NextColor Debug Kill
-| /tmp/pardes-snap/ttyedit/cwd Save New Newtty Del /tmp/pardes-snap/ttyedit/cwd Save New Newtty Del
-| ls ls
-| words.txt words.txt
-| printf 'one two three\nfour five six\nseven ei
-| ght nine\n'
-| one t
-| wo three
-| OPEN
-| four five six
-| seven eight nine
-|
-|
-|
-|
-|
-| /tmp/pardes-snap/ttyedit/cwd Save New Newtty Del
-| ls
-| words.txt
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
+|1: /tmp/pardes-snap/ttyedit/cwd Save New Newtty Del /tmp/pardes-snap/ttyedit/cwd Save New Newtty Del
+|8: OPEN
+|9: four five six
+|10: seven eight nine
== snap joined grid=100x30 cursor=10,7
-|New Newcol Joincol Find Grep Help Changelog Tutor Dump NextColor Debug Kill
-| /tmp/pardes-snap/ttyedit/cwd Save New Newtty Del /tmp/pardes-snap/ttyedit/cwd Save New Newtty Del
-| ls ls
-| words.txt words.txt
-| printf 'one two three\nfour five six\nseven ei
-| ght nine\n'
-| one t
-| wo threeOPEN
-| four five six
-| seven eight nine
-|
-|
-|
-|
-|
-|
-| /tmp/pardes-snap/ttyedit/cwd Save New Newtty Del
-| ls
-| words.txt
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
+|7: wo threeOPEN
+|8: four five six
+|9: seven eight nine
+|10:
== snap undone grid=100x30 cursor=7,6
-|New Newcol Joincol Find Grep Help Changelog Tutor Dump NextColor Debug Kill
-| /tmp/pardes-snap/ttyedit/cwd Save New Newtty Del /tmp/pardes-snap/ttyedit/cwd Save New Newtty Del
-| ls ls
-| words.txt words.txt
-| printf 'one two three\nfour five six\nseven ei
-| ght nine\n'
-| one two three
-| four five six
-| seven eight nine
-|
-|
-|
-|
-|
-|
-|
-| /tmp/pardes-snap/ttyedit/cwd Save New Newtty Del
-| ls
-| words.txt
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
+|6: one two three
+|7: four five six
+|8: seven eight nine
+|9:
diff --git a/test/snapshots/ttyfollow.golden b/test/snapshots/ttyfollow.golden
index d94a5cfd..8849c3d2 100644
--- a/test/snapshots/ttyfollow.golden
+++ b/test/snapshots/ttyfollow.golden
@@ -18,76 +18,26 @@
| /tmp/pardes-snap/ttyfollow/cwd Save New Newtty D
| ls
| s.txt
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
== snap held-post grid=100x30 cursor=54,7
-|New Newcol Joincol Find Grep Help Changelog Tutor Dump NextColor Debug Kill
-| /tmp/pardes-snap/ttyfollow/cwd Save New Newtty D$ /tmp/pardes-snap/ttyfollow/cwd Save New Newtty D
-| 185 $ ls
-| 186 s.txt
-| 187 $ touch go; until test -f done1; do sleep 0.05;
-| 188 done; echo SYN''CED
-| 189 SYNCED
-| 190 $
-| 191
-| 192
-| 193
-| 194
-| 195
-| 196
-| 197
-| 198
-| /tmp/pardes-snap/ttyfollow/cwd Save New Newtty D
-| ls
-| s.txt
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
+|1: /tmp/pardes-snap/ttyfollow/cwd Save New Newtty D$ /tmp/pardes-snap/ttyfollow/cwd Save New Newtty D
+|2: 185 $ ls
+|4: 187 $ touch go; until test -f done1; do sleep 0.05;
+|5: 188 done; echo SYN''CED
+|6: 189 SYNCED
+|7: 190 $
== snap tty-follows grid=100x30 cursor=4,15
-|New Newcol Joincol Find Grep Help Changelog Tutor Dump NextColor Debug Kill
-|$ /tmp/pardes-snap/ttyfollow/cwd Save New Newtty D$ /tmp/pardes-snap/ttyfollow/cwd Save New Newtty D
-| 288 $ ls
-| 289 s.txt
-| 290 $ touch go; until test -f done1; do sleep 0.05;
-| 291 done; echo SYN''CED
-| 292 SYNCED
-| 293 $
-| 294
-| 295
-| 296
-| 297
-| 298
-| 299
-| 300
-| $
-| /tmp/pardes-snap/ttyfollow/cwd Save New Newtty D
-| ls
-| s.txt
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
+|1: $ /tmp/pardes-snap/ttyfollow/cwd Save New Newtty D$ /tmp/pardes-snap/ttyfollow/cwd Save New Newtty D
+|2: 288 $ ls
+|3: 289 s.txt
+|4: 290 $ touch go; until test -f done1; do sleep 0.05;
+|5: 291 done; echo SYN''CED
+|6: 292 SYNCED
+|7: 293 $
+|8: 294
+|9: 295
+|10: 296
+|11: 297
+|12: 298
+|13: 299
+|14: 300
+|15: $
diff --git a/test/snapshots/ttyhelp.golden b/test/snapshots/ttyhelp.golden
index 10ee58b4..340346af 100644
--- a/test/snapshots/ttyhelp.golden
+++ b/test/snapshots/ttyhelp.golden
@@ -2,92 +2,32 @@
|New Newcol Joincol Find Grep Help Changelog Tutor Dump NextColor Debug Kill
|$ /tmp/pardes-snap/ttyhelp/cwd Save New Newtty Del Filter
| $
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
== snap helped grid=100x30 cursor=7,4
-|New Newcol Joincol Find Grep Help Changelog Tutor Dump NextColor Debug Kill
-|$ /tmp/pardes-snap/ttyhelp/cwd Save New Newtty Del Filter
-| $
-| /tmp/pardes-snap/ttyhelp/cwd/+Help Save New Newtty Del
-| 1 pardes builtins, and how to run each:
-| 2 SPC and its keys, a chord, a button, the
-| 3 topbar - or the name, executed anywhere.
-| 4
-| 5 SPC ? Help topbar
-| 6 SPC P ClipPasteBefore
-| 7 SPC R ClipReplace
-| 8 SPC Y ClipYankMain
-| 9 SPC a a PanelAscii
-| 10 SPC a c PanelCurtain
-| 11 SPC a d PanelDissolve
-| 12 SPC a e PanelEdges
-| 13 SPC a f PanelFall
-| 14 SPC a r PanelScramble
-| 15 SPC a s PanelSlide
-| 16 SPC a t PanelType
-| 17 SPC a v PanelVertical
-| 18 SPC a w PanelWave
-| 19 SPC a z PanelZoom
-| 20 SPC c d Delcol
-| 21 SPC c j Joincol topbar
-| 22 SPC c n Newcol topbar
-| 23 SPC d Del
-| 24 SPC f c Config
-| 25 SPC f f Find topbar
-| 26 SPC f g Grep topbar
+|3: /tmp/pardes-snap/ttyhelp/cwd/+Help Save New Newtty Del
+|4: 1 pardes builtins, and how to run each:
+|5: 2 SPC and its keys, a chord, a button, the
+|6: 3 topbar - or the name, executed anywhere.
+|7: 4
+|8: 5 SPC ? Help topbar
+|9: 6 SPC P ClipPasteBefore
+|10: 7 SPC R ClipReplace
+|11: 8 SPC Y ClipYankMain
+|12: 9 SPC a a PanelAscii
+|13: 10 SPC a c PanelCurtain
+|14: 11 SPC a d PanelDissolve
+|15: 12 SPC a e PanelEdges
+|16: 13 SPC a f PanelFall
+|17: 14 SPC a r PanelScramble
+|18: 15 SPC a s PanelSlide
+|19: 16 SPC a t PanelType
+|20: 17 SPC a v PanelVertical
+|21: 18 SPC a w PanelWave
+|22: 19 SPC a z PanelZoom
+|23: 20 SPC c d Delcol
+|24: 21 SPC c j Joincol topbar
+|25: 22 SPC c n Newcol topbar
+|26: 23 SPC d Del
+|27: 24 SPC f c Config
+|28: 25 SPC f f Find topbar
+|29: 26 SPC f g Grep topbar
== snap leaderworks grid=100x30 cursor=7,4
-|New Newcol Joincol Find Grep Help Changelog Tutor Dump NextColor Debug Kill
-|$ /tmp/pardes-snap/ttyhelp/cwd Save New Newtty Del Filter
-| $
-| /tmp/pardes-snap/ttyhelp/cwd/+Help Save New Newtty Del
-| 1 pardes builtins, and how to run each:
-| 2 SPC and its keys, a chord, a button, the
-| 3 topbar - or the name, executed anywhere.
-| 4
-| 5 SPC ? Help topbar
-| 6 SPC P ClipPasteBefore
-| 7 SPC R ClipReplace
-| 8 SPC Y ClipYankMain
-| 9 SPC a a PanelAscii
-| 10 SPC a c PanelCurtain
-| 11 SPC a d PanelDissolve
-| 12 SPC a e PanelEdges
-| 13 SPC a f PanelFall
-| 14 SPC a r PanelScramble
-| 15 SPC a s PanelSlide
-| 16 SPC a t PanelType
-| 17 SPC a v PanelVertical
-| 18 SPC a w PanelWave
-| 19 SPC a z PanelZoom
-| 20 SPC c d Delcol
-| 21 SPC c j Joincol topbar
-| 22 SPC c n Newcol topbar
-| 23 SPC d Del
-| 24 SPC f c Config
-| 25 SPC f f Find topbar
-| 26 SPC f g Grep topbar
diff --git a/test/snapshots/ttyhelp.snap b/test/snapshots/ttyhelp.snap
index 99b62d5f..42efd565 100644
--- a/test/snapshots/ttyhelp.snap
+++ b/test/snapshots/ttyhelp.snap
@@ -5,8 +5,8 @@ start 30 100
wait 8000 New Newcol
stable 700 20000
snap boot
-press middle 31 1
-release middle 31 1
+press middle @Help 1
+release middle @Help 1
wait 10000 pardes builtins
stable 700 15000
snap helped
diff --git a/test/snapshots/ttylook.golden b/test/snapshots/ttylook.golden
index e9e86b18..a0b6cbf2 100644
--- a/test/snapshots/ttylook.golden
+++ b/test/snapshots/ttylook.golden
@@ -18,18 +18,7 @@
| /tmp/pardes-snap/ttylook/cwd Save New Newtty Del Filter
| ls
| big.txt plain.txt sub
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-== style tok1
+== style tok1 grid=120x30
|0: 0-74 #949494,#121212, 75-119 d,#121212,
|1: 0-1 #ffffff,#626262, 2-56 #949494,#121212, 57-59 d,#121212, 60-61 #ffffff,#262626, 62-116 #949494,#121212, 117-119 d,#121212,
|2: 0-0 d,#444444, 1-1 d,#080808, 2-3 #bdbdbd,#080808, 4-59 d,#080808, 60-60 d,#444444, 61-61 d,#080808, 62-63 #bdbdbd,#080808, 64-119 d,#080808,
@@ -61,219 +50,18 @@
|28: 0-0 d,#444444, 1-59 d,#080808, 60-60 d,#444444, 61-119 d,#080808,
|29: 0-0 d,#444444, 1-59 d,#080808, 60-60 d,#444444, 61-119 d,#080808,
== snap tok2 grid=120x30 cursor=11,3
-|New Newcol Joincol Find Grep Help Changelog Tutor Dump NextColor Debug Kill
-| /tmp/pardes-snap/ttylook/cwd Save New Newtty Del Filter /tmp/pardes-snap/ttylook/cwd Save New Newtty Del Filter
-| ls ls
-| big.txt plain.txt sub big.txt plain.txt sub
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-| /tmp/pardes-snap/ttylook/cwd Save New Newtty Del Filter
-| ls
-| big.txt plain.txt sub
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
== snap tokback grid=120x30 cursor=2,3
-|New Newcol Joincol Find Grep Help Changelog Tutor Dump NextColor Debug Kill
-| /tmp/pardes-snap/ttylook/cwd Save New Newtty Del Filter /tmp/pardes-snap/ttylook/cwd Save New Newtty Del Filter
-| ls ls
-| big.txt plain.txt sub big.txt plain.txt sub
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-| /tmp/pardes-snap/ttylook/cwd Save New Newtty Del Filter
-| ls
-| big.txt plain.txt sub
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
== snap insert grid=120x30 cursor=4,3
-|New Newcol Joincol Find Grep Help Changelog Tutor Dump NextColor Debug Kill
-| /tmp/pardes-snap/ttylook/cwd Save New Newtty Del Filter /tmp/pardes-snap/ttylook/cwd Save New Newtty Del Filter
-| ls ls
-| nnbig.txt plain.txt sub big.txt plain.txt sub
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-| /tmp/pardes-snap/ttylook/cwd Save New Newtty Del Filter
-| ls
-| big.txt plain.txt sub
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
+|3: nnbig.txt plain.txt sub big.txt plain.txt sub
== snap tok3 grid=120x30 cursor=22,3
-|New Newcol Joincol Find Grep Help Changelog Tutor Dump NextColor Debug Kill
-| /tmp/pardes-snap/ttylook/cwd Save New Newtty Del Filter /tmp/pardes-snap/ttylook/cwd Save New Newtty Del Filter
-| ls ls
-| big.txt plain.txt sub big.txt plain.txt sub
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-| /tmp/pardes-snap/ttylook/cwd Save New Newtty Del Filter
-| ls
-| big.txt plain.txt sub
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
+|3: big.txt plain.txt sub big.txt plain.txt sub
== snap diropen grid=120x30 cursor=4,7
-|New Newcol Joincol Find Grep Help Changelog Tutor Dump NextColor Debug Kill
-| /tmp/pardes-snap/ttylook/cwd Save New Newtty Del Filter /tmp/pardes-snap/ttylook/cwd Save New Newtty Del Filter
-| ls ls
-| big.txt plain.txt sub big.txt plain.txt sub
-|
-| /tmp/pardes-snap/ttylook/cwd/sub Save New Newtty Del Filte
-| ls
-|
-|
-|
-|
-|
-|
-|
-|
-|
-| /tmp/pardes-snap/ttylook/cwd Save New Newtty Del Filter
-| ls
-| big.txt plain.txt sub
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
+|1: /tmp/pardes-snap/ttylook/cwd Save New Newtty Del Filter /tmp/pardes-snap/ttylook/cwd Save New Newtty Del Filter
+|5: /tmp/pardes-snap/ttylook/cwd/sub Save New Newtty Del Filte
+|6: ls
+|16: /tmp/pardes-snap/ttylook/cwd Save New Newtty Del Filter
== snap noop grid=120x30 cursor=2,3
-|New Newcol Joincol Find Grep Help Changelog Tutor Dump NextColor Debug Kill
-| /tmp/pardes-snap/ttylook/cwd Save New Newtty Del Filter /tmp/pardes-snap/ttylook/cwd Save New Newtty Del Filter
-| ls ls
-| big.txt plain.txt sub big.txt plain.txt sub
-|
-| /tmp/pardes-snap/ttylook/cwd/sub Save New Newtty Del Filte
-| ls
-|
-|
-|
-|
-|
-|
-|
-|
-|
-| /tmp/pardes-snap/ttylook/cwd Save New Newtty Del Filter
-| ls
-| big.txt plain.txt sub
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
== snap fileopen grid=120x30 cursor=7,2
-|New Newcol Joincol Find Grep Help Changelog Tutor Dump NextColor Debug Kill
-| /tmp/pardes-snap/ttylook/cwd/big.txt Save New Newtty Del /tmp/pardes-snap/ttylook/cwd Save New Newtty Del Filter
-| 1 line 1 ls
-| /tmp/pardes-snap/ttylook/cwd Save New Newtty Del Filter big.txt plain.txt sub
-|
-| /tmp/pardes-snap/ttylook/cwd/sub Save New Newtty Del Filte
-| ls
-|
-|
-|
-|
-|
-|
-|
-|
-|
-| /tmp/pardes-snap/ttylook/cwd Save New Newtty Del Filter
-| ls
-| big.txt plain.txt sub
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
+|1: /tmp/pardes-snap/ttylook/cwd/big.txt Save New Newtty Del /tmp/pardes-snap/ttylook/cwd Save New Newtty Del Filter
+|2: 1 line 1 ls
+|3: /tmp/pardes-snap/ttylook/cwd Save New Newtty Del Filter big.txt plain.txt sub
diff --git a/test/snapshots/ttyonly.golden b/test/snapshots/ttyonly.golden
index 3b3f3a20..b2beabae 100644
--- a/test/snapshots/ttyonly.golden
+++ b/test/snapshots/ttyonly.golden
@@ -4,32 +4,7 @@
| $ echo TTY''ONLY
| TTYONLY
| $
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-== style ttyonly
+== style ttyonly grid=100x30
|0: 0-74 #949494,#121212, 75-99 d,#121212,
|1: 0-1 #ffffff,#626262, 2-79 #949494,#121212, 80-99 d,#121212,
|2: 0-0 d,#444444, 1-1 d,#080808, 2-99 #bdbdbd,#080808,
diff --git a/test/snapshots/ttypaste.golden b/test/snapshots/ttypaste.golden
index 545528f7..3ab6a246 100644
--- a/test/snapshots/ttypaste.golden
+++ b/test/snapshots/ttypaste.golden
@@ -18,45 +18,4 @@
| /tmp/pardes-snap/ttypaste/cwd Save New Newtty De
| ls
| src.txt
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
== snap ctrl-v-with-empty-register-is-inert grid=100x30 cursor=18,4
-|New Newcol Joincol Find Grep Help Changelog Tutor Dump NextColor Debug Kill
-|$ /tmp/pardes-snap/ttypaste/cwd Save New Newtty De /tmp/pardes-snap/ttypaste/cwd Save New Newtty De
-| $ ls ls
-| src.txt src.txt
-| $ echo BRACKETED
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-| /tmp/pardes-snap/ttypaste/cwd Save New Newtty De
-| ls
-| src.txt
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
diff --git a/test/snapshots/ttyprompt.golden b/test/snapshots/ttyprompt.golden
index 6e6bea86..7428e913 100644
--- a/test/snapshots/ttyprompt.golden
+++ b/test/snapshots/ttyprompt.golden
@@ -18,76 +18,11 @@
| /tmp/pardes-snap/ttyprompt/cwd Save New Newtty D
| ls
| probe.txt
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
== snap in-tty grid=100x30 cursor=17,4
-|New Newcol Joincol Find Grep Help Changelog Tutor Dump NextColor Debug Kill
-|$ /tmp/pardes-snap/ttyprompt/cwd Save New Newtty D /tmp/pardes-snap/ttyprompt/cwd Save New Newtty D
-| $ ls ls
-| probe.txt probe.txt
-| $ echo ABCDEFGH
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-| /tmp/pardes-snap/ttyprompt/cwd Save New Newtty D
-| ls
-| probe.txt
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
+|1: $ /tmp/pardes-snap/ttyprompt/cwd Save New Newtty D /tmp/pardes-snap/ttyprompt/cwd Save New Newtty D
+|2: $ ls ls
+|4: $ echo ABCDEFGH
== snap out-of-tty grid=100x30 cursor=17,4
-|New Newcol Joincol Find Grep Help Changelog Tutor Dump NextColor Debug Kill
-| /tmp/pardes-snap/ttyprompt/cwd Save New Newtty D /tmp/pardes-snap/ttyprompt/cwd Save New Newtty D
-| ls ls
-| probe.txt probe.txt
-| echo ABCDEFGH
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-| /tmp/pardes-snap/ttyprompt/cwd Save New Newtty D
-| ls
-| probe.txt
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
+|1: /tmp/pardes-snap/ttyprompt/cwd Save New Newtty D /tmp/pardes-snap/ttyprompt/cwd Save New Newtty D
+|2: ls ls
+|4: echo ABCDEFGH
diff --git a/test/snapshots/ttytaken.golden b/test/snapshots/ttytaken.golden
index 3a2a7eb6..4bb28c2b 100644
--- a/test/snapshots/ttytaken.golden
+++ b/test/snapshots/ttytaken.golden
@@ -3,122 +3,42 @@
| /tmp/pardes-snap/ttytaken/cwd/cmd.txt Save New Newtty Del /tmp/pardes-snap/ttytaken/cwd Save New Newtty Del Filter
| 1 echo TAKEN''ONE ls
| 2 echo TAKEN''TWO big.txt cmd.txt
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
== snap at-prompt grid=210x30 cursor=7,2
-|New Newcol Joincol Find Grep Help Changelog Tutor Dump NextColor Debug Kill
-| /tmp/pardes-snap/ttytaken/cwd/cmd.txt Save New Newtty Del /tmp/pardes-snap/ttytaken/cwd Save New Newtty Del Filter
-| 1 echo TAKEN''ONE ls
-| 2 echo TAKEN''TWO big.txt cmd.txt
-| echo TAKEN''ONE
-| TAKENONE
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
+|4: echo TAKEN''ONE
+|5: TAKENONE
== snap paging grid=210x30 cursor=114,29
-|New Newcol Joincol Find Grep Help Changelog Tutor Dump NextColor Debug Kill
-| /tmp/pardes-snap/ttytaken/cwd/cmd.txt Save New Newtty Del $ /tmp/pardes-snap/ttytaken/cwd Save New Newtty Del Filter
-| 1 echo TAKEN''ONE line 1
-| 2 echo TAKEN''TWO line 2
-| line 3
-| line 4
-| line 5
-| line 6
-| line 7
-| line 8
-| line 9
-| line 10
-| line 11
-| line 12
-| line 13
-| line 14
-| line 15
-| line 16
-| line 17
-| line 18
-| line 19
-| line 20
-| line 21
-| line 22
-| line 23
-| line 24
-| line 25
-| line 26
-| line 27
-| big.txt
+|1: /tmp/pardes-snap/ttytaken/cwd/cmd.txt Save New Newtty Del $ /tmp/pardes-snap/ttytaken/cwd Save New Newtty Del Filter
+|2: 1 echo TAKEN''ONE line 1
+|3: 2 echo TAKEN''TWO line 2
+|4: line 3
+|5: line 4
+|6: line 5
+|7: line 6
+|8: line 7
+|9: line 8
+|10: line 9
+|11: line 10
+|12: line 11
+|13: line 12
+|14: line 13
+|15: line 14
+|16: line 15
+|17: line 16
+|18: line 17
+|19: line 18
+|20: line 19
+|21: line 20
+|22: line 21
+|23: line 22
+|24: line 23
+|25: line 24
+|26: line 25
+|27: line 26
+|28: line 27
+|29: big.txt
== snap spawned grid=210x30 cursor=108,25
-|New Newcol Joincol Find Grep Help Changelog Tutor Dump NextColor Debug Kill
-| /tmp/pardes-snap/ttytaken/cwd/cmd.txt Save New Newtty Del $ /tmp/pardes-snap/ttytaken/cwd Save New Newtty Del Filter
-| 1 echo TAKEN''ONE line 1
-| 2 echo TAKEN''TWO line 2
-| line 3
-| line 4
-| line 5
-| line 6
-| line 7
-| line 8
-| line 9
-| line 10
-| line 11
-| line 12
-| line 13
-| line 14
-| line 15
-| line 16
-| line 17
-| line 18
-| line 19
-| line 20
-| line 21
-| line 22
-| line 23
-| :
-| /tmp/pardes-snap/ttytaken/cwd Save New Newtty Del Filter
-| echo TAKEN''TWO
-| TAKENTWO
-|
+|25: :
+|26: /tmp/pardes-snap/ttytaken/cwd Save New Newtty Del Filter
+|27: echo TAKEN''TWO
+|28: TAKENTWO
+|29:
diff --git a/test/snapshots/tutor.golden b/test/snapshots/tutor.golden
index 91392bc3..6d105401 100644
--- a/test/snapshots/tutor.golden
+++ b/test/snapshots/tutor.golden
@@ -1,20 +1,12 @@
-== snap tutor grid=150x30 cursor=9,15
+== snap tutor grid=150x30 cursor=7,2
|New Newcol Joincol Find Grep Help Changelog Tutor Dump NextColor Debug Kill
-| /tmp/pardes-snap/tutor/cwd Save New Newtty Del Filter /tmp/pardes-snap/tutor/cwd Save New Newtty Del Filter
-| ls ls
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-| Grep /
+| /Tutor Save New Newtty Del /tmp/pardes-snap/tutor/cwd Save New Newtty Del Filter
+| 1 ls
+| 2 PARDES TUTOR
+| 3 tmux + vi + acme, from scratch.
+| 4
+| 5 The model is acme's: EVERYTHING is text, editable and execu↩
+| table
| /tmp/pardes-snap/tutor/cwd Save New Newtty Del Filter
| ls
|
@@ -23,9 +15,5 @@
|
|
|
-|
-|
-|
-|
-|
-|
+| /tmp/pardes-snap/tutor/cwd Save New Newtty Del Filter
+| ls
diff --git a/test/snapshots/tutor.snap b/test/snapshots/tutor.snap
index 9ce4ea6a..e177e6d0 100644
--- a/test/snapshots/tutor.snap
+++ b/test/snapshots/tutor.snap
@@ -2,7 +2,7 @@
start 30 150 -n 3
wait 8000 New Newcol
stable 700 20000
-press middle 27 1
-release middle 27 1
+press middle @Tutor 1
+release middle @Tutor 1
stable 700 15000
snap tutor
diff --git a/test/snapshots/wheeldrift.golden b/test/snapshots/wheeldrift.golden
index 58d371ae..a3337e83 100644
--- a/test/snapshots/wheeldrift.golden
+++ b/test/snapshots/wheeldrift.golden
@@ -16,70 +16,48 @@
| 13 line 13_0123456789_abcdefghij_ZEND
| 14 line 14_0123456789_abcdefghij_ZEND
== snap drifted grid=70x16 cursor=7,2
-|New Newcol Joincol Find Grep Help Changelog Tutor Dump NextColor Debug
-| /tmp/pardes-snap/wheeldrift/cwd/drift.txt Save New Newtty Del
-| 6 line 6_0123456789_abcdefghij_ZEND
-| 7 line 7_0123456789_abcdefghij_ZEND
-| 8 line 8_0123456789_abcdefghij_ZEND
-| 9 line 9_0123456789_abcdefghij_ZEND
-| 10 line 10_0123456789_abcdefghij_ZEND
-| 11 line 11_0123456789_abcdefghij_ZEND
-| 12 line 12_0123456789_abcdefghij_ZEND
-| 13 line 13_0123456789_abcdefghij_ZEND
-| 14 line 14_0123456789_abcdefghij_ZEND
-| 15 line 15_0123456789_abcdefghij_ZEND
-| 16 line 16_0123456789_abcdefghij_ZEND
-| 17 line 17_0123456789_abcdefghij_ZEND
-| 18 line 18_0123456789_abcdefghij_ZEND
-| 19 line 19_0123456789_abcdefghij_ZEND
+|2: 6 line 6_0123456789_abcdefghij_ZEND
+|3: 7 line 7_0123456789_abcdefghij_ZEND
+|4: 8 line 8_0123456789_abcdefghij_ZEND
+|5: 9 line 9_0123456789_abcdefghij_ZEND
+|6: 10 line 10_0123456789_abcdefghij_ZEND
+|7: 11 line 11_0123456789_abcdefghij_ZEND
+|8: 12 line 12_0123456789_abcdefghij_ZEND
+|9: 13 line 13_0123456789_abcdefghij_ZEND
+|10: 14 line 14_0123456789_abcdefghij_ZEND
+|11: 15 line 15_0123456789_abcdefghij_ZEND
+|12: 16 line 16_0123456789_abcdefghij_ZEND
+|13: 17 line 17_0123456789_abcdefghij_ZEND
+|14: 18 line 18_0123456789_abcdefghij_ZEND
+|15: 19 line 19_0123456789_abcdefghij_ZEND
== snap paying grid=70x16 cursor=7,2
-|New Newcol Joincol Find Grep Help Changelog Tutor Dump NextColor Debug
-| /tmp/pardes-snap/wheeldrift/cwd/drift.txt Save New Newtty Del
-| 6 line 6_0123456789_abcdefghij_ZEND
-| 7 line 7_0123456789_abcdefghij_ZEND
-| 8 line 8_0123456789_abcdefghij_ZEND
-| 9 line 9_0123456789_abcdefghij_ZEND
-| 10 line 10_0123456789_abcdefghij_ZEND
-| 11 line 11_0123456789_abcdefghij_ZEND
-| 12 line 12_0123456789_abcdefghij_ZEND
-| 13 line 13_0123456789_abcdefghij_ZEND
-| 14 line 14_0123456789_abcdefghij_ZEND
-| 15 line 15_0123456789_abcdefghij_ZEND
-| 16 line 16_0123456789_abcdefghij_ZEND
-| 17 line 17_0123456789_abcdefghij_ZEND
-| 18 line 18_0123456789_abcdefghij_ZEND
-| 19 line 19_0123456789_abcdefghij_ZEND
== snap moved grid=70x16 cursor=7,2
-|New Newcol Joincol Find Grep Help Changelog Tutor Dump NextColor Debug
-| /tmp/pardes-snap/wheeldrift/cwd/drift.txt Save New Newtty Del
-| 6 123456789_abcdefghij_ZEND
-| 7 123456789_abcdefghij_ZEND
-| 8 123456789_abcdefghij_ZEND
-| 9 123456789_abcdefghij_ZEND
-| 10 0123456789_abcdefghij_ZEND
-| 11 0123456789_abcdefghij_ZEND
-| 12 0123456789_abcdefghij_ZEND
-| 13 0123456789_abcdefghij_ZEND
-| 14 0123456789_abcdefghij_ZEND
-| 15 0123456789_abcdefghij_ZEND
-| 16 0123456789_abcdefghij_ZEND
-| 17 0123456789_abcdefghij_ZEND
-| 18 0123456789_abcdefghij_ZEND
-| 19 0123456789_abcdefghij_ZEND
+|2: 6 123456789_abcdefghij_ZEND
+|3: 7 123456789_abcdefghij_ZEND
+|4: 8 123456789_abcdefghij_ZEND
+|5: 9 123456789_abcdefghij_ZEND
+|6: 10 0123456789_abcdefghij_ZEND
+|7: 11 0123456789_abcdefghij_ZEND
+|8: 12 0123456789_abcdefghij_ZEND
+|9: 13 0123456789_abcdefghij_ZEND
+|10: 14 0123456789_abcdefghij_ZEND
+|11: 15 0123456789_abcdefghij_ZEND
+|12: 16 0123456789_abcdefghij_ZEND
+|13: 17 0123456789_abcdefghij_ZEND
+|14: 18 0123456789_abcdefghij_ZEND
+|15: 19 0123456789_abcdefghij_ZEND
== snap rearmed grid=70x16 cursor=7,2
-|New Newcol Joincol Find Grep Help Changelog Tutor Dump NextColor Debug
-| /tmp/pardes-snap/wheeldrift/cwd/drift.txt Save New Newtty Del
-| 5 123456789_abcdefghij_ZEND
-| 6 123456789_abcdefghij_ZEND
-| 7 123456789_abcdefghij_ZEND
-| 8 123456789_abcdefghij_ZEND
-| 9 123456789_abcdefghij_ZEND
-| 10 0123456789_abcdefghij_ZEND
-| 11 0123456789_abcdefghij_ZEND
-| 12 0123456789_abcdefghij_ZEND
-| 13 0123456789_abcdefghij_ZEND
-| 14 0123456789_abcdefghij_ZEND
-| 15 0123456789_abcdefghij_ZEND
-| 16 0123456789_abcdefghij_ZEND
-| 17 0123456789_abcdefghij_ZEND
-| 18 0123456789_abcdefghij_ZEND
+|2: 5 123456789_abcdefghij_ZEND
+|3: 6 123456789_abcdefghij_ZEND
+|4: 7 123456789_abcdefghij_ZEND
+|5: 8 123456789_abcdefghij_ZEND
+|6: 9 123456789_abcdefghij_ZEND
+|7: 10 0123456789_abcdefghij_ZEND
+|8: 11 0123456789_abcdefghij_ZEND
+|9: 12 0123456789_abcdefghij_ZEND
+|10: 13 0123456789_abcdefghij_ZEND
+|11: 14 0123456789_abcdefghij_ZEND
+|12: 15 0123456789_abcdefghij_ZEND
+|13: 16 0123456789_abcdefghij_ZEND
+|14: 17 0123456789_abcdefghij_ZEND
+|15: 18 0123456789_abcdefghij_ZEND
diff --git a/test/snapshots/winch.golden b/test/snapshots/winch.golden
index 963df72f..c40f278b 100644
--- a/test/snapshots/winch.golden
+++ b/test/snapshots/winch.golden
@@ -17,18 +17,6 @@
|
| /tmp/pardes-snap/winch/cwd Save New Newtty Del F
| ls
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
== snap resized grid=106x34 cursor=4,6
|New Newcol Joincol Find Grep Help Changelog Tutor Dump NextColor Debug Kill
|$ /tmp/pardes-snap/winch/cwd Save New Newtty Del Filt /tmp/pardes-snap/winch/cwd Save New Newtty Del Filt
@@ -50,17 +38,3 @@
|
| /tmp/pardes-snap/winch/cwd Save New Newtty Del Filt
| ls
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
diff --git a/test/snapshots/windownav.golden b/test/snapshots/windownav.golden
index 0e007f50..4ad47da5 100644
--- a/test/snapshots/windownav.golden
+++ b/test/snapshots/windownav.golden
@@ -4,369 +4,17 @@
| 1 alpha ls
| 2 beta w.txt
| 3 gamma
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
== snap to-term grid=100x30 cursor=54,4
-|New Newcol Joincol Find Grep Help Changelog Tutor Dump NextColor Debug Kill
-| /tmp/pardes-snap/windownav/cwd/w.txt Save New Ne /tmp/pardes-snap/windownav/cwd Save New Newtty D
-| 1 alpha ls
-| 2 beta w.txt
-| 3 gamma
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
== snap back-to-file grid=100x30 cursor=7,2
-|New Newcol Joincol Find Grep Help Changelog Tutor Dump NextColor Debug Kill
-| /tmp/pardes-snap/windownav/cwd/w.txt Save New Ne /tmp/pardes-snap/windownav/cwd Save New Newtty D
-| 1 alpha ls
-| 2 beta w.txt
-| 3 gamma
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
== snap esc-to-term grid=100x30 cursor=54,4
-|New Newcol Joincol Find Grep Help Changelog Tutor Dump NextColor Debug Kill
-| /tmp/pardes-snap/windownav/cwd/w.txt Save New Ne /tmp/pardes-snap/windownav/cwd Save New Newtty D
-| 1 alpha ls
-| 2 beta w.txt
-| 3 gamma
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
== snap esc-back-to-file grid=100x30 cursor=7,2
-|New Newcol Joincol Find Grep Help Changelog Tutor Dump NextColor Debug Kill
-| /tmp/pardes-snap/windownav/cwd/w.txt Save New Ne /tmp/pardes-snap/windownav/cwd Save New Newtty D
-| 1 alpha ls
-| 2 beta w.txt
-| 3 gamma
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
== snap altn grid=100x30 cursor=4,19
-|New Newcol Joincol Find Grep Help Changelog Tutor Dump NextColor Debug Kill
-| /tmp/pardes-snap/windownav/cwd/w.txt Save New Ne /tmp/pardes-snap/windownav/cwd Save New Newtty D
-| 1 alpha ls
-| 2 beta w.txt
-| 3 gamma
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-| /tmp/pardes-snap/windownav/cwd Save New Newtty D
-| ls
-| w.txt
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
+|16: /tmp/pardes-snap/windownav/cwd Save New Newtty D
+|17: ls
+|18: w.txt
== snap up grid=100x30 cursor=7,2
-|New Newcol Joincol Find Grep Help Changelog Tutor Dump NextColor Debug Kill
-| /tmp/pardes-snap/windownav/cwd/w.txt Save New Ne /tmp/pardes-snap/windownav/cwd Save New Newtty D
-| 1 alpha ls
-| 2 beta w.txt
-| 3 gamma
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-| /tmp/pardes-snap/windownav/cwd Save New Newtty D
-| ls
-| w.txt
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
== snap right grid=100x30 cursor=54,4
-|New Newcol Joincol Find Grep Help Changelog Tutor Dump NextColor Debug Kill
-| /tmp/pardes-snap/windownav/cwd/w.txt Save New Ne /tmp/pardes-snap/windownav/cwd Save New Newtty D
-| 1 alpha ls
-| 2 beta w.txt
-| 3 gamma
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-| /tmp/pardes-snap/windownav/cwd Save New Newtty D
-| ls
-| w.txt
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
== snap left grid=100x30 cursor=7,2
-|New Newcol Joincol Find Grep Help Changelog Tutor Dump NextColor Debug Kill
-| /tmp/pardes-snap/windownav/cwd/w.txt Save New Ne /tmp/pardes-snap/windownav/cwd Save New Newtty D
-| 1 alpha ls
-| 2 beta w.txt
-| 3 gamma
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-| /tmp/pardes-snap/windownav/cwd Save New Newtty D
-| ls
-| w.txt
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
== snap down grid=100x30 cursor=4,19
-|New Newcol Joincol Find Grep Help Changelog Tutor Dump NextColor Debug Kill
-| /tmp/pardes-snap/windownav/cwd/w.txt Save New Ne /tmp/pardes-snap/windownav/cwd Save New Newtty D
-| 1 alpha ls
-| 2 beta w.txt
-| 3 gamma
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-| /tmp/pardes-snap/windownav/cwd Save New Newtty D
-| ls
-| w.txt
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
== snap toggle-doc grid=100x30 cursor=7,2
-|New Newcol Joincol Find Grep Help Changelog Tutor Dump NextColor Debug Kill
-| /tmp/pardes-snap/windownav/cwd/w.txt Save New Ne /tmp/pardes-snap/windownav/cwd Save New Newtty D
-| 1 alpha ls
-| 2 beta w.txt
-| 3 gamma
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-| /tmp/pardes-snap/windownav/cwd Save New Newtty D
-| ls
-| w.txt
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
== snap toggle-back grid=100x30 cursor=4,19
-|New Newcol Joincol Find Grep Help Changelog Tutor Dump NextColor Debug Kill
-| /tmp/pardes-snap/windownav/cwd/w.txt Save New Ne /tmp/pardes-snap/windownav/cwd Save New Newtty D
-| 1 alpha ls
-| 2 beta w.txt
-| 3 gamma
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-| /tmp/pardes-snap/windownav/cwd Save New Newtty D
-| ls
-| w.txt
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
diff --git a/test/snapshots/windowops.golden b/test/snapshots/windowops.golden
index 05324095..a9f5c506 100644
--- a/test/snapshots/windowops.golden
+++ b/test/snapshots/windowops.golden
@@ -30,296 +30,131 @@
| ╎
| ╎
== snap hover-h grid=100x30 cursor=4,4
-|New Newcol Joincol Find Grep Help Changelog Tutor Dump NextColor Debug Kill
-| /tmp/pardes-snap/windowops/cwd Save New Newtty D /tmp/pardes-snap/windowops/cwd Save New Newtty D
-| ls ls
-| w.txt w.txt
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌
-| /tmp/pardes-snap/windowops/cwd Save New Newtty D
-| ls
-| w.txt
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
+|1: /tmp/pardes-snap/windowops/cwd Save New Newtty D /tmp/pardes-snap/windowops/cwd Save New Newtty D
+|2: ls ls
+|3: w.txt w.txt
+|4:
+|5:
+|6:
+|7:
+|8:
+|9:
+|10:
+|11:
+|12:
+|13:
+|14:
+|15: ╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌
+|16: /tmp/pardes-snap/windowops/cwd Save New Newtty D
+|17: ls
+|18: w.txt
+|19:
+|20:
+|21:
+|22:
+|23:
+|24:
+|25:
+|26:
+|27:
+|28:
+|29:
== snap border-drag grid=100x30 cursor=4,4
-|New Newcol Joincol Find Grep Help Changelog Tutor Dump NextColor Debug Kill
-| /tmp/pardes-snap/windowops/cwd Save N╎w Newtty D /tmp/pardes-snap/windowops/cwd Save New Newtty D
-| ls ╎ ls
-| w.txt ╎ w.txt
-| ╎
-| ╎
-| ╎
-| ╎
-| ╎
-| ╎
-| ╎
-| ╎
-| ╎
-| ╎
-| ╎
-| ╎
-| /tmp/pardes-snap/windowops/cwd Save N╎w Newtty D
-| ls ╎
-| w.txt ╎
-| ╎
-| ╎
-| ╎
-| ╎
-| ╎
-| ╎
-| ╎
-| ╎
-| ╎
-| ╎
-| ╎
+|1: /tmp/pardes-snap/windowops/cwd Save N╎w Newtty D /tmp/pardes-snap/windowops/cwd Save New Newtty D
+|2: ls ╎ ls
+|3: w.txt ╎ w.txt
+|4: ╎
+|5: ╎
+|6: ╎
+|7: ╎
+|8: ╎
+|9: ╎
+|10: ╎
+|11: ╎
+|12: ╎
+|13: ╎
+|14: ╎
+|15: ╎
+|16: /tmp/pardes-snap/windowops/cwd Save N╎w Newtty D
+|17: ls ╎
+|18: w.txt ╎
+|19: ╎
+|20: ╎
+|21: ╎
+|22: ╎
+|23: ╎
+|24: ╎
+|25: ╎
+|26: ╎
+|27: ╎
+|28: ╎
+|29: ╎
== snap border-done grid=100x30 cursor=4,4
-|New Newcol Joincol Find Grep Help Changelog Tutor Dump NextColor Debug Kill
-| /tmp/pardes-snap/windowops/cwd Save N╎ /tmp/pardes-snap/windowops/cwd Save New Newtty Del Filter
-| ls ╎ ls
-| w.txt ╎ w.txt
-| ╎
-| ╎
-| ╎
-| ╎
-| ╎
-| ╎
-| ╎
-| ╎
-| ╎
-| ╎
-| ╎
-| ╎
-| /tmp/pardes-snap/windowops/cwd Save N╎
-| ls ╎
-| w.txt ╎
-| ╎
-| ╎
-| ╎
-| ╎
-| ╎
-| ╎
-| ╎
-| ╎
-| ╎
-| ╎
-| ╎
+|1: /tmp/pardes-snap/windowops/cwd Save N╎ /tmp/pardes-snap/windowops/cwd Save New Newtty Del Filter
+|2: ls ╎ ls
+|3: w.txt ╎ w.txt
+|16: /tmp/pardes-snap/windowops/cwd Save N╎
== snap hborder-done grid=100x30 cursor=4,4
-|New Newcol Joincol Find Grep Help Changelog Tutor Dump NextColor Debug Kill
-| /tmp/pardes-snap/windowops/cwd Save Ne /tmp/pardes-snap/windowops/cwd Save New Newtty Del Filter
-| ls ls
-| w.txt w.txt
-|
-|
-|
-|
-|
-|
-|
-|╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌
-| /tmp/pardes-snap/windowops/cwd Save Ne
-| ls
-| w.txt
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
+|1: /tmp/pardes-snap/windowops/cwd Save Ne /tmp/pardes-snap/windowops/cwd Save New Newtty Del Filter
+|2: ls ls
+|3: w.txt w.txt
+|4:
+|5:
+|6:
+|7:
+|8:
+|9:
+|10:
+|11: ╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌
+|12: /tmp/pardes-snap/windowops/cwd Save Ne
+|13: ls
+|14: w.txt
+|15:
+|16:
+|17:
+|18:
+|19:
+|20:
+|21:
+|22:
+|23:
+|24:
+|25:
+|26:
+|27:
+|28:
+|29:
== snap move-preview grid=100x30 cursor=4,15
-|New Newcol Joincol Find Grep Help Changelog Tutor Dump NextColor Debug Kill
-| /tmp/pardes-snap/windowops/cwd Save Ne /tmp/pardes-snap/windowops/cwd Save New Newtty Del Filter
-| ls ls
-| w.txt w.txt
-|
-|
-|
-|
-|
-|
-|
-|
-| /tmp/pardes-snap/windowops/cwd Save Ne
-| ls
-| w.txt
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
+|11:
== snap moved grid=100x30 cursor=4,15
-|New Newcol Joincol Find Grep Help Changelog Tutor Dump NextColor Debug Kill
-| /tmp/pardes-snap/windowops/cwd Save Ne /tmp/pardes-snap/windowops/cwd Save New Newtty Del Filter
-| ls ls
-| w.txt w.txt
-|
-|
-|
-|
-|
-|
-|
-|
-| /tmp/pardes-snap/windowops/cwd Save Ne
-| ls
-| w.txt
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
== snap altn grid=100x30 cursor=4,19
-|New Newcol Joincol Find Grep Help Changelog Tutor Dump NextColor Debug Kill
-| /tmp/pardes-snap/windowops/cwd Save Ne /tmp/pardes-snap/windowops/cwd Save New Newtty Del Filter
-| ls ls
-| w.txt w.txt
-|
-|
-|
-|
-|
-|
-|
-|
-| /tmp/pardes-snap/windowops/cwd Save Ne
-| ls
-| w.txt
-|
-| /tmp/pardes-snap/windowops/cwd Save Ne
-| ls
-| w.txt
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
+|16: /tmp/pardes-snap/windowops/cwd Save Ne
+|17: ls
+|18: w.txt
== snap focus-right grid=100x30 cursor=44,4
-|New Newcol Joincol Find Grep Help Changelog Tutor Dump NextColor Debug Kill
-| /tmp/pardes-snap/windowops/cwd Save Ne /tmp/pardes-snap/windowops/cwd Save New Newtty Del Filter
-| ls ls
-| w.txt w.txt
-|
-|
-|
-|
-|
-|
-|
-|
-| /tmp/pardes-snap/windowops/cwd Save Ne
-| ls
-| w.txt
-|
-| /tmp/pardes-snap/windowops/cwd Save Ne
-| ls
-| w.txt
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-== snap debug-on grid=100x30 cursor=7,2
-|New Newcol Joincol Find Grep Help Changelog Tutor Dump NextColor Debug Kill
-| /Tutor Save New Newtty Del /tmp/pardes-snap/windowops/cwd Save New Newtty Del Filter
-| 1 ls
-| 2 P↩ w.txt
-| ARDES TUTOR
-| 3 tmux + vi +
-| /tmp/pardes-snap/windowops/cwd Save Ne
-| ls
-| w.txt
-|
-|
-|
-| /tmp/pardes-snap/windowops/cwd Save Ne
-| ls
-| w.txt
-|
-| /tmp/pardes-snap/windowops/cwd Save Ne
-| ls
-| w.txt
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-== style debug-on
-|0: 0-43 #949494,#121212, 44-48 #080808,#80a0ff, 49-74 #949494,#121212, 75-99 d,#121212,
-|1: 0-1 #ffffff,#626262, 2-39 #949494,#121212, 40-41 #ffffff,#262626, 42-98 #949494,#121212, 99-99 d,#121212,
-|2: 0-0 d,#444444, 1-1 d,#080808, 2-6 #949494,#121212, 7-39 d,#080808, 40-40 d,#444444, 41-41 d,#080808, 42-43 #bdbdbd,#080808, 44-99 d,#080808,
-|3: 0-0 d,#121212, 1-1 d,#080808, 2-6 #626262,#080808, 7-38 #bdbdbd,#080808, 39-39 #626262,#080808, 40-40 d,#444444, 41-41 d,#080808, 42-46 #bdbdbd,#080808, 47-99 d,#080808,
-|4: 0-0 d,#121212, 1-1 d,#080808, 2-6 #626262,#080808, 7-17 #bdbdbd,#080808, 18-39 d,#080808, 40-40 d,#444444, 41-99 d,#080808,
-|5: 0-0 d,#121212, 1-1 d,#080808, 2-6 #626262,#080808, 7-38 #bdbdbd,#080808, 39-39 d,#080808, 40-40 d,#444444, 41-99 d,#080808,
-|6: 0-1 #ffffff,#262626, 2-39 #949494,#121212, 40-40 d,#444444, 41-99 d,#080808,
-|7: 0-0 d,#444444, 1-1 d,#080808, 2-3 #bdbdbd,#080808, 4-39 d,#080808, 40-40 d,#444444, 41-99 d,#080808,
-|8: 0-0 d,#444444, 1-1 d,#080808, 2-6 #bdbdbd,#080808, 7-39 d,#080808, 40-40 d,#444444, 41-99 d,#080808,
-|9: 0-0 d,#444444, 1-39 d,#080808, 40-40 d,#444444, 41-99 d,#080808,
-|10: 0-0 d,#444444, 1-39 d,#080808, 40-40 d,#444444, 41-99 d,#080808,
+== snap debug-on grid=100x30 cursor=44,4
+|1: /tmp/pardes-snap/windowops/cwd Save Ne /tmp/pardes-snap/win╭────────────────────────────────────╮
+|2: ls ls │pardes resizes=1 │
+|3: w.txt w.txt │theme helix │
+|4: │font default │
+|5: │terms 4 cols 2 │
+|6: │active #2 58x28 │
+|7: │scroll 0/28 │
+|8: │pinch 1.0000 │
+|9: │tscroll 0.0000 │
+|10: ╰────────────────────────────────────╯
+== style debug-on grid=100x30
+|0: 0-64 #949494,#121212, 65-69 #080808,#80a0ff, 70-74 #949494,#121212, 75-99 d,#121212,
+|1: 0-1 #ffffff,#262626, 2-39 #949494,#121212, 40-41 #ffffff,#626262, 42-61 #949494,#121212, 62-99 d,d,
+|2: 0-0 d,#444444, 1-1 d,#080808, 2-3 #bdbdbd,#080808, 4-39 d,#080808, 40-40 d,#444444, 41-41 d,#080808, 42-43 #bdbdbd,#080808, 44-61 d,#080808, 62-62 d,d, 63-79 #949494,d, 80-98 d,#121212, 99-99 d,d,
+|3: 0-0 d,#444444, 1-1 d,#080808, 2-6 #bdbdbd,#080808, 7-39 d,#080808, 40-40 d,#444444, 41-41 d,#080808, 42-46 #bdbdbd,#080808, 47-61 d,#080808, 62-62 d,d, 63-74 #949494,d, 75-98 d,#121212, 99-99 d,d,
+|4: 0-0 d,#444444, 1-39 d,#080808, 40-40 d,#444444, 41-61 d,#080808, 62-62 d,d, 63-76 #949494,d, 77-98 d,#121212, 99-99 d,d,
+|5: 0-0 d,#444444, 1-39 d,#080808, 40-40 d,#444444, 41-61 d,#080808, 62-62 d,d, 63-77 #949494,d, 78-98 d,#121212, 99-99 d,d,
+|6: 0-0 d,#444444, 1-39 d,#080808, 40-40 d,#444444, 41-61 d,#080808, 62-62 d,d, 63-78 #949494,d, 79-98 d,#121212, 99-99 d,d,
+|7: 0-0 d,#444444, 1-39 d,#080808, 40-40 d,#444444, 41-61 d,#080808, 62-62 d,d, 63-73 #949494,d, 74-98 d,#121212, 99-99 d,d,
+|8: 0-0 d,#444444, 1-39 d,#080808, 40-40 d,#444444, 41-61 d,#080808, 62-62 d,d, 63-75 #949494,d, 76-98 d,#121212, 99-99 d,d,
+|9: 0-0 d,#444444, 1-39 d,#080808, 40-40 d,#444444, 41-61 d,#080808, 62-62 d,d, 63-77 #949494,d, 78-98 d,#121212, 99-99 d,d,
+|10: 0-0 d,#444444, 1-39 d,#080808, 40-40 d,#444444, 41-61 d,#080808, 62-99 d,d,
|11: 0-0 d,#444444, 1-39 d,#080808, 40-40 d,#444444, 41-99 d,#080808,
|12: 0-1 #ffffff,#262626, 2-39 #949494,#121212, 40-40 d,#444444, 41-99 d,#080808,
|13: 0-0 d,#444444, 1-1 d,#080808, 2-3 #bdbdbd,#080808, 4-39 d,#080808, 40-40 d,#444444, 41-99 d,#080808,
@@ -339,34 +174,14 @@
|27: 0-0 d,#444444, 1-39 d,#080808, 40-40 d,#444444, 41-99 d,#080808,
|28: 0-0 d,#444444, 1-39 d,#080808, 40-40 d,#444444, 41-99 d,#080808,
|29: 0-0 d,#444444, 1-39 d,#080808, 40-40 d,#444444, 41-99 d,#080808,
-== snap debug-off grid=100x30 cursor=7,4
-|New Newcol Joincol Find Grep Help Changelog Tutor Dump NextColor Debug Kill
-| /Tutor Save New Newtty Del /tmp/pardes-snap/windowops/cwd Save New Newtty Del Filter
-| 1 ls
-| /Tutor Save New Newtty Del w.txt
-| 1
-| 2 P
-| /tmp/pardes-snap/windowops/cwd Save Ne
-| ls
-| w.txt
-|
-|
-|
-| /tmp/pardes-snap/windowops/cwd Save Ne
-| ls
-| w.txt
-|
-| /tmp/pardes-snap/windowops/cwd Save Ne
-| ls
-| w.txt
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
+== snap debug-off grid=100x30 cursor=44,4
+|1: /tmp/pardes-snap/windowops/cwd Save Ne /tmp/pardes-snap/windowops/cwd Save New Newtty Del Filter
+|2: ls ls
+|3: w.txt w.txt
+|4:
+|5:
+|6:
+|7:
+|8:
+|9:
+|10:
diff --git a/test/snapshots/windowops.snap b/test/snapshots/windowops.snap
index e8d28ef9..709cfa02 100644
--- a/test/snapshots/windowops.snap
+++ b/test/snapshots/windowops.snap
@@ -44,12 +44,12 @@ key c-w l
stable 400 5000
snap focus-right
# Debug overlay on (topbar middle-click on Debug), then off
-press middle 48 1
-release middle 48 1
+press middle @Debug 1
+release middle @Debug 1
stable 400 8000
snap debug-on
snapstyle debug-on
-press middle 48 1
-release middle 48 1
+press middle @Debug 1
+release middle @Debug 1
stable 400 8000
snap debug-off
diff --git a/test/snapshots/wrap.golden b/test/snapshots/wrap.golden
index 47bffa5c..0dc4e770 100644
--- a/test/snapshots/wrap.golden
+++ b/test/snapshots/wrap.golden
@@ -9,130 +9,30 @@
| 2 second line
| 3 third line
| 4
-|
-|
-|
-|
== snap clicked grid=48x14 cursor=17,3
-|New Newcol Joincol Find Grep Help Changelog Tuto
-| /tmp/pardes-snap/wrap/cwd/long.txt Save New Ne
-| 1 0---------1---------2---------3---------↩
-| 4---------5---------6---------7---------↩
-| 8---------9---------A---------B---------↩
-| C---------D---------E---------F---------↩
-| G---------H---------I---------J---------
-| 2 second line
-| 3 third line
-| 4
-|
-|
-|
-|
== snap logical-j grid=48x14 cursor=18,7
-|New Newcol Joincol Find Grep Help Changelog Tuto
-| /tmp/pardes-snap/wrap/cwd/long.txt Save New Ne
-| 1 0---------1---------2---------3---------↩
-| 4---------5---------6---------7---------↩
-| 8---------9---------A---------B---------↩
-| C---------D---------E---------F---------↩
-| G---------H---------I---------J---------
-| 2 second line
-| 3 third line
-| 4
-|
-|
-|
-|
== snap visual-gj grid=48x14 cursor=10,3
-|New Newcol Joincol Find Grep Help Changelog Tuto
-| /tmp/pardes-snap/wrap/cwd/long.txt Save New Ne
-| 1 0---------1---------2---------3---------↩
-| 4---------5---------6---------7---------↩
-| 8---------9---------A---------B---------↩
-| C---------D---------E---------F---------↩
-| G---------H---------I---------J---------
-| 2 second line
-| 3 third line
-| 4
-|
-|
-|
-|
== snap visual-gj-again grid=48x14 cursor=10,4
-|New Newcol Joincol Find Grep Help Changelog Tuto
-| /tmp/pardes-snap/wrap/cwd/long.txt Save New Ne
-| 1 0---------1---------2---------3---------↩
-| 4---------5---------6---------7---------↩
-| 8---------9---------A---------B---------↩
-| C---------D---------E---------F---------↩
-| G---------H---------I---------J---------
-| 2 second line
-| 3 third line
-| 4
-|
-|
-|
-|
== snap visual-gk grid=48x14 cursor=10,3
-|New Newcol Joincol Find Grep Help Changelog Tuto
-| /tmp/pardes-snap/wrap/cwd/long.txt Save New Ne
-| 1 0---------1---------2---------3---------↩
-| 4---------5---------6---------7---------↩
-| 8---------9---------A---------B---------↩
-| C---------D---------E---------F---------↩
-| G---------H---------I---------J---------
-| 2 second line
-| 3 third line
-| 4
-|
-|
-|
-|
== snap visual-count-gj grid=48x14 cursor=10,5
-|New Newcol Joincol Find Grep Help Changelog Tuto
-| /tmp/pardes-snap/wrap/cwd/long.txt Save New Ne
-| 1 0---------1---------2---------3---------↩
-| 4---------5---------6---------7---------↩
-| 8---------9---------A---------B---------↩
-| C---------D---------E---------F---------↩
-| G---------H---------I---------J---------
-| 2 second line
-| 3 third line
-| 4
-|
-|
-|
-|
== snap off grid=48x14 cursor=10,5
-|New Newcol Joincol Find Grep Help Changelog Tuto
-| /tmp/pardes-snap/wrap/cwd/long.txt Save New Ne
-| 1 0---------1---------2---------3---------4
-| 2 second line
-| 3 third line
-| 4
-|
-|
-|
-|
-|
-|
-|
-|
+|2: 1 0---------1---------2---------3---------4
+|3: 2 second line
+|4: 3 third line
+|5: 4
+|6:
+|7:
+|8:
+|9:
== snap on-again grid=48x14 cursor=10,5
-|New Newcol Joincol Find Grep Help Changelog Tuto
-| /tmp/pardes-snap/wrap/cwd/long.txt Save New Ne
-| 1 0---------1---------2---------3---------↩
-| 4---------5---------6---------7---------↩
-| 8---------9---------A---------B---------↩
-| C---------D---------E---------F---------↩
-| G---------H---------I---------J---------
-| 2 second line
-| 3 third line
-| 4
-|
-|
-|
-|
+|2: 1 0---------1---------2---------3---------↩
+|3: 4---------5---------6---------7---------↩
+|4: 8---------9---------A---------B---------↩
+|5: C---------D---------E---------F---------↩
+|6: G---------H---------I---------J---------
+|7: 2 second line
+|8: 3 third line
+|9: 4
== snap on-wide grid=128x14 cursor=7,2
|New Newcol Joincol Find Grep Help Changelog Tutor Dump NextColor Debug Kill
| /tmp/pardes-snap/wrap/cwd/long.txt Save New Newtty Del
@@ -141,10 +41,3 @@
| 2 second line
| 3 third line
| 4
-|
-|
-|
-|
-|
-|
-|
diff --git a/test/snapshots/yankpaste.golden b/test/snapshots/yankpaste.golden
index d2b9589c..87f99294 100644
--- a/test/snapshots/yankpaste.golden
+++ b/test/snapshots/yankpaste.golden
@@ -8,117 +8,18 @@
| 5 line 4
| 6 line 5
| 7
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
== snap linewise-above grid=100x30 cursor=13,6
-|New Newcol Joincol Find Grep Help Changelog Tutor Dump NextColor Debug Kill
-| /tmp/pardes-snap/yankpaste/cwd/f.txt * Save New Newtty Del
-| 1 line 1
-| 2 line 2
-| 3 line 3
-| 4 line 2
-| 5 line 4
-| 6 line 2
-| 7 line 4
-| 8 line 5
-| 9
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
+|7: 6 line 2
+|8: 7 line 4
+|9: 8 line 5
+|10: 9
== snap charwise-inline grid=100x30 cursor=10,2
-|New Newcol Joincol Find Grep Help Changelog Tutor Dump NextColor Debug Kill
-| /tmp/pardes-snap/yankpaste/cwd/f.txt * Save New Newtty Del
-| 1 liline 1
-| 2 line 2
-| 3 line 3
-| 4 line 2
-| 5 line 4
-| 6 line 2
-| 7 line 4
-| 8 line 5
-| 9
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
+|2: 1 liline 1
== snap blankline grid=100x30 cursor=7,4
-|New Newcol Joincol Find Grep Help Changelog Tutor Dump NextColor Debug Kill
-| /tmp/pardes-snap/yankpaste/cwd/f.txt * Save New Newtty Del
-| 1 liline 1
-| 2
-| 3
-| 4 line 2
-| 5 line 3
-| 6 line 2
-| 7 line 4
-| 8 line 2
-| 9 line 4
-| 10 line 5
-| 11
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
-|
+|3: 2
+|4: 3
+|6: 5 line 3
+|9: 8 line 2
+|10: 9 line 4
+|11: 10 line 5
+|12: 11
diff --git a/test/web_snapshot.mjs b/test/web_snapshot.mjs
index df42b1c5..7b40c174 100644
--- a/test/web_snapshot.mjs
+++ b/test/web_snapshot.mjs
@@ -2,7 +2,9 @@
// Drive the freestanding WASM + DOM build in a real headless Chromium using
// .snap scripts. This is an end-to-end browser test: Chrome creates genuine
// touch events and the JS shell translates them into core events.
-// Shared commands retain test/snapshot.zig's spelling and output format:
+// Shared commands retain test/snapshot.zig's spelling, and a capture retains
+// its header and row shape — but every capture here is a whole frame, where
+// the tty runner emits later captures as row deltas (`|<n>: <row>`):
// wait <ms> <text> | stable <quiet-ms> <timeout-ms>
// snap <label> | snapstyle <label>
// Browser touch additions: