Fix pasting bug.

This commit is contained in:
Greyson Parrelli
2026-08-27 11:11:49 -04:00
parent 553e1f5424
commit 1223499369
3 changed files with 132 additions and 7 deletions
+16
View File
@@ -196,6 +196,22 @@ pub fn build(b: *std.Build) void {
settings_tests.root_module.addImport("ghostty-vt", ghostty.module("ghostty-vt"));
test_step.dependOn(&b.addRunArtifact(settings_tests).step);
// Paste safety is its own root, and for a sharper reason than the rest:
// when it says no it says so silently — the terminal simply does not
// receive what you pasted — so the rule that decides has to be checkable
// without a display. It reaches libghostty-vt for the encoder and nothing
// else; the clipboard round trip around it is GTK's and stays in
// `Terminal.zig`.
const paste_tests = b.addTest(.{
.root_module = b.createModule(.{
.root_source_file = b.path("src/paste.zig"),
.target = target,
.optimize = optimize,
}),
});
paste_tests.root_module.addImport("ghostty-vt", ghostty.module("ghostty-vt"));
test_step.dependOn(&b.addRunArtifact(paste_tests).step);
// The shortcut table is its own root for the same reason: chords are parsed
// from text, written back out as text, and looked up by a key press, and
// all three are pure data. It reaches libghostty-vt for the key enum and