diff options
Diffstat (limited to 'test')
46 files changed, 2267 insertions, 624 deletions
diff --git a/test/e2e_harness.zig b/test/e2e_harness.zig index 6354aa4b..9099f13e 100644 --- a/test/e2e_harness.zig +++ b/test/e2e_harness.zig @@ -1,8 +1,11 @@ const std = @import("std"); const posix = std.posix; -const linux = std.os.linux; +const libc = std.c; const ghostty_vt = @import("ghostty-vt"); +// TIOCSWINSZ: absent from std.c.T on darwin — _IOW('t', 103, winsize) +const TIOCSWINSZ: c_int = @bitCast(@as(u32, if (@hasDecl(posix.T, "IOCSWINSZ")) posix.T.IOCSWINSZ else 0x80087467)); + extern "c" fn forkpty( amaster: *c_int, name: ?[*:0]u8, @@ -13,9 +16,9 @@ extern "c" fn execvp(file: [*:0]const u8, argv: [*:null]const ?[*:0]const u8) c_ extern "c" fn _exit(status: c_int) noreturn; fn nowMs() i64 { - var ts: linux.timespec = undefined; - _ = linux.clock_gettime(linux.CLOCK.MONOTONIC, &ts); - return ts.sec * 1000 + @divFloor(@as(i64, ts.nsec), 1_000_000); + var ts: libc.timespec = undefined; + _ = libc.clock_gettime(.MONOTONIC, &ts); + return @as(i64, @intCast(ts.sec)) * 1000 + @divFloor(@as(i64, @intCast(ts.nsec)), 1_000_000); } /// E2E test harness: forks the app in a pty and parses its output with a @@ -92,7 +95,7 @@ pub const Harness = struct { pub fn deinit(self: *Harness) void { posix.kill(self.pid, posix.SIG.KILL) catch {}; - _ = linux.close(self.master); + _ = libc.close(self.master); self.stream.deinit(); self.raw.deinit(self.gpa); self.term.deinit(self.gpa); @@ -103,10 +106,9 @@ pub const Harness = struct { pub fn send(self: *Harness, bytes: []const u8) !void { var off: usize = 0; while (off < bytes.len) { - const rc = linux.write(self.master, bytes[off..].ptr, bytes.len - off); - const n: isize = @bitCast(rc); + const n = libc.write(self.master, bytes[off..].ptr, bytes.len - off); if (n < 0) { - if (n == -@as(isize, @intFromEnum(linux.E.INTR))) continue; + if (libc.errno(n) == .INTR) continue; return error.WriteFailed; } off += @intCast(n); @@ -139,7 +141,7 @@ pub const Harness = struct { self.cols = cols; self.term.resize(self.gpa, cols, rows) catch {}; const ws = posix.winsize{ .row = rows, .col = cols, .xpixel = 0, .ypixel = 0 }; - _ = posix.system.ioctl(self.master, posix.T.IOCSWINSZ, @intFromPtr(&ws)); + _ = posix.system.ioctl(self.master, TIOCSWINSZ, @intFromPtr(&ws)); } /// The full viewport text (plainString), newline-joined rows. Caller frees. @@ -261,18 +263,15 @@ pub const Harness = struct { } }; -/// Write a file (helper for test setup, raw linux syscalls). +/// Write a file (helper for test setup, raw libc). pub fn writeFile(path: [*:0]const u8, data: []const u8) !void { - const rc = linux.open(path, .{ .ACCMODE = .WRONLY, .CREAT = true, .TRUNC = true }, 0o644); - const sfd: isize = @bitCast(rc); - if (sfd < 0) return error.OpenFailed; - const fd: c_int = @intCast(sfd); - defer _ = linux.close(fd); + const fd = libc.open(path, .{ .ACCMODE = .WRONLY, .CREAT = true, .TRUNC = true }, @as(libc.mode_t, 0o644)); + if (fd < 0) return error.OpenFailed; + defer _ = libc.close(fd); var off: usize = 0; while (off < data.len) { - const w = linux.write(fd, data[off..].ptr, data.len - off); - const sw: isize = @bitCast(w); - if (sw <= 0) break; - off += @intCast(sw); + const w = libc.write(fd, data[off..].ptr, data.len - off); + if (w <= 0) break; + off += @intCast(w); } } diff --git a/test/snapshot.zig b/test/snapshot.zig index c1bf03c0..10aa0c86 100644 --- a/test/snapshot.zig +++ b/test/snapshot.zig @@ -28,8 +28,7 @@ // snap <label> capture grid text + cursor // snapstyle <label> capture per-cell style runs (fg,bg,attrs) const std = @import("std"); -const posix = std.posix; -const linux = std.os.linux; +const libc = std.c; const ghostty_vt = @import("ghostty-vt"); const eh = @import("e2e_harness.zig"); @@ -48,9 +47,8 @@ pub fn main(init: std.process.Init) !void { // argv: exe-under-test, then flags/scripts. All paths made absolute up // front because runScript chdirs into a per-script workdir. var cwd_buf: [4096]u8 = undefined; - const cwd_rc: isize = @bitCast(linux.getcwd(&cwd_buf, cwd_buf.len)); - if (cwd_rc <= 0) fatal("getcwd failed", .{}); - const orig_cwd = cwd_buf[0..@intCast(cwd_rc - 1)]; + const cwd_p = libc.getcwd(&cwd_buf, cwd_buf.len) orelse fatal("getcwd failed", .{}); + const orig_cwd = std.mem.span(@as([*:0]u8, @ptrCast(cwd_p))); var exe: ?[]const u8 = null; var update = false; @@ -461,41 +459,26 @@ fn absPath(arena: std.mem.Allocator, cwd: []const u8, p: []const u8) ![]const u8 fn listSnaps(arena: std.mem.Allocator, dir_path: []const u8, scripts: *std.ArrayList([]const u8)) !void { const dir_z = try arena.dupeZ(u8, dir_path); - const rc = linux.open(dir_z, .{ .ACCMODE = .RDONLY, .DIRECTORY = true }, 0); - const sfd: isize = @bitCast(rc); - if (sfd < 0) fatal("no snapshots/ dir at {s}", .{dir_path}); - const fd: i32 = @intCast(sfd); - defer _ = linux.close(fd); - var buf: [8192]u8 align(@alignOf(linux.dirent64)) = undefined; - while (true) { - const r = linux.getdents64(fd, &buf, buf.len); - const n: isize = @bitCast(r); - if (n <= 0) break; - var off: usize = 0; - while (off < @as(usize, @intCast(n))) { - const d: *align(1) linux.dirent64 = @ptrCast(&buf[off]); - const name = std.mem.span(@as([*:0]const u8, @ptrCast(&d.name))); - if (std.mem.endsWith(u8, name, ".snap")) - try scripts.append(arena, try std.fmt.allocPrint(arena, "{s}/{s}", .{ dir_path, name })); - off += d.reclen; - } + const dir = libc.opendir(dir_z) orelse fatal("no snapshots/ dir at {s}", .{dir_path}); + defer _ = libc.closedir(dir); + while (libc.readdir(dir)) |d| { + const name = std.mem.sliceTo(@as([*:0]const u8, @ptrCast(&d.name)), 0); + if (std.mem.endsWith(u8, name, ".snap")) + try scripts.append(arena, try std.fmt.allocPrint(arena, "{s}/{s}", .{ dir_path, name })); } } fn readFileAlloc(arena: std.mem.Allocator, path: []const u8) ![]u8 { const path_z = try arena.dupeZ(u8, path); - const rc = linux.open(path_z, .{ .ACCMODE = .RDONLY }, 0); - const sfd: isize = @bitCast(rc); - if (sfd < 0) return error.OpenFailed; - const fd: i32 = @intCast(sfd); - defer _ = linux.close(fd); + const fd = libc.open(path_z, .{ .ACCMODE = .RDONLY }); + if (fd < 0) return error.OpenFailed; + defer _ = libc.close(fd); var buf: std.ArrayList(u8) = .empty; var chunk: [16384]u8 = undefined; while (true) { - const r = linux.read(fd, &chunk, chunk.len); - const n: isize = @bitCast(r); + const n = libc.read(fd, &chunk, chunk.len); if (n < 0) { - if (n == -@as(isize, @intFromEnum(linux.E.INTR))) continue; + if (libc.errno(n) == .INTR) continue; return error.ReadFailed; } if (n == 0) break; @@ -506,15 +489,15 @@ fn readFileAlloc(arena: std.mem.Allocator, path: []const u8) ![]u8 { fn mkdir(arena: std.mem.Allocator, path: []const u8, exist_ok: bool) !void { const path_z = try arena.dupeZ(u8, path); - const n: isize = @bitCast(linux.mkdir(path_z, 0o755)); - if (n < 0) { - if (exist_ok and n == -@as(isize, @intFromEnum(linux.E.EXIST))) return; + const rc = libc.mkdir(path_z, 0o755); + if (rc != 0) { + if (exist_ok and libc.errno(rc) == .EXIST) return; return error.MkdirFailed; } } -fn chdirRc(path_z: [:0]const u8) isize { - return @bitCast(linux.chdir(path_z.ptr)); +fn chdirRc(path_z: [:0]const u8) c_int { + return libc.chdir(path_z.ptr); } fn rmrf(path: []const u8) void { @@ -522,15 +505,15 @@ fn rmrf(path: []const u8) void { if (path.len >= path_buf.len) return; @memcpy(path_buf[0..path.len], path); path_buf[path.len] = 0; - const pid: isize = @bitCast(linux.fork()); + const pid = libc.fork(); if (pid == 0) { const argv: [4:null]?[*:0]const u8 = .{ "rm", "-rf", @as([*:0]const u8, @ptrCast(&path_buf)), null }; _ = execvp("rm", &argv); - linux.exit_group(127); + libc._exit(127); } if (pid < 0) return; - var status: u32 = 0; - _ = linux.wait4(@intCast(pid), &status, 0, null); + var status: c_int = 0; + _ = libc.waitpid(pid, &status, 0); } fn printFirstDiff(golden: []const u8, actual: []const u8) void { diff --git a/test/snapshots/boot.golden b/test/snapshots/boot.golden index 85bac8dd..e17d9f3d 100644 --- a/test/snapshots/boot.golden +++ b/test/snapshots/boot.golden @@ -1,6 +1,6 @@ == snap boot grid=100x30 cursor=4,4 |Kill Newcol Tutor Debug Colors NextColor Dump -| nm /tmp/pardes-snap/boot/cwd Del nm /tmp/pardes-snap/boot/cwd Del +| NOR /tmp/pardes-snap/boot/cwd Del NOR /tmp/pardes-snap/boot/cwd Del | | hello.txt hello.txt | @@ -15,7 +15,7 @@ | | | -| nm /tmp/pardes-snap/boot/cwd Del +| NOR /tmp/pardes-snap/boot/cwd Del | | hello.txt | @@ -31,7 +31,7 @@ | == style boot |0: 0-44 #969696,#2c2a3e, 45-99 d,#2c2a3e, -|1: 0-1 d,#6e4fd0, 2-33 #969696,#2c2a3e, 34-49 d,#2c2a3e, 50-51 d,#383c54, 52-83 #969696,#2c2a3e, 84-99 d,#2c2a3e, +|1: 0-1 d,#6e4fd0, 2-34 #969696,#2c2a3e, 35-49 d,#2c2a3e, 50-51 d,#383c54, 52-84 #969696,#2c2a3e, 85-99 d,#2c2a3e, |2: 0-1 d,#525252, 2-49 d,d, 50-51 d,#525252, 52-99 d,d, |3: 0-1 d,#525252, 2-49 d,d, 50-51 d,#525252, 52-99 d,d, |4: 0-1 d,#525252, 2-49 d,d, 50-51 d,#525252, 52-99 d,d, @@ -46,7 +46,7 @@ |13: 0-1 d,#525252, 2-49 d,d, 50-51 d,#525252, 52-99 d,d, |14: 0-1 d,#525252, 2-49 d,d, 50-51 d,#525252, 52-99 d,d, |15: 0-1 d,#525252, 2-49 d,d, 50-51 d,#525252, 52-99 d,d, -|16: 0-1 d,#383c54, 2-33 #969696,#2c2a3e, 34-49 d,#2c2a3e, 50-51 d,#525252, 52-99 d,d, +|16: 0-1 d,#383c54, 2-34 #969696,#2c2a3e, 35-49 d,#2c2a3e, 50-51 d,#525252, 52-99 d,d, |17: 0-1 d,#525252, 2-49 d,d, 50-51 d,#525252, 52-99 d,d, |18: 0-1 d,#525252, 2-49 d,d, 50-51 d,#525252, 52-99 d,d, |19: 0-1 d,#525252, 2-49 d,d, 50-51 d,#525252, 52-99 d,d, diff --git a/test/snapshots/cursorline.golden b/test/snapshots/cursorline.golden new file mode 100644 index 00000000..2902e41f --- /dev/null +++ b/test/snapshots/cursorline.golden @@ -0,0 +1,124 @@ +== snap top grid=100x30 cursor=7,2 +|Kill Newcol Tutor Debug Colors NextColor Dump +| NOR /tmp/pardes-snap/cursorline/cwd/cur.txt Save NOR /tmp/pardes-snap/cursorline/cwd Del +| 1 line 1 +| 2 line 2 cur.txt +| 3 line 3 +| 4 line 4 +| 5 line 5 +|╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌ +| NOR /tmp/pardes-snap/cursorline/cwd Del +| +| cur.txt +| +| +| +| cur.txt +| +| NOR /tmp/pardes-snap/cursorline/cwd Del +| +| cur.txt +| +| +| +| +| +| +| +| +| +| +| +== style top +|0: 0-44 #969696,#2c2a3e, 45-99 d,#2c2a3e, +|1: 0-1 d,#6e4fd0, 2-49 #969696,#2c2a3e, 50-51 d,#383c54, 52-90 #969696,#2c2a3e, 91-99 d,#2c2a3e, +|2: 0-1 d,#525252, 2-6 #969696,#2c2a3e, 7-49 d,d, 50-51 d,#525252, 52-99 d,d, +|3: 0-1 d,#2a2a2a, 2-6 #5a5a5a,d, 7-49 d,d, 50-51 d,#525252, 52-99 d,d, +|4: 0-1 d,#2a2a2a, 2-6 #5a5a5a,d, 7-49 d,d, 50-51 d,#525252, 52-99 d,d, +|5: 0-1 d,#2a2a2a, 2-6 #5a5a5a,d, 7-49 d,d, 50-51 d,#525252, 52-99 d,d, +|6: 0-1 d,#2a2a2a, 2-6 #5a5a5a,d, 7-49 d,d, 50-51 d,#525252, 52-99 d,d, +|7: 0-1 d,#2a2a2a, 2-6 #5a5a5a,d, 7-49 d,d, 50-51 d,#525252, 52-99 d,d, +|8: 0-1 d,#383c54, 2-40 #969696,#2c2a3e, 41-49 d,#2c2a3e, 50-51 d,#525252, 52-99 d,d, +|9: 0-1 d,#525252, 2-49 d,d, 50-51 d,#525252, 52-99 d,d, +|10: 0-1 d,#525252, 2-49 d,d, 50-51 d,#525252, 52-99 d,d, +|11: 0-1 d,#525252, 2-49 d,d, 50-51 d,#525252, 52-99 d,d, +|12: 0-1 d,#525252, 2-49 d,d, 50-51 d,#525252, 52-99 d,d, +|13: 0-1 d,#525252, 2-49 d,d, 50-51 d,#525252, 52-99 d,d, +|14: 0-1 d,#525252, 2-49 d,d, 50-51 d,#525252, 52-99 d,d, +|15: 0-1 d,#525252, 2-49 d,d, 50-51 d,#525252, 52-99 d,d, +|16: 0-1 d,#383c54, 2-40 #969696,#2c2a3e, 41-49 d,#2c2a3e, 50-51 d,#525252, 52-99 d,d, +|17: 0-1 d,#525252, 2-49 d,d, 50-51 d,#525252, 52-99 d,d, +|18: 0-1 d,#525252, 2-49 d,d, 50-51 d,#525252, 52-99 d,d, +|19: 0-1 d,#525252, 2-49 d,d, 50-51 d,#525252, 52-99 d,d, +|20: 0-1 d,#525252, 2-49 d,d, 50-51 d,#525252, 52-99 d,d, +|21: 0-1 d,#525252, 2-49 d,d, 50-51 d,#525252, 52-99 d,d, +|22: 0-1 d,#525252, 2-49 d,d, 50-51 d,#525252, 52-99 d,d, +|23: 0-1 d,#525252, 2-49 d,d, 50-51 d,#525252, 52-99 d,d, +|24: 0-1 d,#525252, 2-49 d,d, 50-51 d,#525252, 52-99 d,d, +|25: 0-1 d,#525252, 2-49 d,d, 50-51 d,#525252, 52-99 d,d, +|26: 0-1 d,#525252, 2-49 d,d, 50-51 d,#525252, 52-99 d,d, +|27: 0-1 d,#525252, 2-49 d,d, 50-51 d,#525252, 52-99 d,d, +|28: 0-1 d,#525252, 2-49 d,d, 50-51 d,#525252, 52-99 d,d, +|29: 0-1 d,#525252, 2-49 d,d, 50-51 d,#525252, 52-99 d,d, +== snap down3 grid=100x30 cursor=7,5 +|Kill Newcol Tutor Debug Colors NextColor Dump +| NOR /tmp/pardes-snap/cursorline/cwd/cur.txt Save NOR /tmp/pardes-snap/cursorline/cwd Del +| 1 line 1 +| 2 line 2 cur.txt +| 3 line 3 +| 4 line 4 +| 5 line 5 +|╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌ +| NOR /tmp/pardes-snap/cursorline/cwd Del +| +| cur.txt +| +| +| +| cur.txt +| +| NOR /tmp/pardes-snap/cursorline/cwd Del +| +| cur.txt +| +| +| +| +| +| +| +| +| +| +| +== style down3 +|0: 0-44 #969696,#2c2a3e, 45-99 d,#2c2a3e, +|1: 0-1 d,#6e4fd0, 2-49 #969696,#2c2a3e, 50-51 d,#383c54, 52-90 #969696,#2c2a3e, 91-99 d,#2c2a3e, +|2: 0-1 d,#525252, 2-6 #5a5a5a,d, 7-49 d,d, 50-51 d,#525252, 52-99 d,d, +|3: 0-1 d,#2a2a2a, 2-6 #5a5a5a,d, 7-49 d,d, 50-51 d,#525252, 52-99 d,d, +|4: 0-1 d,#2a2a2a, 2-6 #5a5a5a,d, 7-49 d,d, 50-51 d,#525252, 52-99 d,d, +|5: 0-1 d,#2a2a2a, 2-6 #969696,#2c2a3e, 7-49 d,d, 50-51 d,#525252, 52-99 d,d, +|6: 0-1 d,#2a2a2a, 2-6 #5a5a5a,d, 7-49 d,d, 50-51 d,#525252, 52-99 d,d, +|7: 0-1 d,#2a2a2a, 2-6 #5a5a5a,d, 7-49 d,d, 50-51 d,#525252, 52-99 d,d, +|8: 0-1 d,#383c54, 2-40 #969696,#2c2a3e, 41-49 d,#2c2a3e, 50-51 d,#525252, 52-99 d,d, +|9: 0-1 d,#525252, 2-49 d,d, 50-51 d,#525252, 52-99 d,d, +|10: 0-1 d,#525252, 2-49 d,d, 50-51 d,#525252, 52-99 d,d, +|11: 0-1 d,#525252, 2-49 d,d, 50-51 d,#525252, 52-99 d,d, +|12: 0-1 d,#525252, 2-49 d,d, 50-51 d,#525252, 52-99 d,d, +|13: 0-1 d,#525252, 2-49 d,d, 50-51 d,#525252, 52-99 d,d, +|14: 0-1 d,#525252, 2-49 d,d, 50-51 d,#525252, 52-99 d,d, +|15: 0-1 d,#525252, 2-49 d,d, 50-51 d,#525252, 52-99 d,d, +|16: 0-1 d,#383c54, 2-40 #969696,#2c2a3e, 41-49 d,#2c2a3e, 50-51 d,#525252, 52-99 d,d, +|17: 0-1 d,#525252, 2-49 d,d, 50-51 d,#525252, 52-99 d,d, +|18: 0-1 d,#525252, 2-49 d,d, 50-51 d,#525252, 52-99 d,d, +|19: 0-1 d,#525252, 2-49 d,d, 50-51 d,#525252, 52-99 d,d, +|20: 0-1 d,#525252, 2-49 d,d, 50-51 d,#525252, 52-99 d,d, +|21: 0-1 d,#525252, 2-49 d,d, 50-51 d,#525252, 52-99 d,d, +|22: 0-1 d,#525252, 2-49 d,d, 50-51 d,#525252, 52-99 d,d, +|23: 0-1 d,#525252, 2-49 d,d, 50-51 d,#525252, 52-99 d,d, +|24: 0-1 d,#525252, 2-49 d,d, 50-51 d,#525252, 52-99 d,d, +|25: 0-1 d,#525252, 2-49 d,d, 50-51 d,#525252, 52-99 d,d, +|26: 0-1 d,#525252, 2-49 d,d, 50-51 d,#525252, 52-99 d,d, +|27: 0-1 d,#525252, 2-49 d,d, 50-51 d,#525252, 52-99 d,d, +|28: 0-1 d,#525252, 2-49 d,d, 50-51 d,#525252, 52-99 d,d, +|29: 0-1 d,#525252, 2-49 d,d, 50-51 d,#525252, 52-99 d,d, diff --git a/test/snapshots/cursorline.snap b/test/snapshots/cursorline.snap new file mode 100644 index 00000000..f9b3de5b --- /dev/null +++ b/test/snapshots/cursorline.snap @@ -0,0 +1,25 @@ +# cursor-line gutter: the line number on the cursor's row takes the tag style +# and follows modal movement (gg to the top, then jjj down three lines) +lines cur.txt 20 +start 30 100 +wait 8000 cur.txt +stable 700 20000 +press left 5 8 +release left 5 8 +stable 400 5000 +key i +text cur.txt +key esc +settle 700 +stable 400 5000 +press right 6 8 +release right 6 8 +stable 700 15000 +key g g +stable 400 5000 +snap top +snapstyle top +key j j j +stable 400 5000 +snap down3 +snapstyle down3 diff --git a/test/snapshots/dump.actual b/test/snapshots/dump.actual deleted file mode 100644 index cf39f324..00000000 --- a/test/snapshots/dump.actual +++ /dev/null @@ -1,63 +0,0 @@ -== file dump (3004 bytes) -.{ - .magic = "pardes-dump", - .version = 1, - .screen = .{ .cols = 100, .rows = 30 }, - .active = 0, - .topbar = "Kill Newcol Tutor Debug Colors NextColor Dump", - .theme = "dark", - .columns = .{ .{ .weight = 1, .panes = .{ 0, 1 } }, .{ .weight = 1, .panes = .{2} } }, - .panes = .{ - .{ - .kind = .terminal, - .tag = "nm /tmp/pardes-snap/dump/cwd Del", - .body = "\nd.txt\n\n\n\n typed-marker\n\n\n\n\n\n\n\n", - .scroll = 0, - .cols = 48, - .rows = 14, - .vweight = 1, - .terminal = .{ - .cwd = "/tmp/pardes-snap/dump/cwd", - .stream = "\nd.txt\n", - .stream_b64 = "G10xMzM7QwcbXTEzMztEBxtdMTMzO0MHG10wO2dvYmxpbkBwYXJkZXM6L3RtcC9wYXJkZXMtc25hcC9kdW1wL2N3ZAcbWz8yMDA0aBtdMTMzO0E7Y2w9bGluZQckIBtdMTMzO0IHDRtbSw0bXTEzMztBO2NsPWxpbmUHJCAbXTEzMztCB2xzDQobWz8yMDA0bA0bXTEzMztDB2QudHh0DQobXTEzMztDBxtdMTMzO0QHG10xMzM7QwcbXTA7Z29ibGluQHBhcmRlczovdG1wL3BhcmRlcy1zbmFwL2R1bXAvY3dkBxtbPzIwMDRoG10xMzM7QTtjbD1saW5lByQgG10xMzM7Qgc=", - .cursor = .{ .col = 2, .row = 2 }, - }, - .file = null, - .image = null, - }, - .{ - .kind = .terminal, - .tag = "nm /tmp/pardes-snap/dump/cwd Del", - .body = "\nd.txt\n\n\n\n\n\n\n\n\n\n\n", - .scroll = 0, - .cols = 48, - .rows = 13, - .vweight = 1, - .terminal = .{ - .cwd = "/tmp/pardes-snap/dump/cwd", - .stream = "\nd.txt\n", - .stream_b64 = "G10xMzM7QwcbXTEzMztEBxtdMTMzO0MHG10wO2dvYmxpbkBwYXJkZXM6L3RtcC9wYXJkZXMtc25hcC9kdW1wL2N3ZAcbWz8yMDA0aBtdMTMzO0E7Y2w9bGluZQckIBtdMTMzO0IHDRtbSw0bXTEzMztBO2NsPWxpbmUHJCAbXTEzMztCB2xzDQobWz8yMDA0bA0bXTEzMztDB2QudHh0DQobXTEzMztDBxtdMTMzO0QHG10xMzM7QwcbXTA7Z29ibGluQHBhcmRlczovdG1wL3BhcmRlcy1zbmFwL2R1bXAvY3dkBxtbPzIwMDRoG10xMzM7QTtjbD1saW5lByQgG10xMzM7Qgc=", - .cursor = .{ .col = 2, .row = 2 }, - }, - .file = null, - .image = null, - }, - .{ - .kind = .terminal, - .tag = "nm /tmp/pardes-snap/dump/cwd Del", - .body = "\nd.txt\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n", - .scroll = 0, - .cols = 48, - .rows = 28, - .vweight = 1, - .terminal = .{ - .cwd = "/tmp/pardes-snap/dump/cwd", - .stream = "\nd.txt\n", - .stream_b64 = "G10xMzM7QwcbXTEzMztEBxtdMTMzO0MHG10wO2dvYmxpbkBwYXJkZXM6L3RtcC9wYXJkZXMtc25hcC9kdW1wL2N3ZAcbWz8yMDA0aBtdMTMzO0E7Y2w9bGluZQckIBtdMTMzO0IHDRtbSw0bXTEzMztBO2NsPWxpbmUHJCAbXTEzMztCB2xzDQobWz8yMDA0bA0bXTEzMztDB2QudHh0DQobXTEzMztDBxtdMTMzO0QHG10xMzM7QwcbXTA7Z29ibGluQHBhcmRlczovdG1wL3BhcmRlcy1zbmFwL2R1bXAvY3dkBxtbPzIwMDRoG10xMzM7QTtjbD1saW5lByQgG10xMzM7Qgc=", - .cursor = .{ .col = 2, .row = 2 }, - }, - .file = null, - .image = null, - }, - }, -}== end file diff --git a/test/snapshots/dump.golden b/test/snapshots/dump.golden index c18003d5..9527f838 100644 --- a/test/snapshots/dump.golden +++ b/test/snapshots/dump.golden @@ -10,7 +10,7 @@ .panes = .{ .{ .kind = .terminal, - .tag = "nm /tmp/pardes-snap/dump/cwd Del", + .tag = "NOR /tmp/pardes-snap/dump/cwd Del", .body = "\nd.txt\n\n\n\n typed-marker\n\n\n\n\n\n\n\n", .scroll = 0, .cols = 48, @@ -27,7 +27,7 @@ }, .{ .kind = .terminal, - .tag = "nm /tmp/pardes-snap/dump/cwd Del", + .tag = "NOR /tmp/pardes-snap/dump/cwd Del", .body = "\nd.txt\n\n\n\n\n\n\n\n\n\n\n", .scroll = 0, .cols = 48, @@ -44,7 +44,7 @@ }, .{ .kind = .terminal, - .tag = "nm /tmp/pardes-snap/dump/cwd Del", + .tag = "NOR /tmp/pardes-snap/dump/cwd Del", .body = "\nd.txt\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n", .scroll = 0, .cols = 48, diff --git a/test/snapshots/edit.actual b/test/snapshots/edit.actual deleted file mode 100644 index e45687a2..00000000 --- a/test/snapshots/edit.actual +++ /dev/null @@ -1,62 +0,0 @@ -== snap inserted grid=100x30 cursor=4,4 -|Kill Newcol Tutor Debug Colors NextColor Dump -| nm /tmp/pardes-snap/edit/cwd Del nm /tmp/pardes-snap/edit/cwd Del -| -| e.txt e.txt -| -| -| -| -| -| -| -| -| -| -| -| -| nm /tmp/pardes-snap/edit/cwd Del -| -| e.txt -| -| -| -| -| -| -| -| -| -| -| -== style inserted -|0: 0-44 #969696,#2c2a3e, 45-99 d,#2c2a3e, -|1: 0-1 d,#6e4fd0, 2-33 #969696,#2c2a3e, 34-49 d,#2c2a3e, 50-51 d,#383c54, 52-83 #969696,#2c2a3e, 84-99 d,#2c2a3e, -|2: 0-1 d,#525252, 2-49 d,d, 50-51 d,#525252, 52-99 d,d, -|3: 0-1 d,#525252, 2-49 d,d, 50-51 d,#525252, 52-99 d,d, -|4: 0-1 d,#525252, 2-49 d,d, 50-51 d,#525252, 52-99 d,d, -|5: 0-1 d,#525252, 2-49 d,d, 50-51 d,#525252, 52-99 d,d, -|6: 0-1 d,#525252, 2-49 d,d, 50-51 d,#525252, 52-99 d,d, -|7: 0-1 d,#525252, 2-49 d,d, 50-51 d,#525252, 52-99 d,d, -|8: 0-1 d,#525252, 2-49 d,d, 50-51 d,#525252, 52-99 d,d, -|9: 0-1 d,#525252, 2-49 d,d, 50-51 d,#525252, 52-99 d,d, -|10: 0-1 d,#525252, 2-49 d,d, 50-51 d,#525252, 52-99 d,d, -|11: 0-1 d,#525252, 2-49 d,d, 50-51 d,#525252, 52-99 d,d, -|12: 0-1 d,#525252, 2-49 d,d, 50-51 d,#525252, 52-99 d,d, -|13: 0-1 d,#525252, 2-49 d,d, 50-51 d,#525252, 52-99 d,d, -|14: 0-1 d,#525252, 2-49 d,d, 50-51 d,#525252, 52-99 d,d, -|15: 0-1 d,#525252, 2-49 d,d, 50-51 d,#525252, 52-99 d,d, -|16: 0-1 d,#383c54, 2-33 #969696,#2c2a3e, 34-49 d,#2c2a3e, 50-51 d,#525252, 52-99 d,d, -|17: 0-1 d,#525252, 2-49 d,d, 50-51 d,#525252, 52-99 d,d, -|18: 0-1 d,#525252, 2-49 d,d, 50-51 d,#525252, 52-99 d,d, -|19: 0-1 d,#525252, 2-49 d,d, 50-51 d,#525252, 52-99 d,d, -|20: 0-1 d,#525252, 2-49 d,d, 50-51 d,#525252, 52-99 d,d, -|21: 0-1 d,#525252, 2-49 d,d, 50-51 d,#525252, 52-99 d,d, -|22: 0-1 d,#525252, 2-49 d,d, 50-51 d,#525252, 52-99 d,d, -|23: 0-1 d,#525252, 2-49 d,d, 50-51 d,#525252, 52-99 d,d, -|24: 0-1 d,#525252, 2-49 d,d, 50-51 d,#525252, 52-99 d,d, -|25: 0-1 d,#525252, 2-49 d,d, 50-51 d,#525252, 52-99 d,d, -|26: 0-1 d,#525252, 2-49 d,d, 50-51 d,#525252, 52-99 d,d, -|27: 0-1 d,#525252, 2-49 d,d, 50-51 d,#525252, 52-99 d,d, -|28: 0-1 d,#525252, 2-49 d,d, 50-51 d,#525252, 52-99 d,d, -|29: 0-1 d,#525252, 2-49 d,d, 50-51 d,#525252, 52-99 d,d, diff --git a/test/snapshots/edit.golden b/test/snapshots/edit.golden index 846bfa30..1e253388 100644 --- a/test/snapshots/edit.golden +++ b/test/snapshots/edit.golden @@ -1,6 +1,6 @@ == snap inserted grid=100x30 cursor=4,9 |Kill Newcol Tutor Debug Colors NextColor Dump -| nm /tmp/pardes-snap/edit/cwd Del nm /tmp/pardes-snap/edit/cwd Del +| NOR /tmp/pardes-snap/edit/cwd Del NOR /tmp/pardes-snap/edit/cwd Del | | e.txt e.txt | @@ -15,7 +15,7 @@ | | | -| nm /tmp/pardes-snap/edit/cwd Del +| NOR /tmp/pardes-snap/edit/cwd Del | | e.txt | @@ -31,7 +31,7 @@ | == style inserted |0: 0-44 #969696,#2c2a3e, 45-99 d,#2c2a3e, -|1: 0-1 d,#6e4fd0, 2-33 #969696,#2c2a3e, 34-49 d,#2c2a3e, 50-51 d,#383c54, 52-83 #969696,#2c2a3e, 84-99 d,#2c2a3e, +|1: 0-1 d,#6e4fd0, 2-34 #969696,#2c2a3e, 35-49 d,#2c2a3e, 50-51 d,#383c54, 52-84 #969696,#2c2a3e, 85-99 d,#2c2a3e, |2: 0-1 d,#525252, 2-49 d,d, 50-51 d,#525252, 52-99 d,d, |3: 0-1 d,#525252, 2-49 d,d, 50-51 d,#525252, 52-99 d,d, |4: 0-1 d,#525252, 2-49 d,d, 50-51 d,#525252, 52-99 d,d, @@ -46,7 +46,7 @@ |13: 0-1 d,#525252, 2-49 d,d, 50-51 d,#525252, 52-99 d,d, |14: 0-1 d,#525252, 2-49 d,d, 50-51 d,#525252, 52-99 d,d, |15: 0-1 d,#525252, 2-49 d,d, 50-51 d,#525252, 52-99 d,d, -|16: 0-1 d,#383c54, 2-33 #969696,#2c2a3e, 34-49 d,#2c2a3e, 50-51 d,#525252, 52-99 d,d, +|16: 0-1 d,#383c54, 2-34 #969696,#2c2a3e, 35-49 d,#2c2a3e, 50-51 d,#525252, 52-99 d,d, |17: 0-1 d,#525252, 2-49 d,d, 50-51 d,#525252, 52-99 d,d, |18: 0-1 d,#525252, 2-49 d,d, 50-51 d,#525252, 52-99 d,d, |19: 0-1 d,#525252, 2-49 d,d, 50-51 d,#525252, 52-99 d,d, diff --git a/test/snapshots/exec-bigdrag.golden b/test/snapshots/exec-bigdrag.golden new file mode 100644 index 00000000..1d5df56b --- /dev/null +++ b/test/snapshots/exec-bigdrag.golden @@ -0,0 +1,61 @@ +== snap alive grid=200x60 cursor=104,37 +|Kill Newcol Tutor Debug Colors NextColor Dump +| NOR /tmp/pardes-snap/exec-bigdrag/cwd Del NOR /tmp/pardes-snap/exec-bigdrag/cwd Del +| bash: line: command not found +| big.txt +| bash: 4line: command not found +| +| bash: 15line: command not found +| +| bash: 726line: command not found +| +| bash: 2737line: command not found +| +| bash: 2748line: command not found +| +| bash: e: command not found +| +| bash: ne: command not found +| +| bash: ine: command not found +| +| bash: line: command not found +| +| bash: 2line: command not found +| +| bash: 13line: command not found +| +| bash: 824line: command not found +| +| bash: 2835line: command not found +| +| bash: 2846line: command not found +| NOR /tmp/pardes-snap/exec-bigdrag/cwd Del +| bash: e: command not found +| big.txt +| bash: ne: command not found +| +| bash: ine: command not found +| echo alive-o''k +| bash: line: command not found +| +| bash: 0line: command not found +| +| bash: 11line: command not found +| +| bash: 922line: command not found +| +| bash: 2933line: command not found +| +| bash: 2944line: command not found +| +| bash: e: command not found +| +| bash: ne: command not found +| +| bash: ine: command not found +| +| bash: line: command not found +| +| alive-ok +| diff --git a/test/snapshots/exec-bigdrag.snap b/test/snapshots/exec-bigdrag.snap new file mode 100644 index 00000000..dae92205 --- /dev/null +++ b/test/snapshots/exec-bigdrag.snap @@ -0,0 +1,40 @@ +# a giant accidental middle-drag: the whole selection is executed, chunked +# into 64-byte write effects in ONE update — this used to burst the fixed +# 64-slot effect ring and panic the core (assert in emit). Needs a big grid: +# the selection must exceed 64*64 bytes, more than any 30x100 pane can hold. +lines big.txt 3000 +start 60 200 +wait 8000 big.txt +stable 500 20000 +press left 105 8 +release left 105 8 +stable 300 5000 +key i +text tr -d '\n' < big.txt +key esc +settle 400 +press middle 105 8 +drag middle 126 8 +release middle 126 8 +stable 800 30000 +# the accidental sweep over the full-height right pane, then release +press middle 105 4 +drag middle 150 30 +drag middle 198 58 +release middle 198 58 +settle 500 +stable 800 30000 +# still alive: type and execute a marker command +press left 105 40 +release left 105 40 +stable 300 5000 +key i +text echo alive-o''k +key esc +settle 300 +press middle 105 40 +drag middle 119 40 +release middle 119 40 +wait 10000 alive-ok +stable 800 20000 +snap alive diff --git a/test/snapshots/exec.golden b/test/snapshots/exec.golden index 23b1305b..01464fd9 100644 --- a/test/snapshots/exec.golden +++ b/test/snapshots/exec.golden @@ -1,6 +1,6 @@ == snap exec grid=100x30 cursor=4,7 |Kill Newcol Tutor Debug Colors NextColor Dump -| nm /tmp/pardes-snap/exec/cwd Del nm /tmp/pardes-snap/exec/cwd Del +| NOR /tmp/pardes-snap/exec/cwd Del NOR /tmp/pardes-snap/exec/cwd Del | | e.txt e.txt | @@ -15,7 +15,7 @@ | | | -| nm /tmp/pardes-snap/exec/cwd Del +| NOR /tmp/pardes-snap/exec/cwd Del | | e.txt | @@ -31,7 +31,7 @@ | == snap kept grid=100x30 cursor=6,2 |Kill Newcol Tutor Debug Colors NextColor Dump -| nm /tmp/pardes-snap/exec/cwd Del nm /tmp/pardes-snap/exec/cwd Del +| NOR /tmp/pardes-snap/exec/cwd Del NOR /tmp/pardes-snap/exec/cwd Del | ZZARG | ./c.sh e.txt | @@ -46,7 +46,7 @@ | | | -| nm /tmp/pardes-snap/exec/cwd Del +| NOR /tmp/pardes-snap/exec/cwd Del | | e.txt | @@ -62,7 +62,7 @@ | == snap chord grid=100x30 cursor=6,2 |Kill Newcol Tutor Debug Colors NextColor Dump -| nm /tmp/pardes-snap/exec/cwd Del nm /tmp/pardes-snap/exec/cwd Del +| NOR /tmp/pardes-snap/exec/cwd Del NOR /tmp/pardes-snap/exec/cwd Del | ZZARG | ./c.sh e.txt | @@ -77,7 +77,7 @@ | | | -| nm /tmp/pardes-snap/exec/cwd Del +| NOR /tmp/pardes-snap/exec/cwd Del | | e.txt | @@ -93,7 +93,7 @@ | == snap deleted grid=100x30 cursor=4,4 |Kill Newcol Tutor Debug Colors NextColor Dump -| nm /tmp/pardes-snap/exec/cwd Del nm /tmp/pardes-snap/exec/cwd Del +| NOR /tmp/pardes-snap/exec/cwd Del NOR /tmp/pardes-snap/exec/cwd Del | | e.txt e.txt | diff --git a/test/snapshots/exec.snap b/test/snapshots/exec.snap index dd8c24ee..a588d9f3 100644 --- a/test/snapshots/exec.snap +++ b/test/snapshots/exec.snap @@ -40,7 +40,7 @@ wait 10000 CHORDARG:ZZARG stable 700 10000 snap chord # middle-click Del in this pane's tag (after cwd prefix) closes it -press middle 32 2 -release middle 32 2 +press middle 33 2 +release middle 33 2 stable 700 10000 snap deleted diff --git a/test/snapshots/fileedit.golden b/test/snapshots/fileedit.golden index c6fb40aa..72950b96 100644 --- a/test/snapshots/fileedit.golden +++ b/test/snapshots/fileedit.golden @@ -1,16 +1,13 @@ == snap edited grid=100x30 cursor=17,2 |Kill Newcol Tutor Debug Colors NextColor Dump -| nm /tmp/pardes-snap/fileedit/cwd/f.txt Save Del nm /tmp/pardes-snap/fileedit/cwd Del +| NOR /tmp/pardes-snap/fileedit/cwd/f.txt Save Del NOR /tmp/pardes-snap/fileedit/cwd Del | 1 liEDIT''MEne 1 | 2 line 2 f.txt | 3 line 3 | 4 line 4 | 5 line 5 | 6 line 6 -| 7 line 7 -| 8 line 8 -| 9 line 9 -| nm /tmp/pardes-snap/fileedit/cwd Del +| NOR /tmp/pardes-snap/fileedit/cwd Del | | f.txt | @@ -18,11 +15,14 @@ | | f.txt | +| NOR /tmp/pardes-snap/fileedit/cwd Del +| +| f.txt +| +| | | -| nm /tmp/pardes-snap/fileedit/cwd Del | -| f.txt | | | @@ -31,17 +31,14 @@ | == snap deleted grid=100x30 cursor=7,3 |Kill Newcol Tutor Debug Colors NextColor Dump -| nm /tmp/pardes-snap/fileedit/cwd/f.txt Save Del nm /tmp/pardes-snap/fileedit/cwd Del +| NOR /tmp/pardes-snap/fileedit/cwd/f.txt Save Del NOR /tmp/pardes-snap/fileedit/cwd Del | 1 liEDIT''MEne 1 | 2 line 3 f.txt | 3 line 4 | 4 line 5 | 5 line 6 | 6 line 7 -| 7 line 8 -| 8 line 9 -| 9 line 10 -| nm /tmp/pardes-snap/fileedit/cwd Del +| NOR /tmp/pardes-snap/fileedit/cwd Del | | f.txt | @@ -49,11 +46,14 @@ | | f.txt | +| NOR /tmp/pardes-snap/fileedit/cwd Del +| +| f.txt +| +| | | -| nm /tmp/pardes-snap/fileedit/cwd Del | -| f.txt | | | @@ -62,17 +62,14 @@ | == snap undone grid=100x30 cursor=7,3 |Kill Newcol Tutor Debug Colors NextColor Dump -| nm /tmp/pardes-snap/fileedit/cwd/f.txt Save Del nm /tmp/pardes-snap/fileedit/cwd Del +| NOR /tmp/pardes-snap/fileedit/cwd/f.txt Save Del NOR /tmp/pardes-snap/fileedit/cwd Del | 1 liEDIT''MEne 1 | 2 line 2 f.txt | 3 line 3 | 4 line 4 | 5 line 5 | 6 line 6 -| 7 line 7 -| 8 line 8 -| 9 line 9 -| nm /tmp/pardes-snap/fileedit/cwd Del +| NOR /tmp/pardes-snap/fileedit/cwd Del | | f.txt | @@ -80,11 +77,14 @@ | | f.txt | +| NOR /tmp/pardes-snap/fileedit/cwd Del +| +| f.txt +| +| | | -| nm /tmp/pardes-snap/fileedit/cwd Del | -| f.txt | | | diff --git a/test/snapshots/fileedit.snap b/test/snapshots/fileedit.snap index 7bafa358..bd259c8b 100644 --- a/test/snapshots/fileedit.snap +++ b/test/snapshots/fileedit.snap @@ -33,8 +33,8 @@ snap deleted key u stable 400 5000 snap undone -# Save via the tag: middle-click the Save word (after "nm <path> ") -press middle 42 2 -release middle 42 2 +# Save via the tag: middle-click the Save word (after "NOR <path> ") +press middle 43 2 +release middle 43 2 settle 800 snapfile saved /tmp/pardes-snap/fileedit/cwd/f.txt diff --git a/test/snapshots/fsearch.golden b/test/snapshots/fsearch.golden new file mode 100644 index 00000000..9b287277 --- /dev/null +++ b/test/snapshots/fsearch.golden @@ -0,0 +1,310 @@ +== snap opened grid=120x30 cursor=7,2 +|Kill Newcol Tutor Debug Colors NextColor Dump +| NOR /tmp/pardes-snap/fsearch/cwd/g.txt Save Del NOR /tmp/pardes-snap/fsearch/cwd Del +| 1 l1 +| 2 MARK a g.txt +| 3 l3 +| 4 l4 +| 5 l5 +|╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌ +| NOR /tmp/pardes-snap/fsearch/cwd Del +| +| g.txt +| +| +| +| g.txt +| +| NOR /tmp/pardes-snap/fsearch/cwd Del +| +| g.txt +| +| +| +| +| +| +| +| +| +| +| +== snap typing grid=120x30 cursor=55,1 +|Kill Newcol Tutor Debug Colors NextColor Dump +| INS /tmp/pardes-snap/fsearch/cwd/g.txt Save Del /MARK NOR /tmp/pardes-snap/fsearch/cwd Del +| 1 l1 +| 2 MARK a g.txt +| 3 l3 +| 4 l4 +| 5 l5 +|╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌ +| NOR /tmp/pardes-snap/fsearch/cwd Del +| +| g.txt +| +| +| +| g.txt +| +| NOR /tmp/pardes-snap/fsearch/cwd Del +| +| g.txt +| +| +| +| +| +| +| +| +| +| +| +== snap results grid=120x30 cursor=7,2 +|Kill Newcol Tutor Debug Colors NextColor Dump +| NOR /tmp/pardes-snap/fsearch/cwd/g.txt Save Del NOR /tmp/pardes-snap/fsearch/cwd Del +| 1 l1 +| 2 MARK a g.txt +| 3 l3 +| 4 l4 +| 5 l5 +|╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌ +| NOR /tmp/pardes-snap/fsearch/cwd Del +| +| +| g.txt +| /tmp/pardes-snap/fsearch/cwd/g.txt:2:MARK a +| /tmp/pardes-snap/fsearch/cwd/g.txt:6:MARK b +| /tmp/pardes-snap/fsearch/cwd/g.txt:10:MARK c +| +| NOR /tmp/pardes-snap/fsearch/cwd Del +| +| g.txt +| +| +| +| +| +| +| +| +| +| +| +== snap first grid=120x30 cursor=7,3 +|Kill Newcol Tutor Debug Colors NextColor Dump +| NOR /tmp/pardes-snap/fsearch/cwd/g.txt Save Del NOR /tmp/pardes-snap/fsearch/cwd Del +| 1 l1 +| 2 MARK a g.txt +| 3 l3 +| 4 l4 +| 5 l5 +|╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌ +| NOR /tmp/pardes-snap/fsearch/cwd Del +| +| +| g.txt +| /tmp/pardes-snap/fsearch/cwd/g.txt:2:MARK a +| /tmp/pardes-snap/fsearch/cwd/g.txt:6:MARK b +| /tmp/pardes-snap/fsearch/cwd/g.txt:10:MARK c +| +| NOR /tmp/pardes-snap/fsearch/cwd Del +| +| g.txt +| +| +| +| +| +| +| +| +| +| +| +== style first +|0: 0-44 #969696,#2c2a3e, 45-119 d,#2c2a3e, +|1: 0-1 d,#6e4fd0, 2-48 #969696,#2c2a3e, 49-59 d,#2c2a3e, 60-61 d,#383c54, 62-97 #969696,#2c2a3e, 98-119 d,#2c2a3e, +|2: 0-1 d,#525252, 2-6 #5a5a5a,d, 7-59 d,d, 60-61 d,#525252, 62-119 d,d, +|3: 0-1 d,#525252, 2-6 #969696,#2c2a3e, 7-59 d,d, 60-61 d,#525252, 62-119 d,d, +|4: 0-1 d,#525252, 2-6 #5a5a5a,d, 7-59 d,d, 60-61 d,#525252, 62-119 d,d, +|5: 0-1 d,#2a2a2a, 2-6 #5a5a5a,d, 7-59 d,d, 60-61 d,#525252, 62-119 d,d, +|6: 0-1 d,#2a2a2a, 2-6 #5a5a5a,d, 7-59 d,d, 60-61 d,#525252, 62-119 d,d, +|7: 0-1 d,#2a2a2a, 2-6 #5a5a5a,d, 7-59 d,d, 60-61 d,#525252, 62-119 d,d, +|8: 0-1 d,#383c54, 2-37 #969696,#2c2a3e, 38-59 d,#2c2a3e, 60-61 d,#525252, 62-119 d,d, +|9: 0-1 d,#2a2a2a, 2-59 d,d, 60-61 d,#525252, 62-119 d,d, +|10: 0-1 d,#2a2a2a, 2-59 d,d, 60-61 d,#525252, 62-119 d,d, +|11: 0-1 d,#525252, 2-59 d,d, 60-61 d,#525252, 62-119 d,d, +|12: 0-1 d,#525252, 2-59 #d8c8a8,#4a3a1e, 60-61 d,#525252, 62-119 d,d, +|13: 0-1 d,#525252, 2-59 d,d, 60-61 d,#525252, 62-119 d,d, +|14: 0-1 d,#525252, 2-59 d,d, 60-61 d,#525252, 62-119 d,d, +|15: 0-1 d,#2a2a2a, 2-59 d,d, 60-61 d,#525252, 62-119 d,d, +|16: 0-1 d,#383c54, 2-37 #969696,#2c2a3e, 38-59 d,#2c2a3e, 60-61 d,#525252, 62-119 d,d, +|17: 0-1 d,#525252, 2-59 d,d, 60-61 d,#525252, 62-119 d,d, +|18: 0-1 d,#525252, 2-59 d,d, 60-61 d,#525252, 62-119 d,d, +|19: 0-1 d,#525252, 2-59 d,d, 60-61 d,#525252, 62-119 d,d, +|20: 0-1 d,#525252, 2-59 d,d, 60-61 d,#525252, 62-119 d,d, +|21: 0-1 d,#525252, 2-59 d,d, 60-61 d,#525252, 62-119 d,d, +|22: 0-1 d,#525252, 2-59 d,d, 60-61 d,#525252, 62-119 d,d, +|23: 0-1 d,#525252, 2-59 d,d, 60-61 d,#525252, 62-119 d,d, +|24: 0-1 d,#525252, 2-59 d,d, 60-61 d,#525252, 62-119 d,d, +|25: 0-1 d,#525252, 2-59 d,d, 60-61 d,#525252, 62-119 d,d, +|26: 0-1 d,#525252, 2-59 d,d, 60-61 d,#525252, 62-119 d,d, +|27: 0-1 d,#525252, 2-59 d,d, 60-61 d,#525252, 62-119 d,d, +|28: 0-1 d,#525252, 2-59 d,d, 60-61 d,#525252, 62-119 d,d, +|29: 0-1 d,#525252, 2-59 d,d, 60-61 d,#525252, 62-119 d,d, +== snap second grid=120x30 cursor=7,5 +|Kill Newcol Tutor Debug Colors NextColor Dump +| NOR /tmp/pardes-snap/fsearch/cwd/g.txt Save Del NOR /tmp/pardes-snap/fsearch/cwd Del +| 3 l3 +| 4 l4 g.txt +| 5 l5 +| 6 MARK b +| 7 l7 +|╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌ +| NOR /tmp/pardes-snap/fsearch/cwd Del +| +| +| g.txt +| /tmp/pardes-snap/fsearch/cwd/g.txt:2:MARK a +| /tmp/pardes-snap/fsearch/cwd/g.txt:6:MARK b +| /tmp/pardes-snap/fsearch/cwd/g.txt:10:MARK c +| +| NOR /tmp/pardes-snap/fsearch/cwd Del +| +| g.txt +| +| +| +| +| +| +| +| +| +| +| +== snap third grid=120x30 cursor=7,5 +|Kill Newcol Tutor Debug Colors NextColor Dump +| NOR /tmp/pardes-snap/fsearch/cwd/g.txt Save Del NOR /tmp/pardes-snap/fsearch/cwd Del +| 7 l7 +| 8 l8 g.txt +| 9 l9 +| 10 MARK c +| 11 l11 +|╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌ +| NOR /tmp/pardes-snap/fsearch/cwd Del +| +| +| g.txt +| /tmp/pardes-snap/fsearch/cwd/g.txt:2:MARK a +| /tmp/pardes-snap/fsearch/cwd/g.txt:6:MARK b +| /tmp/pardes-snap/fsearch/cwd/g.txt:10:MARK c +| +| NOR /tmp/pardes-snap/fsearch/cwd Del +| +| g.txt +| +| +| +| +| +| +| +| +| +| +| +== snap back grid=120x30 cursor=7,5 +|Kill Newcol Tutor Debug Colors NextColor Dump +| NOR /tmp/pardes-snap/fsearch/cwd/g.txt Save Del NOR /tmp/pardes-snap/fsearch/cwd Del +| 3 l3 +| 4 l4 g.txt +| 5 l5 +| 6 MARK b +| 7 l7 +|╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌ +| NOR /tmp/pardes-snap/fsearch/cwd Del +| +| +| g.txt +| /tmp/pardes-snap/fsearch/cwd/g.txt:2:MARK a +| /tmp/pardes-snap/fsearch/cwd/g.txt:6:MARK b +| /tmp/pardes-snap/fsearch/cwd/g.txt:10:MARK c +| +| NOR /tmp/pardes-snap/fsearch/cwd Del +| +| g.txt +| +| +| +| +| +| +| +| +| +| +| +== snap cancel grid=120x30 cursor=7,5 +|Kill Newcol Tutor Debug Colors NextColor Dump +| NOR /tmp/pardes-snap/fsearch/cwd/g.txt Save Del NOR /tmp/pardes-snap/fsearch/cwd Del +| 3 l3 +| 4 l4 g.txt +| 5 l5 +| 6 MARK b +| 7 l7 +|╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌ +| NOR /tmp/pardes-snap/fsearch/cwd Del +| +| +| g.txt +| /tmp/pardes-snap/fsearch/cwd/g.txt:2:MARK a +| /tmp/pardes-snap/fsearch/cwd/g.txt:6:MARK b +| /tmp/pardes-snap/fsearch/cwd/g.txt:10:MARK c +| +| NOR /tmp/pardes-snap/fsearch/cwd Del +| +| g.txt +| +| +| +| +| +| +| +| +| +| +| +== snap nomatch grid=120x30 cursor=7,5 +|Kill Newcol Tutor Debug Colors NextColor Dump +| NOR /tmp/pardes-snap/fsearch/cwd/g.txt Save Del NOR /tmp/pardes-snap/fsearch/cwd Del +| 3 l3 +| 4 l4 g.txt +| 5 l5 +| 6 MARK b +| 7 l7 +|╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌ +| NOR /tmp/pardes-snap/fsearch/cwd Del +| +| g.txt +| /tmp/pardes-snap/fsearch/cwd/g.txt:2:MARK a +| /tmp/pardes-snap/fsearch/cwd/g.txt:6:MARK b +| /tmp/pardes-snap/fsearch/cwd/g.txt:10:MARK c +| +| +| NOR /tmp/pardes-snap/fsearch/cwd Del +| +| g.txt +| +| +| +| +| +| +| +| +| +| +| diff --git a/test/snapshots/fsearch.snap b/test/snapshots/fsearch.snap new file mode 100644 index 00000000..eab702cb --- /dev/null +++ b/test/snapshots/fsearch.snap @@ -0,0 +1,63 @@ +# `/` file search: the pattern types into the tag (persistent, no popup); +# Enter runs grep -nH into a shell pane so the results are ordinary terminal +# text; n/N select the next/prev result row there (prompt rows skipped via the +# OSC 133 semantic marks) and look it — the file pane scrolls to path:NNN. +# Esc abandons the input; a no-match search leaves n with nowhere to go. +file g.txt l1\nMARK a\nl3\nl4\nl5\nMARK b\nl7\nl8\nl9\nMARK c\nl11\nl12 +start 30 120 +wait 8000 g.txt +stable 700 20000 +# open g.txt: type the name in the shell, look it (as in look-file.snap) +press left 5 8 +release left 5 8 +stable 400 5000 +key i +text g.txt +key esc +settle 700 +stable 400 5000 +press right 6 8 +release right 6 8 +wait 10000 MARK a +stable 700 15000 +snap opened +# / starts the search input in the tag; the pattern is visible while typing +key / +stable 400 5000 +text MARK +stable 400 5000 +snap typing +key enter +wait 10000 g.txt:2:MARK +stable 700 10000 +snap results +# n selects result 1 in the results pane + scrolls the file to line 2 +key n +stable 700 15000 +snap first +snapstyle first +key n +stable 700 15000 +snap second +key n +stable 700 15000 +snap third +# N walks back up to result 2 (line 6) +key N +stable 700 15000 +snap back +# Esc abandons the input: the tag tail is restored +key / +text zz +key esc +settle 700 +stable 400 5000 +snap cancel +# a no-match search: n has nowhere to go (nothing changes, no crash) +key / +text zzqq +key enter +stable 700 10000 +key n +stable 400 5000 +snap nomatch diff --git a/test/snapshots/ghostty-mid.golden b/test/snapshots/ghostty-mid.golden new file mode 100644 index 00000000..929549c6 --- /dev/null +++ b/test/snapshots/ghostty-mid.golden @@ -0,0 +1,31 @@ +== snap ghostty-mid grid=100x30 cursor=4,7 +|Kill Newcol Tutor Debug Colors NextColor Dump +| NOR /tmp/pardes-snap/ghostty-mid/cwd Del NOR /tmp/pardes-snap/ghostty-mid/cwd Del +| ZZPAD +| ./g.sh g.txt +| +| GHOSTOK +| +| +| +| +| +| +| +| +| +| +| NOR /tmp/pardes-snap/ghostty-mid/cwd Del +| +| g.txt +| +| +| +| +| +| +| +| +| +| +| diff --git a/test/snapshots/ghostty-mid.snap b/test/snapshots/ghostty-mid.snap new file mode 100644 index 00000000..437fce27 --- /dev/null +++ b/test/snapshots/ghostty-mid.snap @@ -0,0 +1,32 @@ +# ghostty's wire flavor of a middle click, byte-exact (mode 1002;1003;1004;1006 +# as pardes requests): focus-in, per-cell hover motions (ghostty dedups per +# cell, so none repeat), press keeping SGR button identity, release 'm', +# trailing hover — split across writes like real input. Proves the tty input +# path (vaxis parse -> core execute) handles ghostty's encoding: the live bug +# ("middle click dead only in ghostty") is ghostty's GTK apprt swallowing +# middle press+release BEFORE mouse reporting whenever the desktop has +# gtk-enable-primary-paste=false (apprt/gtk/class/surface.zig, gcMouseDown/ +# gcMouseUp) — the bytes below simply never get sent. +file g.txt x +start 30 100 +wait 8000 g.txt +stable 700 20000 +press left 5 8 +release left 5 8 +stable 400 5000 +key c-b +stable 600 8000 +text printf '#!/bin/sh\necho GHOST''OK\n' > g.sh; chmod +x g.sh; clear; printf 'ZZPAD\n./g.sh\n' +key enter +wait 10000 ./g.sh +stable 700 10000 +key c-b +stable 600 8000 +send \x1b[I +send \x1b[<35;10;8M\x1b[<35;7;6M\x1b[<35;4;4M +send \x1b[<1;4;4M +send \x1b[<1;4;4m +send \x1b[<35;6;4M +wait 10000 GHOSTOK +stable 700 10000 +snap ghostty-mid diff --git a/test/snapshots/images.golden b/test/snapshots/images.golden index b6e75fbf..ae12bedf 100644 --- a/test/snapshots/images.golden +++ b/test/snapshots/images.golden @@ -1,16 +1,13 @@ == snap img-open grid=100x30 cursor=4,7 |Kill Newcol Tutor Debug Colors NextColor Dump -| img /tmp/pardes-snap/images/cwd/pic.ppm Petscii nm /tmp/pardes-snap/images/cwd Del -| 🬝🬹 -| 🬝▀█ pic.ppm -| 🬝▀█ -| 🬝▀█ -| 🬝▀█ -| █🬆█ -| █🬆█ -| █🬆█ -| 🬝🬹█ -| nm /tmp/pardes-snap/images/cwd Del +| img /tmp/pardes-snap/images/cwd/pic.ppm Petscii NOR /tmp/pardes-snap/images/cwd Del +| 🬝🬂 +| 🬝🬂█ pic.ppm +| 🬝🬂█ +| 🬝🬂 +| 🬝🬂█ +|╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌ +| NOR /tmp/pardes-snap/images/cwd Del | | pic.ppm | @@ -18,11 +15,14 @@ | | pic.ppm | +| NOR /tmp/pardes-snap/images/cwd Del +| +| pic.ppm +| +| | | -| nm /tmp/pardes-snap/images/cwd Del | -| pic.ppm | | | @@ -31,27 +31,27 @@ | == style img-open |0: 0-44 #969696,#2c2a3e, 45-99 d,#2c2a3e, -|1: 0-1 d,#6e4fd0, 2-49 #969696,#2c2a3e, 50-51 d,#383c54, 52-85 #969696,#2c2a3e, 86-99 d,#2c2a3e, -|2: 0-1 d,#2a2a2a, 2-16 d,d, 17-32 #ffffff,#ffffff, 33-33 #ffffff,#352879, 34-34 #352879,#ffffff, 35-49 d,d, 50-51 d,#525252, 52-99 d,d, -|3: 0-1 d,#2a2a2a, 2-16 d,d, 17-30 #ffffff,#ffffff, 31-32 #ffffff,#352879, 33-33 #352879,#ffffff, 34-34 #352879,#352879, 35-49 d,d, 50-51 d,#525252, 52-99 d,d, -|4: 0-1 d,#2a2a2a, 2-16 d,d, 17-28 #ffffff,#ffffff, 29-30 #ffffff,#352879, 31-31 #352879,#ffffff, 32-34 #352879,#352879, 35-49 d,d, 50-51 d,#525252, 52-99 d,d, -|5: 0-1 d,#2a2a2a, 2-16 d,d, 17-26 #ffffff,#ffffff, 27-28 #ffffff,#352879, 29-29 #352879,#ffffff, 30-34 #352879,#352879, 35-49 d,d, 50-51 d,#525252, 52-99 d,d, -|6: 0-1 d,#2a2a2a, 2-16 d,d, 17-24 #ffffff,#ffffff, 25-26 #ffffff,#352879, 27-27 #352879,#ffffff, 28-34 #352879,#352879, 35-49 d,d, 50-51 d,#525252, 52-99 d,d, -|7: 0-1 d,#2a2a2a, 2-16 d,d, 17-22 #ffffff,#ffffff, 23-24 #ffffff,#352879, 25-25 #352879,#ffffff, 26-34 #352879,#352879, 35-49 d,d, 50-51 d,#525252, 52-99 d,d, -|8: 0-1 d,#2a2a2a, 2-16 d,d, 17-20 #ffffff,#ffffff, 21-22 #ffffff,#352879, 23-23 #352879,#ffffff, 24-34 #352879,#352879, 35-49 d,d, 50-51 d,#525252, 52-99 d,d, -|9: 0-1 d,#2a2a2a, 2-16 d,d, 17-18 #ffffff,#ffffff, 19-20 #ffffff,#352879, 21-21 #352879,#ffffff, 22-34 #352879,#352879, 35-49 d,d, 50-51 d,#525252, 52-99 d,d, -|10: 0-1 d,#2a2a2a, 2-16 d,d, 17-17 #ffffff,#352879, 18-19 #352879,#ffffff, 20-34 #352879,#352879, 35-49 d,d, 50-51 d,#525252, 52-99 d,d, -|11: 0-1 d,#383c54, 2-35 #969696,#2c2a3e, 36-49 d,#2c2a3e, 50-51 d,#525252, 52-99 d,d, +|1: 0-1 d,#6e4fd0, 2-49 #969696,#2c2a3e, 50-51 d,#383c54, 52-86 #969696,#2c2a3e, 87-99 d,#2c2a3e, +|2: 0-1 d,#2a2a2a, 2-19 d,d, 20-29 #ffffff,#ffffff, 30-31 #ffffff,#6c5eb5, 32-49 d,d, 50-51 d,#525252, 52-99 d,d, +|3: 0-1 d,#2a2a2a, 2-19 d,d, 20-27 #ffffff,#ffffff, 28-29 #ffffff,#6c5eb5, 30-30 #352879,#ffffff, 31-31 #352879,#352879, 32-49 d,d, 50-51 d,#525252, 52-99 d,d, +|4: 0-1 d,#2a2a2a, 2-19 d,d, 20-25 #ffffff,#ffffff, 26-27 #ffffff,#6c5eb5, 28-28 #352879,#ffffff, 29-31 #352879,#352879, 32-49 d,d, 50-51 d,#525252, 52-99 d,d, +|5: 0-1 d,#2a2a2a, 2-19 d,d, 20-23 #ffffff,#ffffff, 24-25 #ffffff,#6c5eb5, 26-31 #352879,#352879, 32-49 d,d, 50-51 d,#525252, 52-99 d,d, +|6: 0-1 d,#2a2a2a, 2-19 d,d, 20-21 #ffffff,#ffffff, 22-23 #ffffff,#6c5eb5, 24-24 #352879,#ffffff, 25-31 #352879,#352879, 32-49 d,d, 50-51 d,#525252, 52-99 d,d, +|7: 0-1 d,#2a2a2a, 2-19 d,d, 20-21 #ffffff,#6c5eb5, 22-22 #352879,#ffffff, 23-31 #352879,#352879, 32-49 d,d, 50-51 d,#525252, 52-99 d,d, +|8: 0-1 d,#383c54, 2-36 #969696,#2c2a3e, 37-49 d,#2c2a3e, 50-51 d,#525252, 52-99 d,d, +|9: 0-1 d,#525252, 2-49 d,d, 50-51 d,#525252, 52-99 d,d, +|10: 0-1 d,#525252, 2-49 d,d, 50-51 d,#525252, 52-99 d,d, +|11: 0-1 d,#525252, 2-49 d,d, 50-51 d,#525252, 52-99 d,d, |12: 0-1 d,#525252, 2-49 d,d, 50-51 d,#525252, 52-99 d,d, |13: 0-1 d,#525252, 2-49 d,d, 50-51 d,#525252, 52-99 d,d, |14: 0-1 d,#525252, 2-49 d,d, 50-51 d,#525252, 52-99 d,d, |15: 0-1 d,#525252, 2-49 d,d, 50-51 d,#525252, 52-99 d,d, -|16: 0-1 d,#525252, 2-49 d,d, 50-51 d,#525252, 52-99 d,d, +|16: 0-1 d,#383c54, 2-36 #969696,#2c2a3e, 37-49 d,#2c2a3e, 50-51 d,#525252, 52-99 d,d, |17: 0-1 d,#525252, 2-49 d,d, 50-51 d,#525252, 52-99 d,d, |18: 0-1 d,#525252, 2-49 d,d, 50-51 d,#525252, 52-99 d,d, |19: 0-1 d,#525252, 2-49 d,d, 50-51 d,#525252, 52-99 d,d, |20: 0-1 d,#525252, 2-49 d,d, 50-51 d,#525252, 52-99 d,d, -|21: 0-1 d,#383c54, 2-35 #969696,#2c2a3e, 36-49 d,#2c2a3e, 50-51 d,#525252, 52-99 d,d, +|21: 0-1 d,#525252, 2-49 d,d, 50-51 d,#525252, 52-99 d,d, |22: 0-1 d,#525252, 2-49 d,d, 50-51 d,#525252, 52-99 d,d, |23: 0-1 d,#525252, 2-49 d,d, 50-51 d,#525252, 52-99 d,d, |24: 0-1 d,#525252, 2-49 d,d, 50-51 d,#525252, 52-99 d,d, @@ -62,27 +62,27 @@ |29: 0-1 d,#525252, 2-49 d,d, 50-51 d,#525252, 52-99 d,d, == style term-palette |0: 0-44 #969696,#2c2a3e, 45-99 d,#2c2a3e, -|1: 0-1 d,#6e4fd0, 2-49 #969696,#2c2a3e, 50-51 d,#383c54, 52-85 #969696,#2c2a3e, 86-99 d,#2c2a3e, -|2: 0-1 d,#2a2a2a, 2-16 d,d, 17-32 #ffffff,#ffffff, 33-33 #ffffff,#352879, 34-34 #352879,#ffffff, 35-49 d,d, 50-51 d,#525252, 52-99 d,d, -|3: 0-1 d,#2a2a2a, 2-16 d,d, 17-30 #ffffff,#ffffff, 31-32 #ffffff,#352879, 33-33 #352879,#ffffff, 34-34 #352879,#352879, 35-49 d,d, 50-51 d,#525252, 52-99 d,d, -|4: 0-1 d,#2a2a2a, 2-16 d,d, 17-28 #ffffff,#ffffff, 29-30 #ffffff,#352879, 31-31 #352879,#ffffff, 32-34 #352879,#352879, 35-49 d,d, 50-51 d,#525252, 52-99 d,d, -|5: 0-1 d,#2a2a2a, 2-16 d,d, 17-26 #ffffff,#ffffff, 27-28 #ffffff,#352879, 29-29 #352879,#ffffff, 30-34 #352879,#352879, 35-49 d,d, 50-51 d,#525252, 52-99 d,d, -|6: 0-1 d,#2a2a2a, 2-16 d,d, 17-24 #ffffff,#ffffff, 25-26 #ffffff,#352879, 27-27 #352879,#ffffff, 28-34 #352879,#352879, 35-49 d,d, 50-51 d,#525252, 52-99 d,d, -|7: 0-1 d,#2a2a2a, 2-16 d,d, 17-22 #ffffff,#ffffff, 23-24 #ffffff,#352879, 25-25 #352879,#ffffff, 26-34 #352879,#352879, 35-49 d,d, 50-51 d,#525252, 52-99 d,d, -|8: 0-1 d,#2a2a2a, 2-16 d,d, 17-20 #ffffff,#ffffff, 21-22 #ffffff,#352879, 23-23 #352879,#ffffff, 24-34 #352879,#352879, 35-49 d,d, 50-51 d,#525252, 52-99 d,d, -|9: 0-1 d,#2a2a2a, 2-16 d,d, 17-18 #ffffff,#ffffff, 19-20 #ffffff,#352879, 21-21 #352879,#ffffff, 22-34 #352879,#352879, 35-49 d,d, 50-51 d,#525252, 52-99 d,d, -|10: 0-1 d,#2a2a2a, 2-16 d,d, 17-17 #ffffff,#352879, 18-19 #352879,#ffffff, 20-34 #352879,#352879, 35-49 d,d, 50-51 d,#525252, 52-99 d,d, -|11: 0-1 d,#383c54, 2-35 #969696,#2c2a3e, 36-49 d,#2c2a3e, 50-51 d,#525252, 52-99 d,d, +|1: 0-1 d,#6e4fd0, 2-49 #969696,#2c2a3e, 50-51 d,#383c54, 52-86 #969696,#2c2a3e, 87-99 d,#2c2a3e, +|2: 0-1 d,#2a2a2a, 2-19 d,d, 20-29 #ffffff,#ffffff, 30-31 #ffffff,#6c5eb5, 32-49 d,d, 50-51 d,#525252, 52-99 d,d, +|3: 0-1 d,#2a2a2a, 2-19 d,d, 20-27 #ffffff,#ffffff, 28-29 #ffffff,#6c5eb5, 30-30 #352879,#ffffff, 31-31 #352879,#352879, 32-49 d,d, 50-51 d,#525252, 52-99 d,d, +|4: 0-1 d,#2a2a2a, 2-19 d,d, 20-25 #ffffff,#ffffff, 26-27 #ffffff,#6c5eb5, 28-28 #352879,#ffffff, 29-31 #352879,#352879, 32-49 d,d, 50-51 d,#525252, 52-99 d,d, +|5: 0-1 d,#2a2a2a, 2-19 d,d, 20-23 #ffffff,#ffffff, 24-25 #ffffff,#6c5eb5, 26-31 #352879,#352879, 32-49 d,d, 50-51 d,#525252, 52-99 d,d, +|6: 0-1 d,#2a2a2a, 2-19 d,d, 20-21 #ffffff,#ffffff, 22-23 #ffffff,#6c5eb5, 24-24 #352879,#ffffff, 25-31 #352879,#352879, 32-49 d,d, 50-51 d,#525252, 52-99 d,d, +|7: 0-1 d,#2a2a2a, 2-19 d,d, 20-21 #ffffff,#6c5eb5, 22-22 #352879,#ffffff, 23-31 #352879,#352879, 32-49 d,d, 50-51 d,#525252, 52-99 d,d, +|8: 0-1 d,#383c54, 2-36 #969696,#2c2a3e, 37-49 d,#2c2a3e, 50-51 d,#525252, 52-99 d,d, +|9: 0-1 d,#525252, 2-49 d,d, 50-51 d,#525252, 52-99 d,d, +|10: 0-1 d,#525252, 2-49 d,d, 50-51 d,#525252, 52-99 d,d, +|11: 0-1 d,#525252, 2-49 d,d, 50-51 d,#525252, 52-99 d,d, |12: 0-1 d,#525252, 2-49 d,d, 50-51 d,#525252, 52-99 d,d, |13: 0-1 d,#525252, 2-49 d,d, 50-51 d,#525252, 52-99 d,d, |14: 0-1 d,#525252, 2-49 d,d, 50-51 d,#525252, 52-99 d,d, |15: 0-1 d,#525252, 2-49 d,d, 50-51 d,#525252, 52-99 d,d, -|16: 0-1 d,#525252, 2-49 d,d, 50-51 d,#525252, 52-99 d,d, +|16: 0-1 d,#383c54, 2-36 #969696,#2c2a3e, 37-49 d,#2c2a3e, 50-51 d,#525252, 52-99 d,d, |17: 0-1 d,#525252, 2-49 d,d, 50-51 d,#525252, 52-99 d,d, |18: 0-1 d,#525252, 2-49 d,d, 50-51 d,#525252, 52-99 d,d, |19: 0-1 d,#525252, 2-49 d,d, 50-51 d,#525252, 52-99 d,d, |20: 0-1 d,#525252, 2-49 d,d, 50-51 d,#525252, 52-99 d,d, -|21: 0-1 d,#383c54, 2-35 #969696,#2c2a3e, 36-49 d,#2c2a3e, 50-51 d,#525252, 52-99 d,d, +|21: 0-1 d,#525252, 2-49 d,d, 50-51 d,#525252, 52-99 d,d, |22: 0-1 d,#525252, 2-49 d,d, 50-51 d,#525252, 52-99 d,d, |23: 0-1 d,#525252, 2-49 d,d, 50-51 d,#525252, 52-99 d,d, |24: 0-1 d,#525252, 2-49 d,d, 50-51 d,#525252, 52-99 d,d, @@ -93,27 +93,27 @@ |29: 0-1 d,#525252, 2-49 d,d, 50-51 d,#525252, 52-99 d,d, == style no-ascii |0: 0-44 #969696,#2c2a3e, 45-99 d,#2c2a3e, -|1: 0-1 d,#6e4fd0, 2-49 #969696,#2c2a3e, 50-51 d,#383c54, 52-85 #969696,#2c2a3e, 86-99 d,#2c2a3e, -|2: 0-1 d,#2a2a2a, 2-16 d,d, 17-32 #ffffff,#ffffff, 33-33 #ffffff,#352879, 34-34 #352879,#ffffff, 35-49 d,d, 50-51 d,#525252, 52-99 d,d, -|3: 0-1 d,#2a2a2a, 2-16 d,d, 17-30 #ffffff,#ffffff, 31-32 #ffffff,#352879, 33-33 #352879,#ffffff, 34-34 #352879,#352879, 35-49 d,d, 50-51 d,#525252, 52-99 d,d, -|4: 0-1 d,#2a2a2a, 2-16 d,d, 17-28 #ffffff,#ffffff, 29-30 #ffffff,#352879, 31-31 #352879,#ffffff, 32-34 #352879,#352879, 35-49 d,d, 50-51 d,#525252, 52-99 d,d, -|5: 0-1 d,#2a2a2a, 2-16 d,d, 17-26 #ffffff,#ffffff, 27-28 #ffffff,#352879, 29-29 #352879,#ffffff, 30-34 #352879,#352879, 35-49 d,d, 50-51 d,#525252, 52-99 d,d, -|6: 0-1 d,#2a2a2a, 2-16 d,d, 17-24 #ffffff,#ffffff, 25-26 #ffffff,#352879, 27-27 #352879,#ffffff, 28-34 #352879,#352879, 35-49 d,d, 50-51 d,#525252, 52-99 d,d, -|7: 0-1 d,#2a2a2a, 2-16 d,d, 17-22 #ffffff,#ffffff, 23-24 #ffffff,#352879, 25-25 #352879,#ffffff, 26-34 #352879,#352879, 35-49 d,d, 50-51 d,#525252, 52-99 d,d, -|8: 0-1 d,#2a2a2a, 2-16 d,d, 17-20 #ffffff,#ffffff, 21-22 #ffffff,#352879, 23-23 #352879,#ffffff, 24-34 #352879,#352879, 35-49 d,d, 50-51 d,#525252, 52-99 d,d, -|9: 0-1 d,#2a2a2a, 2-16 d,d, 17-18 #ffffff,#ffffff, 19-20 #ffffff,#352879, 21-21 #352879,#ffffff, 22-34 #352879,#352879, 35-49 d,d, 50-51 d,#525252, 52-99 d,d, -|10: 0-1 d,#2a2a2a, 2-16 d,d, 17-17 #ffffff,#352879, 18-19 #352879,#ffffff, 20-34 #352879,#352879, 35-49 d,d, 50-51 d,#525252, 52-99 d,d, -|11: 0-1 d,#383c54, 2-35 #969696,#2c2a3e, 36-49 d,#2c2a3e, 50-51 d,#525252, 52-99 d,d, +|1: 0-1 d,#6e4fd0, 2-49 #969696,#2c2a3e, 50-51 d,#383c54, 52-86 #969696,#2c2a3e, 87-99 d,#2c2a3e, +|2: 0-1 d,#2a2a2a, 2-19 d,d, 20-29 #ffffff,#ffffff, 30-31 #ffffff,#6c5eb5, 32-49 d,d, 50-51 d,#525252, 52-99 d,d, +|3: 0-1 d,#2a2a2a, 2-19 d,d, 20-27 #ffffff,#ffffff, 28-29 #ffffff,#6c5eb5, 30-30 #352879,#ffffff, 31-31 #352879,#352879, 32-49 d,d, 50-51 d,#525252, 52-99 d,d, +|4: 0-1 d,#2a2a2a, 2-19 d,d, 20-25 #ffffff,#ffffff, 26-27 #ffffff,#6c5eb5, 28-28 #352879,#ffffff, 29-31 #352879,#352879, 32-49 d,d, 50-51 d,#525252, 52-99 d,d, +|5: 0-1 d,#2a2a2a, 2-19 d,d, 20-23 #ffffff,#ffffff, 24-25 #ffffff,#6c5eb5, 26-31 #352879,#352879, 32-49 d,d, 50-51 d,#525252, 52-99 d,d, +|6: 0-1 d,#2a2a2a, 2-19 d,d, 20-21 #ffffff,#ffffff, 22-23 #ffffff,#6c5eb5, 24-24 #352879,#ffffff, 25-31 #352879,#352879, 32-49 d,d, 50-51 d,#525252, 52-99 d,d, +|7: 0-1 d,#2a2a2a, 2-19 d,d, 20-21 #ffffff,#6c5eb5, 22-22 #352879,#ffffff, 23-31 #352879,#352879, 32-49 d,d, 50-51 d,#525252, 52-99 d,d, +|8: 0-1 d,#383c54, 2-36 #969696,#2c2a3e, 37-49 d,#2c2a3e, 50-51 d,#525252, 52-99 d,d, +|9: 0-1 d,#525252, 2-49 d,d, 50-51 d,#525252, 52-99 d,d, +|10: 0-1 d,#525252, 2-49 d,d, 50-51 d,#525252, 52-99 d,d, +|11: 0-1 d,#525252, 2-49 d,d, 50-51 d,#525252, 52-99 d,d, |12: 0-1 d,#525252, 2-49 d,d, 50-51 d,#525252, 52-99 d,d, |13: 0-1 d,#525252, 2-49 d,d, 50-51 d,#525252, 52-99 d,d, |14: 0-1 d,#525252, 2-49 d,d, 50-51 d,#525252, 52-99 d,d, |15: 0-1 d,#525252, 2-49 d,d, 50-51 d,#525252, 52-99 d,d, -|16: 0-1 d,#525252, 2-49 d,d, 50-51 d,#525252, 52-99 d,d, +|16: 0-1 d,#383c54, 2-36 #969696,#2c2a3e, 37-49 d,#2c2a3e, 50-51 d,#525252, 52-99 d,d, |17: 0-1 d,#525252, 2-49 d,d, 50-51 d,#525252, 52-99 d,d, |18: 0-1 d,#525252, 2-49 d,d, 50-51 d,#525252, 52-99 d,d, |19: 0-1 d,#525252, 2-49 d,d, 50-51 d,#525252, 52-99 d,d, |20: 0-1 d,#525252, 2-49 d,d, 50-51 d,#525252, 52-99 d,d, -|21: 0-1 d,#383c54, 2-35 #969696,#2c2a3e, 36-49 d,#2c2a3e, 50-51 d,#525252, 52-99 d,d, +|21: 0-1 d,#525252, 2-49 d,d, 50-51 d,#525252, 52-99 d,d, |22: 0-1 d,#525252, 2-49 d,d, 50-51 d,#525252, 52-99 d,d, |23: 0-1 d,#525252, 2-49 d,d, 50-51 d,#525252, 52-99 d,d, |24: 0-1 d,#525252, 2-49 d,d, 50-51 d,#525252, 52-99 d,d, diff --git a/test/snapshots/layout-close.golden b/test/snapshots/layout-close.golden new file mode 100644 index 00000000..b54b765b --- /dev/null +++ b/test/snapshots/layout-close.golden @@ -0,0 +1,205 @@ +== snap built grid=140x40 cursor=4,16 +|Kill Newcol Tutor Debug Colors NextColor Dump +| NOR /tmp/pardes-snap/layout-close/cwd Del NOR /tmp/pardes-snap/layout-close/cwd Del +| +| marker.txt marker.txt +| +| NOR /tmp/pardes-snap/layout-close/cwd Del +| +| marker.txt +| +| NOR /tmp/pardes-snap/layout-close/cwd Del +| +| marker.txt +| +| NOR /tmp/pardes-snap/layout-close/cwd Del +| +| marker.txt +| +| +| +| +| +| NOR /tmp/pardes-snap/layout-close/cwd Del +| +| marker.txt +| +| +| +| +| +| +| +| +| +| +| +| +| +| +| +| +== snap altc grid=140x40 cursor=98,4 +|Kill Newcol Tutor Debug Colors NextColor Dump +| NOR /tmp/pardes-snap/layout-close/cwd Del NOR /tmp/pardes-snap/layout-close/cwd Del NOR /tmp/pardes-snap/layout-close/cwd Del +| +| marker.txt marker.txt marker.txt +| +| NOR /tmp/pardes-snap/layout-close/cwd Del +| +| marker.txt +| +| NOR /tmp/pardes-snap/layout-close/cwd Del +| +| marker.txt +| +| +| +| +| +| +| +| +| +| NOR /tmp/pardes-snap/layout-close/cwd Del +| +| marker.txt +| +| +| +| +| +| +| +| +| +| +| +| +| +| +| +| +== snap del grid=140x40 cursor=98,4 +|Kill Newcol Tutor Debug Colors NextColor Dump +| NOR /tmp/pardes-snap/layout-close/cwd Del NOR /tmp/pardes-snap/layout-close/cwd Del NOR /tmp/pardes-snap/layout-close/cwd Del +| +| marker.txt marker.txt marker.txt +| +| +| +| +| +| NOR /tmp/pardes-snap/layout-close/cwd Del +| +| marker.txt +| +| +| +| +| +| +| +| +| +| NOR /tmp/pardes-snap/layout-close/cwd Del +| +| marker.txt +| +| +| +| +| +| +| +| +| +| +| +| +| +| +| +| +== snap exit grid=140x40 cursor=4,7 +|Kill Newcol Tutor Debug Colors NextColor Dump +| NOR /tmp/pardes-snap/layout-close/cwd Del NOR /tmp/pardes-snap/layout-close/cwd Del NOR /tmp/pardes-snap/layout-close/cwd Del +| +| marker.txt marker.txt marker.txt +| +| +| +| +| +| +| +| +| +| +| +| +| +| +| +| +| +| NOR /tmp/pardes-snap/layout-close/cwd Del +| +| marker.txt +| +| +| +| +| +| +| +| +| +| +| +| +| +| +| +| +== snap colclose grid=140x40 cursor=4,7 +|Kill Newcol Tutor Debug Colors NextColor Dump +| NOR /tmp/pardes-snap/layout-close/cwd Del NOR /tmp/pardes-snap/layout-close/cwd Del +| +| marker.txt marker.txt +| +| +| +| +| +| +| +| +| +| +| +| +| +| +| +| +| +| NOR /tmp/pardes-snap/layout-close/cwd Del +| +| marker.txt +| +| +| +| +| +| +| +| +| +| +| +| +| +| +| +| diff --git a/test/snapshots/layout-close.snap b/test/snapshots/layout-close.snap new file mode 100644 index 00000000..63f5cd81 --- /dev/null +++ b/test/snapshots/layout-close.snap @@ -0,0 +1,53 @@ +# every pane close hands its space to ONE sibling, the rest of the column +# keeps its sizes: Alt-c move-out, tag Del, and shell exit (pty EOF); an +# emptied column hands its width to one neighbor +file marker.txt x +start 40 140 +wait 8000 marker.txt +stable 700 20000 +# build a left column of five: Alt-n three times from pane 0 (active follows +# the new pane, each split takes from the freshly split pane only) +press left 5 8 +release left 5 8 +stable 400 5000 +key a-n +stable 700 15000 +key a-n +stable 700 15000 +key a-n +stable 700 15000 +snap built +# Alt-c: the active (4th) pane moves to a fresh column; the pane above it +# absorbs its rows, the other three keep theirs (columns reflow horizontally) +key a-c +stable 700 15000 +snap altc +# middle-click Del in the 2nd pane's tag: the pane above absorbs +press middle 41 6 +release middle 41 6 +stable 700 10000 +snap del +# exit the (now) 2nd shell (type the command, esc, Tab executes the word): +# pty EOF, again only the pane above absorbs +press left 5 14 +release left 5 14 +stable 400 5000 +key i +text exit +key esc +settle 700 +key tab +stable 700 10000 +snap exit +# exit the moved-out pane's shell: its column empties and hands its width to +# the middle column only; the left column's width must not change +press left 100 8 +release left 100 8 +stable 400 5000 +key i +text exit +key esc +settle 700 +key tab +stable 700 10000 +snap colclose diff --git a/test/snapshots/layout-open.golden b/test/snapshots/layout-open.golden new file mode 100644 index 00000000..c0690d3c --- /dev/null +++ b/test/snapshots/layout-open.golden @@ -0,0 +1,155 @@ +== snap before grid=100x30 cursor=4,7 +|Kill Newcol Tutor Debug Colors NextColor Dump +| NOR /tmp/pardes-snap/layout-open/cwd Del NOR /tmp/pardes-snap/layout-open/cwd Del +| +| sub sub +| +| +| +| echo one; echo two +| +| +| +| +| +| +| +| +| NOR /tmp/pardes-snap/layout-open/cwd Del +| +| sub +| +| +| +| +| +| +| +| +| +| +| +== snap altn-left grid=100x30 cursor=4,8 +|Kill Newcol Tutor Debug Colors NextColor Dump +| NOR /tmp/pardes-snap/layout-open/cwd Del NOR /tmp/pardes-snap/layout-open/cwd Del +| +| sub sub +| +| NOR /tmp/pardes-snap/layout-open/cwd Del +| +| sub +| +| +| +| +| +| +| +| +| NOR /tmp/pardes-snap/layout-open/cwd Del +| +| sub +| +| +| +| +| +| +| +| +| +| +| +== snap altn-right grid=100x30 cursor=54,8 +|Kill Newcol Tutor Debug Colors NextColor Dump +| NOR /tmp/pardes-snap/layout-open/cwd Del NOR /tmp/pardes-snap/layout-open/cwd Del +| +| sub sub +| +| NOR /tmp/pardes-snap/layout-open/cwd Del NOR /tmp/pardes-snap/layout-open/cwd Del +| +| sub sub +| +| +| +| +| +| +| +| +| NOR /tmp/pardes-snap/layout-open/cwd Del +| +| sub +| +| +| +| +| +| +| +| +| +| +| +== snap file-open grid=100x30 cursor=7,2 +|Kill Newcol Tutor Debug Colors NextColor Dump +| NOR /tmp/pardes-snap/layout-open/cwd/sub/f.txt S NOR /tmp/pardes-snap/layout-open/cwd Del +| 1 echo 'TTY'OK +| NOR /tmp/pardes-snap/layout-open/cwd Del sub +| +| NOR /tmp/pardes-snap/layout-open/cwd Del NOR /tmp/pardes-snap/layout-open/cwd Del +| +| sub sub +| +| +| +| +| +| +| +| +| NOR /tmp/pardes-snap/layout-open/cwd Del +| +| sub +| +| +| +| +| +| +| +| sub/f.txt +| +| +| +== snap ttydir grid=100x30 cursor=7,2 +|Kill Newcol Tutor Debug Colors NextColor Dump +| NOR /tmp/pardes-snap/layout-open/cwd/sub/f.txt S NOR /tmp/pardes-snap/layout-open/cwd Del +| 1 echo 'TTY'OK +| NOR /tmp/pardes-snap/layout-open/cwd Del sub +| +| NOR /tmp/pardes-snap/layout-open/cwd Del NOR /tmp/pardes-snap/layout-open/cwd Del +| +| sub sub +| +| NOR /tmp/pardes-snap/layout-open/cwd/sub Del +| echo 'TTY'OK +| +| TTYOK +| +| +| +| NOR /tmp/pardes-snap/layout-open/cwd Del +| +| sub +| +| +| +| +| +| +| +| sub/f.txt +| +| +| diff --git a/test/snapshots/layout-open.snap b/test/snapshots/layout-open.snap new file mode 100644 index 00000000..773cf70d --- /dev/null +++ b/test/snapshots/layout-open.snap @@ -0,0 +1,55 @@ +# every pane open splits ONE existing pane, the rest of the column keeps its +# sizes: Alt-n splits the active pane, a looked-up file stacking top-left +# splits only the old top pane, an execute-spawned shell for a file's dir +# splits only the bottom pane of the rightmost column +dirmk sub +file sub/f.txt echo 'TTY'OK +start 30 100 +wait 8000 sub +stable 700 20000 +# give pane 0 (top-left) some content so its content-height split is visible +press left 5 8 +release left 5 8 +stable 400 5000 +key i +text echo one; echo two +key enter +key esc +settle 700 +stable 400 5000 +snap before +# Alt-n: new shell below pane 0 — the bottom pane's boundary must not move +key a-n +stable 700 15000 +snap altn-left +# make the right column two panes (Alt-n in a fresh column, trivial split) +press left 70 8 +release left 70 8 +stable 400 5000 +key a-n +stable 700 15000 +snap altn-right +# look sub/f.txt from the bottom-left shell: the doc stacks at the top of the +# left column, splitting only the old top pane — lower boundaries must not move +press left 5 27 +release left 5 27 +stable 400 5000 +key i +text sub/f.txt +key esc +settle 700 +stable 400 5000 +press right 7 27 +release right 7 27 +stable 700 15000 +snap file-open +# execute the file's command (middle drag over line 1): no shell has cwd sub/, +# so one is forked at the bottom of the rightmost column, splitting only the +# pane above it +press middle 8 3 +drag middle 19 3 +release middle 19 3 +wait 10000 TTYOK +motion 40 25 +stable 700 10000 +snap ttydir diff --git a/test/snapshots/load.golden b/test/snapshots/load.golden index ade03fe3..5ca1bfc8 100644 --- a/test/snapshots/load.golden +++ b/test/snapshots/load.golden @@ -1,6 +1,6 @@ == snap loaded grid=100x30 cursor=4,15 |Kill Newcol Tutor Debug Colors NextColor Dump -| nm /tmp/pardes-snap/load/cwd Del nm /tmp/pardes-snap/load/cwd Del +| NOR /tmp/pardes-snap/load/cwd Del NOR /tmp/pardes-snap/load/cwd Del | | LOADMARK d.txt | 1 @@ -15,7 +15,7 @@ | 10 | 11 | 12 -| nm /tmp/pardes-snap/load/cwd Del +| NOR /tmp/pardes-snap/load/cwd Del | | d.txt | @@ -31,7 +31,7 @@ | == style loaded |0: 0-44 #969696,#2c2a3e, 45-99 d,#2c2a3e, -|1: 0-1 d,#6e4fd0, 2-33 #969696,#2c2a3e, 34-49 d,#2c2a3e, 50-51 d,#383c54, 52-83 #969696,#2c2a3e, 84-99 d,#2c2a3e, +|1: 0-1 d,#6e4fd0, 2-34 #969696,#2c2a3e, 35-49 d,#2c2a3e, 50-51 d,#383c54, 52-84 #969696,#2c2a3e, 85-99 d,#2c2a3e, |2: 0-1 d,#525252, 2-49 d,d, 50-51 d,#525252, 52-99 d,d, |3: 0-1 d,#525252, 2-49 d,d, 50-51 d,#525252, 52-99 d,d, |4: 0-1 d,#525252, 2-49 d,d, 50-51 d,#525252, 52-99 d,d, @@ -46,7 +46,7 @@ |13: 0-1 d,#2a2a2a, 2-49 d,d, 50-51 d,#525252, 52-99 d,d, |14: 0-1 d,#2a2a2a, 2-49 d,d, 50-51 d,#525252, 52-99 d,d, |15: 0-1 d,#2a2a2a, 2-49 d,d, 50-51 d,#525252, 52-99 d,d, -|16: 0-1 d,#383c54, 2-33 #969696,#2c2a3e, 34-49 d,#2c2a3e, 50-51 d,#525252, 52-99 d,d, +|16: 0-1 d,#383c54, 2-34 #969696,#2c2a3e, 35-49 d,#2c2a3e, 50-51 d,#525252, 52-99 d,d, |17: 0-1 d,#525252, 2-49 d,d, 50-51 d,#525252, 52-99 d,d, |18: 0-1 d,#525252, 2-49 d,d, 50-51 d,#525252, 52-99 d,d, |19: 0-1 d,#525252, 2-49 d,d, 50-51 d,#525252, 52-99 d,d, diff --git a/test/snapshots/look-center.golden b/test/snapshots/look-center.golden new file mode 100644 index 00000000..67ef9a71 --- /dev/null +++ b/test/snapshots/look-center.golden @@ -0,0 +1,93 @@ +== snap center-open grid=100x30 cursor=7,5 +|Kill Newcol Tutor Debug Colors NextColor Dump +| NOR /tmp/pardes-snap/look-center/cwd/big.txt Sav NOR /tmp/pardes-snap/look-center/cwd Del +| 97 line 97 +| 98 line 98 big.txt +| 99 line 99 +| 100 line 100 +| 101 line 101 +|╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌ +| NOR /tmp/pardes-snap/look-center/cwd Del +| +| big.txt +| +| +| +| big.txt:100 big.txt:150 big.txt:2 +| +| NOR /tmp/pardes-snap/look-center/cwd Del +| +| big.txt +| +| +| +| +| +| +| +| +| +| +| +== snap center-dedup grid=100x30 cursor=7,5 +|Kill Newcol Tutor Debug Colors NextColor Dump +| NOR /tmp/pardes-snap/look-center/cwd/big.txt Sav NOR /tmp/pardes-snap/look-center/cwd Del +| 147 line 147 +| 148 line 148 big.txt +| 149 line 149 +| 150 line 150 +| 151 line 151 +| 152 line 152 +| NOR /tmp/pardes-snap/look-center/cwd Del +| +| big.txt +| +| +| +| big.txt:100 big.txt:150 big.txt:2 +| +| NOR /tmp/pardes-snap/look-center/cwd Del +| +| big.txt +| +| +| +| +| +| +| +| +| +| +| +== snap center-clamp grid=100x30 cursor=7,3 +|Kill Newcol Tutor Debug Colors NextColor Dump +| NOR /tmp/pardes-snap/look-center/cwd/big.txt Sav NOR /tmp/pardes-snap/look-center/cwd Del +| 1 line 1 +| 2 line 2 big.txt +| 3 line 3 +| 4 line 4 +| 5 line 5 +| 6 line 6 +| NOR /tmp/pardes-snap/look-center/cwd Del +| +| big.txt +| +| +| +| big.txt:100 big.txt:150 big.txt:2 +| +| NOR /tmp/pardes-snap/look-center/cwd Del +| +| big.txt +| +| +| +| +| +| +| +| +| +| +| diff --git a/test/snapshots/look-center.snap b/test/snapshots/look-center.snap new file mode 100644 index 00000000..a56ff038 --- /dev/null +++ b/test/snapshots/look-center.snap @@ -0,0 +1,28 @@ +# a look on path:NN opens the file with the target line CENTERED in the body +# (scroll = line - body/2): fresh open at a deep line, then dedup re-looks at +# the same path re-center the existing pane, and a look near line 1 clamps +# the scroll at 0 (no negative scroll) +lines big.txt 200 +start 30 100 +wait 8000 big.txt +stable 700 20000 +press left 5 8 +release left 5 8 +stable 400 5000 +key i +text big.txt:100 big.txt:150 big.txt:2 +key esc +settle 700 +stable 400 5000 +press right 7 8 +release right 7 8 +stable 700 15000 +snap center-open +press right 18 15 +release right 18 15 +stable 700 15000 +snap center-dedup +press right 30 15 +release right 30 15 +stable 700 15000 +snap center-clamp diff --git a/test/snapshots/look-dir.actual b/test/snapshots/look-dir.actual deleted file mode 100644 index 523560ba..00000000 --- a/test/snapshots/look-dir.actual +++ /dev/null @@ -1,31 +0,0 @@ -== snap dir-open grid=100x30 cursor=4,9 -|Kill Newcol Tutor Debug Colors NextColor Dump -| nm /tmp/pardes-snap/look-dir/cwd Del nm /tmp/pardes-snap/look-dir/cwd Del -| -| sub top.txt sub top.txt -| -| nm /tmp/pardes-snap/look-dir/cwd/sub Del -| ls -| -| inner.txt -| -| -| -| -| -| -| -| nm /tmp/pardes-snap/look-dir/cwd Del -| -| sub top.txt -| -| -| -| -| -| -| -| -| -| -| diff --git a/test/snapshots/look-dir.golden b/test/snapshots/look-dir.golden index c4337878..ccd6b9e9 100644 --- a/test/snapshots/look-dir.golden +++ b/test/snapshots/look-dir.golden @@ -1,10 +1,10 @@ == snap dir-open grid=100x30 cursor=4,8 |Kill Newcol Tutor Debug Colors NextColor Dump -| nm /tmp/pardes-snap/look-dir/cwd Del nm /tmp/pardes-snap/look-dir/cwd Del +| NOR /tmp/pardes-snap/look-dir/cwd Del NOR /tmp/pardes-snap/look-dir/cwd Del | | sub top.txt sub top.txt | -| nm /tmp/pardes-snap/look-dir/cwd/sub Del +| NOR /tmp/pardes-snap/look-dir/cwd/sub Del | | inner.txt | @@ -15,7 +15,7 @@ | | | -| nm /tmp/pardes-snap/look-dir/cwd Del +| NOR /tmp/pardes-snap/look-dir/cwd Del | | sub top.txt | diff --git a/test/snapshots/look-file.golden b/test/snapshots/look-file.golden index 4f6d4a71..e3d40b84 100644 --- a/test/snapshots/look-file.golden +++ b/test/snapshots/look-file.golden @@ -1,16 +1,13 @@ -== snap file-open grid=100x30 cursor=7,2 +== snap file-open grid=100x30 cursor=7,5 |Kill Newcol Tutor Debug Colors NextColor Dump -| nm /tmp/pardes-snap/look-file/cwd/big.txt Save D nm /tmp/pardes-snap/look-file/cwd Del +| NOR /tmp/pardes-snap/look-file/cwd/big.txt Save NOR /tmp/pardes-snap/look-file/cwd Del +| 37 line 37 +| 38 line 38 big.txt +| 39 line 39 | 40 line 40 -| 41 line 41 big.txt -| 42 line 42 -| 43 line 43 -| 44 line 44 -| 45 line 45 -| 46 line 46 -| 47 line 47 -| 48 line 48 -| nm /tmp/pardes-snap/look-file/cwd Del +| 41 line 41 +|╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌ +| NOR /tmp/pardes-snap/look-file/cwd Del | | big.txt | @@ -18,11 +15,14 @@ | | big.txt:40 | +| NOR /tmp/pardes-snap/look-file/cwd Del +| +| big.txt +| +| | | -| nm /tmp/pardes-snap/look-file/cwd Del | -| big.txt | | | @@ -31,27 +31,27 @@ | == style file-open |0: 0-44 #969696,#2c2a3e, 45-99 d,#2c2a3e, -|1: 0-1 d,#6e4fd0, 2-49 #969696,#2c2a3e, 50-51 d,#383c54, 52-88 #969696,#2c2a3e, 89-99 d,#2c2a3e, +|1: 0-1 d,#6e4fd0, 2-49 #969696,#2c2a3e, 50-51 d,#383c54, 52-89 #969696,#2c2a3e, 90-99 d,#2c2a3e, |2: 0-1 d,#2a2a2a, 2-6 #5a5a5a,d, 7-49 d,d, 50-51 d,#525252, 52-99 d,d, |3: 0-1 d,#2a2a2a, 2-6 #5a5a5a,d, 7-49 d,d, 50-51 d,#525252, 52-99 d,d, |4: 0-1 d,#2a2a2a, 2-6 #5a5a5a,d, 7-49 d,d, 50-51 d,#525252, 52-99 d,d, -|5: 0-1 d,#2a2a2a, 2-6 #5a5a5a,d, 7-49 d,d, 50-51 d,#525252, 52-99 d,d, +|5: 0-1 d,#525252, 2-6 #969696,#2c2a3e, 7-49 d,d, 50-51 d,#525252, 52-99 d,d, |6: 0-1 d,#2a2a2a, 2-6 #5a5a5a,d, 7-49 d,d, 50-51 d,#525252, 52-99 d,d, -|7: 0-1 d,#525252, 2-6 #5a5a5a,d, 7-49 d,d, 50-51 d,#525252, 52-99 d,d, -|8: 0-1 d,#2a2a2a, 2-6 #5a5a5a,d, 7-49 d,d, 50-51 d,#525252, 52-99 d,d, -|9: 0-1 d,#2a2a2a, 2-6 #5a5a5a,d, 7-49 d,d, 50-51 d,#525252, 52-99 d,d, -|10: 0-1 d,#2a2a2a, 2-6 #5a5a5a,d, 7-49 d,d, 50-51 d,#525252, 52-99 d,d, -|11: 0-1 d,#383c54, 2-38 #969696,#2c2a3e, 39-49 d,#2c2a3e, 50-51 d,#525252, 52-99 d,d, +|7: 0-1 d,#2a2a2a, 2-6 #5a5a5a,d, 7-49 d,d, 50-51 d,#525252, 52-99 d,d, +|8: 0-1 d,#383c54, 2-39 #969696,#2c2a3e, 40-49 d,#2c2a3e, 50-51 d,#525252, 52-99 d,d, +|9: 0-1 d,#525252, 2-49 d,d, 50-51 d,#525252, 52-99 d,d, +|10: 0-1 d,#525252, 2-49 d,d, 50-51 d,#525252, 52-99 d,d, +|11: 0-1 d,#525252, 2-49 d,d, 50-51 d,#525252, 52-99 d,d, |12: 0-1 d,#525252, 2-49 d,d, 50-51 d,#525252, 52-99 d,d, |13: 0-1 d,#525252, 2-49 d,d, 50-51 d,#525252, 52-99 d,d, |14: 0-1 d,#525252, 2-49 d,d, 50-51 d,#525252, 52-99 d,d, |15: 0-1 d,#525252, 2-49 d,d, 50-51 d,#525252, 52-99 d,d, -|16: 0-1 d,#525252, 2-49 d,d, 50-51 d,#525252, 52-99 d,d, +|16: 0-1 d,#383c54, 2-39 #969696,#2c2a3e, 40-49 d,#2c2a3e, 50-51 d,#525252, 52-99 d,d, |17: 0-1 d,#525252, 2-49 d,d, 50-51 d,#525252, 52-99 d,d, |18: 0-1 d,#525252, 2-49 d,d, 50-51 d,#525252, 52-99 d,d, |19: 0-1 d,#525252, 2-49 d,d, 50-51 d,#525252, 52-99 d,d, |20: 0-1 d,#525252, 2-49 d,d, 50-51 d,#525252, 52-99 d,d, -|21: 0-1 d,#383c54, 2-38 #969696,#2c2a3e, 39-49 d,#2c2a3e, 50-51 d,#525252, 52-99 d,d, +|21: 0-1 d,#525252, 2-49 d,d, 50-51 d,#525252, 52-99 d,d, |22: 0-1 d,#525252, 2-49 d,d, 50-51 d,#525252, 52-99 d,d, |23: 0-1 d,#525252, 2-49 d,d, 50-51 d,#525252, 52-99 d,d, |24: 0-1 d,#525252, 2-49 d,d, 50-51 d,#525252, 52-99 d,d, diff --git a/test/snapshots/modal.golden b/test/snapshots/modal.golden index b4922f12..668fd02c 100644 --- a/test/snapshots/modal.golden +++ b/test/snapshots/modal.golden @@ -1,6 +1,6 @@ == snap top grid=100x30 cursor=2,2 |Kill Newcol Tutor Debug Colors NextColor Dump -| nm /tmp/pardes-snap/modal/cwd Del nm /tmp/pardes-snap/modal/cwd Del +| NOR /tmp/pardes-snap/modal/cwd Del NOR /tmp/pardes-snap/modal/cwd Del | | words.txt words.txt | @@ -15,7 +15,7 @@ | | | -| nm /tmp/pardes-snap/modal/cwd Del +| NOR /tmp/pardes-snap/modal/cwd Del | | words.txt | @@ -31,7 +31,7 @@ | == snap moved grid=100x30 cursor=2,6 |Kill Newcol Tutor Debug Colors NextColor Dump -| nm /tmp/pardes-snap/modal/cwd Del nm /tmp/pardes-snap/modal/cwd Del +| NOR /tmp/pardes-snap/modal/cwd Del NOR /tmp/pardes-snap/modal/cwd Del | | words.txt words.txt | @@ -46,7 +46,7 @@ | | | -| nm /tmp/pardes-snap/modal/cwd Del +| NOR /tmp/pardes-snap/modal/cwd Del | | words.txt | @@ -62,7 +62,7 @@ | == snap xsel grid=100x30 cursor=2,6 |Kill Newcol Tutor Debug Colors NextColor Dump -| nm /tmp/pardes-snap/modal/cwd Del nm /tmp/pardes-snap/modal/cwd Del +| NOR /tmp/pardes-snap/modal/cwd Del NOR /tmp/pardes-snap/modal/cwd Del | | words.txt words.txt | @@ -77,7 +77,7 @@ | | | -| nm /tmp/pardes-snap/modal/cwd Del +| NOR /tmp/pardes-snap/modal/cwd Del | | words.txt | @@ -93,7 +93,7 @@ | == style xsel |0: 0-44 #969696,#2c2a3e, 45-99 d,#2c2a3e, -|1: 0-1 d,#6e4fd0, 2-34 #969696,#2c2a3e, 35-49 d,#2c2a3e, 50-51 d,#383c54, 52-84 #969696,#2c2a3e, 85-99 d,#2c2a3e, +|1: 0-1 d,#6e4fd0, 2-35 #969696,#2c2a3e, 36-49 d,#2c2a3e, 50-51 d,#383c54, 52-85 #969696,#2c2a3e, 86-99 d,#2c2a3e, |2: 0-1 d,#525252, 2-49 d,d, 50-51 d,#525252, 52-99 d,d, |3: 0-1 d,#525252, 2-49 d,d, 50-51 d,#525252, 52-99 d,d, |4: 0-1 d,#525252, 2-49 d,d, 50-51 d,#525252, 52-99 d,d, @@ -108,7 +108,7 @@ |13: 0-1 d,#525252, 2-49 d,d, 50-51 d,#525252, 52-99 d,d, |14: 0-1 d,#525252, 2-49 d,d, 50-51 d,#525252, 52-99 d,d, |15: 0-1 d,#525252, 2-49 d,d, 50-51 d,#525252, 52-99 d,d, -|16: 0-1 d,#383c54, 2-34 #969696,#2c2a3e, 35-49 d,#2c2a3e, 50-51 d,#525252, 52-99 d,d, +|16: 0-1 d,#383c54, 2-35 #969696,#2c2a3e, 36-49 d,#2c2a3e, 50-51 d,#525252, 52-99 d,d, |17: 0-1 d,#525252, 2-49 d,d, 50-51 d,#525252, 52-99 d,d, |18: 0-1 d,#525252, 2-49 d,d, 50-51 d,#525252, 52-99 d,d, |19: 0-1 d,#525252, 2-49 d,d, 50-51 d,#525252, 52-99 d,d, @@ -124,7 +124,7 @@ |29: 0-1 d,#525252, 2-49 d,d, 50-51 d,#525252, 52-99 d,d, == snap xsel2 grid=100x30 cursor=2,7 |Kill Newcol Tutor Debug Colors NextColor Dump -| nm /tmp/pardes-snap/modal/cwd Del nm /tmp/pardes-snap/modal/cwd Del +| NOR /tmp/pardes-snap/modal/cwd Del NOR /tmp/pardes-snap/modal/cwd Del | | words.txt words.txt | @@ -139,7 +139,7 @@ | | | -| nm /tmp/pardes-snap/modal/cwd Del +| NOR /tmp/pardes-snap/modal/cwd Del | | words.txt | @@ -155,7 +155,7 @@ | == snap yanked grid=100x30 cursor=2,6 |Kill Newcol Tutor Debug Colors NextColor Dump -| nm /tmp/pardes-snap/modal/cwd Del nm /tmp/pardes-snap/modal/cwd Del +| NOR /tmp/pardes-snap/modal/cwd Del NOR /tmp/pardes-snap/modal/cwd Del | | words.txt words.txt | @@ -170,7 +170,7 @@ | | | -| nm /tmp/pardes-snap/modal/cwd Del +| NOR /tmp/pardes-snap/modal/cwd Del | | words.txt | @@ -186,7 +186,7 @@ | == snap vsel grid=100x30 cursor=3,7 |Kill Newcol Tutor Debug Colors NextColor Dump -| nm /tmp/pardes-snap/modal/cwd Del nm /tmp/pardes-snap/modal/cwd Del +| NOR /tmp/pardes-snap/modal/cwd Del NOR /tmp/pardes-snap/modal/cwd Del | | words.txt words.txt | @@ -201,7 +201,7 @@ | | | -| nm /tmp/pardes-snap/modal/cwd Del +| NOR /tmp/pardes-snap/modal/cwd Del | | words.txt | @@ -217,7 +217,7 @@ | == style vsel |0: 0-44 #969696,#2c2a3e, 45-99 d,#2c2a3e, -|1: 0-1 d,#6e4fd0, 2-34 #969696,#2c2a3e, 35-49 d,#2c2a3e, 50-51 d,#383c54, 52-84 #969696,#2c2a3e, 85-99 d,#2c2a3e, +|1: 0-1 d,#6e4fd0, 2-35 #969696,#2c2a3e, 36-49 d,#2c2a3e, 50-51 d,#383c54, 52-85 #969696,#2c2a3e, 86-99 d,#2c2a3e, |2: 0-1 d,#525252, 2-49 d,d, 50-51 d,#525252, 52-99 d,d, |3: 0-1 d,#525252, 2-49 d,d, 50-51 d,#525252, 52-99 d,d, |4: 0-1 d,#525252, 2-49 d,d, 50-51 d,#525252, 52-99 d,d, @@ -232,7 +232,7 @@ |13: 0-1 d,#525252, 2-49 d,d, 50-51 d,#525252, 52-99 d,d, |14: 0-1 d,#525252, 2-49 d,d, 50-51 d,#525252, 52-99 d,d, |15: 0-1 d,#525252, 2-49 d,d, 50-51 d,#525252, 52-99 d,d, -|16: 0-1 d,#383c54, 2-34 #969696,#2c2a3e, 35-49 d,#2c2a3e, 50-51 d,#525252, 52-99 d,d, +|16: 0-1 d,#383c54, 2-35 #969696,#2c2a3e, 36-49 d,#2c2a3e, 50-51 d,#525252, 52-99 d,d, |17: 0-1 d,#525252, 2-49 d,d, 50-51 d,#525252, 52-99 d,d, |18: 0-1 d,#525252, 2-49 d,d, 50-51 d,#525252, 52-99 d,d, |19: 0-1 d,#525252, 2-49 d,d, 50-51 d,#525252, 52-99 d,d, @@ -248,7 +248,7 @@ |29: 0-1 d,#525252, 2-49 d,d, 50-51 d,#525252, 52-99 d,d, == snap typed grid=100x30 cursor=3,7 |Kill Newcol Tutor Debug Colors NextColor Dump -| nm /tmp/pardes-snap/modal/cwd Del nm /tmp/pardes-snap/modal/cwd Del +| NOR /tmp/pardes-snap/modal/cwd Del NOR /tmp/pardes-snap/modal/cwd Del | | words.txt words.txt | @@ -263,7 +263,7 @@ | | | -| nm /tmp/pardes-snap/modal/cwd Del +| NOR /tmp/pardes-snap/modal/cwd Del | | words.txt | @@ -279,7 +279,7 @@ | == snap undone grid=100x30 cursor=3,7 |Kill Newcol Tutor Debug Colors NextColor Dump -| nm /tmp/pardes-snap/modal/cwd Del nm /tmp/pardes-snap/modal/cwd Del +| NOR /tmp/pardes-snap/modal/cwd Del NOR /tmp/pardes-snap/modal/cwd Del | | words.txt words.txt | @@ -294,7 +294,7 @@ | | | -| nm /tmp/pardes-snap/modal/cwd Del +| NOR /tmp/pardes-snap/modal/cwd Del | | words.txt | @@ -310,7 +310,7 @@ | == snap redone grid=100x30 cursor=3,7 |Kill Newcol Tutor Debug Colors NextColor Dump -| nm /tmp/pardes-snap/modal/cwd Del nm /tmp/pardes-snap/modal/cwd Del +| NOR /tmp/pardes-snap/modal/cwd Del NOR /tmp/pardes-snap/modal/cwd Del | | words.txt words.txt | @@ -325,7 +325,7 @@ | | | -| nm /tmp/pardes-snap/modal/cwd Del +| NOR /tmp/pardes-snap/modal/cwd Del | | words.txt | @@ -341,7 +341,7 @@ | == snap bottom grid=100x30 cursor=2,9 |Kill Newcol Tutor Debug Colors NextColor Dump -| nm /tmp/pardes-snap/modal/cwd Del nm /tmp/pardes-snap/modal/cwd Del +| NOR /tmp/pardes-snap/modal/cwd Del NOR /tmp/pardes-snap/modal/cwd Del | | words.txt words.txt | @@ -356,7 +356,7 @@ | | | -| nm /tmp/pardes-snap/modal/cwd Del +| NOR /tmp/pardes-snap/modal/cwd Del | | words.txt | diff --git a/test/snapshots/respawn.golden b/test/snapshots/respawn.golden new file mode 100644 index 00000000..2e5e1552 --- /dev/null +++ b/test/snapshots/respawn.golden @@ -0,0 +1,31 @@ +== snap respawn grid=100x30 cursor=4,8 +|Kill Newcol Tutor Debug Colors NextColor Dump +| NOR /tmp/pardes-snap/respawn/cwd Del NOR /tmp/pardes-snap/respawn/cwd Del +| +| +| TTY /tmp/pardes-snap/respawn/cwd Del +| $ ls +| $ echo RESP''AWNOK +| RESPAWNOK +| $ +| +| +| +| +| +| +| +| +| +| +| +| +| +| +| +| +| +| +| +| +| diff --git a/test/snapshots/respawn.snap b/test/snapshots/respawn.snap new file mode 100644 index 00000000..fbed77e1 --- /dev/null +++ b/test/snapshots/respawn.snap @@ -0,0 +1,21 @@ +# a deleted shell pane's pty lingers in its slot (there is no close effect); +# a later spawn reusing the pane id must reap it instead of tripping the +# drainEffects spawn assert — this exact sequence crashed pre-fix +start 30 100 +wait 8000 Kill Newcol +stable 700 20000 +# middle-click Del on the lower-left pane's tag: the pane id is freed while +# its shell process stays alive in the pty slot +press middle 36 17 +release middle 36 17 +stable 700 10000 +# Alt-n reuses the freed id -> spawn effect lands on the occupied slot +key a-n +stable 700 15000 +key c-b +stable 600 8000 +text echo RESP''AWNOK +key enter +wait 10000 RESPAWNOK +stable 700 10000 +snap respawn diff --git a/test/snapshots/scroll.golden b/test/snapshots/scroll.golden index 899c7dec..971f9659 100644 --- a/test/snapshots/scroll.golden +++ b/test/snapshots/scroll.golden @@ -1,6 +1,6 @@ == snap bottom grid=100x30 cursor=4,15 |Kill Newcol Tutor Debug Colors NextColor Dump -| nm /tmp/pardes-snap/scroll/cwd Del nm /tmp/pardes-snap/scroll/cwd Del +| NOR /tmp/pardes-snap/scroll/cwd Del NOR /tmp/pardes-snap/scroll/cwd Del | 188 | 189 s.txt | 190 @@ -15,7 +15,7 @@ | 199 | 200 | -| nm /tmp/pardes-snap/scroll/cwd Del +| NOR /tmp/pardes-snap/scroll/cwd Del | | s.txt | @@ -31,7 +31,7 @@ | == snap wheel3 grid=100x30 cursor=4,15 |Kill Newcol Tutor Debug Colors NextColor Dump -| nm /tmp/pardes-snap/scroll/cwd Del nm /tmp/pardes-snap/scroll/cwd Del +| NOR /tmp/pardes-snap/scroll/cwd Del NOR /tmp/pardes-snap/scroll/cwd Del | 185 | 186 s.txt | 187 @@ -46,7 +46,7 @@ | 196 | 197 | 198 -| nm /tmp/pardes-snap/scroll/cwd Del +| NOR /tmp/pardes-snap/scroll/cwd Del | | s.txt | @@ -62,7 +62,7 @@ | == snap gutter-up grid=100x30 cursor=4,15 |Kill Newcol Tutor Debug Colors NextColor Dump -| nm /tmp/pardes-snap/scroll/cwd Del nm /tmp/pardes-snap/scroll/cwd Del +| NOR /tmp/pardes-snap/scroll/cwd Del NOR /tmp/pardes-snap/scroll/cwd Del | 178 | 179 s.txt | 180 @@ -77,7 +77,7 @@ | 189 | 190 | 191 -| nm /tmp/pardes-snap/scroll/cwd Del +| NOR /tmp/pardes-snap/scroll/cwd Del | | s.txt | @@ -93,7 +93,7 @@ | == snap gutter-down grid=100x30 cursor=4,15 |Kill Newcol Tutor Debug Colors NextColor Dump -| nm /tmp/pardes-snap/scroll/cwd Del nm /tmp/pardes-snap/scroll/cwd Del +| NOR /tmp/pardes-snap/scroll/cwd Del NOR /tmp/pardes-snap/scroll/cwd Del | 180 | 181 s.txt | 182 @@ -108,7 +108,7 @@ | 191 | 192 | 193 -| nm /tmp/pardes-snap/scroll/cwd Del +| NOR /tmp/pardes-snap/scroll/cwd Del | | s.txt | @@ -124,7 +124,7 @@ | == snap wheel-down grid=100x30 cursor=4,15 |Kill Newcol Tutor Debug Colors NextColor Dump -| nm /tmp/pardes-snap/scroll/cwd Del nm /tmp/pardes-snap/scroll/cwd Del +| NOR /tmp/pardes-snap/scroll/cwd Del NOR /tmp/pardes-snap/scroll/cwd Del | 181 | 182 s.txt | 183 @@ -139,7 +139,7 @@ | 192 | 193 | 194 -| nm /tmp/pardes-snap/scroll/cwd Del +| NOR /tmp/pardes-snap/scroll/cwd Del | | s.txt | @@ -155,7 +155,7 @@ | == style wheel-down |0: 0-44 #969696,#2c2a3e, 45-99 d,#2c2a3e, -|1: 0-1 d,#6e4fd0, 2-35 #969696,#2c2a3e, 36-49 d,#2c2a3e, 50-51 d,#383c54, 52-85 #969696,#2c2a3e, 86-99 d,#2c2a3e, +|1: 0-1 d,#6e4fd0, 2-36 #969696,#2c2a3e, 37-49 d,#2c2a3e, 50-51 d,#383c54, 52-86 #969696,#2c2a3e, 87-99 d,#2c2a3e, |2: 0-1 d,#2a2a2a, 2-49 d,d, 50-51 d,#525252, 52-99 d,d, |3: 0-1 d,#2a2a2a, 2-49 d,d, 50-51 d,#525252, 52-99 d,d, |4: 0-1 d,#2a2a2a, 2-49 d,d, 50-51 d,#525252, 52-99 d,d, @@ -170,7 +170,7 @@ |13: 0-1 d,#2a2a2a, 2-49 d,d, 50-51 d,#525252, 52-99 d,d, |14: 0-1 d,#525252, 2-49 d,d, 50-51 d,#525252, 52-99 d,d, |15: 0-1 d,#2a2a2a, 2-49 d,d, 50-51 d,#525252, 52-99 d,d, -|16: 0-1 d,#383c54, 2-35 #969696,#2c2a3e, 36-49 d,#2c2a3e, 50-51 d,#525252, 52-99 d,d, +|16: 0-1 d,#383c54, 2-36 #969696,#2c2a3e, 37-49 d,#2c2a3e, 50-51 d,#525252, 52-99 d,d, |17: 0-1 d,#525252, 2-49 d,d, 50-51 d,#525252, 52-99 d,d, |18: 0-1 d,#525252, 2-49 d,d, 50-51 d,#525252, 52-99 d,d, |19: 0-1 d,#525252, 2-49 d,d, 50-51 d,#525252, 52-99 d,d, diff --git a/test/snapshots/scrolloff.golden b/test/snapshots/scrolloff.golden new file mode 100644 index 00000000..90e0e83f --- /dev/null +++ b/test/snapshots/scrolloff.golden @@ -0,0 +1,217 @@ +== snap top grid=100x30 cursor=7,2 +|Kill Newcol Tutor Debug Colors NextColor Dump +| NOR /tmp/pardes-snap/scrolloff/cwd/g.txt Save De NOR /tmp/pardes-snap/scrolloff/cwd Del +| 1 line 1 +| 2 line 2 g.txt +| 3 line 3 +| 4 line 4 +| 5 line 5 +| 6 line 6 +| NOR /tmp/pardes-snap/scrolloff/cwd Del +| +| g.txt +| +| +| +| +| +| NOR /tmp/pardes-snap/scrolloff/cwd Del +| +| g.txt +| +| +| +| +| +| +| +| +| +| +| +== snap edge grid=100x30 cursor=7,5 +|Kill Newcol Tutor Debug Colors NextColor Dump +| NOR /tmp/pardes-snap/scrolloff/cwd/g.txt Save De NOR /tmp/pardes-snap/scrolloff/cwd Del +| 3 line 3 +| 4 line 4 g.txt +| 5 line 5 +| 6 line 6 +| 7 line 7 +| 8 line 8 +| NOR /tmp/pardes-snap/scrolloff/cwd Del +| +| g.txt +| +| +| +| +| +| NOR /tmp/pardes-snap/scrolloff/cwd Del +| +| g.txt +| +| +| +| +| +| +| +| +| +| +| +== snap scrolled1 grid=100x30 cursor=7,5 +|Kill Newcol Tutor Debug Colors NextColor Dump +| NOR /tmp/pardes-snap/scrolloff/cwd/g.txt Save De NOR /tmp/pardes-snap/scrolloff/cwd Del +| 4 line 4 +| 5 line 5 g.txt +| 6 line 6 +| 7 line 7 +| 8 line 8 +| 9 line 9 +| NOR /tmp/pardes-snap/scrolloff/cwd Del +| +| g.txt +| +| +| +| +| +| NOR /tmp/pardes-snap/scrolloff/cwd Del +| +| g.txt +| +| +| +| +| +| +| +| +| +| +| +== snap jdown grid=100x30 cursor=7,5 +|Kill Newcol Tutor Debug Colors NextColor Dump +| NOR /tmp/pardes-snap/scrolloff/cwd/g.txt Save De NOR /tmp/pardes-snap/scrolloff/cwd Del +| 8 line 8 +| 9 line 9 g.txt +| 10 line 10 +| 11 line 11 +| 12 line 12 +| 13 line 13 +| NOR /tmp/pardes-snap/scrolloff/cwd Del +| +| g.txt +| +| +| +| +| +| NOR /tmp/pardes-snap/scrolloff/cwd Del +| +| g.txt +| +| +| +| +| +| +| +| +| +| +| +== snap end grid=100x30 cursor=7,7 +|Kill Newcol Tutor Debug Colors NextColor Dump +| NOR /tmp/pardes-snap/scrolloff/cwd/g.txt Save De NOR /tmp/pardes-snap/scrolloff/cwd Del +| 36 line 36 +| 37 line 37 g.txt +| 38 line 38 +| 39 line 39 +| 40 line 40 +| 41 +| NOR /tmp/pardes-snap/scrolloff/cwd Del +| +| g.txt +| +| +| +| +| +| NOR /tmp/pardes-snap/scrolloff/cwd Del +| +| g.txt +| +| +| +| +| +| +| +| +| +| +| +== snap kup grid=100x30 cursor=7,4 +|Kill Newcol Tutor Debug Colors NextColor Dump +| NOR /tmp/pardes-snap/scrolloff/cwd/g.txt Save De NOR /tmp/pardes-snap/scrolloff/cwd Del +| 31 line 31 +| 32 line 32 g.txt +| 33 line 33 +| 34 line 34 +| 35 line 35 +| 36 line 36 +| NOR /tmp/pardes-snap/scrolloff/cwd Del +| +| g.txt +| +| +| +| +| +| NOR /tmp/pardes-snap/scrolloff/cwd Del +| +| g.txt +| +| +| +| +| +| +| +| +| +| +| +== snap top2 grid=100x30 cursor=7,2 +|Kill Newcol Tutor Debug Colors NextColor Dump +| NOR /tmp/pardes-snap/scrolloff/cwd/g.txt Save De NOR /tmp/pardes-snap/scrolloff/cwd Del +| 1 line 1 +| 2 line 2 g.txt +| 3 line 3 +| 4 line 4 +| 5 line 5 +| 6 line 6 +| NOR /tmp/pardes-snap/scrolloff/cwd Del +| +| g.txt +| +| +| +| +| +| NOR /tmp/pardes-snap/scrolloff/cwd Del +| +| g.txt +| +| +| +| +| +| +| +| +| +| +| diff --git a/test/snapshots/scrolloff.snap b/test/snapshots/scrolloff.snap new file mode 100644 index 00000000..e231e8de --- /dev/null +++ b/test/snapshots/scrolloff.snap @@ -0,0 +1,41 @@ +# scrolloff: keyboard motion keeps 3 context rows above/below the cursor, +# clamped at file boundaries (cursor may reach the top/bottom body row there) +lines g.txt 40 +start 30 100 +wait 8000 g.txt +stable 700 20000 +# right-click the g.txt name in the greeting ls -> file pane, 9 body rows +press right 4 4 +release right 4 4 +wait 10000 line 3 +stable 700 15000 +press left 10 3 +release left 10 3 +stable 400 5000 +# (b) gg: cursor CAN sit on the top body row, no forced scroll +key g g +stable 400 5000 +snap top +# (a) five j's reach the bottom margin (visual row 5 of 9) without scrolling... +key j j j j j +stable 400 5000 +snap edge +# ...the sixth j scrolls: view slides one line, cursor holds the margin +key j +stable 400 5000 +snap scrolled1 +key j j j j +stable 400 5000 +snap jdown +# (d) G: bottom clamp, view stops at EOF-at-bottom, cursor on the bottom row +key G +stable 400 5000 +snap end +# (c) k-walk up: cursor climbs to the top margin, then the view scrolls +key k k k k k k k k +stable 400 5000 +snap kup +# (b) again from deep in the file: gg puts the cursor back on the top row +key g g +stable 400 5000 +snap top2 diff --git a/test/snapshots/syntax.actual b/test/snapshots/syntax.actual deleted file mode 100644 index d8c537b7..00000000 --- a/test/snapshots/syntax.actual +++ /dev/null @@ -1,124 +0,0 @@ -== snap zig-open grid=100x30 cursor=7,2 -|Kill Newcol Tutor Debug Colors NextColor Dump -| nm /tmp/pardes-snap/syntax/cwd/demo.zig Save Del nm /tmp/pardes-snap/syntax/cwd Del -| 1 const std = @import("std"); // greet -| 2 pub fn main() void { demo.zig -| 3 var x: u32 = 42; -| 4 _ = x; -| 5 } -| -| -| -| -| nm /tmp/pardes-snap/syntax/cwd Del -| -| demo.zig -| -| -| -| demo.zig -| -| -| -| nm /tmp/pardes-snap/syntax/cwd Del -| -| demo.zig -| -| -| -| -| -| -== style zig-open -|0: 0-44 #969696,#2c2a3e, 45-99 d,#2c2a3e, -|1: 0-1 d,#6e4fd0, 2-49 #969696,#2c2a3e, 50-51 d,#383c54, 52-85 #969696,#2c2a3e, 86-99 d,#2c2a3e, -|2: 0-1 d,#525252, 2-6 #5a5a5a,d, 7-18 d,d, 19-25 #cc70d8,d,b 26-26 d,d, 27-31 #8ab87a,d, 32-34 d,d, 35-42 #f0f0f0,d,b 43-49 d,d, 50-51 d,#525252, 52-99 d,d, -|3: 0-1 d,#525252, 2-6 #5a5a5a,d, 7-10 d,d, 11-12 #cc70d8,d,b 13-49 d,d, 50-51 d,#525252, 52-99 d,d, -|4: 0-1 d,#525252, 2-6 #5a5a5a,d, 7-23 d,d, 24-25 #d0c070,d, 26-49 d,d, 50-51 d,#525252, 52-99 d,d, -|5: 0-1 d,#525252, 2-6 #5a5a5a,d, 7-49 d,d, 50-51 d,#525252, 52-99 d,d, -|6: 0-1 d,#525252, 2-6 #5a5a5a,d, 7-49 d,d, 50-51 d,#525252, 52-99 d,d, -|7: 0-1 d,#525252, 2-49 d,d, 50-51 d,#525252, 52-99 d,d, -|8: 0-1 d,#525252, 2-49 d,d, 50-51 d,#525252, 52-99 d,d, -|9: 0-1 d,#525252, 2-49 d,d, 50-51 d,#525252, 52-99 d,d, -|10: 0-1 d,#525252, 2-49 d,d, 50-51 d,#525252, 52-99 d,d, -|11: 0-1 d,#383c54, 2-35 #969696,#2c2a3e, 36-49 d,#2c2a3e, 50-51 d,#525252, 52-99 d,d, -|12: 0-1 d,#525252, 2-49 d,d, 50-51 d,#525252, 52-99 d,d, -|13: 0-1 d,#525252, 2-49 d,d, 50-51 d,#525252, 52-99 d,d, -|14: 0-1 d,#525252, 2-49 d,d, 50-51 d,#525252, 52-99 d,d, -|15: 0-1 d,#525252, 2-49 d,d, 50-51 d,#525252, 52-99 d,d, -|16: 0-1 d,#525252, 2-49 d,d, 50-51 d,#525252, 52-99 d,d, -|17: 0-1 d,#525252, 2-49 d,d, 50-51 d,#525252, 52-99 d,d, -|18: 0-1 d,#525252, 2-49 d,d, 50-51 d,#525252, 52-99 d,d, -|19: 0-1 d,#525252, 2-49 d,d, 50-51 d,#525252, 52-99 d,d, -|20: 0-1 d,#525252, 2-49 d,d, 50-51 d,#525252, 52-99 d,d, -|21: 0-1 d,#383c54, 2-35 #969696,#2c2a3e, 36-49 d,#2c2a3e, 50-51 d,#525252, 52-99 d,d, -|22: 0-1 d,#525252, 2-49 d,d, 50-51 d,#525252, 52-99 d,d, -|23: 0-1 d,#525252, 2-49 d,d, 50-51 d,#525252, 52-99 d,d, -|24: 0-1 d,#525252, 2-49 d,d, 50-51 d,#525252, 52-99 d,d, -|25: 0-1 d,#525252, 2-49 d,d, 50-51 d,#525252, 52-99 d,d, -|26: 0-1 d,#525252, 2-49 d,d, 50-51 d,#525252, 52-99 d,d, -|27: 0-1 d,#525252, 2-49 d,d, 50-51 d,#525252, 52-99 d,d, -|28: 0-1 d,#525252, 2-49 d,d, 50-51 d,#525252, 52-99 d,d, -|29: 0-1 d,#525252, 2-49 d,d, 50-51 d,#525252, 52-99 d,d, -== style colors-off -|0: 0-44 #969696,#2c2a3e, 45-99 d,#2c2a3e, -|1: 0-1 d,#6e4fd0, 2-49 #969696,#2c2a3e, 50-51 d,#383c54, 52-85 #969696,#2c2a3e, 86-99 d,#2c2a3e, -|2: 0-1 d,#525252, 2-6 #5a5a5a,d, 7-49 d,d, 50-51 d,#525252, 52-99 d,d, -|3: 0-1 d,#525252, 2-6 #5a5a5a,d, 7-49 d,d, 50-51 d,#525252, 52-99 d,d, -|4: 0-1 d,#525252, 2-6 #5a5a5a,d, 7-49 d,d, 50-51 d,#525252, 52-99 d,d, -|5: 0-1 d,#525252, 2-6 #5a5a5a,d, 7-49 d,d, 50-51 d,#525252, 52-99 d,d, -|6: 0-1 d,#525252, 2-6 #5a5a5a,d, 7-49 d,d, 50-51 d,#525252, 52-99 d,d, -|7: 0-1 d,#525252, 2-49 d,d, 50-51 d,#525252, 52-99 d,d, -|8: 0-1 d,#525252, 2-49 d,d, 50-51 d,#525252, 52-99 d,d, -|9: 0-1 d,#525252, 2-49 d,d, 50-51 d,#525252, 52-99 d,d, -|10: 0-1 d,#525252, 2-49 d,d, 50-51 d,#525252, 52-99 d,d, -|11: 0-1 d,#383c54, 2-35 #969696,#2c2a3e, 36-49 d,#2c2a3e, 50-51 d,#525252, 52-99 d,d, -|12: 0-1 d,#525252, 2-49 d,d, 50-51 d,#525252, 52-99 d,d, -|13: 0-1 d,#525252, 2-49 d,d, 50-51 d,#525252, 52-99 d,d, -|14: 0-1 d,#525252, 2-49 d,d, 50-51 d,#525252, 52-99 d,d, -|15: 0-1 d,#525252, 2-49 d,d, 50-51 d,#525252, 52-99 d,d, -|16: 0-1 d,#525252, 2-49 d,d, 50-51 d,#525252, 52-99 d,d, -|17: 0-1 d,#525252, 2-49 d,d, 50-51 d,#525252, 52-99 d,d, -|18: 0-1 d,#525252, 2-49 d,d, 50-51 d,#525252, 52-99 d,d, -|19: 0-1 d,#525252, 2-49 d,d, 50-51 d,#525252, 52-99 d,d, -|20: 0-1 d,#525252, 2-49 d,d, 50-51 d,#525252, 52-99 d,d, -|21: 0-1 d,#383c54, 2-35 #969696,#2c2a3e, 36-49 d,#2c2a3e, 50-51 d,#525252, 52-99 d,d, -|22: 0-1 d,#525252, 2-49 d,d, 50-51 d,#525252, 52-99 d,d, -|23: 0-1 d,#525252, 2-49 d,d, 50-51 d,#525252, 52-99 d,d, -|24: 0-1 d,#525252, 2-49 d,d, 50-51 d,#525252, 52-99 d,d, -|25: 0-1 d,#525252, 2-49 d,d, 50-51 d,#525252, 52-99 d,d, -|26: 0-1 d,#525252, 2-49 d,d, 50-51 d,#525252, 52-99 d,d, -|27: 0-1 d,#525252, 2-49 d,d, 50-51 d,#525252, 52-99 d,d, -|28: 0-1 d,#525252, 2-49 d,d, 50-51 d,#525252, 52-99 d,d, -|29: 0-1 d,#525252, 2-49 d,d, 50-51 d,#525252, 52-99 d,d, -== style colors-on -|0: 0-44 #969696,#2c2a3e, 45-99 d,#2c2a3e, -|1: 0-1 d,#6e4fd0, 2-49 #969696,#2c2a3e, 50-51 d,#383c54, 52-85 #969696,#2c2a3e, 86-99 d,#2c2a3e, -|2: 0-1 d,#525252, 2-6 #5a5a5a,d, 7-18 d,d, 19-25 #cc70d8,d,b 26-26 d,d, 27-31 #8ab87a,d, 32-34 d,d, 35-42 #f0f0f0,d,b 43-49 d,d, 50-51 d,#525252, 52-99 d,d, -|3: 0-1 d,#525252, 2-6 #5a5a5a,d, 7-10 d,d, 11-12 #cc70d8,d,b 13-49 d,d, 50-51 d,#525252, 52-99 d,d, -|4: 0-1 d,#525252, 2-6 #5a5a5a,d, 7-23 d,d, 24-25 #d0c070,d, 26-49 d,d, 50-51 d,#525252, 52-99 d,d, -|5: 0-1 d,#525252, 2-6 #5a5a5a,d, 7-49 d,d, 50-51 d,#525252, 52-99 d,d, -|6: 0-1 d,#525252, 2-6 #5a5a5a,d, 7-49 d,d, 50-51 d,#525252, 52-99 d,d, -|7: 0-1 d,#525252, 2-49 d,d, 50-51 d,#525252, 52-99 d,d, -|8: 0-1 d,#525252, 2-49 d,d, 50-51 d,#525252, 52-99 d,d, -|9: 0-1 d,#525252, 2-49 d,d, 50-51 d,#525252, 52-99 d,d, -|10: 0-1 d,#525252, 2-49 d,d, 50-51 d,#525252, 52-99 d,d, -|11: 0-1 d,#383c54, 2-35 #969696,#2c2a3e, 36-49 d,#2c2a3e, 50-51 d,#525252, 52-99 d,d, -|12: 0-1 d,#525252, 2-49 d,d, 50-51 d,#525252, 52-99 d,d, -|13: 0-1 d,#525252, 2-49 d,d, 50-51 d,#525252, 52-99 d,d, -|14: 0-1 d,#525252, 2-49 d,d, 50-51 d,#525252, 52-99 d,d, -|15: 0-1 d,#525252, 2-49 d,d, 50-51 d,#525252, 52-99 d,d, -|16: 0-1 d,#525252, 2-49 d,d, 50-51 d,#525252, 52-99 d,d, -|17: 0-1 d,#525252, 2-49 d,d, 50-51 d,#525252, 52-99 d,d, -|18: 0-1 d,#525252, 2-49 d,d, 50-51 d,#525252, 52-99 d,d, -|19: 0-1 d,#525252, 2-49 d,d, 50-51 d,#525252, 52-99 d,d, -|20: 0-1 d,#525252, 2-49 d,d, 50-51 d,#525252, 52-99 d,d, -|21: 0-1 d,#383c54, 2-35 #969696,#2c2a3e, 36-49 d,#2c2a3e, 50-51 d,#525252, 52-99 d,d, -|22: 0-1 d,#525252, 2-49 d,d, 50-51 d,#525252, 52-99 d,d, -|23: 0-1 d,#525252, 2-49 d,d, 50-51 d,#525252, 52-99 d,d, -|24: 0-1 d,#525252, 2-49 d,d, 50-51 d,#525252, 52-99 d,d, -|25: 0-1 d,#525252, 2-49 d,d, 50-51 d,#525252, 52-99 d,d, -|26: 0-1 d,#525252, 2-49 d,d, 50-51 d,#525252, 52-99 d,d, -|27: 0-1 d,#525252, 2-49 d,d, 50-51 d,#525252, 52-99 d,d, -|28: 0-1 d,#525252, 2-49 d,d, 50-51 d,#525252, 52-99 d,d, -|29: 0-1 d,#525252, 2-49 d,d, 50-51 d,#525252, 52-99 d,d, diff --git a/test/snapshots/syntax.golden b/test/snapshots/syntax.golden index 310d6d64..f6d673a3 100644 --- a/test/snapshots/syntax.golden +++ b/test/snapshots/syntax.golden @@ -1,28 +1,28 @@ == snap zig-open grid=100x30 cursor=7,2 |Kill Newcol Tutor Debug Colors NextColor Dump -| nm /tmp/pardes-snap/syntax/cwd/demo.zig Save Del nm /tmp/pardes-snap/syntax/cwd Del +| NOR /tmp/pardes-snap/syntax/cwd/demo.zig Save De NOR /tmp/pardes-snap/syntax/cwd Del | 1 const std = @import("std"); // greet | 2 pub fn main() void { demo.zig | 3 var x: u32 = 42; | 4 _ = x; | 5 } +|╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌ +| NOR /tmp/pardes-snap/syntax/cwd Del | +| demo.zig | | | -| nm /tmp/pardes-snap/syntax/cwd Del -| -| demo.zig +| demo.zig | +| NOR /tmp/pardes-snap/syntax/cwd Del | +| demo.zig | -| demo.zig | | | -| nm /tmp/pardes-snap/syntax/cwd Del | -| demo.zig | | | @@ -31,27 +31,27 @@ | == style zig-open |0: 0-44 #969696,#2c2a3e, 45-99 d,#2c2a3e, -|1: 0-1 d,#6e4fd0, 2-49 #969696,#2c2a3e, 50-51 d,#383c54, 52-85 #969696,#2c2a3e, 86-99 d,#2c2a3e, -|2: 0-1 d,#525252, 2-6 #5a5a5a,d, 7-18 d,d, 19-25 #cc70d8,d,b 26-26 d,d, 27-31 #8ab87a,d, 32-34 d,d, 35-42 #f0f0f0,d,b 43-49 d,d, 50-51 d,#525252, 52-99 d,d, +|1: 0-1 d,#6e4fd0, 2-49 #969696,#2c2a3e, 50-51 d,#383c54, 52-86 #969696,#2c2a3e, 87-99 d,#2c2a3e, +|2: 0-1 d,#525252, 2-6 #969696,#2c2a3e, 7-18 d,d, 19-25 #cc70d8,d,b 26-26 d,d, 27-31 #8ab87a,d, 32-34 d,d, 35-42 #f0f0f0,d,b 43-49 d,d, 50-51 d,#525252, 52-99 d,d, |3: 0-1 d,#525252, 2-6 #5a5a5a,d, 7-10 d,d, 11-12 #cc70d8,d,b 13-49 d,d, 50-51 d,#525252, 52-99 d,d, |4: 0-1 d,#525252, 2-6 #5a5a5a,d, 7-23 d,d, 24-25 #d0c070,d, 26-49 d,d, 50-51 d,#525252, 52-99 d,d, |5: 0-1 d,#525252, 2-6 #5a5a5a,d, 7-49 d,d, 50-51 d,#525252, 52-99 d,d, |6: 0-1 d,#525252, 2-6 #5a5a5a,d, 7-49 d,d, 50-51 d,#525252, 52-99 d,d, |7: 0-1 d,#525252, 2-6 #5a5a5a,d, 7-49 d,d, 50-51 d,#525252, 52-99 d,d, -|8: 0-1 d,#525252, 2-6 #5a5a5a,d, 7-49 d,d, 50-51 d,#525252, 52-99 d,d, -|9: 0-1 d,#525252, 2-6 #5a5a5a,d, 7-49 d,d, 50-51 d,#525252, 52-99 d,d, -|10: 0-1 d,#525252, 2-6 #5a5a5a,d, 7-49 d,d, 50-51 d,#525252, 52-99 d,d, -|11: 0-1 d,#383c54, 2-35 #969696,#2c2a3e, 36-49 d,#2c2a3e, 50-51 d,#525252, 52-99 d,d, +|8: 0-1 d,#383c54, 2-36 #969696,#2c2a3e, 37-49 d,#2c2a3e, 50-51 d,#525252, 52-99 d,d, +|9: 0-1 d,#525252, 2-49 d,d, 50-51 d,#525252, 52-99 d,d, +|10: 0-1 d,#525252, 2-49 d,d, 50-51 d,#525252, 52-99 d,d, +|11: 0-1 d,#525252, 2-49 d,d, 50-51 d,#525252, 52-99 d,d, |12: 0-1 d,#525252, 2-49 d,d, 50-51 d,#525252, 52-99 d,d, |13: 0-1 d,#525252, 2-49 d,d, 50-51 d,#525252, 52-99 d,d, |14: 0-1 d,#525252, 2-49 d,d, 50-51 d,#525252, 52-99 d,d, |15: 0-1 d,#525252, 2-49 d,d, 50-51 d,#525252, 52-99 d,d, -|16: 0-1 d,#525252, 2-49 d,d, 50-51 d,#525252, 52-99 d,d, +|16: 0-1 d,#383c54, 2-36 #969696,#2c2a3e, 37-49 d,#2c2a3e, 50-51 d,#525252, 52-99 d,d, |17: 0-1 d,#525252, 2-49 d,d, 50-51 d,#525252, 52-99 d,d, |18: 0-1 d,#525252, 2-49 d,d, 50-51 d,#525252, 52-99 d,d, |19: 0-1 d,#525252, 2-49 d,d, 50-51 d,#525252, 52-99 d,d, |20: 0-1 d,#525252, 2-49 d,d, 50-51 d,#525252, 52-99 d,d, -|21: 0-1 d,#383c54, 2-35 #969696,#2c2a3e, 36-49 d,#2c2a3e, 50-51 d,#525252, 52-99 d,d, +|21: 0-1 d,#525252, 2-49 d,d, 50-51 d,#525252, 52-99 d,d, |22: 0-1 d,#525252, 2-49 d,d, 50-51 d,#525252, 52-99 d,d, |23: 0-1 d,#525252, 2-49 d,d, 50-51 d,#525252, 52-99 d,d, |24: 0-1 d,#525252, 2-49 d,d, 50-51 d,#525252, 52-99 d,d, @@ -62,27 +62,27 @@ |29: 0-1 d,#525252, 2-49 d,d, 50-51 d,#525252, 52-99 d,d, == style colors-off |0: 0-44 #969696,#2c2a3e, 45-99 d,#2c2a3e, -|1: 0-1 d,#6e4fd0, 2-49 #969696,#2c2a3e, 50-51 d,#383c54, 52-85 #969696,#2c2a3e, 86-99 d,#2c2a3e, -|2: 0-1 d,#525252, 2-6 #5a5a5a,d, 7-49 d,d, 50-51 d,#525252, 52-99 d,d, +|1: 0-1 d,#6e4fd0, 2-49 #969696,#2c2a3e, 50-51 d,#383c54, 52-86 #969696,#2c2a3e, 87-99 d,#2c2a3e, +|2: 0-1 d,#525252, 2-6 #969696,#2c2a3e, 7-49 d,d, 50-51 d,#525252, 52-99 d,d, |3: 0-1 d,#525252, 2-6 #5a5a5a,d, 7-49 d,d, 50-51 d,#525252, 52-99 d,d, |4: 0-1 d,#525252, 2-6 #5a5a5a,d, 7-49 d,d, 50-51 d,#525252, 52-99 d,d, |5: 0-1 d,#525252, 2-6 #5a5a5a,d, 7-49 d,d, 50-51 d,#525252, 52-99 d,d, |6: 0-1 d,#525252, 2-6 #5a5a5a,d, 7-49 d,d, 50-51 d,#525252, 52-99 d,d, |7: 0-1 d,#525252, 2-6 #5a5a5a,d, 7-49 d,d, 50-51 d,#525252, 52-99 d,d, -|8: 0-1 d,#525252, 2-6 #5a5a5a,d, 7-49 d,d, 50-51 d,#525252, 52-99 d,d, -|9: 0-1 d,#525252, 2-6 #5a5a5a,d, 7-49 d,d, 50-51 d,#525252, 52-99 d,d, -|10: 0-1 d,#525252, 2-6 #5a5a5a,d, 7-49 d,d, 50-51 d,#525252, 52-99 d,d, -|11: 0-1 d,#383c54, 2-35 #969696,#2c2a3e, 36-49 d,#2c2a3e, 50-51 d,#525252, 52-99 d,d, +|8: 0-1 d,#383c54, 2-36 #969696,#2c2a3e, 37-49 d,#2c2a3e, 50-51 d,#525252, 52-99 d,d, +|9: 0-1 d,#525252, 2-49 d,d, 50-51 d,#525252, 52-99 d,d, +|10: 0-1 d,#525252, 2-49 d,d, 50-51 d,#525252, 52-99 d,d, +|11: 0-1 d,#525252, 2-49 d,d, 50-51 d,#525252, 52-99 d,d, |12: 0-1 d,#525252, 2-49 d,d, 50-51 d,#525252, 52-99 d,d, |13: 0-1 d,#525252, 2-49 d,d, 50-51 d,#525252, 52-99 d,d, |14: 0-1 d,#525252, 2-49 d,d, 50-51 d,#525252, 52-99 d,d, |15: 0-1 d,#525252, 2-49 d,d, 50-51 d,#525252, 52-99 d,d, -|16: 0-1 d,#525252, 2-49 d,d, 50-51 d,#525252, 52-99 d,d, +|16: 0-1 d,#383c54, 2-36 #969696,#2c2a3e, 37-49 d,#2c2a3e, 50-51 d,#525252, 52-99 d,d, |17: 0-1 d,#525252, 2-49 d,d, 50-51 d,#525252, 52-99 d,d, |18: 0-1 d,#525252, 2-49 d,d, 50-51 d,#525252, 52-99 d,d, |19: 0-1 d,#525252, 2-49 d,d, 50-51 d,#525252, 52-99 d,d, |20: 0-1 d,#525252, 2-49 d,d, 50-51 d,#525252, 52-99 d,d, -|21: 0-1 d,#383c54, 2-35 #969696,#2c2a3e, 36-49 d,#2c2a3e, 50-51 d,#525252, 52-99 d,d, +|21: 0-1 d,#525252, 2-49 d,d, 50-51 d,#525252, 52-99 d,d, |22: 0-1 d,#525252, 2-49 d,d, 50-51 d,#525252, 52-99 d,d, |23: 0-1 d,#525252, 2-49 d,d, 50-51 d,#525252, 52-99 d,d, |24: 0-1 d,#525252, 2-49 d,d, 50-51 d,#525252, 52-99 d,d, @@ -93,27 +93,27 @@ |29: 0-1 d,#525252, 2-49 d,d, 50-51 d,#525252, 52-99 d,d, == style colors-on |0: 0-44 #969696,#2c2a3e, 45-99 d,#2c2a3e, -|1: 0-1 d,#6e4fd0, 2-49 #969696,#2c2a3e, 50-51 d,#383c54, 52-85 #969696,#2c2a3e, 86-99 d,#2c2a3e, -|2: 0-1 d,#525252, 2-6 #5a5a5a,d, 7-18 d,d, 19-25 #cc70d8,d,b 26-26 d,d, 27-31 #8ab87a,d, 32-34 d,d, 35-42 #f0f0f0,d,b 43-49 d,d, 50-51 d,#525252, 52-99 d,d, +|1: 0-1 d,#6e4fd0, 2-49 #969696,#2c2a3e, 50-51 d,#383c54, 52-86 #969696,#2c2a3e, 87-99 d,#2c2a3e, +|2: 0-1 d,#525252, 2-6 #969696,#2c2a3e, 7-18 d,d, 19-25 #cc70d8,d,b 26-26 d,d, 27-31 #8ab87a,d, 32-34 d,d, 35-42 #f0f0f0,d,b 43-49 d,d, 50-51 d,#525252, 52-99 d,d, |3: 0-1 d,#525252, 2-6 #5a5a5a,d, 7-10 d,d, 11-12 #cc70d8,d,b 13-49 d,d, 50-51 d,#525252, 52-99 d,d, |4: 0-1 d,#525252, 2-6 #5a5a5a,d, 7-23 d,d, 24-25 #d0c070,d, 26-49 d,d, 50-51 d,#525252, 52-99 d,d, |5: 0-1 d,#525252, 2-6 #5a5a5a,d, 7-49 d,d, 50-51 d,#525252, 52-99 d,d, |6: 0-1 d,#525252, 2-6 #5a5a5a,d, 7-49 d,d, 50-51 d,#525252, 52-99 d,d, |7: 0-1 d,#525252, 2-6 #5a5a5a,d, 7-49 d,d, 50-51 d,#525252, 52-99 d,d, -|8: 0-1 d,#525252, 2-6 #5a5a5a,d, 7-49 d,d, 50-51 d,#525252, 52-99 d,d, -|9: 0-1 d,#525252, 2-6 #5a5a5a,d, 7-49 d,d, 50-51 d,#525252, 52-99 d,d, -|10: 0-1 d,#525252, 2-6 #5a5a5a,d, 7-49 d,d, 50-51 d,#525252, 52-99 d,d, -|11: 0-1 d,#383c54, 2-35 #969696,#2c2a3e, 36-49 d,#2c2a3e, 50-51 d,#525252, 52-99 d,d, +|8: 0-1 d,#383c54, 2-36 #969696,#2c2a3e, 37-49 d,#2c2a3e, 50-51 d,#525252, 52-99 d,d, +|9: 0-1 d,#525252, 2-49 d,d, 50-51 d,#525252, 52-99 d,d, +|10: 0-1 d,#525252, 2-49 d,d, 50-51 d,#525252, 52-99 d,d, +|11: 0-1 d,#525252, 2-49 d,d, 50-51 d,#525252, 52-99 d,d, |12: 0-1 d,#525252, 2-49 d,d, 50-51 d,#525252, 52-99 d,d, |13: 0-1 d,#525252, 2-49 d,d, 50-51 d,#525252, 52-99 d,d, |14: 0-1 d,#525252, 2-49 d,d, 50-51 d,#525252, 52-99 d,d, |15: 0-1 d,#525252, 2-49 d,d, 50-51 d,#525252, 52-99 d,d, -|16: 0-1 d,#525252, 2-49 d,d, 50-51 d,#525252, 52-99 d,d, +|16: 0-1 d,#383c54, 2-36 #969696,#2c2a3e, 37-49 d,#2c2a3e, 50-51 d,#525252, 52-99 d,d, |17: 0-1 d,#525252, 2-49 d,d, 50-51 d,#525252, 52-99 d,d, |18: 0-1 d,#525252, 2-49 d,d, 50-51 d,#525252, 52-99 d,d, |19: 0-1 d,#525252, 2-49 d,d, 50-51 d,#525252, 52-99 d,d, |20: 0-1 d,#525252, 2-49 d,d, 50-51 d,#525252, 52-99 d,d, -|21: 0-1 d,#383c54, 2-35 #969696,#2c2a3e, 36-49 d,#2c2a3e, 50-51 d,#525252, 52-99 d,d, +|21: 0-1 d,#525252, 2-49 d,d, 50-51 d,#525252, 52-99 d,d, |22: 0-1 d,#525252, 2-49 d,d, 50-51 d,#525252, 52-99 d,d, |23: 0-1 d,#525252, 2-49 d,d, 50-51 d,#525252, 52-99 d,d, |24: 0-1 d,#525252, 2-49 d,d, 50-51 d,#525252, 52-99 d,d, diff --git a/test/snapshots/tag.golden b/test/snapshots/tag.golden index 9275777b..9632ab6a 100644 --- a/test/snapshots/tag.golden +++ b/test/snapshots/tag.golden @@ -1,6 +1,6 @@ -== snap tag-focus grid=100x30 cursor=33,1 +== snap tag-focus grid=100x30 cursor=34,1 |Kill Newcol Tutor Debug Colors NextColor Dump -| nm /tmp/pardes-snap/tag/cwd Del nm /tmp/pardes-snap/tag/cwd Del +| NOR /tmp/pardes-snap/tag/cwd Del NOR /tmp/pardes-snap/tag/cwd Del | | t.txt t.txt | @@ -15,7 +15,7 @@ | | | -| nm /tmp/pardes-snap/tag/cwd Del +| NOR /tmp/pardes-snap/tag/cwd Del | | t.txt | @@ -29,9 +29,9 @@ | | | -== snap tag-typed grid=100x30 cursor=46,1 +== snap tag-typed grid=100x30 cursor=47,1 |Kill Newcol Tutor Debug Colors NextColor Dump -| nm /tmp/pardes-snap/tag/cwd Del echo TAG''OK nm /tmp/pardes-snap/tag/cwd Del +| NOR /tmp/pardes-snap/tag/cwd Del echo TAG''OK NOR /tmp/pardes-snap/tag/cwd Del | | t.txt t.txt | @@ -46,7 +46,7 @@ | | | -| nm /tmp/pardes-snap/tag/cwd Del +| NOR /tmp/pardes-snap/tag/cwd Del | | t.txt | @@ -60,9 +60,9 @@ | | | -== snap tag-exec grid=100x30 cursor=45,1 +== snap tag-exec grid=100x30 cursor=46,1 |Kill Newcol Tutor Debug Colors NextColor Dump -| nm /tmp/pardes-snap/tag/cwd Del echo TAG''OK nm /tmp/pardes-snap/tag/cwd Del +| NOR /tmp/pardes-snap/tag/cwd Del echo TAG''OK NOR /tmp/pardes-snap/tag/cwd Del | | t.txt t.txt | @@ -77,7 +77,7 @@ | | | -| nm /tmp/pardes-snap/tag/cwd Del +| NOR /tmp/pardes-snap/tag/cwd Del | | t.txt | @@ -91,9 +91,9 @@ | | | -== snap tag-vsel grid=100x30 cursor=31,1 +== snap tag-vsel grid=100x30 cursor=32,1 |Kill Newcol Tutor Debug Colors NextColor Dump -| nm /tmp/pardes-snap/tag/cwd Del echo TAG''OK nm /tmp/pardes-snap/tag/cwd Del +| NOR /tmp/pardes-snap/tag/cwd Del echo TAG''OK NOR /tmp/pardes-snap/tag/cwd Del | | t.txt t.txt | @@ -108,7 +108,7 @@ | | | -| nm /tmp/pardes-snap/tag/cwd Del +| NOR /tmp/pardes-snap/tag/cwd Del | | t.txt | @@ -124,7 +124,7 @@ | == style tag-vsel |0: 0-44 #969696,#2c2a3e, 45-99 d,#2c2a3e, -|1: 0-1 d,#6e4fd0, 2-28 #969696,#2c2a3e, 29-31 #d8c8a8,#4a3a1e, 32-45 #969696,#2c2a3e, 46-49 d,#2c2a3e, 50-51 d,#383c54, 52-82 #969696,#2c2a3e, 83-99 d,#2c2a3e, +|1: 0-1 d,#6e4fd0, 2-29 #969696,#2c2a3e, 30-32 #d8c8a8,#4a3a1e, 33-46 #969696,#2c2a3e, 47-49 d,#2c2a3e, 50-51 d,#383c54, 52-83 #969696,#2c2a3e, 84-99 d,#2c2a3e, |2: 0-1 d,#525252, 2-49 d,d, 50-51 d,#525252, 52-99 d,d, |3: 0-1 d,#525252, 2-49 d,d, 50-51 d,#525252, 52-99 d,d, |4: 0-1 d,#525252, 2-49 d,d, 50-51 d,#525252, 52-99 d,d, @@ -139,7 +139,7 @@ |13: 0-1 d,#525252, 2-49 d,d, 50-51 d,#525252, 52-99 d,d, |14: 0-1 d,#525252, 2-49 d,d, 50-51 d,#525252, 52-99 d,d, |15: 0-1 d,#525252, 2-49 d,d, 50-51 d,#525252, 52-99 d,d, -|16: 0-1 d,#383c54, 2-32 #969696,#2c2a3e, 33-49 d,#2c2a3e, 50-51 d,#525252, 52-99 d,d, +|16: 0-1 d,#383c54, 2-33 #969696,#2c2a3e, 34-49 d,#2c2a3e, 50-51 d,#525252, 52-99 d,d, |17: 0-1 d,#525252, 2-49 d,d, 50-51 d,#525252, 52-99 d,d, |18: 0-1 d,#525252, 2-49 d,d, 50-51 d,#525252, 52-99 d,d, |19: 0-1 d,#525252, 2-49 d,d, 50-51 d,#525252, 52-99 d,d, @@ -153,9 +153,9 @@ |27: 0-1 d,#525252, 2-49 d,d, 50-51 d,#525252, 52-99 d,d, |28: 0-1 d,#525252, 2-49 d,d, 50-51 d,#525252, 52-99 d,d, |29: 0-1 d,#525252, 2-49 d,d, 50-51 d,#525252, 52-99 d,d, -== snap tag-del grid=100x30 cursor=29,1 +== snap tag-del grid=100x30 cursor=30,1 |Kill Newcol Tutor Debug Colors NextColor Dump -| nm /tmp/pardes-snap/tag/cwdl echo TAG''OK nm /tmp/pardes-snap/tag/cwd Del +| NOR /tmp/pardes-snap/tag/cwdl echo TAG''OK NOR /tmp/pardes-snap/tag/cwd Del | | t.txt t.txt | @@ -170,7 +170,7 @@ | | | -| nm /tmp/pardes-snap/tag/cwd Del +| NOR /tmp/pardes-snap/tag/cwd Del | | t.txt | @@ -186,7 +186,7 @@ | == snap tag-exit grid=100x30 cursor=4,6 |Kill Newcol Tutor Debug Colors NextColor Dump -| nm /tmp/pardes-snap/tag/cwdl echo TAG''OK nm /tmp/pardes-snap/tag/cwd Del +| NOR /tmp/pardes-snap/tag/cwdl echo TAG''OK NOR /tmp/pardes-snap/tag/cwd Del | | t.txt t.txt | @@ -201,7 +201,7 @@ | | | -| nm /tmp/pardes-snap/tag/cwd Del +| NOR /tmp/pardes-snap/tag/cwd Del | | t.txt | diff --git a/test/snapshots/theme.golden b/test/snapshots/theme.golden index b90e0011..5435eee4 100644 --- a/test/snapshots/theme.golden +++ b/test/snapshots/theme.golden @@ -1,6 +1,6 @@ == snap acme grid=100x30 cursor=4,4 |Kill Newcol Tutor Debug Colors NextColor Dump -| nm /tmp/pardes-snap/theme/cwd Del nm /tmp/pardes-snap/theme/cwd Del +| NOR /tmp/pardes-snap/theme/cwd Del NOR /tmp/pardes-snap/theme/cwd Del | | t.txt t.txt | @@ -15,7 +15,7 @@ | | | -| nm /tmp/pardes-snap/theme/cwd Del +| NOR /tmp/pardes-snap/theme/cwd Del | | t.txt | @@ -31,7 +31,7 @@ | == style acme |0: 0-44 #000000,#eaffff, 45-99 d,#eaffff, -|1: 0-1 d,#6e4fd0, 2-34 #000000,#eaffff, 35-49 d,#eaffff, 50-51 d,#383c54, 52-84 #000000,#eaffff, 85-99 d,#eaffff, +|1: 0-1 d,#6e4fd0, 2-35 #000000,#eaffff, 36-49 d,#eaffff, 50-51 d,#383c54, 52-85 #000000,#eaffff, 86-99 d,#eaffff, |2: 0-1 d,#ffffea, 2-49 #000000,#ffffea, 50-51 d,#ffffea, 52-99 #000000,#ffffea, |3: 0-1 d,#ffffea, 2-49 #000000,#ffffea, 50-51 d,#ffffea, 52-99 #000000,#ffffea, |4: 0-1 d,#ffffea, 2-49 #000000,#ffffea, 50-51 d,#ffffea, 52-99 #000000,#ffffea, @@ -46,7 +46,7 @@ |13: 0-1 d,#ffffea, 2-49 #000000,#ffffea, 50-51 d,#ffffea, 52-99 #000000,#ffffea, |14: 0-1 d,#ffffea, 2-49 #000000,#ffffea, 50-51 d,#ffffea, 52-99 #000000,#ffffea, |15: 0-1 d,#ffffea, 2-49 #000000,#ffffea, 50-51 d,#ffffea, 52-99 #000000,#ffffea, -|16: 0-1 d,#383c54, 2-34 #000000,#eaffff, 35-49 d,#eaffff, 50-51 d,#ffffea, 52-99 #000000,#ffffea, +|16: 0-1 d,#383c54, 2-35 #000000,#eaffff, 36-49 d,#eaffff, 50-51 d,#ffffea, 52-99 #000000,#ffffea, |17: 0-1 d,#ffffea, 2-49 #000000,#ffffea, 50-51 d,#ffffea, 52-99 #000000,#ffffea, |18: 0-1 d,#ffffea, 2-49 #000000,#ffffea, 50-51 d,#ffffea, 52-99 #000000,#ffffea, |19: 0-1 d,#ffffea, 2-49 #000000,#ffffea, 50-51 d,#ffffea, 52-99 #000000,#ffffea, @@ -62,7 +62,7 @@ |29: 0-1 d,#ffffea, 2-49 #000000,#ffffea, 50-51 d,#ffffea, 52-99 #000000,#ffffea, == snap colors-off grid=100x30 cursor=4,4 |Kill Newcol Tutor Debug Colors NextColor Dump -| nm /tmp/pardes-snap/theme/cwd Del nm /tmp/pardes-snap/theme/cwd Del +| NOR /tmp/pardes-snap/theme/cwd Del NOR /tmp/pardes-snap/theme/cwd Del | | t.txt t.txt | @@ -77,7 +77,7 @@ | | | -| nm /tmp/pardes-snap/theme/cwd Del +| NOR /tmp/pardes-snap/theme/cwd Del | | t.txt | @@ -93,7 +93,7 @@ | == style colors-off |0: 0-44 #000000,#eaffff, 45-99 d,#eaffff, -|1: 0-1 d,#6e4fd0, 2-34 #000000,#eaffff, 35-49 d,#eaffff, 50-51 d,#383c54, 52-84 #000000,#eaffff, 85-99 d,#eaffff, +|1: 0-1 d,#6e4fd0, 2-35 #000000,#eaffff, 36-49 d,#eaffff, 50-51 d,#383c54, 52-85 #000000,#eaffff, 86-99 d,#eaffff, |2: 0-99 d,#ffffea, |3: 0-1 d,#ffffea, 2-6 #000000,#ffffea, 7-51 d,#ffffea, 52-56 #000000,#ffffea, 57-99 d,#ffffea, |4: 0-99 d,#ffffea, @@ -108,7 +108,7 @@ |13: 0-99 d,#ffffea, |14: 0-99 d,#ffffea, |15: 0-99 d,#ffffea, -|16: 0-1 d,#383c54, 2-34 #000000,#eaffff, 35-49 d,#eaffff, 50-99 d,#ffffea, +|16: 0-1 d,#383c54, 2-35 #000000,#eaffff, 36-49 d,#eaffff, 50-99 d,#ffffea, |17: 0-99 d,#ffffea, |18: 0-1 d,#ffffea, 2-6 #000000,#ffffea, 7-99 d,#ffffea, |19: 0-99 d,#ffffea, @@ -124,7 +124,7 @@ |29: 0-99 d,#ffffea, == snap dark-again grid=100x30 cursor=4,4 |Kill Newcol Tutor Debug Colors NextColor Dump -| nm /tmp/pardes-snap/theme/cwd Del nm /tmp/pardes-snap/theme/cwd Del +| NOR /tmp/pardes-snap/theme/cwd Del NOR /tmp/pardes-snap/theme/cwd Del | | t.txt t.txt | @@ -139,7 +139,7 @@ | | | -| nm /tmp/pardes-snap/theme/cwd Del +| NOR /tmp/pardes-snap/theme/cwd Del | | t.txt | @@ -155,7 +155,7 @@ | == style dark-again |0: 0-44 #969696,#2c2a3e, 45-99 d,#2c2a3e, -|1: 0-1 d,#6e4fd0, 2-34 #969696,#2c2a3e, 35-49 d,#2c2a3e, 50-51 d,#383c54, 52-84 #969696,#2c2a3e, 85-99 d,#2c2a3e, +|1: 0-1 d,#6e4fd0, 2-35 #969696,#2c2a3e, 36-49 d,#2c2a3e, 50-51 d,#383c54, 52-85 #969696,#2c2a3e, 86-99 d,#2c2a3e, |2: 0-1 d,#525252, 2-49 d,d, 50-51 d,#525252, 52-99 d,d, |3: 0-1 d,#525252, 2-49 d,d, 50-51 d,#525252, 52-99 d,d, |4: 0-1 d,#525252, 2-49 d,d, 50-51 d,#525252, 52-99 d,d, @@ -170,7 +170,7 @@ |13: 0-1 d,#525252, 2-49 d,d, 50-51 d,#525252, 52-99 d,d, |14: 0-1 d,#525252, 2-49 d,d, 50-51 d,#525252, 52-99 d,d, |15: 0-1 d,#525252, 2-49 d,d, 50-51 d,#525252, 52-99 d,d, -|16: 0-1 d,#383c54, 2-34 #969696,#2c2a3e, 35-49 d,#2c2a3e, 50-51 d,#525252, 52-99 d,d, +|16: 0-1 d,#383c54, 2-35 #969696,#2c2a3e, 36-49 d,#2c2a3e, 50-51 d,#525252, 52-99 d,d, |17: 0-1 d,#525252, 2-49 d,d, 50-51 d,#525252, 52-99 d,d, |18: 0-1 d,#525252, 2-49 d,d, 50-51 d,#525252, 52-99 d,d, |19: 0-1 d,#525252, 2-49 d,d, 50-51 d,#525252, 52-99 d,d, diff --git a/test/snapshots/tty.golden b/test/snapshots/tty.golden index 7e6bebc5..63e4a760 100644 --- a/test/snapshots/tty.golden +++ b/test/snapshots/tty.golden @@ -1,6 +1,6 @@ == snap tty-on grid=100x30 cursor=4,4 |Kill Newcol Tutor Debug Colors NextColor Dump -| sy /tmp/pardes-snap/tty/cwd Del nm /tmp/pardes-snap/tty/cwd Del +| TTY /tmp/pardes-snap/tty/cwd Del NOR /tmp/pardes-snap/tty/cwd Del | $ ls | m.txt m.txt | $ @@ -15,7 +15,7 @@ | | | -| nm /tmp/pardes-snap/tty/cwd Del +| NOR /tmp/pardes-snap/tty/cwd Del | | m.txt | @@ -31,7 +31,7 @@ | == snap tty-echo grid=100x30 cursor=4,6 |Kill Newcol Tutor Debug Colors NextColor Dump -| sy /tmp/pardes-snap/tty/cwd Del nm /tmp/pardes-snap/tty/cwd Del +| TTY /tmp/pardes-snap/tty/cwd Del NOR /tmp/pardes-snap/tty/cwd Del | $ ls | m.txt m.txt | $ echo SNAP''OK @@ -46,7 +46,7 @@ | | | -| nm /tmp/pardes-snap/tty/cwd Del +| NOR /tmp/pardes-snap/tty/cwd Del | | m.txt | @@ -62,7 +62,7 @@ | == snap tty-off grid=100x30 cursor=4,6 |Kill Newcol Tutor Debug Colors NextColor Dump -| nm /tmp/pardes-snap/tty/cwd Del nm /tmp/pardes-snap/tty/cwd Del +| NOR /tmp/pardes-snap/tty/cwd Del NOR /tmp/pardes-snap/tty/cwd Del | | m.txt m.txt | @@ -77,7 +77,7 @@ | | | -| nm /tmp/pardes-snap/tty/cwd Del +| NOR /tmp/pardes-snap/tty/cwd Del | | m.txt | diff --git a/test/snapshots/ttylook.golden b/test/snapshots/ttylook.golden new file mode 100644 index 00000000..8465dbea --- /dev/null +++ b/test/snapshots/ttylook.golden @@ -0,0 +1,279 @@ +== snap lsrow grid=120x30 cursor=2,2 +|Kill Newcol Tutor Debug Colors NextColor Dump +| NOR /tmp/pardes-snap/ttylook/cwd/big.txt Save Del NOR /tmp/pardes-snap/ttylook/cwd Del +| 1 line 1 +| 2 line 2 big.txt plain.txt sub +| 3 line 3 +| 4 line 4 +| 5 line 5 +| 6 line 6 +| NOR /tmp/pardes-snap/ttylook/cwd Del +| +| plain.txt +| big.txt:33 +| zz +| +| DONE +| +| NOR /tmp/pardes-snap/ttylook/cwd Del +| +| big.txt plain.txt sub +| +| +| +| +| +| +| +| +| +| +| +== style lsrow +|0: 0-44 #969696,#2c2a3e, 45-119 d,#2c2a3e, +|1: 0-1 d,#383c54, 2-50 #969696,#2c2a3e, 51-59 d,#2c2a3e, 60-61 d,#383c54, 62-97 #969696,#2c2a3e, 98-119 d,#2c2a3e, +|2: 0-1 d,#525252, 2-6 #5a5a5a,d, 7-59 d,d, 60-61 d,#525252, 62-119 d,d, +|3: 0-1 d,#2a2a2a, 2-6 #5a5a5a,d, 7-59 d,d, 60-61 d,#525252, 62-119 d,d, +|4: 0-1 d,#2a2a2a, 2-6 #5a5a5a,d, 7-59 d,d, 60-61 d,#525252, 62-119 d,d, +|5: 0-1 d,#2a2a2a, 2-6 #5a5a5a,d, 7-59 d,d, 60-61 d,#525252, 62-119 d,d, +|6: 0-1 d,#2a2a2a, 2-6 #5a5a5a,d, 7-59 d,d, 60-61 d,#525252, 62-119 d,d, +|7: 0-1 d,#2a2a2a, 2-6 #5a5a5a,d, 7-59 d,d, 60-61 d,#525252, 62-119 d,d, +|8: 0-1 d,#6e4fd0, 2-37 #969696,#2c2a3e, 38-59 d,#2c2a3e, 60-61 d,#525252, 62-119 d,d, +|9: 0-1 d,#2a2a2a, 2-59 d,d, 60-61 d,#525252, 62-119 d,d, +|10: 0-1 d,#2a2a2a, 2-59 d,d, 60-61 d,#525252, 62-119 d,d, +|11: 0-1 d,#2a2a2a, 2-59 d,d, 60-61 d,#525252, 62-119 d,d, +|12: 0-1 d,#525252, 2-59 d,d, 60-61 d,#525252, 62-119 d,d, +|13: 0-1 d,#525252, 2-59 d,d, 60-61 d,#525252, 62-119 d,d, +|14: 0-1 d,#525252, 2-59 d,d, 60-61 d,#525252, 62-119 d,d, +|15: 0-1 d,#2a2a2a, 2-59 d,d, 60-61 d,#525252, 62-119 d,d, +|16: 0-1 d,#383c54, 2-37 #969696,#2c2a3e, 38-59 d,#2c2a3e, 60-61 d,#525252, 62-119 d,d, +|17: 0-1 d,#525252, 2-59 d,d, 60-61 d,#525252, 62-119 d,d, +|18: 0-1 d,#525252, 2-59 d,d, 60-61 d,#525252, 62-119 d,d, +|19: 0-1 d,#525252, 2-59 d,d, 60-61 d,#525252, 62-119 d,d, +|20: 0-1 d,#525252, 2-59 d,d, 60-61 d,#525252, 62-119 d,d, +|21: 0-1 d,#525252, 2-59 d,d, 60-61 d,#525252, 62-119 d,d, +|22: 0-1 d,#525252, 2-59 d,d, 60-61 d,#525252, 62-119 d,d, +|23: 0-1 d,#525252, 2-59 d,d, 60-61 d,#525252, 62-119 d,d, +|24: 0-1 d,#525252, 2-59 d,d, 60-61 d,#525252, 62-119 d,d, +|25: 0-1 d,#525252, 2-59 d,d, 60-61 d,#525252, 62-119 d,d, +|26: 0-1 d,#525252, 2-59 d,d, 60-61 d,#525252, 62-119 d,d, +|27: 0-1 d,#525252, 2-59 d,d, 60-61 d,#525252, 62-119 d,d, +|28: 0-1 d,#525252, 2-59 d,d, 60-61 d,#525252, 62-119 d,d, +|29: 0-1 d,#525252, 2-59 d,d, 60-61 d,#525252, 62-119 d,d, +== snap line20 grid=120x30 cursor=2,12 +|Kill Newcol Tutor Debug Colors NextColor Dump +| NOR /tmp/pardes-snap/ttylook/cwd/big.txt Save Del NOR /tmp/pardes-snap/ttylook/cwd Del +| 17 line 17 +| 18 line 18 big.txt plain.txt sub +| 19 line 19 +| 20 line 20 +| 21 line 21 +| 22 line 22 +| NOR /tmp/pardes-snap/ttylook/cwd Del +| big.txt plain.txt sub +| +| zz +| big.txt:20 +| ww +| +| plain.txt +| NOR /tmp/pardes-snap/ttylook/cwd Del +| +| big.txt plain.txt sub +| +| +| +| +| +| +| +| +| +| +| +== snap plain grid=120x30 cursor=2,12 +|Kill Newcol Tutor Debug Colors NextColor Dump +| NOR /tmp/pardes-snap/ttylook/cwd/big.txt Save Del NOR /tmp/pardes-snap/ttylook/cwd Del +| 17 line 17 +| 18 line 18 big.txt plain.txt sub +| NOR /tmp/pardes-snap/ttylook/cwd/plain.txt Save Del +| 1 just text +| +| +| NOR /tmp/pardes-snap/ttylook/cwd Del +| big.txt:20 +| ww +| +| plain.txt +| big.txt:33 +| zz +| +| NOR /tmp/pardes-snap/ttylook/cwd Del +| +| big.txt plain.txt sub +| +| +| +| +| +| +| +| +| +| +| +== snap line33 grid=120x30 cursor=2,12 +|Kill Newcol Tutor Debug Colors NextColor Dump +| NOR /tmp/pardes-snap/ttylook/cwd/big.txt Save Del NOR /tmp/pardes-snap/ttylook/cwd Del +| 32 line 32 +| 33 line 33 big.txt plain.txt sub +| NOR /tmp/pardes-snap/ttylook/cwd/plain.txt Save Del +| 1 just text +| +| +| NOR /tmp/pardes-snap/ttylook/cwd Del +| ww +| +| plain.txt +| big.txt:33 +| zz +| +| DONE +| NOR /tmp/pardes-snap/ttylook/cwd Del +| +| big.txt plain.txt sub +| +| +| +| +| +| +| +| +| +| +| +== snap back grid=120x30 cursor=2,12 +|Kill Newcol Tutor Debug Colors NextColor Dump +| NOR /tmp/pardes-snap/ttylook/cwd/big.txt Save Del NOR /tmp/pardes-snap/ttylook/cwd Del +| 32 line 32 +| 33 line 33 big.txt plain.txt sub +| NOR /tmp/pardes-snap/ttylook/cwd/plain.txt Save Del +| 1 just text +| +| +| NOR /tmp/pardes-snap/ttylook/cwd Del +| big.txt:20 +| ww +| +| plain.txt +| big.txt:33 +| zz +| +| NOR /tmp/pardes-snap/ttylook/cwd Del +| +| big.txt plain.txt sub +| +| +| +| +| +| +| +| +| +| +| +== style back +|0: 0-44 #969696,#2c2a3e, 45-119 d,#2c2a3e, +|1: 0-1 d,#383c54, 2-50 #969696,#2c2a3e, 51-59 d,#2c2a3e, 60-61 d,#383c54, 62-97 #969696,#2c2a3e, 98-119 d,#2c2a3e, +|2: 0-1 d,#2a2a2a, 2-6 #5a5a5a,d, 7-59 d,d, 60-61 d,#525252, 62-119 d,d, +|3: 0-1 d,#525252, 2-6 #5a5a5a,d, 7-59 d,d, 60-61 d,#525252, 62-119 d,d, +|4: 0-1 d,#383c54, 2-52 #969696,#2c2a3e, 53-59 d,#2c2a3e, 60-61 d,#525252, 62-119 d,d, +|5: 0-1 d,#525252, 2-6 #5a5a5a,d, 7-59 d,d, 60-61 d,#525252, 62-119 d,d, +|6: 0-1 d,#525252, 2-6 #5a5a5a,d, 7-59 d,d, 60-61 d,#525252, 62-119 d,d, +|7: 0-1 d,#525252, 2-6 #5a5a5a,d, 7-59 d,d, 60-61 d,#525252, 62-119 d,d, +|8: 0-1 d,#6e4fd0, 2-37 #969696,#2c2a3e, 38-59 d,#2c2a3e, 60-61 d,#525252, 62-119 d,d, +|9: 0-1 d,#2a2a2a, 2-59 d,d, 60-61 d,#525252, 62-119 d,d, +|10: 0-1 d,#2a2a2a, 2-59 d,d, 60-61 d,#525252, 62-119 d,d, +|11: 0-1 d,#525252, 2-59 d,d, 60-61 d,#525252, 62-119 d,d, +|12: 0-1 d,#525252, 2-59 #d8c8a8,#4a3a1e, 60-61 d,#525252, 62-119 d,d, +|13: 0-1 d,#525252, 2-59 d,d, 60-61 d,#525252, 62-119 d,d, +|14: 0-1 d,#2a2a2a, 2-59 d,d, 60-61 d,#525252, 62-119 d,d, +|15: 0-1 d,#2a2a2a, 2-59 d,d, 60-61 d,#525252, 62-119 d,d, +|16: 0-1 d,#383c54, 2-37 #969696,#2c2a3e, 38-59 d,#2c2a3e, 60-61 d,#525252, 62-119 d,d, +|17: 0-1 d,#525252, 2-59 d,d, 60-61 d,#525252, 62-119 d,d, +|18: 0-1 d,#525252, 2-59 d,d, 60-61 d,#525252, 62-119 d,d, +|19: 0-1 d,#525252, 2-59 d,d, 60-61 d,#525252, 62-119 d,d, +|20: 0-1 d,#525252, 2-59 d,d, 60-61 d,#525252, 62-119 d,d, +|21: 0-1 d,#525252, 2-59 d,d, 60-61 d,#525252, 62-119 d,d, +|22: 0-1 d,#525252, 2-59 d,d, 60-61 d,#525252, 62-119 d,d, +|23: 0-1 d,#525252, 2-59 d,d, 60-61 d,#525252, 62-119 d,d, +|24: 0-1 d,#525252, 2-59 d,d, 60-61 d,#525252, 62-119 d,d, +|25: 0-1 d,#525252, 2-59 d,d, 60-61 d,#525252, 62-119 d,d, +|26: 0-1 d,#525252, 2-59 d,d, 60-61 d,#525252, 62-119 d,d, +|27: 0-1 d,#525252, 2-59 d,d, 60-61 d,#525252, 62-119 d,d, +|28: 0-1 d,#525252, 2-59 d,d, 60-61 d,#525252, 62-119 d,d, +|29: 0-1 d,#525252, 2-59 d,d, 60-61 d,#525252, 62-119 d,d, +== snap insert grid=120x30 cursor=2,12 +|Kill Newcol Tutor Debug Colors NextColor Dump +| NOR /tmp/pardes-snap/ttylook/cwd/big.txt Save Del NOR /tmp/pardes-snap/ttylook/cwd Del +| 32 line 32 +| 33 line 33 big.txt plain.txt sub +| NOR /tmp/pardes-snap/ttylook/cwd/plain.txt Save Del +| 1 just text +| +| +| NOR /tmp/pardes-snap/ttylook/cwd Del +| big.txt:20 +| ww +| +| nnplain.txt +| big.txt:33 +| zz +| +| NOR /tmp/pardes-snap/ttylook/cwd Del +| +| big.txt plain.txt sub +| +| +| +| +| +| +| +| +| +| +| +== snap noop grid=120x30 cursor=2,13 +|Kill Newcol Tutor Debug Colors NextColor Dump +| NOR /tmp/pardes-snap/ttylook/cwd/big.txt Save Del NOR /tmp/pardes-snap/ttylook/cwd Del +| 32 line 32 +| 33 line 33 big.txt plain.txt sub +| NOR /tmp/pardes-snap/ttylook/cwd/plain.txt Save Del +| 1 just text +| +| +| NOR /tmp/pardes-snap/ttylook/cwd Del +| +| DONE +| +| NOR /tmp/pardes-snap/ttylook/cwd/sub Del +| +| big.txt plain.txt sub +| +| NOR /tmp/pardes-snap/ttylook/cwd Del +| +| big.txt plain.txt sub +| +| +| +| +| +| +| +| +| +| +| diff --git a/test/snapshots/ttylook.snap b/test/snapshots/ttylook.snap new file mode 100644 index 00000000..648dcd42 --- /dev/null +++ b/test/snapshots/ttylook.snap @@ -0,0 +1,77 @@ +# tty n/N look-motion (normal mode only): n selects the next output row of +# the terminal whose leading file-ish word looks somewhere (file, path:NNN — +# resolved by the look machinery, prompt/echo rows blanked via the OSC 133 +# marks) and looks it; plain rows are skipped; N steps back up. Insert-mode +# n still types (run splice); with nothing lookable n is a no-op. +lines big.txt 40 +file plain.txt just text +dirmk sub +start 30 120 +wait 8000 big.txt +stable 700 20000 +# real shell output mixing lookable and plain rows (two short printfs so the +# echoes never wrap; echo rows are prompt-marked and invisible to the walk) +key c-b +stable 600 8000 +text printf 'zz\nbig.txt:20\nww\n' +key enter +text printf 'plain.txt\nbig.txt:33\nzz\n' +key enter +text echo DO''NE +key enter +wait 8000 DONE +stable 700 15000 +key c-b +stable 600 8000 +# from the top: n skips nothing-rows, lands on the ls row (big.txt ...) first +key g g +stable 400 5000 +key n +stable 700 15000 +snap lsrow +snapstyle lsrow +# next hits: big.txt:20 (file pane scrolls there), plain.txt, big.txt:33 +key n +stable 700 15000 +snap line20 +key n +stable 700 15000 +snap plain +key n +stable 700 15000 +snap line33 +# N walks back up to the plain.txt row +key N +stable 700 15000 +snap back +snapstyle back +# insert mode: n types (a run splice), it does not step +key i +text nn +key esc +settle 700 +stable 400 5000 +snap insert +key u +stable 400 5000 +# a shell with nothing lookable: cd into the empty subdir (the old ls row no +# longer resolves from there), print plain rows — n has nowhere to go +key a-n +stable 700 15000 +key c-b +stable 600 8000 +text cd sub +key enter +text printf 'qq\nrr\n' +key enter +text echo O''VER +key enter +wait 8000 OVER +stable 700 15000 +key c-b +stable 600 8000 +key g g +stable 400 5000 +key n +stable 400 5000 +snap noop diff --git a/test/snapshots/ttyonly.golden b/test/snapshots/ttyonly.golden index 20ddf792..f8722061 100644 --- a/test/snapshots/ttyonly.golden +++ b/test/snapshots/ttyonly.golden @@ -1,6 +1,6 @@ == snap ttyonly grid=100x30 cursor=4,4 |Kill Newcol Tutor Debug Colors NextColor Dump -| sy /tmp/pardes-snap/ttyonly/cwd Del +| TTY /tmp/pardes-snap/ttyonly/cwd Del | $ echo TTY''ONLY | TTYONLY | $ @@ -31,7 +31,7 @@ | == style ttyonly |0: 0-44 #969696,#2c2a3e, 45-99 d,#2c2a3e, -|1: 0-1 d,#6e4fd0, 2-36 #969696,#2c2a3e, 37-99 d,#2c2a3e, +|1: 0-1 d,#6e4fd0, 2-37 #969696,#2c2a3e, 38-99 d,#2c2a3e, |2: 0-1 d,#525252, 2-99 d,d, |3: 0-1 d,#525252, 2-99 d,d, |4: 0-1 d,#525252, 2-99 d,d, diff --git a/test/snapshots/tutor.golden b/test/snapshots/tutor.golden index 55d66c9b..d4c5d644 100644 --- a/test/snapshots/tutor.golden +++ b/test/snapshots/tutor.golden @@ -1,16 +1,13 @@ == snap tutor grid=100x30 cursor=7,2 |Kill Newcol Tutor Debug Colors NextColor Dump -| nm /Tutor Save Del nm /tmp/pardes-snap/tutor/cwd Del +| NOR /Tutor Save Del NOR /tmp/pardes-snap/tutor/cwd Del | 1 | 2 PARDES TUTOR | 3 tmux + vi + acme, from | 4 | 5 The model is acme's: EVERYTHING is | 6 the same way. Modal editing (helix- -| 7 Press j until you reach the introdu -| 8 -| 9 -| nm /tmp/pardes-snap/tutor/cwd Del +| NOR /tmp/pardes-snap/tutor/cwd Del | | | @@ -18,9 +15,12 @@ | | | +| NOR /tmp/pardes-snap/tutor/cwd Del +| +| +| | | -| nm /tmp/pardes-snap/tutor/cwd Del | | | diff --git a/test/snapshots/windowops.golden b/test/snapshots/windowops.golden index 061ceca9..a7750e33 100644 --- a/test/snapshots/windowops.golden +++ b/test/snapshots/windowops.golden @@ -1,6 +1,6 @@ == snap hover-v grid=100x30 cursor=4,4 |Kill Newcol Tutor Debug Colors NextColor Dump -| nm /tmp/pardes-snap/windowops/cwd Del ╎ nm /tmp/pardes-snap/windowops/cwd Del +| NOR /tmp/pardes-snap/windowops/cwd Del ╎ NOR /tmp/pardes-snap/windowops/cwd Del | ╎ | w.txt ╎ w.txt | ╎ @@ -15,7 +15,7 @@ | ╎ | ╎ | ╎ -| nm /tmp/pardes-snap/windowops/cwd Del ╎ +| NOR /tmp/pardes-snap/windowops/cwd Del ╎ | ╎ | w.txt ╎ | ╎ @@ -31,7 +31,7 @@ | ╎ == snap hover-h grid=100x30 cursor=4,4 |Kill Newcol Tutor Debug Colors NextColor Dump -| nm /tmp/pardes-snap/windowops/cwd Del nm /tmp/pardes-snap/windowops/cwd Del +| NOR /tmp/pardes-snap/windowops/cwd Del NOR /tmp/pardes-snap/windowops/cwd Del | | w.txt w.txt | @@ -46,7 +46,7 @@ | | |╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌ -| nm /tmp/pardes-snap/windowops/cwd Del +| NOR /tmp/pardes-snap/windowops/cwd Del | | w.txt | @@ -62,7 +62,7 @@ | == snap border-drag grid=100x30 cursor=4,4 |Kill Newcol Tutor Debug Colors NextColor Dump -| nm /tmp/pardes-snap/windowops/cwd Del╎ nm /tmp/pardes-snap/windowops/cwd Del +| NOR /tmp/pardes-snap/windowops/cwd De╎ NOR /tmp/pardes-snap/windowops/cwd Del | ╎ | w.txt ╎ w.txt | ╎ @@ -77,7 +77,7 @@ | ╎ | ╎ | ╎ -| nm /tmp/pardes-snap/windowops/cwd Del╎ +| NOR /tmp/pardes-snap/windowops/cwd De╎ | ╎ | w.txt ╎ | ╎ @@ -93,7 +93,7 @@ | ╎ == snap border-done grid=100x30 cursor=4,4 |Kill Newcol Tutor Debug Colors NextColor Dump -| nm /tmp/pardes-snap/windowops/cwd Del╎ nm /tmp/pardes-snap/windowops/cwd Del +| NOR /tmp/pardes-snap/windowops/cwd De╎ NOR /tmp/pardes-snap/windowops/cwd Del | ╎ | w.txt ╎ w.txt | ╎ @@ -108,7 +108,7 @@ | ╎ | ╎ | ╎ -| nm /tmp/pardes-snap/windowops/cwd Del╎ +| NOR /tmp/pardes-snap/windowops/cwd De╎ | ╎ | w.txt ╎ | ╎ @@ -124,7 +124,7 @@ | ╎ == snap hborder-done grid=100x30 cursor=4,4 |Kill Newcol Tutor Debug Colors NextColor Dump -| nm /tmp/pardes-snap/windowops/cwd Del nm /tmp/pardes-snap/windowops/cwd Del +| NOR /tmp/pardes-snap/windowops/cwd Del NOR /tmp/pardes-snap/windowops/cwd Del | | w.txt w.txt | @@ -135,7 +135,7 @@ | | |╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌ -| nm /tmp/pardes-snap/windowops/cwd Del +| NOR /tmp/pardes-snap/windowops/cwd Del | | w.txt | @@ -155,7 +155,7 @@ | == snap move-preview grid=100x30 cursor=4,15 |Kill Newcol Tutor Debug Colors NextColor Dump -| nm /tmp/pardes-snap/windowops/cwd Del nm /tmp/pardes-snap/windowops/cwd Del +| NOR /tmp/pardes-snap/windowops/cwd Del NOR /tmp/pardes-snap/windowops/cwd Del | | w.txt w.txt | @@ -166,7 +166,7 @@ | | | -| nm /tmp/pardes-snap/windowops/cwd Del +| NOR /tmp/pardes-snap/windowops/cwd Del | | w.txt | @@ -186,7 +186,7 @@ | == snap moved grid=100x30 cursor=4,15 |Kill Newcol Tutor Debug Colors NextColor Dump -| nm /tmp/pardes-snap/windowops/cwd Del nm /tmp/pardes-snap/windowops/cwd Del +| NOR /tmp/pardes-snap/windowops/cwd Del NOR /tmp/pardes-snap/windowops/cwd Del | | w.txt w.txt | @@ -197,7 +197,7 @@ | | | -| nm /tmp/pardes-snap/windowops/cwd Del +| NOR /tmp/pardes-snap/windowops/cwd Del | | w.txt | @@ -215,30 +215,30 @@ | | | -== snap altn grid=100x30 cursor=4,23 +== snap altn grid=100x30 cursor=4,19 |Kill Newcol Tutor Debug Colors NextColor Dump -| nm /tmp/pardes-snap/windowops/cwd Del nm /tmp/pardes-snap/windowops/cwd Del +| NOR /tmp/pardes-snap/windowops/cwd Del NOR /tmp/pardes-snap/windowops/cwd Del | | w.txt w.txt | | | | -| nm /tmp/pardes-snap/windowops/cwd Del | -| w.txt | | | +| NOR /tmp/pardes-snap/windowops/cwd Del | +| w.txt | +| NOR /tmp/pardes-snap/windowops/cwd Del | +| w.txt | | | -| nm /tmp/pardes-snap/windowops/cwd Del | -| w.txt | | | @@ -246,30 +246,30 @@ | | | -== snap focus-left grid=100x30 cursor=4,23 +== snap focus-left grid=100x30 cursor=4,19 |Kill Newcol Tutor Debug Colors NextColor Dump -| nm /tmp/pardes-snap/windowops/cwd Del nm /tmp/pardes-snap/windowops/cwd Del +| NOR /tmp/pardes-snap/windowops/cwd Del NOR /tmp/pardes-snap/windowops/cwd Del | | w.txt w.txt | | | | -| nm /tmp/pardes-snap/windowops/cwd Del | -| w.txt | | | +| NOR /tmp/pardes-snap/windowops/cwd Del | +| w.txt | +| NOR /tmp/pardes-snap/windowops/cwd Del | +| w.txt | | | -| nm /tmp/pardes-snap/windowops/cwd Del | -| w.txt | | | @@ -277,30 +277,30 @@ | | | -== snap debug-on grid=100x30 cursor=4,23 +== snap debug-on grid=100x30 cursor=4,19 |Kill Newcol Tutor Debug Colors NextColor Dump -| nm /tmp/pardes-snap/windowops/cwd Del nm /tmp/pardes-snap/windowop╭────────────────────────────╮ +| NOR /tmp/pardes-snap/windowops/cwd Del NOR /tmp/pardes-snap/windowo╭────────────────────────────╮ | │pardes resizes=1 │ | w.txt w.txt │terms 4 cols 2 │ -| │active #3 38x9 │ -| │scroll 0/9 │ +| │active #3 38x13 │ +| │scroll 0/13 │ | │pinch 1.0000 │ | │tscroll 0.0000 │ -| nm /tmp/pardes-snap/windowops/cwd Del ╰────────────────────────────╯ -| -| w.txt +| ╰────────────────────────────╯ | | | +| NOR /tmp/pardes-snap/windowops/cwd Del | +| w.txt | +| NOR /tmp/pardes-snap/windowops/cwd Del | +| w.txt | | | -| nm /tmp/pardes-snap/windowops/cwd Del | -| w.txt | | | @@ -310,26 +310,26 @@ | == style debug-on |0: 0-44 #969696,#2c2a3e, 45-99 d,#2c2a3e, -|1: 0-1 d,#383c54, 2-38 #969696,#2c2a3e, 39-39 d,#2c2a3e, 40-41 d,#383c54, 42-69 #969696,#2c2a3e, 70-99 d,d, +|1: 0-1 d,#383c54, 2-39 #969696,#2c2a3e, 40-41 d,#383c54, 42-69 #969696,#2c2a3e, 70-99 d,d, |2: 0-1 d,#525252, 2-39 d,d, 40-41 d,#525252, 42-70 d,d, 71-87 #969696,d, 88-98 d,#2a2a2a, 99-99 d,d, |3: 0-1 d,#525252, 2-39 d,d, 40-41 d,#525252, 42-70 d,d, 71-85 #969696,d, 86-98 d,#2a2a2a, 99-99 d,d, -|4: 0-1 d,#525252, 2-39 d,d, 40-41 d,#525252, 42-70 d,d, 71-85 #969696,d, 86-98 d,#2a2a2a, 99-99 d,d, -|5: 0-1 d,#525252, 2-39 d,d, 40-41 d,#525252, 42-70 d,d, 71-80 #969696,d, 81-98 d,#2a2a2a, 99-99 d,d, +|4: 0-1 d,#525252, 2-39 d,d, 40-41 d,#525252, 42-70 d,d, 71-86 #969696,d, 87-98 d,#2a2a2a, 99-99 d,d, +|5: 0-1 d,#525252, 2-39 d,d, 40-41 d,#525252, 42-70 d,d, 71-81 #969696,d, 82-98 d,#2a2a2a, 99-99 d,d, |6: 0-1 d,#525252, 2-39 d,d, 40-41 d,#525252, 42-70 d,d, 71-83 #969696,d, 84-98 d,#2a2a2a, 99-99 d,d, |7: 0-1 d,#525252, 2-39 d,d, 40-41 d,#525252, 42-70 d,d, 71-85 #969696,d, 86-98 d,#2a2a2a, 99-99 d,d, -|8: 0-1 d,#383c54, 2-38 #969696,#2c2a3e, 39-39 d,#2c2a3e, 40-41 d,#525252, 42-99 d,d, +|8: 0-1 d,#525252, 2-39 d,d, 40-41 d,#525252, 42-99 d,d, |9: 0-1 d,#525252, 2-39 d,d, 40-41 d,#525252, 42-99 d,d, |10: 0-1 d,#525252, 2-39 d,d, 40-41 d,#525252, 42-99 d,d, |11: 0-1 d,#525252, 2-39 d,d, 40-41 d,#525252, 42-99 d,d, -|12: 0-1 d,#525252, 2-39 d,d, 40-41 d,#525252, 42-99 d,d, +|12: 0-1 d,#383c54, 2-39 #969696,#2c2a3e, 40-41 d,#525252, 42-99 d,d, |13: 0-1 d,#525252, 2-39 d,d, 40-41 d,#525252, 42-99 d,d, |14: 0-1 d,#525252, 2-39 d,d, 40-41 d,#525252, 42-99 d,d, |15: 0-1 d,#525252, 2-39 d,d, 40-41 d,#525252, 42-99 d,d, -|16: 0-1 d,#525252, 2-39 d,d, 40-41 d,#525252, 42-99 d,d, +|16: 0-1 d,#6e4fd0, 2-39 #969696,#2c2a3e, 40-41 d,#525252, 42-99 d,d, |17: 0-1 d,#525252, 2-39 d,d, 40-41 d,#525252, 42-99 d,d, |18: 0-1 d,#525252, 2-39 d,d, 40-41 d,#525252, 42-99 d,d, |19: 0-1 d,#525252, 2-39 d,d, 40-41 d,#525252, 42-99 d,d, -|20: 0-1 d,#6e4fd0, 2-38 #969696,#2c2a3e, 39-39 d,#2c2a3e, 40-41 d,#525252, 42-99 d,d, +|20: 0-1 d,#525252, 2-39 d,d, 40-41 d,#525252, 42-99 d,d, |21: 0-1 d,#525252, 2-39 d,d, 40-41 d,#525252, 42-99 d,d, |22: 0-1 d,#525252, 2-39 d,d, 40-41 d,#525252, 42-99 d,d, |23: 0-1 d,#525252, 2-39 d,d, 40-41 d,#525252, 42-99 d,d, @@ -339,30 +339,30 @@ |27: 0-1 d,#525252, 2-39 d,d, 40-41 d,#525252, 42-99 d,d, |28: 0-1 d,#525252, 2-39 d,d, 40-41 d,#525252, 42-99 d,d, |29: 0-1 d,#525252, 2-39 d,d, 40-41 d,#525252, 42-99 d,d, -== snap debug-off grid=100x30 cursor=4,23 +== snap debug-off grid=100x30 cursor=4,19 |Kill Newcol Tutor Debug Colors NextColor Dump -| nm /tmp/pardes-snap/windowops/cwd Del nm /tmp/pardes-snap/windowops/cwd Del +| NOR /tmp/pardes-snap/windowops/cwd Del NOR /tmp/pardes-snap/windowops/cwd Del | | w.txt w.txt | | | | -| nm /tmp/pardes-snap/windowops/cwd Del | -| w.txt | | | +| NOR /tmp/pardes-snap/windowops/cwd Del | +| w.txt | +| NOR /tmp/pardes-snap/windowops/cwd Del | +| w.txt | | | -| nm /tmp/pardes-snap/windowops/cwd Del | -| w.txt | | | |
