summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--.agents/skills/pardes-9p/SKILL.md3
-rw-r--r--docs/fs.md13
-rw-r--r--docs/helix-keys.md2
-rw-r--r--src/Terminal.zig23
-rw-r--r--src/builtins.zig99
-rw-r--r--src/config.zig9
-rw-r--r--src/exec.zig1
-rw-r--r--src/fs-help.txt2
-rw-r--r--src/host_io.zig25
-rw-r--r--src/ninep/pty.zig1
-rw-r--r--src/panes.zig6
-rw-r--r--src/pardes.zig12
-rw-r--r--src/tutor.txt7
-rw-r--r--test/fs.py14
-rw-r--r--test/snapshots/argv.golden8
-rw-r--r--test/snapshots/badutf.golden2
-rw-r--r--test/snapshots/boot.golden2
-rw-r--r--test/snapshots/builtins.golden2
-rw-r--r--test/snapshots/builtins.snap1
-rw-r--r--test/snapshots/chordcut.golden2
-rw-r--r--test/snapshots/cmdword.golden2
-rw-r--r--test/snapshots/colgrip.golden2
-rw-r--r--test/snapshots/collapse.golden4
-rw-r--r--test/snapshots/cornerdrag-left.golden2
-rw-r--r--test/snapshots/cornerdrag.golden2
-rw-r--r--test/snapshots/cursorline.golden2
-rw-r--r--test/snapshots/delask.golden2
-rw-r--r--test/snapshots/doccol.golden2
-rw-r--r--test/snapshots/dump.golden2
-rw-r--r--test/snapshots/edit.golden2
-rw-r--r--test/snapshots/exec-bigdrag.golden2
-rw-r--r--test/snapshots/exec.golden2
-rw-r--r--test/snapshots/fileedit.golden2
-rw-r--r--test/snapshots/filewatch.golden2
-rw-r--r--test/snapshots/find.golden2
-rw-r--r--test/snapshots/fsearch.golden2
-rw-r--r--test/snapshots/ghostty-mid.golden2
-rw-r--r--test/snapshots/grep.golden2
-rw-r--r--test/snapshots/hscroll.golden2
-rw-r--r--test/snapshots/images.golden4
-rw-r--r--test/snapshots/jumps.golden2
-rw-r--r--test/snapshots/layout-close.golden2
-rw-r--r--test/snapshots/layout-open.golden2
-rw-r--r--test/snapshots/leader.golden2
-rw-r--r--test/snapshots/load.golden2
-rw-r--r--test/snapshots/logquiet.golden2
-rw-r--r--test/snapshots/look-center.golden2
-rw-r--r--test/snapshots/look-dir.golden2
-rw-r--r--test/snapshots/look-file-1col.golden2
-rw-r--r--test/snapshots/look-file.golden2
-rw-r--r--test/snapshots/lookloaded.golden2
-rw-r--r--test/snapshots/lookpanes.golden2
-rw-r--r--test/snapshots/lookrange.golden2
-rw-r--r--test/snapshots/lsp-client-edit.golden2
-rw-r--r--test/snapshots/lsp-client.golden2
-rw-r--r--test/snapshots/lsp-rename.golden2
-rw-r--r--test/snapshots/lsp.golden2
-rw-r--r--test/snapshots/lspcomplete.golden8
-rw-r--r--test/snapshots/lspcompletemoved.golden2
-rw-r--r--test/snapshots/lspdebug.golden2
-rw-r--r--test/snapshots/lsprelpath.golden4
-rw-r--r--test/snapshots/markup.golden4
-rw-r--r--test/snapshots/mini.golden8
-rw-r--r--test/snapshots/modal.golden2
-rw-r--r--test/snapshots/msg.golden4
-rw-r--r--test/snapshots/multicursor.golden2
-rw-r--r--test/snapshots/nested-optout.golden10
-rw-r--r--test/snapshots/nested.golden6
-rw-r--r--test/snapshots/ninep.golden8
-rw-r--r--test/snapshots/pipe.golden2
-rw-r--r--test/snapshots/psearch.golden2
-rw-r--r--test/snapshots/reflow.golden2
-rw-r--r--test/snapshots/respawn.golden2
-rw-r--r--test/snapshots/restore.golden4
-rw-r--r--test/snapshots/rsearch.golden2
-rw-r--r--test/snapshots/savepane.golden2
-rw-r--r--test/snapshots/scroll.golden2
-rw-r--r--test/snapshots/scrolloff.golden2
-rw-r--r--test/snapshots/selarg.golden2
-rw-r--r--test/snapshots/selregex.golden2
-rw-r--r--test/snapshots/shellset.golden2
-rw-r--r--test/snapshots/shrinktag.golden2
-rw-r--r--test/snapshots/splitparent.golden6
-rw-r--r--test/snapshots/stepgrain.golden2
-rw-r--r--test/snapshots/syntax.golden2
-rw-r--r--test/snapshots/tag.golden2
-rw-r--r--test/snapshots/tagalign.golden10
-rw-r--r--test/snapshots/tagalign2col.golden2
-rw-r--r--test/snapshots/tagbottom.golden2
-rw-r--r--test/snapshots/tagbottomimage.golden2
-rw-r--r--test/snapshots/tagbottomshort.golden12
-rw-r--r--test/snapshots/tagcmd.golden2
-rw-r--r--test/snapshots/tagnav.golden6
-rw-r--r--test/snapshots/tagnav.snap2
-rw-r--r--test/snapshots/tagpath.golden2
-rw-r--r--test/snapshots/theme.golden2
-rw-r--r--test/snapshots/themesel.golden2
-rw-r--r--test/snapshots/tinywin.golden4
-rw-r--r--test/snapshots/topbarexec.golden2
-rw-r--r--test/snapshots/topbarexec.snap4
-rw-r--r--test/snapshots/tty.golden2
-rw-r--r--test/snapshots/ttyclick.golden2
-rw-r--r--test/snapshots/ttyedit.golden2
-rw-r--r--test/snapshots/ttyfollow.golden2
-rw-r--r--test/snapshots/ttyhelp.golden2
-rw-r--r--test/snapshots/ttylook.golden2
-rw-r--r--test/snapshots/ttyonly.golden2
-rw-r--r--test/snapshots/ttypaste.golden2
-rw-r--r--test/snapshots/ttyprompt.golden2
-rw-r--r--test/snapshots/ttytaken.golden2
-rw-r--r--test/snapshots/tutor.golden2
-rw-r--r--test/snapshots/wheeldrift.golden2
-rw-r--r--test/snapshots/winch.golden4
-rw-r--r--test/snapshots/windownav.golden2
-rw-r--r--test/snapshots/windowops.golden2
-rw-r--r--test/snapshots/wrap.golden2
-rw-r--r--test/snapshots/yankpaste.golden2
117 files changed, 336 insertions, 166 deletions
diff --git a/.agents/skills/pardes-9p/SKILL.md b/.agents/skills/pardes-9p/SKILL.md
index daf4c279..a9cecaf8 100644
--- a/.agents/skills/pardes-9p/SKILL.md
+++ b/.agents/skills/pardes-9p/SKILL.md
@@ -57,7 +57,8 @@ $m/listeners this session's dial addresses
$m/focus the serial of the pane with the keyboard (empty while a column/workspace tag has it);
echo a serial into it to move the keyboard (a folded pane stays folded)
$m/ctl the settings, one a line as a write takes them; write a setting or a session builtin
- (Newcol, Dump, Theme x; Kill QUITS the editor); a pane's builtins (Del, Save f,
+ (Newcol, Dump, Theme x; Exit QUITS the editor, Kill [word...] stops the
+ commands pardes typed into terminals); a pane's builtins (Del, Save f,
and the column words Delcol, Collapse, which act on that pane's column) go to
$m/pane/<n>/ctl
$m/commands every builtin: `Word`, `Word arg`, then `root` or `pane` (which ctl takes it)
diff --git a/docs/fs.md b/docs/fs.md
index af57a468..3b49105d 100644
--- a/docs/fs.md
+++ b/docs/fs.md
@@ -103,9 +103,16 @@ on a window's ctl and webfs and upas/fs keep session settings on a root ctl.
Each builtin declares its scope in src/builtins.zig (`scope = .session`;
every setting is one, the rest act on a pane). `/ctl` takes the session's
builtins, one a line, at whichever pane has the keyboard as each runs --
-`Newcol`, `Dump`, `Mount name dial`, `Theme ink`, `Verbose off`, and `Kill`,
-which **quits the editor** (acme's Kill only stops commands; pardes's is
-acme's Exit) --
+`Newcol`, `Dump`, `Mount name dial`, `Theme ink`, `Verbose off`; `Exit`,
+which quits the editor as acme's does (it refuses once, naming each pane with
+unsaved text, `<name>: Modified`, and a second `Exit` with nothing edited
+since quits; a scratch under 100 bytes is not asked about); and `Kill`, which
+does not quit but stops commands, as acme's does: bare, every command pardes
+started, and `Kill make ls`, those whose line begins with one of the words. A
+command pardes started is a line it typed into a terminal (a word written to
+`exec`, a middle click on one, a `pty/run`), from its shell's start mark (C)
+to its end mark (D); Kill sends its foreground job SIGTERM -- acme posts the
+"kill" note, which ends a process -- and never signals the shell itself --
and reads every setting there is, one a line, in the words a write of it
takes (`Verbose on`, `WindowOpacity 70`, `PanelSlide off`, `DumpDir` bare
for the default directory, `LocationsConfig ...`), so writing what it reads
diff --git a/docs/helix-keys.md b/docs/helix-keys.md
index 0f847405..f2855b3a 100644
--- a/docs/helix-keys.md
+++ b/docs/helix-keys.md
@@ -122,7 +122,7 @@ language-backend queries, and the shell pipe.
| `Ctrl-w` + `h/j/k/l`/arrows | directional pane focus prefix — editor normal mode only | pardes' own window handling (helix window mode skipped, section C). Runs the SAME `Left`/`Down`/`Up`/`Right` builtins `SPC w h/j/k/l` runs; Raw **tty** mode forwards Ctrl-w to the child. Insert mode owns `Ctrl-w` = delete-word-back, so a tag being TYPED into swallows it; from a tag in normal mode it moves focus to the neighbour's BODY, as from a body, and from the top pane `Up` reaches the column and workspace tags | pardes-specific |
| `Alt-n` | new terminal below (outside raw tty) | shadows helix `Alt-n` TS sibling-select — skipped anyway (tree-sitter) | pardes-specific |
| `Alt-c` | move active terminal to a fresh column (outside raw tty) | helix `Alt-c` is change-noyank; the pardes window op wins (do-not-touch contract). `Alt-d` + `i` covers the behavior | waived (`alt-c-window-op`) |
-| `Space` (normal, body) | starts the pardes LEADER: a key path runs the same builtin words used by tags and the topbar. The main groups are `f` files, `h` docs, `c` columns, `t` toggles/effects, `a` panel animations, `s` session, `j` jumps, `l` language, and `w` directional focus; `SPC ?` lists every path and `<prefix> ?` lists one group in `+Help`. The pending path appears on the active pane's transient body/message row. Esc or an unmapped key abandons it. Paths, Help rows, and dispatch are all generated from the builtin registry at comptime; the leader applies only to a BODY in normal mode because tags and tty programs own their input | pardes-specific; helix spends Space on pickers/LSP (section C), while pardes uses acme-style executable words |
+| `Space` (normal, body) | starts the pardes LEADER: a key path runs the same builtin words used by tags and the topbar. The main groups are `f` files, `h` docs, `c` columns, `t` toggles/effects, `a` panel animations, `s` session, `j` jumps, `l` language, and `w` directional focus; `SPC ?` lists every path and `<prefix> ?` lists one group in `+Help`. Neither `Exit` (quits the editor, acme's Exit) nor `Kill` (stops the commands pardes typed into terminals, acme's Kill) has a leader path: both are the topbar's and the root `ctl`'s. The pending path appears on the active pane's transient body/message row. Esc or an unmapped key abandons it. Paths, Help rows, and dispatch are all generated from the builtin registry at comptime; the leader applies only to a BODY in normal mode because tags and tty programs own their input | pardes-specific; helix spends Space on pickers/LSP (section C), while pardes uses acme-style executable words |
| `SPC y` `SPC Y` `SPC p` `SPC P` `SPC R` | helix's clipboard menu on helix's own letters: yank the selection to the system clipboard (`ClipYank`) or the PRIMARY selection alone (`ClipYankMain`), paste the system clipboard after (`ClipPaste`) / before (`ClipPasteBefore`) the selection, replace the selection with it (`ClipReplace`) | the ONLY five words in pardes that touch the desktop's clipboard — `y`/`d`/`c`/`p`/`P`/`R` and the acme cut/paste chords are the internal register alone. Builtins rather than bare chords because a leader path names a builtin: they land in Help's index and are executable words like every other verb. One divergence: pardes keeps a single register VALUE where helix keeps one per range, so `SPC y` at N cursors joins them with newlines (`Pardes.setYank`, the divergence `msel-yank-paste` already waives). On a tty the write is OSC 52 out and the READ is OSC 52 back, which many terminals refuse or gate — so `SPC y` works there and `SPC p` can be a no-op | out of corpus |
| a paste from the OUTER terminal | one `Event.paste`, spliced in at the cursor | the tty shell enables bracketed paste and coalesces `paste_start`..`paste_end` into a single event; before that the bytes arrived as individual key presses and normal mode RAN them, which is how a pasted `d` deleted a line. The bytes deliberately never enter the yank register — clipboard and default register are separate stores in both directions | pardes-specific |
| `/` (any pane) | pardes' own plain-substring search into a `+Search` output buffer: the pattern is typed on a line of its own on the pane's notice band, Enter fills the buffer, and its rows are ordinary look targets. Enter also GOES to the first row — the buffer is focused and then the step `n` is and the look Enter is run in it (`Pardes.lookFirstHit`), so `/foo` lands on the first hit with the matched span selected. A pattern that matched nothing opens its empty buffer and moves nothing | KEEP, do not touch; not in the corpus (helix `/` is regex search). Find and Grep answer with OTHER files and deliberately do NOT jump. The stepping half is the next row | pardes-specific |
diff --git a/src/Terminal.zig b/src/Terminal.zig
index 0bec3ce8..cd292e5f 100644
--- a/src/Terminal.zig
+++ b/src/Terminal.zig
@@ -214,6 +214,29 @@ pub fn armShellSpawn(pane: *Pane) void {
pane.pending_command.wait = .spawn;
}
+/// Remembers a line pardes types into this terminal as the command it
+/// started, for Kill: it runs from the shell's next C mark to its D.
+/// ponytail: of several lines queued for a shell not up yet, only the last
+/// is remembered, as the first of them.
+pub fn noteCommand(pane: *Pane, line: []const u8) void {
+ if (comptime !enabled) return;
+ const state = pane.terminal orelse return;
+ const word = std.mem.trim(u8, line, " \t")[0 .. std.mem.indexOfAny(u8, std.mem.trim(u8, line, " \t"), " \t") orelse std.mem.trim(u8, line, " \t").len];
+ var sent: @typeInfo(@FieldType(Pane, "sent_command")).optional.child = .{ .seq = state.stream.handler.started +% 1 };
+ sent.len = @intCast(@min(word.len, sent.word.len));
+ @memcpy(sent.word[0..sent.len], word[0..sent.len]);
+ pane.sent_command = sent;
+}
+
+/// Whether the command pardes last typed here is running now.
+pub fn commandRunning(pane: *const Pane) bool {
+ if (comptime !enabled) return false;
+ const state = pane.terminal orelse return false;
+ const sent = pane.sent_command orelse return false;
+ const marks = &state.stream.handler;
+ return marks.phase == .running and marks.started == sent.seq;
+}
+
pub fn queuePendingCommand(pane: *Pane, command: []const u8) !bool {
if (pane.pending_command.wait == .none) return false;
const old_len = pane.pending_command.bytes.len;
diff --git a/src/builtins.zig b/src/builtins.zig
index 2dac8a59..0154e707 100644
--- a/src/builtins.zig
+++ b/src/builtins.zig
@@ -213,6 +213,56 @@ test "a builtin's scope is the pane unless it says session, and every setting is
try std.testing.expectEqual(Scope.session, registry.scope(std.meta.stringToEnum(Builtin, setting.word).?));
}
+test "Exit asks once about unsaved text, and quits when asked again" {
+ const p = try Pardes.init(std.testing.allocator, .{ .tty_only = true });
+ defer p.deinit();
+ const pane = try p.setTestFile("saved\n");
+ pane.file.?.saved_revision = pane.file.?.revision -% 1; // modified
+ try std.testing.expect(p.executeBuiltinLine(p.active, "Exit"));
+ try std.testing.expect(!p.quit);
+ try std.testing.expect(std.mem.endsWith(u8, pane.msg[0..pane.msg_len], ": Modified"));
+ // Told once, and nothing edited since: the second Exit quits.
+ try std.testing.expect(p.executeBuiltinLine(p.active, "Exit"));
+ try std.testing.expect(p.quit);
+}
+
+test "Kill stops the commands pardes typed, bare all and by name those that match, and never quits" {
+ const p = try Pardes.init(std.testing.allocator, .{ .tty_only = true, .cols = 80, .rows = 24 });
+ defer p.deinit();
+ while (p.nextEffect()) |_| {}
+ const term = p.active;
+ try std.testing.expect(p.panes[term].?.isTerminal());
+ const prompt = "\x1b]133;A;cl=line;aid=pardes\x07$ \x1b]133;B;aid=pardes\x07";
+ p.update(.{ .output = .{ .pane = @intCast(term), .bytes = prompt } });
+ while (p.nextEffect()) |_| {}
+ const killed = struct {
+ fn count(pp: *Pardes, line: []const u8) usize {
+ _ = pp.executeBuiltinLine(pp.active, line);
+ var n: usize = 0;
+ while (pp.nextEffect()) |e| if (e == .signal_pty and e.signal_pty.sig == .command) {
+ n += 1;
+ };
+ return n;
+ }
+ };
+ // Nothing running: nothing to stop, and never the shell.
+ try std.testing.expectEqual(@as(usize, 0), killed.count(p, "Kill"));
+ _ = exec.execute(p, term, "make -j8");
+ while (p.nextEffect()) |_| {}
+ // Typed but not started yet (no C mark): not running.
+ try std.testing.expectEqual(@as(usize, 0), killed.count(p, "Kill"));
+ p.update(.{ .output = .{ .pane = @intCast(term), .bytes = "\x1b]133;C;aid=pardes\x07" } });
+ while (p.nextEffect()) |_| {}
+ try std.testing.expectEqual(@as(usize, 0), killed.count(p, "Kill ls"));
+ try std.testing.expectEqual(@as(usize, 1), killed.count(p, "Kill ls make"));
+ try std.testing.expectEqual(@as(usize, 1), killed.count(p, "Kill"));
+ try std.testing.expect(!p.quit);
+ // Ended (a D mark): nothing to stop again.
+ p.update(.{ .output = .{ .pane = @intCast(term), .bytes = "\x1b]133;D;143;aid=pardes\x07" ++ prompt } });
+ while (p.nextEffect()) |_| {}
+ try std.testing.expectEqual(@as(usize, 0), killed.count(p, "Kill"));
+}
+
test "Look does not announce itself on the message row; Del still does" {
const Builtin = registry.Builtin();
try std.testing.expect(!registry.announces(Builtin.Look));
@@ -274,14 +324,61 @@ pub const Exec = struct {
// ---- session ----
-pub const Kill = struct {
+/// acme's Exit (editors/acme/exec.c, `exit` and rowclean): quit, unless a
+/// pane holds unsaved text nobody has been told about. Each such pane says
+/// so, `<name>: Modified`, and the Exit goes no further; an Exit after that,
+/// with nothing edited since, quits. A scratch of under 100 bytes is no
+/// loss worth the question, as acme's winclean does not ask for one.
+pub const Exit = struct {
pub const scope: Scope = .session;
pub fn run(c: Ctx) void {
+ var modified = false;
+ for (c.p.panes, 0..) |slot, id| {
+ const pane = slot orelse continue;
+ const f = pane.file orelse continue;
+ if (f.revision == f.saved_revision or !panes.Output.fileTraits(f.output).saves) continue;
+ if (f.output != null and f.content.len < 100) continue;
+ if (pane.exit_warned == f.revision) continue;
+ pane.exit_warned = f.revision;
+ c.p.reportError(id, f.path, error.Modified);
+ modified = true;
+ }
+ if (modified) return;
c.p.quit = true;
c.p.emit(.quit);
}
};
+/// acme's Kill (exec.c, `kill`; acme.c's WKill): stop the commands pardes
+/// started -- the lines it typed into a terminal, from an exec, a middle
+/// click or a pty/run, while their shell says they run (C mark to D).
+/// Bare, every one; `Kill make ls`, those whose line starts with one of
+/// the words. acme posts the "kill" note, which ends a process; here that
+/// is SIGTERM to the terminal's foreground job, and never to the shell,
+/// which is its own job and stays.
+pub const Kill = struct {
+ pub const scope: Scope = .session;
+ pub const takes_arg = true;
+ pub fn run(c: Ctx) void {
+ const names = std.mem.trim(u8, c.arg orelse "", " \t\r\n");
+ var stopped = false;
+ for (c.p.panes, 0..) |slot, id| {
+ const pane = slot orelse continue;
+ if (!panes.Terminal.commandRunning(pane)) continue;
+ const sent = pane.sent_command.?;
+ if (names.len > 0) {
+ var words = std.mem.tokenizeAny(u8, names, " \t");
+ while (words.next()) |w| {
+ if (std.mem.eql(u8, w, sent.word[0..sent.len])) break;
+ } else continue;
+ }
+ c.p.emit(.{ .signal_pty = .{ .pane = @intCast(id), .sig = .command } });
+ stopped = true;
+ }
+ if (!stopped and names.len > 0) c.p.reportError(c.id, "Kill", error.NoSuchCommand);
+ }
+};
+
pub const Dump = struct {
pub const scope: Scope = .session;
pub fn run(c: Ctx) void {
diff --git a/src/config.zig b/src/config.zig
index f898df11..6d0cf0a6 100644
--- a/src/config.zig
+++ b/src/config.zig
@@ -49,6 +49,7 @@ pub const leader_path = paths: {
.Togglettymode = null,
.Collapse = null,
.Kill = null,
+ .Exit = null,
.ClipYank = "y",
.ClipYankMain = "Y",
.ClipPaste = "p",
@@ -160,8 +161,9 @@ pub const leader_path = paths: {
break :paths table;
};
-test "Space-k is unbound while Kill and other k chords remain available" {
+test "Space-k is unbound while Exit, Kill and other k chords remain available" {
try std.testing.expect(leader_path.get(.Kill) == null);
+ try std.testing.expect(leader_path.get(.Exit) == null);
try std.testing.expectEqualStrings("wk", leader_path.get(.Up).?);
try std.testing.expectEqualStrings("lk", leader_path.get(.Hover).?);
try std.testing.expectEqualStrings("d", leader_path.get(.Del).?);
@@ -183,7 +185,10 @@ test "Space-k is unbound while Kill and other k chords remain available" {
while (p.nextEffect()) |effect| try std.testing.expect(effect != .quit);
p.update(.{ .key = .{ .cp = 'k' } });
try std.testing.expectEqual(@as(i32, 0), pane.body.cur_row);
+ // Kill stops commands and never quits; Exit quits.
try std.testing.expect(p.executeBuiltinLine(p.active, "Kill"));
+ try std.testing.expect(!p.quit);
+ try std.testing.expect(p.executeBuiltinLine(p.active, "Exit"));
try std.testing.expect(p.quit);
}
@@ -237,7 +242,7 @@ pub const child_term = "xterm-256color";
pub const child_colorterm = "truecolor";
pub const child_term_program = "pardes";
-pub const topbar_str = "Newcol Joincol Find Grep Help Changelog Tutor Dump NextColor Debug Kill";
+pub const topbar_str = "Newcol Joincol Find Grep Help Changelog Tutor Dump NextColor Debug Exit";
pub const pane_builtins_str = "Tty Collapse Del";
pub const pdf_pane_builtins_str = "Tty PdfSections PdfTint Collapse Del";
diff --git a/src/exec.zig b/src/exec.zig
index 46b4f57b..b16c600c 100644
--- a/src/exec.zig
+++ b/src/exec.zig
@@ -399,6 +399,7 @@ pub fn execute(p: *Pardes, id: usize, txt: []const u8) ?usize {
defer p.exec_depth -= 1;
const dst = (if (takesCommandLine(p, id)) id else ttyForDir(p, Pardes.paneDir(pane))) orelse return null;
panes.Terminal.padOutputBelowEdits(p, dst);
+ panes.Terminal.noteCommand(p.panes[dst].?, cmd);
if (panes.Terminal.queuePendingCommand(p.panes[dst].?, cmd) catch |err| {
p.reportError(id, "queue command", err);
return dst;
diff --git a/src/fs-help.txt b/src/fs-help.txt
index 8db1e288..bbff6f13 100644
--- a/src/fs-help.txt
+++ b/src/fs-help.txt
@@ -9,7 +9,7 @@ log events: new/del/rename/save <serial> <name>, msg <serial|-> <text>,
screen rendered screen as JSON, frozen from open to close
listeners the session's dial addresses
focus the serial of the pane with the keyboard; write a serial to give it the keyboard
-ctl the settings, one a line as a write takes them; write one, or Newcol, Dump; Kill QUITS
+ctl settings, one a line as a write takes them; or Newcol, Dump, Exit (quits), Kill (stops cmds)
commands every builtin: its word, arg if it takes one, and root or pane: which ctl takes it
pane/new open it to make a pane (named +New); the read answers that pane's serial
pane/<n>/ name body tag ctl addr dot limit data xdata sel dirty mark scroll errors (write-only:
diff --git a/src/host_io.zig b/src/host_io.zig
index a5efc7d1..5d9dd413 100644
--- a/src/host_io.zig
+++ b/src/host_io.zig
@@ -1337,8 +1337,14 @@ pub fn signalTty(shell_pid: libc.pid_t, master_fd: c_int, which: pardes.PtySigna
.hup => libc.SIG.HUP,
.quit => libc.SIG.QUIT,
.kill => libc.SIG.KILL,
+ .command => libc.SIG.TERM,
};
const fg = tcgetpgrp(master_fd);
+ // The shell leads its own group: a job it runs has another.
+ if (which == .command) {
+ if (fg > 0 and fg != shell_pid) _ = libc.kill(-fg, sig);
+ return;
+ }
if (fg > 0) {
_ = libc.kill(-fg, sig);
return;
@@ -1640,6 +1646,25 @@ test "an idle prompt is free, a foreground job takes the tty, and Ctrl-C hands i
try std.testing.expect(sh.waitText(test_prompt, 10_000));
}
+test "Kill's signal stops the foreground job and never the shell" {
+ if (comptime !tty_probe_platform) return error.SkipZigTest;
+ var sh = TestShell.start() orelse return error.SkipZigTest;
+ defer sh.stop();
+
+ // At the prompt the shell is the foreground: there is nothing to stop.
+ signalTty(sh.pid, sh.master, .command);
+ sleepMs(100);
+ try std.testing.expectEqual(@as(libc.pid_t, 0), libc.waitpid(sh.pid, null, libc.W.NOHANG));
+
+ sh.send("sleep 30\n");
+ try std.testing.expect(sh.waitTaken(true, 10_000));
+ sh.forget();
+ signalTty(sh.pid, sh.master, .command);
+ try std.testing.expect(sh.waitTaken(false, 10_000));
+ try std.testing.expect(sh.waitText(test_prompt, 10_000));
+ try std.testing.expectEqual(@as(libc.pid_t, 0), libc.waitpid(sh.pid, null, libc.W.NOHANG));
+}
+
test "a background job is not the tty's owner" {
if (comptime !tty_probe_platform) return error.SkipZigTest;
var sh = TestShell.start() orelse return error.SkipZigTest;
diff --git a/src/ninep/pty.zig b/src/ninep/pty.zig
index 50d14624..dcf9a8a7 100644
--- a/src/ninep/pty.zig
+++ b/src/ninep/pty.zig
@@ -233,6 +233,7 @@ pub fn noteMarks(p: *Pardes, id: usize, pane: *Pane) void {
slot.declined = marks.declined;
p.emitWrite(id, slot.line);
p.emitWrite(id, "\r");
+ pardes.panes.Terminal.noteCommand(pane, slot.line);
slot.phase = .sent;
return;
}
diff --git a/src/panes.zig b/src/panes.zig
index ab4f5072..70b461eb 100644
--- a/src/panes.zig
+++ b/src/panes.zig
@@ -95,6 +95,12 @@ pub const Pane = struct {
rows: u16,
greet: bool = false,
pending_command: Terminal.PendingCommand = .{},
+ /// The last command line pardes typed into this terminal (an exec, a
+ /// middle click, a pty/run): its first word, which Kill matches, and
+ /// the shell's command count its start (C mark) reaches.
+ sent_command: ?struct { word: [64]u8 = undefined, len: u8 = 0, seq: u32 = 0 } = null,
+ /// The revision an Exit last warned this pane was modified at.
+ exit_warned: ?u32 = null,
/// Native host queues the Linux v9fs launcher in this pane's initial shell.
v9fs_on_spawn: bool = false,
file: ?File.State = null,
diff --git a/src/pardes.zig b/src/pardes.zig
index 05f6710a..f3348ea5 100644
--- a/src/pardes.zig
+++ b/src/pardes.zig
@@ -561,7 +561,7 @@ test "startup config runs builtin lines in order and isolates bad lines" {
.startup_config =
\\Theme dark
\\DefinitelyNotABuiltin
- \\Kill trailing-garbage
+ \\Exit trailing-garbage
\\Theme no-such-theme
\\Theme acme
,
@@ -575,7 +575,7 @@ test "startup config runs builtin lines in order and isolates bad lines" {
for (0..p.effects_len) |i| switch (p.effects[(p.effects_head + i) % p.effects.len]) {
.write => |w| {
try std.testing.expect(std.mem.indexOf(u8, w.bytes.slice(), "DefinitelyNotABuiltin") == null);
- try std.testing.expect(std.mem.indexOf(u8, w.bytes.slice(), "Kill") == null);
+ try std.testing.expect(std.mem.indexOf(u8, w.bytes.slice(), "Exit") == null);
},
else => {},
};
@@ -668,10 +668,10 @@ test "pane-tag Exec prefers Tty and argument builtins before shell fallback" {
else => {},
};
- // Fixed-name builtins remain exact: a tail does not turn New or Kill into
+ // Fixed-name builtins remain exact: a tail does not turn New or Exit into
// a match (especially important for the destructive one).
try std.testing.expect(!p.executeBuiltinLine(0, "New argument"));
- try std.testing.expect(!p.executeBuiltinLine(0, "Kill trailing-garbage"));
+ try std.testing.expect(!p.executeBuiltinLine(0, "Exit trailing-garbage"));
try std.testing.expect(!p.quit);
// A word absent from the builtin vocabulary takes the fallback, including
@@ -3083,7 +3083,9 @@ pub const AttachRequest = struct { pane: u8, name: []const u8 };
pub const PendingWrite = struct { bytes: []u8, off: usize = 0 };
-pub const PtySignal = enum(u8) { int, term, hup, quit, kill };
+/// `command` is Kill's: SIGTERM to the terminal's foreground job, and never
+/// to the shell itself when the shell is in the foreground.
+pub const PtySignal = enum(u8) { int, term, hup, quit, kill, command };
/// IO the core wants done. Payloads are inline (fixed buffers): effects are
/// queued values with no lifetime ties back into the core.
diff --git a/src/tutor.txt b/src/tutor.txt
index 2f5b521c..507ce40e 100644
--- a/src/tutor.txt
+++ b/src/tutor.txt
@@ -66,7 +66,7 @@
The top bar is:
Newcol Joincol Find Grep Help Changelog Tutor Dump NextColor
- Debug Kill
+ Debug Exit
Reach it from the keyboard with `k` off the topmost tagline; `j` comes
back down.
@@ -361,7 +361,7 @@ typed
abandons it, and so does any key that leads nowhere.
SPC ? list every path
- SPC d Del Kill remains available in the topbar.
+ SPC d Del Exit (quit) remains available in the topbar.
SPC f s Save SPC f f Find SPC f n New
SPC y Y p P R the system clipboard
SPC w h/j/k/l focus a neighbouring pane
@@ -488,4 +488,5 @@ typed
Spawn this tutor again: middle-click "Tutor" in the top bar, or SPC h t.
Quit: this is a file pane — `:q` is not wired. Close it with Del in its
- tag, "Kill" in the top bar to quit everything, or Ctrl-c the app.
+ tag, "Exit" in the top bar to quit everything, or Ctrl-c the app.
+ "Kill" does not quit: it stops the commands pardes started, as acme's does.
diff --git a/test/fs.py b/test/fs.py
index e9540169..2199a645 100644
--- a/test/fs.py
+++ b/test/fs.py
@@ -405,12 +405,12 @@ def run_file(binary):
assert closing == [b'error shell gone\n'], closing
-def kill_answers(binary):
- """Kill written to /ctl is answered before the editor quits."""
- with tempfile.TemporaryDirectory(prefix='pardes-kill-') as directory:
+def exit_answers(binary):
+ """Exit written to /ctl is answered before the editor quits."""
+ with tempfile.TemporaryDirectory(prefix='pardes-exit-') as directory:
seen = {}
- with session(binary, Path(directory), 'kill', terminal=seen) as (client, _):
- client.write('/ctl', b'Kill\n')
+ with session(binary, Path(directory), 'exit', terminal=seen) as (client, _):
+ client.write('/ctl', b'Exit\n')
deadline = time.monotonic() + 5
while time.monotonic() < deadline:
try:
@@ -421,13 +421,13 @@ def kill_answers(binary):
break
time.sleep(.01)
else:
- raise AssertionError('Kill did not quit the editor')
+ raise AssertionError("Exit did not quit the editor")
def test(binary, quic=False):
started = time.monotonic()
run_file(binary)
- kill_answers(binary)
+ exit_answers(binary)
for options, message in [
(['--fs'], b'no such option'),
(['--fs9'], b'no such option'),
diff --git a/test/snapshots/argv.golden b/test/snapshots/argv.golden
index abf5781d..e9caf508 100644
--- a/test/snapshots/argv.golden
+++ b/test/snapshots/argv.golden
@@ -1,5 +1,5 @@
== snap noargs grid=100x31 cursor=4,5
-|Newcol Joincol Find Grep Help Changelog Tutor Dump NextColor Debug Kill
+|Newcol Joincol Find Grep Help Changelog Tutor Dump NextColor Debug Exit
| New Tty Find Grep Joincol Delcol
|$ /tmp/pardes-snap/argv/cwd Tty Save Mode Filter Collapse Del
| $ echo ARGV''TTY
@@ -23,7 +23,7 @@
| /+New Save Tty Collapse Del
| 1
== snap filearg grid=100x31 cursor=7,3
-|Newcol Joincol Find Grep Help Changelog Tutor Dump NextColor Debug Kill
+|Newcol Joincol Find Grep Help Changelog Tutor Dump NextColor Debug Exit
| New Tty Find Grep Joincol Delcol
| /tmp/pardes-snap/argv/cwd/notes.txt Save Tty Collapse Del
| 3 line 3
@@ -34,7 +34,7 @@
| 8 line 8
| 9
== snap filearg-n3 grid=100x31 cursor=7,3
-|Newcol Joincol Find Grep Help Changelog Tutor Dump NextColor Debug Kill
+|Newcol Joincol Find Grep Help Changelog Tutor Dump NextColor Debug Exit
| New Tty Find Grep Joincol Delcol
| /tmp/pardes-snap/argv/cwd/notes.txt Save Tty Collapse Del
| 1 line 1
@@ -47,7 +47,7 @@
| 8 line 8
| 9
== snap dirarg grid=100x31 cursor=4,5
-|Newcol Joincol Find Grep Help Changelog Tutor Dump NextColor Debug Kill
+|Newcol Joincol Find Grep Help Changelog Tutor Dump NextColor Debug Exit
| New Tty Find Grep Joincol Delcol
| /tmp/pardes-snap/argv/cwd/sub Tty Save Mode Filter Collapse Del
| ls
diff --git a/test/snapshots/badutf.golden b/test/snapshots/badutf.golden
index d3a906b1..0980612a 100644
--- a/test/snapshots/badutf.golden
+++ b/test/snapshots/badutf.golden
@@ -1,5 +1,5 @@
== snap badbytes grid=100x31 cursor=7,3
-|Newcol Joincol Find Grep Help Changelog Tutor Dump NextColor Debug Kill
+|Newcol Joincol Find Grep Help Changelog Tutor Dump NextColor Debug Exit
| New Tty Find Grep Joincol Delcol
| /tmp/pardes-snap/badutf/cwd/bad.txt Save Tty Collapse Del
| 1 hello �� world
diff --git a/test/snapshots/boot.golden b/test/snapshots/boot.golden
index 2e4ad22f..f5fa64a8 100644
--- a/test/snapshots/boot.golden
+++ b/test/snapshots/boot.golden
@@ -1,5 +1,5 @@
== snap boot grid=100x31 cursor=4,5
-|Newcol Joincol Find Grep Help Changelog Tutor Dump NextColor Debug Kill
+|Newcol Joincol Find Grep Help Changelog Tutor Dump NextColor Debug Exit
| New Tty Find Grep Joincol Delcol
| /tmp/pardes-snap/boot/cwd Tty Save Mode Filter Collapse Del
| ls
diff --git a/test/snapshots/builtins.golden b/test/snapshots/builtins.golden
index a36092f7..de614ea2 100644
--- a/test/snapshots/builtins.golden
+++ b/test/snapshots/builtins.golden
@@ -1,5 +1,5 @@
== snap boot grid=120x67 cursor=7,3
-|Newcol Joincol Find Grep Help Changelog Tutor Dump NextColor Debug Kill
+|Newcol Joincol Find Grep Help Changelog Tutor Dump NextColor Debug Exit
| New Tty Find Grep Joincol Delcol
| /tmp/pardes-snap/builtins/cwd/notes.txt Save Tty Collapse Del
| 1 line 1
diff --git a/test/snapshots/builtins.snap b/test/snapshots/builtins.snap
index 9b91a93d..9a58502f 100644
--- a/test/snapshots/builtins.snap
+++ b/test/snapshots/builtins.snap
@@ -25,6 +25,7 @@ wheel up 110 50
wheel up 110 50
wheel up 110 50
wheel up 110 50
+wheel up 110 50
wait 10000 Look enter, right-click
wait 10000 Exec tab, middle-click
wait 10000 Filter
diff --git a/test/snapshots/chordcut.golden b/test/snapshots/chordcut.golden
index a002f53b..b814d888 100644
--- a/test/snapshots/chordcut.golden
+++ b/test/snapshots/chordcut.golden
@@ -1,5 +1,5 @@
== snap opened grid=120x31 cursor=7,7
-|Newcol Joincol Find Grep Help Changelog Tutor Dump NextColor Debug Kill
+|Newcol Joincol Find Grep Help Changelog Tutor Dump NextColor Debug Exit
| New Tty Find Grep Joincol Delcol New Tty Find Grep Joincol Delcol
| /tmp/pardes-snap/chordcut/cwd Tty Save Mode Filter Collap /tmp/pardes-snap/chordcut/cwd Tty Save Mode Filter Collap
| ls ls
diff --git a/test/snapshots/cmdword.golden b/test/snapshots/cmdword.golden
index f099464f..99ad446b 100644
--- a/test/snapshots/cmdword.golden
+++ b/test/snapshots/cmdword.golden
@@ -1,5 +1,5 @@
== snap opened grid=120x31 cursor=7,3
-|Newcol Joincol Find Grep Help Changelog Tutor Dump NextColor Debug Kill
+|Newcol Joincol Find Grep Help Changelog Tutor Dump NextColor Debug Exit
| New Tty Find Grep Joincol Delcol
| /tmp/pardes-snap/cmdword/cwd/cmds.txt Save Tty Collapse Del
| 1 @`echo ZZ''E` @`echo ZZ''L` Look p.txt @`Look .`
diff --git a/test/snapshots/colgrip.golden b/test/snapshots/colgrip.golden
index e096a665..3ad6b2b6 100644
--- a/test/snapshots/colgrip.golden
+++ b/test/snapshots/colgrip.golden
@@ -26,7 +26,7 @@
== style held grid=100x24
|1: 0-1 #ffffff,#887455, 2-2 d,#1d2824, 3-34 #b2c3b8,#1d2824, 35-49 d,#1d2824, 50-51 #000000,#f4c086, 52-52 d,#26362d, 53-84 #becfc4,#26362d, 85-99 d,#26362d,
== snap resize-drag grid=100x24 cursor=54,5
-|Newcol Joincol Find Grep Help Changelog Tutor Dump NextColor Debug Kill
+|Newcol Joincol Find Grep Help Changelog Tutor Dump NextColor Debug Exit
| New Tty Find Grep Joincol Delcol ╎ New Tty Find Grep Joincol Delcol
| /tmp/pardes-snap/colgrip/cwd/w.txt S╎ve Tty Col /tmp/pardes-snap/colgrip/cwd Tty Save Mode Filt
| 1 x ╎ ls
diff --git a/test/snapshots/collapse.golden b/test/snapshots/collapse.golden
index eaf9bbc3..f60b084f 100644
--- a/test/snapshots/collapse.golden
+++ b/test/snapshots/collapse.golden
@@ -1,5 +1,5 @@
== snap before grid=160x25 cursor=7,3
-|Newcol Joincol Find Grep Help Changelog Tutor Dump NextColor Debug Kill
+|Newcol Joincol Find Grep Help Changelog Tutor Dump NextColor Debug Exit
| New Tty Find Grep Joincol Delcol
| /tmp/pardes-snap/collapse/cwd/kept.txt Save Tty Collapse Del
| 1 KEEP-FIRST
@@ -10,7 +10,7 @@
|4:
|5:
== 9p middle-collapsed-cursor grid=160x25 cursor=none
-|0: Newcol Joincol Find Grep Help Changelog Tutor Dump NextColor Debug Kill
+|0: Newcol Joincol Find Grep Help Changelog Tutor Dump NextColor Debug Exit
@0: 0-70 #b2c3b8,#1d2824,,tagline 71-159 d,#1d2824,,tagline
|1: New Tty Find Grep Joincol Delcol
@1: 0-1 #ffffff,#887455,,tagline 2-2 d,#26362d,,tagline 3-34 #becfc4,#26362d,,tagline 35-159 d,#26362d,,tagline
diff --git a/test/snapshots/cornerdrag-left.golden b/test/snapshots/cornerdrag-left.golden
index 145adb02..ad7f2759 100644
--- a/test/snapshots/cornerdrag-left.golden
+++ b/test/snapshots/cornerdrag-left.golden
@@ -1,5 +1,5 @@
== snap right-split grid=100x31 cursor=54,9
-|Newcol Joincol Find Grep Help Changelog Tutor Dump NextColor Debug Kill
+|Newcol Joincol Find Grep Help Changelog Tutor Dump NextColor Debug Exit
| New Tty Find Grep Joincol Delcol New Tty Find Grep Joincol Delcol
| /tmp/pardes-snap/cornerdrag-left/cwd Tty Save M /tmp/pardes-snap/cornerdrag-left/cwd Tty Save M
| ls ls
diff --git a/test/snapshots/cornerdrag.golden b/test/snapshots/cornerdrag.golden
index b95734ea..ae726cae 100644
--- a/test/snapshots/cornerdrag.golden
+++ b/test/snapshots/cornerdrag.golden
@@ -1,5 +1,5 @@
== snap hover-corner grid=100x31 cursor=4,5
-|Newcol Joincol Find Grep Help Changelog Tutor Dump NextColor Debug Kill
+|Newcol Joincol Find Grep Help Changelog Tutor Dump NextColor Debug Exit
| New Tty Find Grep Joincol Delcol ╎ New Tty Find Grep Joincol Delcol
| /tmp/pardes-snap/cornerdrag/cwd Tty Save Mode ╎ /tmp/pardes-snap/cornerdrag/cwd Tty Save Mode F
| ls ╎ ls
diff --git a/test/snapshots/cursorline.golden b/test/snapshots/cursorline.golden
index 97897c3f..e4383dca 100644
--- a/test/snapshots/cursorline.golden
+++ b/test/snapshots/cursorline.golden
@@ -1,5 +1,5 @@
== snap top grid=150x31 cursor=7,7
-|Newcol Joincol Find Grep Help Changelog Tutor Dump NextColor Debug Kill
+|Newcol Joincol Find Grep Help Changelog Tutor Dump NextColor Debug Exit
| New Tty Find Grep Joincol Delcol New Tty Find Grep Joincol Delcol
| /tmp/pardes-snap/cursorline/cwd Tty Save Mode Filter Collapse Del /tmp/pardes-snap/cursorline/cwd Tty Save Mode Filter Collapse Del
| ls ls
diff --git a/test/snapshots/delask.golden b/test/snapshots/delask.golden
index 56de45cf..6b5331ec 100644
--- a/test/snapshots/delask.golden
+++ b/test/snapshots/delask.golden
@@ -1,5 +1,5 @@
== snap three grid=100x36 cursor=18,20
-|Newcol Joincol Find Grep Help Changelog Tutor Dump NextColor Debug Kill
+|Newcol Joincol Find Grep Help Changelog Tutor Dump NextColor Debug Exit
| New Tty Find Grep Joincol Delcol
| /tmp/pardes-snap/delask/cwd/top.txt Save Tty Collapse Del
| 1 top-marker
diff --git a/test/snapshots/doccol.golden b/test/snapshots/doccol.golden
index 83d49ca5..76af647b 100644
--- a/test/snapshots/doccol.golden
+++ b/test/snapshots/doccol.golden
@@ -1,5 +1,5 @@
== snap boot grid=100x31 cursor=7,3
-|Newcol Joincol Find Grep Help Changelog Tutor Dump NextColor Debug Kill
+|Newcol Joincol Find Grep Help Changelog Tutor Dump NextColor Debug Exit
| New Tty Find Grep Joincol Delcol New Tty Find Grep Joincol Delcol
| /tmp/pardes-snap/doccol/cwd/a.txt Save Tty Coll /tmp/pardes-snap/doccol/cwd Tty Save Mode Filte
| 1 AAA ls
diff --git a/test/snapshots/dump.golden b/test/snapshots/dump.golden
index e466dbf1..41f29b0c 100644
--- a/test/snapshots/dump.golden
+++ b/test/snapshots/dump.golden
@@ -4,7 +4,7 @@
.version = 1,
.screen = .{ .cols = 100, .rows = 31 },
.active = 0,
- .topbar = "Newcol Joincol Find Grep Help Changelog Tutor Dump NextColor Debug Kill",
+ .topbar = "Newcol Joincol Find Grep Help Changelog Tutor Dump NextColor Debug Exit",
.topbar_custom = null,
.theme = "orchard",
.locations_config = .{
diff --git a/test/snapshots/edit.golden b/test/snapshots/edit.golden
index c4b1081e..12261959 100644
--- a/test/snapshots/edit.golden
+++ b/test/snapshots/edit.golden
@@ -1,5 +1,5 @@
== snap inserted grid=100x31 cursor=16,10
-|Newcol Joincol Find Grep Help Changelog Tutor Dump NextColor Debug Kill
+|Newcol Joincol Find Grep Help Changelog Tutor Dump NextColor Debug Exit
| New Tty Find Grep Joincol Delcol New Tty Find Grep Joincol Delcol
| /tmp/pardes-snap/edit/cwd Tty Save Mode Filter /tmp/pardes-snap/edit/cwd Tty Save Mode Filter
| ls ls
diff --git a/test/snapshots/exec-bigdrag.golden b/test/snapshots/exec-bigdrag.golden
index d18ea1b1..375922d7 100644
--- a/test/snapshots/exec-bigdrag.golden
+++ b/test/snapshots/exec-bigdrag.golden
@@ -1,5 +1,5 @@
== snap alive grid=200x61 cursor=119,38
-|Newcol Joincol Find Grep Help Changelog Tutor Dump NextColor Debug Kill
+|Newcol Joincol Find Grep Help Changelog Tutor Dump NextColor Debug Exit
| New Tty Find Grep Joincol Delcol New Tty Find Grep Joincol Delcol
| /tmp/pardes-snap/exec-bigdrag/cwd Tty Save Mode Filter Collapse Del /tmp/pardes-snap/exec-bigdrag/cwd Tty Save Mode Filter Collapse Del
| ls bash: line: command not found
diff --git a/test/snapshots/exec.golden b/test/snapshots/exec.golden
index 2ddd7eec..68a9737f 100644
--- a/test/snapshots/exec.golden
+++ b/test/snapshots/exec.golden
@@ -1,5 +1,5 @@
== snap exec grid=140x31 cursor=16,8
-|Newcol Joincol Find Grep Help Changelog Tutor Dump NextColor Debug Kill
+|Newcol Joincol Find Grep Help Changelog Tutor Dump NextColor Debug Exit
| New Tty Find Grep Joincol Delcol New Tty Find Grep Joincol Delcol
| /tmp/pardes-snap/exec/cwd Tty Save Mode Filter Collapse Del /tmp/pardes-snap/exec/cwd Tty Save Mode Filter Collapse Del
| ls Exec ls
diff --git a/test/snapshots/fileedit.golden b/test/snapshots/fileedit.golden
index a4d23656..42b50bbf 100644
--- a/test/snapshots/fileedit.golden
+++ b/test/snapshots/fileedit.golden
@@ -1,5 +1,5 @@
== snap edited grid=150x31 cursor=17,7
-|Newcol Joincol Find Grep Help Changelog Tutor Dump NextColor Debug Kill
+|Newcol Joincol Find Grep Help Changelog Tutor Dump NextColor Debug Exit
| New Tty Find Grep Joincol Delcol New Tty Find Grep Joincol Delcol
| /tmp/pardes-snap/fileedit/cwd Tty Save Mode Filter Collapse Del /tmp/pardes-snap/fileedit/cwd Tty Save Mode Filter Collapse Del
| ls ls
diff --git a/test/snapshots/filewatch.golden b/test/snapshots/filewatch.golden
index 74bce6f3..d6d38274 100644
--- a/test/snapshots/filewatch.golden
+++ b/test/snapshots/filewatch.golden
@@ -1,5 +1,5 @@
== snap edited grid=210x31 cursor=15,3
-|Newcol Joincol Find Grep Help Changelog Tutor Dump NextColor Debug Kill
+|Newcol Joincol Find Grep Help Changelog Tutor Dump NextColor Debug Exit
| New Tty Find Grep Joincol Delcol New Tty Find Grep Joincol Delcol
| /tmp/pardes-snap/filewatch/cwd/w.txt * Save Tty Collapse Del /tmp/pardes-snap/filewatch/cwd Tty Save Mode Filter Collapse Del
| 1 liMYEDITne 1 ls
diff --git a/test/snapshots/find.golden b/test/snapshots/find.golden
index b6b7b322..b71da767 100644
--- a/test/snapshots/find.golden
+++ b/test/snapshots/find.golden
@@ -1,5 +1,5 @@
== snap group grid=120x41 cursor=7,3
-|Newcol Joincol Find Grep Help Changelog Tutor Dump NextColor Debug Kill
+|Newcol Joincol Find Grep Help Changelog Tutor Dump NextColor Debug Exit
| New Tty Find Grep Joincol Delcol
| /tmp/pardes-snap/find/cwd/here.txt Save Tty Collapse Del
| 1 Find SPC f
diff --git a/test/snapshots/fsearch.golden b/test/snapshots/fsearch.golden
index eba3237f..01b4a54a 100644
--- a/test/snapshots/fsearch.golden
+++ b/test/snapshots/fsearch.golden
@@ -1,5 +1,5 @@
== snap opened grid=180x31 cursor=7,7
-|Newcol Joincol Find Grep Help Changelog Tutor Dump NextColor Debug Kill
+|Newcol Joincol Find Grep Help Changelog Tutor Dump NextColor Debug Exit
| New Tty Find Grep Joincol Delcol New Tty Find Grep Joincol Delcol
| /tmp/pardes-snap/fsearch/cwd Tty Save Mode Filter Collapse Del /tmp/pardes-snap/fsearch/cwd Tty Save Mode Filter Collapse Del
| ls ls
diff --git a/test/snapshots/ghostty-mid.golden b/test/snapshots/ghostty-mid.golden
index 3482431b..70a40fe7 100644
--- a/test/snapshots/ghostty-mid.golden
+++ b/test/snapshots/ghostty-mid.golden
@@ -1,5 +1,5 @@
== snap ghostty-mid grid=100x31 cursor=4,7
-|Newcol Joincol Find Grep Help Changelog Tutor Dump NextColor Debug Kill
+|Newcol Joincol Find Grep Help Changelog Tutor Dump NextColor Debug Exit
| New Tty Find Grep Joincol Delcol New Tty Find Grep Joincol Delcol
| /tmp/pardes-snap/ghostty-mid/cwd Tty Save Mode /tmp/pardes-snap/ghostty-mid/cwd Tty Save Mode
| ZZPAD ls
diff --git a/test/snapshots/grep.golden b/test/snapshots/grep.golden
index a371bfb6..7ecb24af 100644
--- a/test/snapshots/grep.golden
+++ b/test/snapshots/grep.golden
@@ -1,5 +1,5 @@
== snap opened grid=180x31 cursor=7,7
-|Newcol Joincol Find Grep Help Changelog Tutor Dump NextColor Debug Kill
+|Newcol Joincol Find Grep Help Changelog Tutor Dump NextColor Debug Exit
| New Tty Find Grep Joincol Delcol New Tty Find Grep Joincol Delcol
| /tmp/pardes-snap/grep/cwd Tty Save Mode Filter Collapse Del /tmp/pardes-snap/grep/cwd Tty Save Mode Filter Collapse Del
| ls ls
diff --git a/test/snapshots/hscroll.golden b/test/snapshots/hscroll.golden
index cf6d92cd..bc1a7ff1 100644
--- a/test/snapshots/hscroll.golden
+++ b/test/snapshots/hscroll.golden
@@ -1,5 +1,5 @@
== snap opened grid=90x31 cursor=7,7
-|Newcol Joincol Find Grep Help Changelog Tutor Dump NextColor Debug Kill
+|Newcol Joincol Find Grep Help Changelog Tutor Dump NextColor Debug Exit
| New Tty Find Grep Joincol Delcol New Tty Find Grep Joincol Delcol
| /tmp/pardes-snap/hscroll/cwd Tty Save Mode /tmp/pardes-snap/hscroll/cwd Tty Save Mode
| ls ls
diff --git a/test/snapshots/images.golden b/test/snapshots/images.golden
index 52f5514f..5b72d72b 100644
--- a/test/snapshots/images.golden
+++ b/test/snapshots/images.golden
@@ -1,5 +1,5 @@
== snap img-open grid=150x31 cursor=11,8
-|Newcol Joincol Find Grep Help Changelog Tutor Dump NextColor Debug Kill
+|Newcol Joincol Find Grep Help Changelog Tutor Dump NextColor Debug Exit
| New Tty Find Grep Joincol Delcol New Tty Find Grep Joincol Delcol
| /tmp/pardes-snap/images/cwd Tty Save Mode Filter Collapse Del /tmp/pardes-snap/images/cwd Tty Save Mode Filter Collapse Del
| ls ls
@@ -76,7 +76,7 @@
|15: 🬺█🬝🬵
|16: 🬝▄
== snap tag-edit grid=400x31 cursor=87,6
-|Newcol Joincol Find Grep Help Changelog Tutor Dump NextColor Debug Kill
+|Newcol Joincol Find Grep Help Changelog Tutor Dump NextColor Debug Exit
| New Tty Find Grep Joincol Delcol New Tty Find Grep Joincol Delcol
| /tmp/pardes-snap/images/cwd Tty Save Mode Filter Collapse Del /tmp/pardes-snap/images/cwd Tty Save Mode Filter Collapse Del
| ls ls
diff --git a/test/snapshots/jumps.golden b/test/snapshots/jumps.golden
index 18725402..fa50f66c 100644
--- a/test/snapshots/jumps.golden
+++ b/test/snapshots/jumps.golden
@@ -1,5 +1,5 @@
== snap start grid=150x31 cursor=7,3
-|Newcol Joincol Find Grep Help Changelog Tutor Dump NextColor Debug Kill
+|Newcol Joincol Find Grep Help Changelog Tutor Dump NextColor Debug Exit
| New Tty Find Grep Joincol Delcol
| /tmp/pardes-snap/jumps/cwd/big.txt Save Tty Collapse Del
| 1 line 1
diff --git a/test/snapshots/layout-close.golden b/test/snapshots/layout-close.golden
index a49ae97e..926ff1f7 100644
--- a/test/snapshots/layout-close.golden
+++ b/test/snapshots/layout-close.golden
@@ -1,5 +1,5 @@
== snap built grid=140x41 cursor=4,17
-|Newcol Joincol Find Grep Help Changelog Tutor Dump NextColor Debug Kill
+|Newcol Joincol Find Grep Help Changelog Tutor Dump NextColor Debug Exit
| New Tty Find Grep Joincol Delcol New Tty Find Grep Joincol Delcol
| /tmp/pardes-snap/layout-close/cwd Tty Save Mode Filter Collapse Del /tmp/pardes-snap/layout-close/cwd Tty Save Mode Filter Collapse Del
| ls ls
diff --git a/test/snapshots/layout-open.golden b/test/snapshots/layout-open.golden
index 5ab87cbe..f682924a 100644
--- a/test/snapshots/layout-open.golden
+++ b/test/snapshots/layout-open.golden
@@ -1,5 +1,5 @@
== snap before grid=100x31 cursor=2,9
-|Newcol Joincol Find Grep Help Changelog Tutor Dump NextColor Debug Kill
+|Newcol Joincol Find Grep Help Changelog Tutor Dump NextColor Debug Exit
| New Tty Find Grep Joincol Delcol New Tty Find Grep Joincol Delcol
| /tmp/pardes-snap/layout-open/cwd Tty Save Mode /tmp/pardes-snap/layout-open/cwd Tty Save Mode
| ls ls
diff --git a/test/snapshots/leader.golden b/test/snapshots/leader.golden
index cc420f46..18210edf 100644
--- a/test/snapshots/leader.golden
+++ b/test/snapshots/leader.golden
@@ -1,5 +1,5 @@
== snap spc grid=100x41 cursor=7,3
-|Newcol Joincol Find Grep Help Changelog Tutor Dump NextColor Debug Kill
+|Newcol Joincol Find Grep Help Changelog Tutor Dump NextColor Debug Exit
| New Tty Find Grep Joincol Delcol
| /tmp/pardes-snap/leader/cwd/cmds.txt Save Tty Collapse Del
| 1 Help SPC
diff --git a/test/snapshots/load.golden b/test/snapshots/load.golden
index 32024cec..4671787a 100644
--- a/test/snapshots/load.golden
+++ b/test/snapshots/load.golden
@@ -1,5 +1,5 @@
== snap loaded grid=100x31 cursor=4,16
-|Newcol Joincol Find Grep Help Changelog Tutor Dump NextColor Debug Kill
+|Newcol Joincol Find Grep Help Changelog Tutor Dump NextColor Debug Exit
| New Tty Find Grep Joincol Delcol New Tty Find Grep Joincol Delcol
| /tmp/pardes-snap/load/cwd Tty Save Mode Filter /tmp/pardes-snap/load/cwd Tty Save Mode Filter
| $ echo LOAD''MARK; seq 1 40; echo E''ND $ ls
diff --git a/test/snapshots/logquiet.golden b/test/snapshots/logquiet.golden
index 1289761b..e3fbe0f1 100644
--- a/test/snapshots/logquiet.golden
+++ b/test/snapshots/logquiet.golden
@@ -1,5 +1,5 @@
== snap quiet grid=100x31 cursor=62,5
-|Newcol Joincol Find Grep Help Changelog Tutor Dump NextColor Debug Kill
+|Newcol Joincol Find Grep Help Changelog Tutor Dump NextColor Debug Exit
| New Tty Find Grep Joincol Delcol
|$ /tmp/pardes-snap/logquiet/cwd Tty Save Mode Filter Collapse Del
| $ ls
diff --git a/test/snapshots/look-center.golden b/test/snapshots/look-center.golden
index 281753fa..bd97a25d 100644
--- a/test/snapshots/look-center.golden
+++ b/test/snapshots/look-center.golden
@@ -1,5 +1,5 @@
== snap center-open grid=150x31 cursor=7,12
-|Newcol Joincol Find Grep Help Changelog Tutor Dump NextColor Debug Kill
+|Newcol Joincol Find Grep Help Changelog Tutor Dump NextColor Debug Exit
| New Tty Find Grep Joincol Delcol New Tty Find Grep Joincol Delcol
| /tmp/pardes-snap/look-center/cwd Tty Save Mode Filter Collapse Del /tmp/pardes-snap/look-center/cwd Tty Save Mode Filter Collapse Del
| ls ls
diff --git a/test/snapshots/look-dir.golden b/test/snapshots/look-dir.golden
index b4b9d642..1d9f12e3 100644
--- a/test/snapshots/look-dir.golden
+++ b/test/snapshots/look-dir.golden
@@ -1,5 +1,5 @@
== snap dir-open grid=100x31 cursor=4,9
-|Newcol Joincol Find Grep Help Changelog Tutor Dump NextColor Debug Kill
+|Newcol Joincol Find Grep Help Changelog Tutor Dump NextColor Debug Exit
| New Tty Find Grep Joincol Delcol New Tty Find Grep Joincol Delcol
| /tmp/pardes-snap/look-dir/cwd Tty Save Mode Fil /tmp/pardes-snap/look-dir/cwd Tty Save Mode Fil
| ls ls
diff --git a/test/snapshots/look-file-1col.golden b/test/snapshots/look-file-1col.golden
index 5eee656e..fb0bd6cd 100644
--- a/test/snapshots/look-file-1col.golden
+++ b/test/snapshots/look-file-1col.golden
@@ -1,5 +1,5 @@
== snap file-open-1col grid=100x31 cursor=7,19
-|Newcol Joincol Find Grep Help Changelog Tutor Dump NextColor Debug Kill
+|Newcol Joincol Find Grep Help Changelog Tutor Dump NextColor Debug Exit
| New Tty Find Grep Joincol Delcol
| /tmp/pardes-snap/look-file-1col/cwd Tty Save Mode Filter Collapse Del
| ls
diff --git a/test/snapshots/look-file.golden b/test/snapshots/look-file.golden
index 474c4d1b..0091c966 100644
--- a/test/snapshots/look-file.golden
+++ b/test/snapshots/look-file.golden
@@ -1,5 +1,5 @@
== snap file-open grid=150x31 cursor=7,12
-|Newcol Joincol Find Grep Help Changelog Tutor Dump NextColor Debug Kill
+|Newcol Joincol Find Grep Help Changelog Tutor Dump NextColor Debug Exit
| New Tty Find Grep Joincol Delcol New Tty Find Grep Joincol Delcol
| /tmp/pardes-snap/look-file/cwd Tty Save Mode Filter Collapse Del /tmp/pardes-snap/look-file/cwd Tty Save Mode Filter Collapse Del
| ls ls
diff --git a/test/snapshots/lookloaded.golden b/test/snapshots/lookloaded.golden
index 35b32c80..cc2f4313 100644
--- a/test/snapshots/lookloaded.golden
+++ b/test/snapshots/lookloaded.golden
@@ -1,5 +1,5 @@
== snap file-open grid=100x31 cursor=7,12
-|Newcol Joincol Find Grep Help Changelog Tutor Dump NextColor Debug Kill
+|Newcol Joincol Find Grep Help Changelog Tutor Dump NextColor Debug Exit
| New Tty Find Grep Joincol Delcol New Tty Find Grep Joincol Delcol
| /tmp/pardes-snap/lookloaded/cwd Tty Save Mode F /tmp/pardes-snap/lookloaded/cwd Tty Save Mode F
| ls ls
diff --git a/test/snapshots/lookpanes.golden b/test/snapshots/lookpanes.golden
index c2ef30cb..ae63b50f 100644
--- a/test/snapshots/lookpanes.golden
+++ b/test/snapshots/lookpanes.golden
@@ -1,5 +1,5 @@
== snap shells grid=130x51 cursor=122,4
-|Newcol Joincol Find Grep Help Changelog Tutor Dump NextColor Debug Kill
+|Newcol Joincol Find Grep Help Changelog Tutor Dump NextColor Debug Exit
| New Tty Find Grep Joincol Delcol New Tty Find Grep Joincol Delcol
| /tmp/pardes-snap/lookpanes/cwd/beta/bmark.txt Save Tty Collaps /tmp/pardes-snap/lookpanes/cwd Tty Save Mode Filter Collapse D
| 1 both.txt ls
diff --git a/test/snapshots/lookrange.golden b/test/snapshots/lookrange.golden
index 129ee285..3db2246d 100644
--- a/test/snapshots/lookrange.golden
+++ b/test/snapshots/lookrange.golden
@@ -1,5 +1,5 @@
== snap opened grid=150x31 cursor=7,3
-|Newcol Joincol Find Grep Help Changelog Tutor Dump NextColor Debug Kill
+|Newcol Joincol Find Grep Help Changelog Tutor Dump NextColor Debug Exit
| New Tty Find Grep Joincol Delcol
| /tmp/pardes-snap/lookrange/cwd/look.txt Save Tty Collapse Del
| 1 r.txt:3-5
diff --git a/test/snapshots/lsp-client-edit.golden b/test/snapshots/lsp-client-edit.golden
index 18138dd7..c75bae4c 100644
--- a/test/snapshots/lsp-client-edit.golden
+++ b/test/snapshots/lsp-client-edit.golden
@@ -1,5 +1,5 @@
== snap formatted grid=100x25 cursor=7,4
-|Newcol Joincol Find Grep Help Changelog Tutor Dump NextColor Debug Kill
+|Newcol Joincol Find Grep Help Changelog Tutor Dump NextColor Debug Exit
| New Tty Find Grep Joincol Delcol
| /tmp/pardes-snap/lsp-client-edit/cwd/main.rs * Save Tty Collapse Del TreeContext
| 1 // formatted by mock formatted 1 range(s)
diff --git a/test/snapshots/lsp-client.golden b/test/snapshots/lsp-client.golden
index 54276958..3dfcdd28 100644
--- a/test/snapshots/lsp-client.golden
+++ b/test/snapshots/lsp-client.golden
@@ -1,5 +1,5 @@
== snap gd-jumped grid=100x25 cursor=16,16
-|Newcol Joincol Find Grep Help Changelog Tutor Dump NextColor Debug Kill
+|Newcol Joincol Find Grep Help Changelog Tutor Dump NextColor Debug Exit
| New Tty Find Grep Joincol Delcol
| /tmp/pardes-snap/lsp-client/cwd/main.rs Save Tty Collapse Del TreeContext
| 1 mod lib; --:--:-- lsp rust-analyzer: ready
diff --git a/test/snapshots/lsp-rename.golden b/test/snapshots/lsp-rename.golden
index 75d87879..f6dc8358 100644
--- a/test/snapshots/lsp-rename.golden
+++ b/test/snapshots/lsp-rename.golden
@@ -1,5 +1,5 @@
== snap renamed grid=110x25 cursor=17,10
-|Newcol Joincol Find Grep Help Changelog Tutor Dump NextColor Debug Kill
+|Newcol Joincol Find Grep Help Changelog Tutor Dump NextColor Debug Exit
| New Tty Find Grep Joincol Delcol
| /tmp/pardes-snap/lsp-rename/cwd/rename.zig * Save Tty Collapse Del TreeContext
| 1 const std = @import("std"); renamed 2 range(s)
diff --git a/test/snapshots/lsp.golden b/test/snapshots/lsp.golden
index 82b53957..d6ffcc73 100644
--- a/test/snapshots/lsp.golden
+++ b/test/snapshots/lsp.golden
@@ -1,5 +1,5 @@
== snap opened grid=120x41 cursor=7,3
-|Newcol Joincol Find Grep Help Changelog Tutor Dump NextColor Debug Kill
+|Newcol Joincol Find Grep Help Changelog Tutor Dump NextColor Debug Exit
| New Tty Find Grep Joincol Delcol
| /tmp/pardes-snap/lsp/cwd/a.zig Save Tty Collapse Del TreeContext
| 1 const std = @import("std");
diff --git a/test/snapshots/lspcomplete.golden b/test/snapshots/lspcomplete.golden
index 7af75baf..8efa7edf 100644
--- a/test/snapshots/lspcomplete.golden
+++ b/test/snapshots/lspcomplete.golden
@@ -1,5 +1,5 @@
== snap opened grid=120x41 cursor=7,3
-|Newcol Joincol Find Grep Help Changelog Tutor Dump NextColor Debug Kill
+|Newcol Joincol Find Grep Help Changelog Tutor Dump NextColor Debug Exit
| New Tty Find Grep Joincol Delcol
| /tmp/pardes-snap/lspcomplete/cwd/a.zig Save Tty Collapse Del TreeContext
| 1 const Shade = enum {
@@ -30,13 +30,13 @@
== snap step grid=120x41 cursor=19,4
|2: /tmp/pardes-snap/lspcomplete/cwd/a.zig * Save Tty Collapse Del TreeContext
== snap txtindent grid=120x41 cursor=15,3
-|Newcol Joincol Find Grep Help Changelog Tutor Dump NextColor Debug Kill
+|Newcol Joincol Find Grep Help Changelog Tutor Dump NextColor Debug Exit
| New Tty Find Grep Joincol Delcol
|^ /tmp/pardes-snap/lspcomplete/cwd/notes.txt * Save Tty Collapse Del
| 1 abc. def ghi
| 2
== snap nosemi grid=100x19 cursor=29,9
-|Newcol Joincol Find Grep Help Changelog Tutor Dump NextColor Debug Kill
+|Newcol Joincol Find Grep Help Changelog Tutor Dump NextColor Debug Exit
| New Tty Find Grep Joincol Delcol
|^ /tmp/pardes-snap/lspcomplete/cwd/c.zig * Save Tty Collapse Del TreeContext
| 1 const Shade = enum {
@@ -56,7 +56,7 @@
| 1 c.zig:2:5-13 verdigris verdigris,
| 2 c.zig:3:5-12 cinnabar cinnabar,
== snap nobrace grid=100x19 cursor=16,10
-|Newcol Joincol Find Grep Help Changelog Tutor Dump NextColor Debug Kill
+|Newcol Joincol Find Grep Help Changelog Tutor Dump NextColor Debug Exit
| New Tty Find Grep Joincol Delcol
|^ /tmp/pardes-snap/lspcomplete/cwd/d.zig * Save Tty Collapse Del TreeContext
| 1 const Shade = enum {
diff --git a/test/snapshots/lspcompletemoved.golden b/test/snapshots/lspcompletemoved.golden
index af6616af..f12b3f0c 100644
--- a/test/snapshots/lspcompletemoved.golden
+++ b/test/snapshots/lspcompletemoved.golden
@@ -1,5 +1,5 @@
== snap typedthrough grid=120x21 cursor=16,14
-|Newcol Joincol Find Grep Help Changelog Tutor Dump NextColor Debug Kill
+|Newcol Joincol Find Grep Help Changelog Tutor Dump NextColor Debug Exit
| New Tty Find Grep Joincol Delcol
|^ /tmp/pardes-snap/lspcompletemoved/cwd/a.zig * Save Tty Collapse Del TreeContext
| 1 const Shade = enum {
diff --git a/test/snapshots/lspdebug.golden b/test/snapshots/lspdebug.golden
index a2182231..cf2eb097 100644
--- a/test/snapshots/lspdebug.golden
+++ b/test/snapshots/lspdebug.golden
@@ -1,5 +1,5 @@
== snap opened grid=120x45 cursor=7,3
-|Newcol Joincol Find Grep Help Changelog Tutor Dump NextColor Debug Kill
+|Newcol Joincol Find Grep Help Changelog Tutor Dump NextColor Debug Exit
| New Tty Find Grep Joincol Delcol
| /tmp/pardes-snap/lspdebug/cwd/z.zig Save Tty Collapse Del TreeContext
| 1 const std = @import("std");
diff --git a/test/snapshots/lsprelpath.golden b/test/snapshots/lsprelpath.golden
index fdca756d..96dc4c99 100644
--- a/test/snapshots/lsprelpath.golden
+++ b/test/snapshots/lsprelpath.golden
@@ -1,5 +1,5 @@
== snap absrow grid=100x35 cursor=16,7
-|Newcol Joincol Find Grep Help Changelog Tutor Dump NextColor Debug Kill
+|Newcol Joincol Find Grep Help Changelog Tutor Dump NextColor Debug Exit
| New Tty Find Grep Joincol Delcol
|^ /tmp/pardes-snap/lsprelpath/cwd/sub/parent.zig * Save Tty Collapse Del TreeContext
| 1 const shade = @import("../shade.zig");
@@ -79,7 +79,7 @@
|33: 0-0 d,#608269, 1-1 d,#0d1410, 2-54 #59675c,#0d1410, 55-76 #e5eee5,#0d1410, 77-99 d,#0d1410,
|34: 0-0 d,#152019, 1-1 d,#0d1410, 2-54 #59675c,#0d1410, 55-74 #e5eee5,#0d1410, 75-99 d,#0d1410,
== snap subrow grid=100x35 cursor=16,7
-|Newcol Joincol Find Grep Help Changelog Tutor Dump NextColor Debug Kill
+|Newcol Joincol Find Grep Help Changelog Tutor Dump NextColor Debug Exit
| New Tty Find Grep Joincol Delcol
|^ /tmp/pardes-snap/lsprelpath/cwd/sub/subdir.zig * Save Tty Collapse Del TreeContext
| 1 const tint = @import("inner/tint.zig");
diff --git a/test/snapshots/markup.golden b/test/snapshots/markup.golden
index ca69d0f7..fb76f973 100644
--- a/test/snapshots/markup.golden
+++ b/test/snapshots/markup.golden
@@ -1,5 +1,5 @@
== snap typst grid=92x25 cursor=7,3
-|Newcol Joincol Find Grep Help Changelog Tutor Dump NextColor Debug Kill
+|Newcol Joincol Find Grep Help Changelog Tutor Dump NextColor Debug Exit
| New Tty Find Grep Joincol Delcol
| /tmp/pardes-snap/markup/cwd/paper.typ Save Tty Collapse Del TreeContext
| 1 = Typst heading
@@ -38,7 +38,7 @@
|23: 0-0 d,#608269, 1-1 d,#0d1410, 2-6 #59675c,#0d1410, 7-91 d,#0d1410,
|24: 0-0 d,#608269, 1-1 d,#0d1410, 2-6 #59675c,#0d1410, 7-91 d,#0d1410,
== snap markdown grid=92x25 cursor=7,3
-|Newcol Joincol Find Grep Help Changelog Tutor Dump NextColor Debug Kill
+|Newcol Joincol Find Grep Help Changelog Tutor Dump NextColor Debug Exit
| New Tty Find Grep Joincol Delcol
| /tmp/pardes-snap/markup/cwd/notes.md Save Tty Collapse Del TreeContext
| 1 # Markdown heading with *italic*
diff --git a/test/snapshots/mini.golden b/test/snapshots/mini.golden
index 3f4e2889..cb51368d 100644
--- a/test/snapshots/mini.golden
+++ b/test/snapshots/mini.golden
@@ -1,5 +1,5 @@
== snap opened grid=90x23 cursor=7,14
-|Newcol Joincol Find Grep Help Changelog Tutor Dump NextColor Debug Kill
+|Newcol Joincol Find Grep Help Changelog Tutor Dump NextColor Debug Exit
| New Tty Find Grep Joincol Delcol
| /tmp/pardes-snap/mini/cwd/commands.txt Save Tty Collapse Del
| 1 @`Mini demo.zig` Mini
@@ -42,7 +42,7 @@
|21: 0-0 d,#608269, 1-1 d,#0d1410, 2-6 #59675c,#0d1410, 7-89 d,#0d1410,
|22: 0-0 d,#608269, 1-1 d,#0d1410, 2-6 #59675c,#0d1410, 7-89 d,#0d1410,
== 9p opened grid=90x23 cursor=7,14,block
-|0: Newcol Joincol Find Grep Help Changelog Tutor Dump NextColor Debug Kill
+|0: Newcol Joincol Find Grep Help Changelog Tutor Dump NextColor Debug Exit
@0: 0-70 #b2c3b8,#1d2824,,tagline 71-89 d,#1d2824,,tagline
|1: New Tty Find Grep Joincol Delcol
@1: 0-1 #ffffff,#887455,,tagline 2-2 d,#26362d,,tagline 3-34 #becfc4,#26362d,,tagline 35-89 d,#26362d,,tagline
@@ -113,7 +113,7 @@
|15: 0-0 d,#608269, 1-1 d,#0d1410, 2-6 #59675c,#0d1410, 7-8 #b9f480,#0d1410, 9-11 #c9a7ed,#0d1410, 12-25 #b9f480,#0d1410, 26-89 d,#0d1410,
|16: 0-0 d,#608269, 1-1 d,#0d1410, 2-6 #59675c,#0d1410, 7-17 #e5eee5,#0d1410, 18-19 #f8c082,#0d1410, 20-20 #e5eee5,#0d1410, 21-89 d,#0d1410,
== snap resized grid=105x27 cursor=7,16
-|Newcol Joincol Find Grep Help Changelog Tutor Dump NextColor Debug Kill
+|Newcol Joincol Find Grep Help Changelog Tutor Dump NextColor Debug Exit
| New Tty Find Grep Joincol Delcol
| /tmp/pardes-snap/mini/cwd/commands.txt Save Tty Collapse Del
| 1 @`Mini demo.zig`
@@ -134,7 +134,7 @@
| 3 ⠉⠉⠁⠉⠉⠉⠈⠈⠉⠉⠉⠉⠉⠉
| 4
== 9p resized grid=105x27 cursor=7,16,block
-|0: Newcol Joincol Find Grep Help Changelog Tutor Dump NextColor Debug Kill
+|0: Newcol Joincol Find Grep Help Changelog Tutor Dump NextColor Debug Exit
@0: 0-70 #b2c3b8,#1d2824,,tagline 71-104 d,#1d2824,,tagline
|1: New Tty Find Grep Joincol Delcol
@1: 0-1 #ffffff,#887455,,tagline 2-2 d,#26362d,,tagline 3-34 #becfc4,#26362d,,tagline 35-104 d,#26362d,,tagline
diff --git a/test/snapshots/modal.golden b/test/snapshots/modal.golden
index 5f313dd3..2f71290b 100644
--- a/test/snapshots/modal.golden
+++ b/test/snapshots/modal.golden
@@ -1,5 +1,5 @@
== snap top grid=100x31 cursor=2,3
-|Newcol Joincol Find Grep Help Changelog Tutor Dump NextColor Debug Kill
+|Newcol Joincol Find Grep Help Changelog Tutor Dump NextColor Debug Exit
| New Tty Find Grep Joincol Delcol New Tty Find Grep Joincol Delcol
| /tmp/pardes-snap/modal/cwd Tty Save Mode Filter /tmp/pardes-snap/modal/cwd Tty Save Mode Filter
| ls ls
diff --git a/test/snapshots/msg.golden b/test/snapshots/msg.golden
index 1d5b4cc2..d9a4a079 100644
--- a/test/snapshots/msg.golden
+++ b/test/snapshots/msg.golden
@@ -1,5 +1,5 @@
== snap opened grid=70x15 cursor=7,3
-|Newcol Joincol Find Grep Help Changelog Tutor Dump NextColor Debug Kil
+|Newcol Joincol Find Grep Help Changelog Tutor Dump NextColor Debug Exi
| New Tty Find Grep Joincol Delcol
| /tmp/pardes-snap/msg/cwd/a.txt Save Tty Collapse Del
| 1 line 1
@@ -12,7 +12,7 @@
== snap saved grid=70x15 cursor=7,3
|3: 1 line 1 --:--:-- saved /tmp/pardes-snap/msg/cwd/a.txt
== snap repainted grid=70x17 cursor=7,3
-|Newcol Joincol Find Grep Help Changelog Tutor Dump NextColor Debug Kil
+|Newcol Joincol Find Grep Help Changelog Tutor Dump NextColor Debug Exi
| New Tty Find Grep Joincol Delcol
| /tmp/pardes-snap/msg/cwd/a.txt Save Tty Collapse Del
| 1 line 1 --:--:-- saved /tmp/pardes-snap/msg/cwd/a.txt
diff --git a/test/snapshots/multicursor.golden b/test/snapshots/multicursor.golden
index 7a602aab..8f4c4451 100644
--- a/test/snapshots/multicursor.golden
+++ b/test/snapshots/multicursor.golden
@@ -1,5 +1,5 @@
== snap three-cursors grid=150x31 cursor=7,9
-|Newcol Joincol Find Grep Help Changelog Tutor Dump NextColor Debug Kill
+|Newcol Joincol Find Grep Help Changelog Tutor Dump NextColor Debug Exit
| New Tty Find Grep Joincol Delcol New Tty Find Grep Joincol Delcol
| /tmp/pardes-snap/multicursor/cwd Tty Save Mode Filter Collapse Del /tmp/pardes-snap/multicursor/cwd Tty Save Mode Filter Collapse Del
| ls ls
diff --git a/test/snapshots/nested-optout.golden b/test/snapshots/nested-optout.golden
index 5d3fb8a7..1fa7cbe5 100644
--- a/test/snapshots/nested-optout.golden
+++ b/test/snapshots/nested-optout.golden
@@ -1,23 +1,23 @@
== snap optout-file grid=100x31 cursor=9,6
-|Newcol Joincol Find Grep Help Changelog Tutor Dump NextColor Debug Kill
+|Newcol Joincol Find Grep Help Changelog Tutor Dump NextColor Debug Exit
|New Tty Find Grep Joincol
|$ /tmp/pardes-snap/nested-optout/cwd Save Tty Del Togglettymode Filter Collapse
-| Newcol Joincol Find Grep Help Changelog Tutor Dump NextColor Debug Kill
+| Newcol Joincol Find Grep Help Changelog Tutor Dump NextColor Debug Exit
| New Tty Find Grep Joincol
| /tmp/pardes-snap/nested-optout/cwd/nested.txt Save Tty Del Collapse
| 1 optout-marker
| 2 second-optout-line
| 3
== snap inner-shell grid=100x31 cursor=6,6
-|Newcol Joincol Find Grep Help Changelog Tutor Dump NextColor Debug Kill
+|Newcol Joincol Find Grep Help Changelog Tutor Dump NextColor Debug Exit
|New Tty Find Grep Joincol
|$ /tmp/pardes-snap/nested-optout/cwd Save Tty Del Togglettymode Filter Collapse
-| Newcol Joincol Find Grep Help Changelog Tutor Dump NextColor Debug Kill
+| Newcol Joincol Find Grep Help Changelog Tutor Dump NextColor Debug Exit
| New Tty Find Grep Joincol
| $ /tmp/pardes-snap/nested-optout/cwd/innerdir Save Tty Del Togglettymode Filter Collapse
| $
== snap inner-launch grid=100x31 cursor=11,9
-|6: Newcol Joincol Find Grep Help Changelog Tutor Dump NextColor Debug Kill
+|6: Newcol Joincol Find Grep Help Changelog Tutor Dump NextColor Debug Exit
|7: New Tty Find Grep Joincol
|8: /tmp/pardes-snap/nested-optout/cwd/innerdir/deeper.txt Save Tty Del Collapse
|9: 1 deepest-marker
diff --git a/test/snapshots/nested.golden b/test/snapshots/nested.golden
index 88b0854c..2b69b055 100644
--- a/test/snapshots/nested.golden
+++ b/test/snapshots/nested.golden
@@ -1,5 +1,5 @@
== snap file-arg grid=100x31 cursor=7,27
-|Newcol Joincol Find Grep Help Changelog Tutor Dump NextColor Debug Kill
+|Newcol Joincol Find Grep Help Changelog Tutor Dump NextColor Debug Exit
| New Tty Find Grep Joincol Delcol
|$ /tmp/pardes-snap/nested/cwd Tty Save Mode Filter Collapse Del
| $ $(readlink /proc/$PPID/exe) nested.txt
@@ -30,7 +30,7 @@
| 2 second-nested-line
| 3
== snap no-arg grid=100x31 cursor=4,7
-|Newcol Joincol Find Grep Help Changelog Tutor Dump NextColor Debug Kill
+|Newcol Joincol Find Grep Help Changelog Tutor Dump NextColor Debug Exit
| New Tty Find Grep Joincol Delcol
|$ /tmp/pardes-snap/nested/cwd Tty Save Mode Filter Collapse Del
| $ $(readlink /proc/$PPID/exe)
@@ -54,7 +54,7 @@
| /+New Save Tty Collapse Del
| 1
== snap dir-arg grid=100x31 cursor=4,8
-|Newcol Joincol Find Grep Help Changelog Tutor Dump NextColor Debug Kill
+|Newcol Joincol Find Grep Help Changelog Tutor Dump NextColor Debug Exit
| New Tty Find Grep Joincol Delcol
|$ /tmp/pardes-snap/nested/cwd Tty Save Mode Filter Collapse Del
| $ $(readlink /proc/$PPID/exe) nestdir
diff --git a/test/snapshots/ninep.golden b/test/snapshots/ninep.golden
index d4cb2a27..65fb38ec 100644
--- a/test/snapshots/ninep.golden
+++ b/test/snapshots/ninep.golden
@@ -1,5 +1,5 @@
== snap opened grid=90x15 cursor=7,3
-|Newcol Joincol Find Grep Help Changelog Tutor Dump NextColor Debug Kill
+|Newcol Joincol Find Grep Help Changelog Tutor Dump NextColor Debug Exit
| New Tty Find Grep Joincol Delcol
| /tmp/pardes-snap/ninep/cwd/demo.zig Save Tty Collapse Del TreeContext
| 1 const greeting = "café λ 界 é";
@@ -26,7 +26,7 @@
|13: 0-0 d,#608269, 1-1 d,#0d1410, 2-6 #59675c,#0d1410, 7-89 d,#0d1410,
|14: 0-0 d,#608269, 1-1 d,#0d1410, 2-6 #59675c,#0d1410, 7-89 d,#0d1410,
== 9p opened grid=90x15 cursor=7,3,block
-|0: Newcol Joincol Find Grep Help Changelog Tutor Dump NextColor Debug Kill
+|0: Newcol Joincol Find Grep Help Changelog Tutor Dump NextColor Debug Exit
@0: 0-70 #b2c3b8,#1d2824,,tagline 71-89 d,#1d2824,,tagline
|1: New Tty Find Grep Joincol Delcol
@1: 0-1 #ffffff,#887455,,tagline 2-2 d,#26362d,,tagline 3-34 #becfc4,#26362d,,tagline 35-89 d,#26362d,,tagline
@@ -147,7 +147,7 @@
|18: 0-0 d,#608269, 1-1 d,#0d1410, 2-6 #59675c,#0d1410, 7-104 d,#0d1410,
|19: 0-0 d,#608269, 1-1 d,#0d1410, 2-6 #59675c,#0d1410, 7-104 d,#0d1410,
== 9p resized grid=105x20 cursor=7,4,block
-|0: Newcol Joincol Find Grep Help Changelog Tutor Dump NextColor Debug Kill
+|0: Newcol Joincol Find Grep Help Changelog Tutor Dump NextColor Debug Exit
@0: 0-70 #b2c3b8,#1d2824,,tagline 71-104 d,#1d2824,,tagline
|1: New Tty Find Grep Joincol Delcol
@1: 0-1 #ffffff,#887455,,tagline 2-2 d,#26362d,,tagline 3-34 #becfc4,#26362d,,tagline 35-104 d,#26362d,,tagline
@@ -190,7 +190,7 @@
|19:
@19: 0-0 d,#608269,,body 1-1 d,#0d1410,,body 2-6 #59675c,#0d1410,,body 7-104 d,#0d1410,,body
== snap resized grid=105x20 cursor=7,4
-|Newcol Joincol Find Grep Help Changelog Tutor Dump NextColor Debug Kill
+|Newcol Joincol Find Grep Help Changelog Tutor Dump NextColor Debug Exit
| New Tty Find Grep Joincol Delcol
| /tmp/pardes-snap/ninep/cwd/demo.zig * Save Tty Collapse Del TreeContext
| 1 // café λ 界 Colors
diff --git a/test/snapshots/pipe.golden b/test/snapshots/pipe.golden
index 2e0b3fa6..14353ebf 100644
--- a/test/snapshots/pipe.golden
+++ b/test/snapshots/pipe.golden
@@ -1,5 +1,5 @@
== snap prompt grid=180x13 cursor=179,3
-|Newcol Joincol Find Grep Help Changelog Tutor Dump NextColor Debug Kill
+|Newcol Joincol Find Grep Help Changelog Tutor Dump NextColor Debug Exit
| New Tty Find Grep Joincol Delcol
| /tmp/pardes-snap/pipe/cwd/pipe.txt Save Tty Collapse Del
| 1 alpha beta |tr a-z A-Z
diff --git a/test/snapshots/psearch.golden b/test/snapshots/psearch.golden
index 8d9e5ee9..f21d8ae1 100644
--- a/test/snapshots/psearch.golden
+++ b/test/snapshots/psearch.golden
@@ -1,5 +1,5 @@
== snap output grid=140x31 cursor=4,9
-|Newcol Joincol Find Grep Help Changelog Tutor Dump NextColor Debug Kill
+|Newcol Joincol Find Grep Help Changelog Tutor Dump NextColor Debug Exit
| New Tty Find Grep Joincol Delcol
| /tmp/pardes-snap/psearch/cwd Tty Save Mode Filter Collapse Del
| printf 'x MA''RK a\nzz\nx MA''RK b\nzz\nx MA''RK c\n'
diff --git a/test/snapshots/reflow.golden b/test/snapshots/reflow.golden
index a13b5936..958fe934 100644
--- a/test/snapshots/reflow.golden
+++ b/test/snapshots/reflow.golden
@@ -1,5 +1,5 @@
== snap widened grid=200x25 cursor=4,16
-|Newcol Joincol Find Grep Help Changelog Tutor Dump NextColor Debug Kill
+|Newcol Joincol Find Grep Help Changelog Tutor Dump NextColor Debug Exit
| New Tty Find Grep Joincol Delcol
|$ /tmp/pardes-snap/reflow/cwd Tty Save Mode Filter Collapse Del
| yyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyy
diff --git a/test/snapshots/respawn.golden b/test/snapshots/respawn.golden
index e2b6a75c..f6027895 100644
--- a/test/snapshots/respawn.golden
+++ b/test/snapshots/respawn.golden
@@ -1,5 +1,5 @@
== snap respawn grid=140x31 cursor=4,9
-|Newcol Joincol Find Grep Help Changelog Tutor Dump NextColor Debug Kill
+|Newcol Joincol Find Grep Help Changelog Tutor Dump NextColor Debug Exit
| New Tty Find Grep Joincol Delcol New Tty Find Grep Joincol Delcol
| /tmp/pardes-snap/respawn/cwd Tty Save Mode Filter Collapse Del /tmp/pardes-snap/respawn/cwd Tty Save Mode Filter Collapse Del
| ls ls
diff --git a/test/snapshots/restore.golden b/test/snapshots/restore.golden
index 01b52984..d6c81e75 100644
--- a/test/snapshots/restore.golden
+++ b/test/snapshots/restore.golden
@@ -1,5 +1,5 @@
== snap dumped grid=100x31 cursor=4,6
-|Newcol Joincol Find Grep Help Changelog Tutor Dump NextColor Debug Kill Restore /tmp/pardes-snap/res
+|Newcol Joincol Find Grep Help Changelog Tutor Dump NextColor Debug Exit Restore /tmp/pardes-snap/res
| New Tty Find Grep Joincol Delcol
|$ /tmp/pardes-snap/restore/cwd Tty Save Mode Filter Collapse Del
| $ ls
@@ -7,6 +7,6 @@
| KEEPME
| $
== snap restored grid=100x31 cursor=4,8
-|0: Newcol Joincol Find Grep Help Changelog Tutor Dump NextColor Debug Kill
+|0: Newcol Joincol Find Grep Help Changelog Tutor Dump NextColor Debug Exit
|2: /tmp/pardes-snap/restore/cwd Tty Save Mode Filter Collapse Del
|7: ── restored history ──
diff --git a/test/snapshots/rsearch.golden b/test/snapshots/rsearch.golden
index 9b1f12d4..2f8214e0 100644
--- a/test/snapshots/rsearch.golden
+++ b/test/snapshots/rsearch.golden
@@ -1,5 +1,5 @@
== snap opened grid=210x31 cursor=7,3
-|Newcol Joincol Find Grep Help Changelog Tutor Dump NextColor Debug Kill
+|Newcol Joincol Find Grep Help Changelog Tutor Dump NextColor Debug Exit
| New Tty Find Grep Joincol Delcol New Tty Find Grep Joincol Delcol
| /tmp/pardes-snap/rsearch/cwd/code.txt Save Tty Collapse Del /tmp/pardes-snap/rsearch/cwd Tty Save Mode Filter Collapse Del
| 1 run count_x now ls
diff --git a/test/snapshots/savepane.golden b/test/snapshots/savepane.golden
index 23af2bd5..9a27342c 100644
--- a/test/snapshots/savepane.golden
+++ b/test/snapshots/savepane.golden
@@ -1,5 +1,5 @@
== snap scratch grid=100x31 cursor=20,6
-|Newcol Joincol Find Grep Help Changelog Tutor Dump NextColor Debug Kill
+|Newcol Joincol Find Grep Help Changelog Tutor Dump NextColor Debug Exit
| New Tty Find Grep Joincol Delcol
| /tmp/pardes-snap/savepane/cwd Tty Save Mode Filter Collapse Del
| ls
diff --git a/test/snapshots/scroll.golden b/test/snapshots/scroll.golden
index 86bad0e5..8a48dcca 100644
--- a/test/snapshots/scroll.golden
+++ b/test/snapshots/scroll.golden
@@ -1,5 +1,5 @@
== snap bottom grid=100x31 cursor=4,16
-|Newcol Joincol Find Grep Help Changelog Tutor Dump NextColor Debug Kill
+|Newcol Joincol Find Grep Help Changelog Tutor Dump NextColor Debug Exit
| New Tty Find Grep Joincol Delcol New Tty Find Grep Joincol Delcol
| /tmp/pardes-snap/scroll/cwd Tty Save Mode Filte /tmp/pardes-snap/scroll/cwd Tty Save Mode Filte
| 188 ls
diff --git a/test/snapshots/scrolloff.golden b/test/snapshots/scrolloff.golden
index 5ab9fa55..acc15f71 100644
--- a/test/snapshots/scrolloff.golden
+++ b/test/snapshots/scrolloff.golden
@@ -1,5 +1,5 @@
== snap top grid=210x12 cursor=7,3
-|Newcol Joincol Find Grep Help Changelog Tutor Dump NextColor Debug Kill
+|Newcol Joincol Find Grep Help Changelog Tutor Dump NextColor Debug Exit
| New Tty Find Grep Joincol Delcol New Tty Find Grep Joincol Delcol
| /tmp/pardes-snap/scrolloff/cwd/g.txt Save Tty Collapse Del /tmp/pardes-snap/scrolloff/cwd Tty Save Mode Filter Collapse Del
| 1 line 1 ls
diff --git a/test/snapshots/selarg.golden b/test/snapshots/selarg.golden
index 1a9fb86d..068a256d 100644
--- a/test/snapshots/selarg.golden
+++ b/test/snapshots/selarg.golden
@@ -1,5 +1,5 @@
== snap kept grid=100x31 cursor=6,3
-|Newcol Joincol Find Grep Help Changelog Tutor Dump NextColor Debug Kill
+|Newcol Joincol Find Grep Help Changelog Tutor Dump NextColor Debug Exit
| New Tty Find Grep Joincol Delcol New Tty Find Grep Joincol Delcol
| /tmp/pardes-snap/selarg/cwd Tty Save Mode Filte /tmp/pardes-snap/selarg/cwd Tty Save Mode Filte
| ZZARG ZZVEE ./c.sh
diff --git a/test/snapshots/selregex.golden b/test/snapshots/selregex.golden
index e28d47a5..8b45ae43 100644
--- a/test/snapshots/selregex.golden
+++ b/test/snapshots/selregex.golden
@@ -1,5 +1,5 @@
== snap prompt-armed grid=160x25 cursor=159,3
-|Newcol Joincol Find Grep Help Changelog Tutor Dump NextColor Debug Kill
+|Newcol Joincol Find Grep Help Changelog Tutor Dump NextColor Debug Exit
| New Tty Find Grep Joincol Delcol
| /tmp/pardes-snap/selregex/cwd/m.zig Save Tty Collapse Del TreeContext
| 1 const one = 1; Select /
diff --git a/test/snapshots/shellset.golden b/test/snapshots/shellset.golden
index d4ab24d9..f68065b9 100644
--- a/test/snapshots/shellset.golden
+++ b/test/snapshots/shellset.golden
@@ -1,5 +1,5 @@
== snap boot grid=90x21 cursor=7,3
-|Newcol Joincol Find Grep Help Changelog Tutor Dump NextColor Debug Kill
+|Newcol Joincol Find Grep Help Changelog Tutor Dump NextColor Debug Exit
| New Tty Find Grep Joincol Delcol
| /tmp/pardes-snap/shellset/cwd/cmd.txt Save Tty Collapse Del
| 1 Shell zznosuchshell
diff --git a/test/snapshots/shrinktag.golden b/test/snapshots/shrinktag.golden
index 8ff798fa..1fb12c15 100644
--- a/test/snapshots/shrinktag.golden
+++ b/test/snapshots/shrinktag.golden
@@ -1,5 +1,5 @@
== snap before grid=100x31 cursor=2,9
-|Newcol Joincol Find Grep Help Changelog Tutor Dump NextColor Debug Kill
+|Newcol Joincol Find Grep Help Changelog Tutor Dump NextColor Debug Exit
| New Tty Find Grep Joincol Delcol New Tty Find Grep Joincol Delcol
| /tmp/pardes-snap/shrinktag/cwd Tty Save Mode Fi /tmp/pardes-snap/shrinktag/cwd Tty Save Mode Fi
| ls ls
diff --git a/test/snapshots/splitparent.golden b/test/snapshots/splitparent.golden
index aedbdb8a..14b95f26 100644
--- a/test/snapshots/splitparent.golden
+++ b/test/snapshots/splitparent.golden
@@ -1,5 +1,5 @@
== snap shrunk grid=100x31 cursor=4,4
-|Newcol Joincol Find Grep Help Changelog Tutor Dump NextColor Debug Kill
+|Newcol Joincol Find Grep Help Changelog Tutor Dump NextColor Debug Exit
| New Tty Find Grep Joincol Delcol New Tty Find Grep Joincol Delcol
| /tmp/pardes-snap/splitparent/cwd Tty Save Mode /tmp/pardes-snap/splitparent/cwd Tty Save Mode
| /tmp/pardes-snap/splitparent/cwd Tty Save Mode ls
@@ -8,13 +8,13 @@
|6: /tmp/pardes-snap/splitparent/cwd Tty Save Mode
|7: ls
== snap tallest grid=100x6 cursor=54,5
-|Newcol Joincol Find Grep Help Changelog Tutor Dump NextColor Debug Kill
+|Newcol Joincol Find Grep Help Changelog Tutor Dump NextColor Debug Exit
| New Tty Find Grep Joincol Delcol New Tty Find Grep Joincol Delcol
| /tmp/pardes-snap/splitparent/cwd Tty Save Mode /tmp/pardes-snap/splitparent/cwd Tty Save Mode
| /tmp/pardes-snap/splitparent/cwd Tty Save Mode
| /tmp/pardes-snap/splitparent/cwd Tty Save Mode /tmp/pardes-snap/splitparent/cwd Tty Save Mode
== snap regrown grid=100x31 cursor=54,19
-|Newcol Joincol Find Grep Help Changelog Tutor Dump NextColor Debug Kill
+|Newcol Joincol Find Grep Help Changelog Tutor Dump NextColor Debug Exit
| New Tty Find Grep Joincol Delcol New Tty Find Grep Joincol Delcol
| /tmp/pardes-snap/splitparent/cwd Tty Save Mode /tmp/pardes-snap/splitparent/cwd Tty Save Mode
| /tmp/pardes-snap/splitparent/cwd Tty Save Mode ls
diff --git a/test/snapshots/stepgrain.golden b/test/snapshots/stepgrain.golden
index a6473d92..6d3ba91f 100644
--- a/test/snapshots/stepgrain.golden
+++ b/test/snapshots/stepgrain.golden
@@ -1,5 +1,5 @@
== snap results grid=150x31 cursor=7,3
-|Newcol Joincol Find Grep Help Changelog Tutor Dump NextColor Debug Kill
+|Newcol Joincol Find Grep Help Changelog Tutor Dump NextColor Debug Exit
| New Tty Find Grep Joincol Delcol
| /tmp/pardes-snap/stepgrain/cwd/a.txt Save Tty Collapse Del
| 1 hello ZQMARK one
diff --git a/test/snapshots/syntax.golden b/test/snapshots/syntax.golden
index 08f74758..cf8c6d9a 100644
--- a/test/snapshots/syntax.golden
+++ b/test/snapshots/syntax.golden
@@ -1,5 +1,5 @@
== snap zig-open grid=150x31 cursor=7,7
-|Newcol Joincol Find Grep Help Changelog Tutor Dump NextColor Debug Kill
+|Newcol Joincol Find Grep Help Changelog Tutor Dump NextColor Debug Exit
| New Tty Find Grep Joincol Delcol New Tty Find Grep Joincol Delcol
| /tmp/pardes-snap/syntax/cwd Tty Save Mode Filter Collapse Del /tmp/pardes-snap/syntax/cwd Tty Save Mode Filter Collapse Del
| ls ls
diff --git a/test/snapshots/tag.golden b/test/snapshots/tag.golden
index 60eced41..b6403902 100644
--- a/test/snapshots/tag.golden
+++ b/test/snapshots/tag.golden
@@ -1,5 +1,5 @@
== snap tag-focus grid=150x31 cursor=31,2
-|Newcol Joincol Find Grep Help Changelog Tutor Dump NextColor Debug Kill
+|Newcol Joincol Find Grep Help Changelog Tutor Dump NextColor Debug Exit
| New Tty Find Grep Joincol Delcol New Tty Find Grep Joincol Delcol
| /tmp/pardes-snap/tag/cwd Tty Save Mode Filter Collapse Del /tmp/pardes-snap/tag/cwd Tty Save Mode Filter Collapse Del
| ls ls
diff --git a/test/snapshots/tagalign.golden b/test/snapshots/tagalign.golden
index 6d61ad2f..72133440 100644
--- a/test/snapshots/tagalign.golden
+++ b/test/snapshots/tagalign.golden
@@ -1,5 +1,5 @@
== snap aligned grid=100x31 cursor=4,20
-|Newcol Joincol Find Grep Help Changelog Tutor Dump NextColor Debug Kill
+|Newcol Joincol Find Grep Help Changelog Tutor Dump NextColor Debug Exit
| New Tty Find Grep Joincol Delcol
| /tmp/pardes-snap/tagalign/cwd/deep/nested-project-directory/document.txt Save Tty Collapse Del
| 1 alpha
@@ -20,7 +20,7 @@
| ls
| deep
== snap fits grid=87x31 cursor=4,20
-|Newcol Joincol Find Grep Help Changelog Tutor Dump NextColor Debug Kill
+|Newcol Joincol Find Grep Help Changelog Tutor Dump NextColor Debug Exit
| New Tty Find Grep Joincol Delcol
| /tmp/pardes-snap/tagalign/cwd/deep/nested-project-directory/document.txt Save Tty Co
| 1 alpha
@@ -41,7 +41,7 @@
| ls
| deep
== snap overby1 grid=86x31 cursor=4,20
-|Newcol Joincol Find Grep Help Changelog Tutor Dump NextColor Debug Kill
+|Newcol Joincol Find Grep Help Changelog Tutor Dump NextColor Debug Exit
| New Tty Find Grep Joincol Delcol
| /tmp/pardes-snap/tagalign/cwd/deep/nested-project-directory/document.txt Save Tty C
| 1 alpha
@@ -62,7 +62,7 @@
| ls
| deep
== snap clicked grid=100x31 cursor=11,2
-|Newcol Joincol Find Grep Help Changelog Tutor Dump NextColor Debug Kill
+|Newcol Joincol Find Grep Help Changelog Tutor Dump NextColor Debug Exit
| New Tty Find Grep Joincol Delcol
| /tmp/pardes-snap/tagalign/cwd/deep/nested-project-directory/document.txt Save Tty Collapse Del
| 1 alpha
@@ -83,7 +83,7 @@
| ls
| deep
== snap revealed grid=70x31 cursor=69,2
-|Newcol Joincol Find Grep Help Changelog Tutor Dump NextColor Debug Kil
+|Newcol Joincol Find Grep Help Changelog Tutor Dump NextColor Debug Exi
| New Tty Find Grep Joincol Delcol
| d/deep/nested-project-directory/document.txt Save Tty Collapse Del
| 1 alpha
diff --git a/test/snapshots/tagalign2col.golden b/test/snapshots/tagalign2col.golden
index afa1c1ec..81329d0c 100644
--- a/test/snapshots/tagalign2col.golden
+++ b/test/snapshots/tagalign2col.golden
@@ -1,5 +1,5 @@
== snap onecol grid=160x31 cursor=7,3
-|Newcol Joincol Find Grep Help Changelog Tutor Dump NextColor Debug Kill
+|Newcol Joincol Find Grep Help Changelog Tutor Dump NextColor Debug Exit
| New Tty Find Grep Joincol Delcol New Tty Find Grep Joincol Delcol
| /tmp/pardes-snap/tagalign2col/cwd/deep/proj/document.txt Save Tty Collapse De /tmp/pardes-snap/tagalign2col/cwd Tty Save Mode Filter Collapse Del
| 1 alpha ls Left
diff --git a/test/snapshots/tagbottom.golden b/test/snapshots/tagbottom.golden
index 95ef0529..8d770358 100644
--- a/test/snapshots/tagbottom.golden
+++ b/test/snapshots/tagbottom.golden
@@ -1,5 +1,5 @@
== snap boot grid=100x31 cursor=7,3
-|Newcol Joincol Find Grep Help Changelog Tutor Dump NextColor Debug Kill
+|Newcol Joincol Find Grep Help Changelog Tutor Dump NextColor Debug Exit
| New Tty Find Grep Joincol Delcol
| /tmp/pardes-snap/tagbottom/cwd/top.txt Save Tty Collapse Del
| 1 aaa
diff --git a/test/snapshots/tagbottomimage.golden b/test/snapshots/tagbottomimage.golden
index 3f446682..06d23077 100644
--- a/test/snapshots/tagbottomimage.golden
+++ b/test/snapshots/tagbottomimage.golden
@@ -1,5 +1,5 @@
== snap img-top grid=150x31 cursor=11,8
-|Newcol Joincol Find Grep Help Changelog Tutor Dump NextColor Debug Kill
+|Newcol Joincol Find Grep Help Changelog Tutor Dump NextColor Debug Exit
| New Tty Find Grep Joincol Delcol
| /tmp/pardes-snap/tagbottomimage/cwd Tty Save Mode Filter Collapse Del
| ls
diff --git a/test/snapshots/tagbottomshort.golden b/test/snapshots/tagbottomshort.golden
index c11fe4ac..3fd3b180 100644
--- a/test/snapshots/tagbottomshort.golden
+++ b/test/snapshots/tagbottomshort.golden
@@ -1,5 +1,5 @@
== snap roomy grid=80x11 cursor=79,2
-|Newcol Joincol Find Grep Help Changelog Tutor Dump NextColor Debug Kill
+|Newcol Joincol Find Grep Help Changelog Tutor Dump NextColor Debug Exit
| New Tty Find Grep Joincol Delcol
| 1 one /ZZ
| 2 two
@@ -11,21 +11,21 @@
|
| /tmp/pardes-snap/tagbottomshort/cwd/s.txt Save Tty Collapse Del
== snap two-body grid=80x5 cursor=79,2
-|Newcol Joincol Find Grep Help Changelog Tutor Dump NextColor Debug Kill
+|Newcol Joincol Find Grep Help Changelog Tutor Dump NextColor Debug Exit
| New Tty Find Grep Joincol Delcol
| 1 one /ZZ
| 2 two
| /tmp/pardes-snap/tagbottomshort/cwd/s.txt Save Tty Collapse Del
== snap one-body grid=80x4 cursor=79,2
-|Newcol Joincol Find Grep Help Changelog Tutor Dump NextColor Debug Kill
+|Newcol Joincol Find Grep Help Changelog Tutor Dump NextColor Debug Exit
| New Tty Find Grep Joincol Delcol
| 1 one /ZZ
| /tmp/pardes-snap/tagbottomshort/cwd/s.txt Save Tty Collapse Del
== snap tag-only grid=80x2 cursor=79,1
-|Newcol Joincol Find Grep Help Changelog Tutor Dump NextColor Debug Kill
+|Newcol Joincol Find Grep Help Changelog Tutor Dump NextColor Debug Exit
| /tmp/pardes-snap/tagbottomshort/cwd/s.txt Save Tty Collapse Del
== snap regrown grid=80x11 cursor=79,2
-|Newcol Joincol Find Grep Help Changelog Tutor Dump NextColor Debug Kill
+|Newcol Joincol Find Grep Help Changelog Tutor Dump NextColor Debug Exit
| New Tty Find Grep Joincol Delcol
| 1 one /ZZ
| 2 two
@@ -37,7 +37,7 @@
|
| /tmp/pardes-snap/tagbottomshort/cwd/s.txt Save Tty Collapse Del
== snap leader-one-body grid=80x4 cursor=7,2
-|Newcol Joincol Find Grep Help Changelog Tutor Dump NextColor Debug Kill
+|Newcol Joincol Find Grep Help Changelog Tutor Dump NextColor Debug Exit
| New Tty Find Grep Joincol Delcol
| 1 one SPC
| /tmp/pardes-snap/tagbottomshort/cwd/s.txt Save Tty Collapse Del
diff --git a/test/snapshots/tagcmd.golden b/test/snapshots/tagcmd.golden
index 4270eb76..7853de32 100644
--- a/test/snapshots/tagcmd.golden
+++ b/test/snapshots/tagcmd.golden
@@ -1,5 +1,5 @@
== snap edited grid=100x31 cursor=13,3
-|Newcol Joincol Find Grep Help Changelog Tutor Dump NextColor Debug Kill
+|Newcol Joincol Find Grep Help Changelog Tutor Dump NextColor Debug Exit
| New Tty Find Grep Joincol Delcol
| /tmp/pardes-snap/tagcmd/cwd/c.txt * Save Tty Collapse Del
| 1 ZZEDITline 1
diff --git a/test/snapshots/tagnav.golden b/test/snapshots/tagnav.golden
index 45d64b42..61a40af5 100644
--- a/test/snapshots/tagnav.golden
+++ b/test/snapshots/tagnav.golden
@@ -1,5 +1,5 @@
== snap start grid=100x31 cursor=7,3
-|Newcol Joincol Find Grep Help Changelog Tutor Dump NextColor Debug Kill
+|Newcol Joincol Find Grep Help Changelog Tutor Dump NextColor Debug Exit
| New Tty Find Grep Joincol Delcol New Tty Find Grep Joincol Delcol
| /tmp/pardes-snap/tagnav/cwd/w.txt Save Tty Coll /tmp/pardes-snap/tagnav/cwd Tty Save Mode Filte
| 1 alpha ls
@@ -51,12 +51,12 @@
|3: 1 alpha ls
== snap topbar-dump-word grid=100x31 cursor=46,0
== snap topbar-exec grid=100x31 cursor=7,3
-|0: Newcol Joincol Find Grep Help Changelog Tutor Dump NextColor Debug Kill Restore /tmp/pardes-snap/tag
+|0: Newcol Joincol Find Grep Help Changelog Tutor Dump NextColor Debug Exit Restore /tmp/pardes-snap/tag
|3: 1 alpha Dump ls
== snap topbar-restore-word grid=100x31 cursor=72,0
|3: 1 alpha ls
== snap topbar-restored grid=100x31 cursor=7,3
-|0: Newcol Joincol Find Grep Help Changelog Tutor Dump NextColor Debug Kill
+|0: Newcol Joincol Find Grep Help Changelog Tutor Dump NextColor Debug Exit
|3: 1 alpha $ ls
|5: 3 gamma $
|6: ── restored history ──
diff --git a/test/snapshots/tagnav.snap b/test/snapshots/tagnav.snap
index c9ac9605..95c4b751 100644
--- a/test/snapshots/tagnav.snap
+++ b/test/snapshots/tagnav.snap
@@ -94,7 +94,7 @@ key c-w k
stable 400 5000
snap workspace-tag
# `$` is the last cell; four long-word steps back land on `Dump`, and the
-# execute key runs it and gives the keyboard back to the body FIRST -- `Kill`
+# execute key runs it and gives the keyboard back to the body FIRST -- `Exit`
# lives up here too, so a builtin that frees the session must never return
# into a focused header. Dump grows a `Restore <path>` word, which is also the
# case where the line gets longer than the column you were parked on.
diff --git a/test/snapshots/tagpath.golden b/test/snapshots/tagpath.golden
index a2ea32fc..ba22a859 100644
--- a/test/snapshots/tagpath.golden
+++ b/test/snapshots/tagpath.golden
@@ -1,5 +1,5 @@
== snap start grid=100x31 cursor=7,3
-|Newcol Joincol Find Grep Help Changelog Tutor Dump NextColor Debug Kill
+|Newcol Joincol Find Grep Help Changelog Tutor Dump NextColor Debug Exit
| New Tty Find Grep Joincol Delcol
| /tmp/pardes-snap/tagpath/cwd/c.txt Save Tty Collapse Del
| 1 line 1
diff --git a/test/snapshots/theme.golden b/test/snapshots/theme.golden
index 39bfaa23..51bb77ff 100644
--- a/test/snapshots/theme.golden
+++ b/test/snapshots/theme.golden
@@ -1,5 +1,5 @@
== snap orchard grid=100x31 cursor=4,5
-|Newcol Joincol Find Grep Help Changelog Tutor Dump NextColor Debug Kill
+|Newcol Joincol Find Grep Help Changelog Tutor Dump NextColor Debug Exit
| New Tty Find Grep Joincol Delcol New Tty Find Grep Joincol Delcol
| /tmp/pardes-snap/theme/cwd Tty Save Mode Filter /tmp/pardes-snap/theme/cwd Tty Save Mode Filter
| ls ls
diff --git a/test/snapshots/themesel.golden b/test/snapshots/themesel.golden
index 8dd13c43..b3100e27 100644
--- a/test/snapshots/themesel.golden
+++ b/test/snapshots/themesel.golden
@@ -1,5 +1,5 @@
== snap boot grid=100x31 cursor=7,3
-|Newcol Joincol Find Grep Help Changelog Tutor Dump NextColor Debug Kill
+|Newcol Joincol Find Grep Help Changelog Tutor Dump NextColor Debug Exit
| New Tty Find Grep Joincol Delcol
| /tmp/pardes-snap/themesel/cwd/t.txt Save Tty Collapse Del
| 1 line 1
diff --git a/test/snapshots/tinywin.golden b/test/snapshots/tinywin.golden
index b759e810..0be511c7 100644
--- a/test/snapshots/tinywin.golden
+++ b/test/snapshots/tinywin.golden
@@ -1,5 +1,5 @@
== snap stacked grid=100x31 cursor=14,3
-|Newcol Joincol Find Grep Help Changelog Tutor Dump NextColor Debug Kill
+|Newcol Joincol Find Grep Help Changelog Tutor Dump NextColor Debug Exit
| New Tty Find Grep Joincol Delcol
|$ /tmp/pardes-snap/tinywin/cwd Tty Save Mode Filter Collapse Del
| $ :^[n^[n^[n
@@ -28,7 +28,7 @@
|$ /tmp/pardes-snap/tinywin/cwd Tty Save Mode Filter Collaps
| /+New Save Tty Collapse Del
== snap columns grid=100x31 cursor=23,3
-|Newcol Joincol Find Grep Help Changelog Tutor Dump NextColor Debug Kill
+|Newcol Joincol Find Grep Help Changelog Tutor Dump NextColor Debug Exit
| New Tty Find Grep Joincol Delcol
|$ /tmp/pardes-snap/tinywin/cwd Tty Save Mode Filter Collapse Del
| $ :^[n^[n^[n cn cn cn
diff --git a/test/snapshots/topbarexec.golden b/test/snapshots/topbarexec.golden
index 4218825b..d83dff70 100644
--- a/test/snapshots/topbarexec.golden
+++ b/test/snapshots/topbarexec.golden
@@ -1,5 +1,5 @@
== snap selected grid=90x21 cursor=14,4
-|Newcol Joincol Find Grep Help Changelog Tutor Dump NextColor Debug Kill
+|Newcol Joincol Find Grep Help Changelog Tutor Dump NextColor Debug Exit
| New Tty Find Grep Joincol Delcol New Tty Find Grep Joincol Delcol
| /tmp/pardes-snap/topbarexec/cwd Tty Save M /tmp/pardes-snap/topbarexec/cwd Tty Save M
| ls ls
diff --git a/test/snapshots/topbarexec.snap b/test/snapshots/topbarexec.snap
index f5f09a08..516a23b3 100644
--- a/test/snapshots/topbarexec.snap
+++ b/test/snapshots/topbarexec.snap
@@ -4,8 +4,8 @@
# selection at all.
#
# But a selection is only an argument to a builtin that has somewhere to put
-# one. `Kill`, `Debug`, `NextColor` and the rest match their name WHOLE — that
-# is what makes `Kill foo` a shell command and not Kill — so splicing a sweep
+# one. `Exit`, `Debug`, `NextColor` and the rest match their name WHOLE — that
+# is what makes `Exit foo` a shell command and not Exit — so splicing a sweep
# onto them produced a name matching no builtin, which fell out of the builtin
# parser and into a SHELL, as a command nobody typed (`bash: Debug: command
# not found`). It only ever bit you with a terminal open, because that is
diff --git a/test/snapshots/tty.golden b/test/snapshots/tty.golden
index 31aacf56..3bb73d72 100644
--- a/test/snapshots/tty.golden
+++ b/test/snapshots/tty.golden
@@ -1,5 +1,5 @@
== snap tty-on grid=100x31 cursor=4,5
-|Newcol Joincol Find Grep Help Changelog Tutor Dump NextColor Debug Kill
+|Newcol Joincol Find Grep Help Changelog Tutor Dump NextColor Debug Exit
| New Tty Find Grep Joincol Delcol New Tty Find Grep Joincol Delcol
|$ /tmp/pardes-snap/tty/cwd Tty Save Mode Filter C /tmp/pardes-snap/tty/cwd Tty Save Mode Filter C
| $ ls ls
diff --git a/test/snapshots/ttyclick.golden b/test/snapshots/ttyclick.golden
index 14344371..5eb8bc25 100644
--- a/test/snapshots/ttyclick.golden
+++ b/test/snapshots/ttyclick.golden
@@ -1,5 +1,5 @@
== snap tty-bodyclick grid=100x31 cursor=4,5
-|Newcol Joincol Find Grep Help Changelog Tutor Dump NextColor Debug Kill
+|Newcol Joincol Find Grep Help Changelog Tutor Dump NextColor Debug Exit
| New Tty Find Grep Joincol Delcol New Tty Find Grep Joincol Delcol
|$ /tmp/pardes-snap/ttyclick/cwd Tty Save Mode Fil /tmp/pardes-snap/ttyclick/cwd Tty Save Mode Fil
| $ ls ls
diff --git a/test/snapshots/ttyedit.golden b/test/snapshots/ttyedit.golden
index d76fc7e0..092cb481 100644
--- a/test/snapshots/ttyedit.golden
+++ b/test/snapshots/ttyedit.golden
@@ -1,5 +1,5 @@
== snap before grid=100x31 cursor=7,7
-|Newcol Joincol Find Grep Help Changelog Tutor Dump NextColor Debug Kill
+|Newcol Joincol Find Grep Help Changelog Tutor Dump NextColor Debug Exit
| New Tty Find Grep Joincol Delcol New Tty Find Grep Joincol Delcol
| /tmp/pardes-snap/ttyedit/cwd Tty Save Mode Filt /tmp/pardes-snap/ttyedit/cwd Tty Save Mode Filt
| ls ls
diff --git a/test/snapshots/ttyfollow.golden b/test/snapshots/ttyfollow.golden
index 77f27d8e..d0b554bd 100644
--- a/test/snapshots/ttyfollow.golden
+++ b/test/snapshots/ttyfollow.golden
@@ -1,5 +1,5 @@
== snap held-pre grid=100x31 cursor=4,16
-|Newcol Joincol Find Grep Help Changelog Tutor Dump NextColor Debug Kill
+|Newcol Joincol Find Grep Help Changelog Tutor Dump NextColor Debug Exit
| New Tty Find Grep Joincol Delcol New Tty Find Grep Joincol Delcol
| /tmp/pardes-snap/ttyfollow/cwd Tty Save Mode Fi /tmp/pardes-snap/ttyfollow/cwd Tty Save Mode Fi
| 185 ls
diff --git a/test/snapshots/ttyhelp.golden b/test/snapshots/ttyhelp.golden
index b6125242..be95be2b 100644
--- a/test/snapshots/ttyhelp.golden
+++ b/test/snapshots/ttyhelp.golden
@@ -1,5 +1,5 @@
== snap boot grid=100x31 cursor=4,3
-|Newcol Joincol Find Grep Help Changelog Tutor Dump NextColor Debug Kill
+|Newcol Joincol Find Grep Help Changelog Tutor Dump NextColor Debug Exit
| New Tty Find Grep Joincol Delcol
|$ /tmp/pardes-snap/ttyhelp/cwd Tty Save Mode Filter Collapse Del
| $
diff --git a/test/snapshots/ttylook.golden b/test/snapshots/ttylook.golden
index 122eba66..108a8f86 100644
--- a/test/snapshots/ttylook.golden
+++ b/test/snapshots/ttylook.golden
@@ -1,5 +1,5 @@
== snap tok1 grid=120x31 cursor=2,4
-|Newcol Joincol Find Grep Help Changelog Tutor Dump NextColor Debug Kill
+|Newcol Joincol Find Grep Help Changelog Tutor Dump NextColor Debug Exit
| New Tty Find Grep Joincol Delcol New Tty Find Grep Joincol Delcol
| /tmp/pardes-snap/ttylook/cwd Tty Save Mode Filter Collaps /tmp/pardes-snap/ttylook/cwd Tty Save Mode Filter Collaps
| ls ls
diff --git a/test/snapshots/ttyonly.golden b/test/snapshots/ttyonly.golden
index 20d11e30..e4376308 100644
--- a/test/snapshots/ttyonly.golden
+++ b/test/snapshots/ttyonly.golden
@@ -1,5 +1,5 @@
== snap ttyonly grid=100x31 cursor=4,5
-|Newcol Joincol Find Grep Help Changelog Tutor Dump NextColor Debug Kill
+|Newcol Joincol Find Grep Help Changelog Tutor Dump NextColor Debug Exit
| New Tty Find Grep Joincol Delcol
|$ /tmp/pardes-snap/ttyonly/cwd Tty Save Mode Filter Collapse Del
| $ echo TTY''ONLY
diff --git a/test/snapshots/ttypaste.golden b/test/snapshots/ttypaste.golden
index 21dbbd85..6222bf03 100644
--- a/test/snapshots/ttypaste.golden
+++ b/test/snapshots/ttypaste.golden
@@ -1,5 +1,5 @@
== snap bracketed-paste-reached-the-shell grid=100x31 cursor=18,5
-|Newcol Joincol Find Grep Help Changelog Tutor Dump NextColor Debug Kill
+|Newcol Joincol Find Grep Help Changelog Tutor Dump NextColor Debug Exit
| New Tty Find Grep Joincol Delcol New Tty Find Grep Joincol Delcol
|$ /tmp/pardes-snap/ttypaste/cwd Tty Save Mode Fil /tmp/pardes-snap/ttypaste/cwd Tty Save Mode Fil
| $ ls ls
diff --git a/test/snapshots/ttyprompt.golden b/test/snapshots/ttyprompt.golden
index 797b9040..28cdbbee 100644
--- a/test/snapshots/ttyprompt.golden
+++ b/test/snapshots/ttyprompt.golden
@@ -1,5 +1,5 @@
== snap greeted grid=100x31 cursor=4,5
-|Newcol Joincol Find Grep Help Changelog Tutor Dump NextColor Debug Kill
+|Newcol Joincol Find Grep Help Changelog Tutor Dump NextColor Debug Exit
| New Tty Find Grep Joincol Delcol New Tty Find Grep Joincol Delcol
| /tmp/pardes-snap/ttyprompt/cwd Tty Save Mode Fi /tmp/pardes-snap/ttyprompt/cwd Tty Save Mode Fi
| ls ls
diff --git a/test/snapshots/ttytaken.golden b/test/snapshots/ttytaken.golden
index a6f27e30..72708e64 100644
--- a/test/snapshots/ttytaken.golden
+++ b/test/snapshots/ttytaken.golden
@@ -1,5 +1,5 @@
== snap opened grid=210x31 cursor=7,3
-|Newcol Joincol Find Grep Help Changelog Tutor Dump NextColor Debug Kill
+|Newcol Joincol Find Grep Help Changelog Tutor Dump NextColor Debug Exit
| New Tty Find Grep Joincol Delcol New Tty Find Grep Joincol Delcol
| /tmp/pardes-snap/ttytaken/cwd/cmd.txt Save Tty Collapse Del /tmp/pardes-snap/ttytaken/cwd Tty Save Mode Filter Collapse Del
| 1 echo TAKEN''ONE ls
diff --git a/test/snapshots/tutor.golden b/test/snapshots/tutor.golden
index 23f6b28e..d9a87df8 100644
--- a/test/snapshots/tutor.golden
+++ b/test/snapshots/tutor.golden
@@ -1,5 +1,5 @@
== snap tutor grid=150x31 cursor=7,6
-|Newcol Joincol Find Grep Help Changelog Tutor Dump NextColor Debug Kill
+|Newcol Joincol Find Grep Help Changelog Tutor Dump NextColor Debug Exit
| New Tty Find Grep Joincol Delcol New Tty Find Grep Joincol Delcol
| /tmp/pardes-snap/tutor/cwd Tty Save Mode Filter Collapse Del /tmp/pardes-snap/tutor/cwd Tty Save Mode Filter Collapse Del
| ls ls
diff --git a/test/snapshots/wheeldrift.golden b/test/snapshots/wheeldrift.golden
index 50bd6580..256c2999 100644
--- a/test/snapshots/wheeldrift.golden
+++ b/test/snapshots/wheeldrift.golden
@@ -1,5 +1,5 @@
== snap home grid=70x17 cursor=7,3
-|Newcol Joincol Find Grep Help Changelog Tutor Dump NextColor Debug Kil
+|Newcol Joincol Find Grep Help Changelog Tutor Dump NextColor Debug Exi
| New Tty Find Grep Joincol Delcol
| /tmp/pardes-snap/wheeldrift/cwd/drift.txt Save Tty Collapse Del
| 1 line 1_0123456789_abcdefghij_ZEND Wrap
diff --git a/test/snapshots/winch.golden b/test/snapshots/winch.golden
index e6206961..b9732a32 100644
--- a/test/snapshots/winch.golden
+++ b/test/snapshots/winch.golden
@@ -1,5 +1,5 @@
== snap storm grid=100x31 cursor=4,7
-|Newcol Joincol Find Grep Help Changelog Tutor Dump NextColor Debug Kill
+|Newcol Joincol Find Grep Help Changelog Tutor Dump NextColor Debug Exit
| New Tty Find Grep Joincol Delcol New Tty Find Grep Joincol Delcol
|$ /tmp/pardes-snap/winch/cwd Tty Save Mode Filter /tmp/pardes-snap/winch/cwd Tty Save Mode Filter
| $ ls ls
@@ -19,7 +19,7 @@
| /tmp/pardes-snap/winch/cwd Tty Save Mode Filter
| ls
== snap resized grid=106x35 cursor=4,7
-|Newcol Joincol Find Grep Help Changelog Tutor Dump NextColor Debug Kill
+|Newcol Joincol Find Grep Help Changelog Tutor Dump NextColor Debug Exit
| New Tty Find Grep Joincol Delcol New Tty Find Grep Joincol Delcol
|$ /tmp/pardes-snap/winch/cwd Tty Save Mode Filter Co /tmp/pardes-snap/winch/cwd Tty Save Mode Filter Co
| $ ls ls
diff --git a/test/snapshots/windownav.golden b/test/snapshots/windownav.golden
index d665c655..5bdfb99f 100644
--- a/test/snapshots/windownav.golden
+++ b/test/snapshots/windownav.golden
@@ -1,5 +1,5 @@
== snap start grid=100x31 cursor=7,3
-|Newcol Joincol Find Grep Help Changelog Tutor Dump NextColor Debug Kill
+|Newcol Joincol Find Grep Help Changelog Tutor Dump NextColor Debug Exit
| New Tty Find Grep Joincol Delcol New Tty Find Grep Joincol Delcol
| /tmp/pardes-snap/windownav/cwd/w.txt Save Tty C /tmp/pardes-snap/windownav/cwd Tty Save Mode Fi
| 1 alpha ls Left
diff --git a/test/snapshots/windowops.golden b/test/snapshots/windowops.golden
index 4dbb2b16..9ee02837 100644
--- a/test/snapshots/windowops.golden
+++ b/test/snapshots/windowops.golden
@@ -1,5 +1,5 @@
== snap hover-v grid=100x31 cursor=4,5
-|Newcol Joincol Find Grep Help Changelog Tutor Dump NextColor Debug Kill
+|Newcol Joincol Find Grep Help Changelog Tutor Dump NextColor Debug Exit
| New Tty Find Grep Joincol Delcol ╎ New Tty Find Grep Joincol Delcol
| /tmp/pardes-snap/windowops/cwd Tty Save Mode F╎ /tmp/pardes-snap/windowops/cwd Tty Save Mode Fi
| ls ╎ ls
diff --git a/test/snapshots/wrap.golden b/test/snapshots/wrap.golden
index 69887484..8ef0ca9f 100644
--- a/test/snapshots/wrap.golden
+++ b/test/snapshots/wrap.golden
@@ -34,7 +34,7 @@
|9: 3 third line
|10: 4
== snap on-wide grid=128x15 cursor=7,3
-|Newcol Joincol Find Grep Help Changelog Tutor Dump NextColor Debug Kill
+|Newcol Joincol Find Grep Help Changelog Tutor Dump NextColor Debug Exit
| New Tty Find Grep Joincol Delcol
| /tmp/pardes-snap/wrap/cwd/long.txt Save Tty Collapse Del
| 1 0---------1---------2---------3---------4---------5---------6---------7---------8---------9---------A---------B---------↩
diff --git a/test/snapshots/yankpaste.golden b/test/snapshots/yankpaste.golden
index a3ca404e..2efcd66d 100644
--- a/test/snapshots/yankpaste.golden
+++ b/test/snapshots/yankpaste.golden
@@ -1,5 +1,5 @@
== snap linewise-below grid=100x31 cursor=13,6
-|Newcol Joincol Find Grep Help Changelog Tutor Dump NextColor Debug Kill
+|Newcol Joincol Find Grep Help Changelog Tutor Dump NextColor Debug Exit
| New Tty Find Grep Joincol Delcol
| /tmp/pardes-snap/yankpaste/cwd/f.txt * Save Tty Collapse Del
| 1 line 1