diff options
| author | Gabriel Schneider <[email protected]> | 2026-09-28 22:17:49 -0300 |
|---|---|---|
| committer | Gabriel Schneider <[email protected]> | 2026-10-01 00:12:15 -0300 |
| commit | 4793520998969439bb569c968c3143ae46aefc66 (patch) | |
| tree | 2777799bd5f2cad34c3305b5ff50e2710040836c /src/exec.zig | |
| parent | 754ffc99799c3a251634c1eff9a16eabbd73b31c (diff) | |
| download | pardes-4793520998969439bb569c968c3143ae46aefc66.tar.gz pardes-4793520998969439bb569c968c3143ae46aefc66.zip | |
A pane's question is logged as ask, and answer on its ctl answers it
A script could not answer the several-REPLs question, which only a key
could. Every question a pane asks on its notice band (which REPL takes an
exec, Del's side from the keyboard) is now logged as `ask <serial> <what>
<choices>`, and `answer <choice>` on the pane's ctl answers it as that key
would, `answer -` taking it back as Esc does. One function answers for a
key and for the ctl.
Co-Authored-By: Claude Opus 5.5 <[email protected]>
Diffstat (limited to 'src/exec.zig')
| -rw-r--r-- | src/exec.zig | 5 |
1 files changed, 5 insertions, 0 deletions
diff --git a/src/exec.zig b/src/exec.zig index 0c0930e2..2611162b 100644 --- a/src/exec.zig +++ b/src/exec.zig @@ -461,6 +461,11 @@ fn routeToRepl(p: *Pardes, from: usize, text: []const u8) Routed { src.question_len = @intCast(w.buffered().len); src.prompt = .repl_choice; p.active = from; + var rec: [96]u8 = undefined; + var rw = std.Io.Writer.fixed(&rec); + rw.print("{d} repl", .{src.serial}) catch {}; + for (bound[0..n]) |i| rw.print(" {c}", .{p.panes[i].?.repl.?.letter}) catch {}; + pardes.ctlfs.events.notePath(p, "ask", rw.buffered()); return .asked; } |
