From c3d0b84b7961ae26d2d654e7120821cc2d83d20d Mon Sep 17 00:00:00 2001 From: Gabriel Schneider Date: Mon, 24 Aug 2026 10:56:05 -0300 Subject: host: the core owns the event loop; every platform becomes a vtable of optional methods --- test/snapshots/ttypaste.snap | 32 ++++++++++++++++++++++++++++++++ 1 file changed, 32 insertions(+) create mode 100644 test/snapshots/ttypaste.snap (limited to 'test/snapshots/ttypaste.snap') diff --git a/test/snapshots/ttypaste.snap b/test/snapshots/ttypaste.snap new file mode 100644 index 00000000..d59a0b3e --- /dev/null +++ b/test/snapshots/ttypaste.snap @@ -0,0 +1,32 @@ +# Pasting INTO the program a tty pane is running. +# +# `SPC p` and the acme 1-3 chord are both unreachable in raw tty: the pty owns +# every keystroke and every button. So tty mode has its own chord, and a paste +# arriving from outside has to reach the shell rather than an edit buffer that +# the pty does not know exists. +# +# Two paths, both ending at the shell's command line: +# Ctrl-V types the DEFAULT register (config.tty_paste) +# bracketed paste the outer terminal's own paste, or a desktop one relayed +# by a GUI host, which used to land in an overlay instead +file src.txt PASTED-PAYLOAD +start 30 100 -n 3 +wait 8000 src.txt +stable 700 20000 +# fill the default register from a file pane: sweep the word and yank it +key c-b +stable 600 8000 +# in tty now; type a prefix so the pasted text is visibly appended to it +text echo +stable 600 8000 +# the outer terminal's bracketed paste: not a keystroke, no request behind it, +# and it must arrive at the shell's line +send \e[200~ BRACKETED\e[201~ +stable 600 8000 +snap bracketed-paste-reached-the-shell +# Ctrl-V types the register. Nothing was yanked in this session, so the +# register is empty and the chord is INERT rather than sending the shell the +# 0x16 it used to (quoted-insert): the line below is unchanged. +key c-v +stable 600 8000 +snap ctrl-v-with-empty-register-is-inert -- cgit v1.3