summaryrefslogtreecommitdiff
path: root/src/pardes.zig
diff options
context:
space:
mode:
Diffstat (limited to 'src/pardes.zig')
-rw-r--r--src/pardes.zig6
1 files changed, 5 insertions, 1 deletions
diff --git a/src/pardes.zig b/src/pardes.zig
index e9908d65..5c6d2422 100644
--- a/src/pardes.zig
+++ b/src/pardes.zig
@@ -8368,7 +8368,11 @@ pub const Pardes = struct {
// A host that folds Shift into the letter says the same thing.
if (key.ctrl and !key.alt and (key.cp == 'v' or key.cp == 'V')) {
if (key.shift or key.cp == 'V') return p.clipRequest(p.active, .after);
- return p.typeToTty(p.active, pane, p.yank orelse return);
+ // With something in the register this is a paste. With nothing
+ // in it the chord is the program's -- vim's visual block,
+ // readline's quoted-insert -- and swallowing it would make
+ // Ctrl-V a black hole in every full-screen application.
+ if (p.yank) |text| return p.typeToTty(p.active, pane, text);
}
return panes.Terminal.forwardKey(p, p.active, key);
}