summaryrefslogtreecommitdiff
path: root/src/panes.zig
diff options
context:
space:
mode:
authorGabriel Schneider <[email protected]>2026-09-28 23:38:31 -0300
committerGabriel Schneider <[email protected]>2026-10-01 00:12:15 -0300
commit8469def61324feb5e278f88bebad36af7a0d997e (patch)
tree2deeb598b94a517bfc977226d28cb7d0ffc11e4c /src/panes.zig
parentaae6fc630d9d77de9ad975414d003a55d5b9d1e3 (diff)
downloadpardes-8469def61324feb5e278f88bebad36af7a0d997e.tar.gz
pardes-8469def61324feb5e278f88bebad36af7a0d997e.zip
A send to Python's REPL runs once, the Enter after the paste, not in it
A one-line send (print(1)) to Python 3.14 stopped at ... and needed another Enter: its REPL takes a bracketed paste, and an Enter read in the same read as the paste is part of the paste, one line or not (checked in a real pty). Into a REPL that asked for bracketed paste, the Enters (two for an open block) now wait for its next output, its answer to the paste, or 250 ms with nothing. fs-test runs python3 in a real pty and checks a one-line exec prints at once; the docs' pty/data recipe says to send the Enter apart. Co-Authored-By: Claude Opus 5.5 <[email protected]>
Diffstat (limited to 'src/panes.zig')
-rw-r--r--src/panes.zig4
1 files changed, 4 insertions, 0 deletions
diff --git a/src/panes.zig b/src/panes.zig
index c33fd577..7aea5898 100644
--- a/src/panes.zig
+++ b/src/panes.zig
@@ -135,6 +135,10 @@ pub const Pane = struct {
repl: ?struct { lang: u8, letter: u8 } = null,
/// It has been told that its program takes no bracketed paste.
repl_warned: bool = false,
+ /// Enters owed to a REPL after a bracketed paste (exec.sendToRepl): sent
+ /// with its next output, the paste taken, or at `repl_enter_due_ns`.
+ repl_enter: u8 = 0,
+ repl_enter_due_ns: u64 = 0,
/// A question with its answers in it (`repl_choice`).
question: [96]u8 = undefined,
question_len: u8 = 0,