Mitchell Hashimoto
2044e5030f
terminal: make stream processing infallible
...
The terminal.Stream next/nextSlice functions can now no longer fail.
All prior failure modes were fully isolated in the handler `vt`
callbacks. As such, vt callbacks are now required to not return an error
and handle their own errors somehow.
Allowing streams to be fallible before was an incorrect design. It
caused problematic scenarios like in `nextSlice` early terminating
processing due to handler errors. This should not be possible.
There is no safe way to bubble up vt errors through the stream because
if nextSlice is called and multiple errors are returned, we can't
coalesce them. We could modify that to return a partial result but its
just more work for stream that is unnecessary. The handler can do all of
this.
This work was discovered due to cleanups to prepare for more C APIs.
Less errors make C APIs easier to implement! And, it helps clean up our
Zig, too.
2026-03-13 13:56:14 -07:00
Mitchell Hashimoto
80d6e71aec
inspector: show more semantic prompt state for screen
2026-02-02 10:44:35 -08:00
Mitchell Hashimoto
e9b6fea11c
terminal: move semantic prompt state into its own field in screen
2026-02-02 09:19:18 -08:00
Mitchell Hashimoto
e7e3903151
inspector: show if we've seen semantic content in screen
2026-01-31 13:41:54 -08:00
Mitchell Hashimoto
f14a1306cd
renderer: semantic prompt overlay
2026-01-31 13:31:40 -08:00
Mitchell Hashimoto
513b55e0a4
inspector: always render the surface when the inspector is opened
2026-01-31 09:14:29 -08:00
Mitchell Hashimoto
dc2cca6490
inspector: renderer panel
2026-01-31 09:06:07 -08:00
Mitchell Hashimoto
400d17aa0d
inspector: remove cell picker
2026-01-31 08:47:15 -08:00
Mitchell Hashimoto
3793188e38
inspector: termio revamp
2026-01-31 08:47:15 -08:00
Mitchell Hashimoto
75eac6e3ea
terminal: stream handleManually => vtRaw
2026-01-31 08:47:15 -08:00
Mitchell Hashimoto
4fa2dab20d
inspector: clean up termio layouts
2026-01-31 08:47:15 -08:00
Mitchell Hashimoto
32ac82c66f
inspector: no longer holds surface pointer
2026-01-31 08:47:15 -08:00
Mitchell Hashimoto
3e825dd608
inspector: clean up Inspector
2026-01-31 08:47:15 -08:00
Mitchell Hashimoto
e9439533a7
inspector: prettify keyboard stream
2026-01-31 08:47:15 -08:00
Mitchell Hashimoto
caf301d548
inspector: move termio to dedicated widget
2026-01-31 08:47:14 -08:00
Mitchell Hashimoto
b2c8cdbc90
inspector: key events
2026-01-31 08:47:14 -08:00
Mitchell Hashimoto
9056fa7fd1
inspector: cell inspector
2026-01-31 08:47:14 -08:00
Mitchell Hashimoto
19d2fca9c4
inspector: grid
2026-01-31 08:47:14 -08:00
Mitchell Hashimoto
76fe2e9fbb
inspector: hyperlinks
2026-01-31 08:47:14 -08:00
Mitchell Hashimoto
3246d1f7ef
inspector: page managed styles
2026-01-31 08:47:14 -08:00
Mitchell Hashimoto
3ac4f70e48
inspector: clean up page
2026-01-31 08:47:14 -08:00
Mitchell Hashimoto
51ce210833
terminal: add helpers to BitmapAllocator for sizing
2026-01-31 08:47:14 -08:00
Mitchell Hashimoto
9b75f4a799
inspector: page improvements
2026-01-31 08:47:14 -08:00
Mitchell Hashimoto
c8e048f309
inspector: pagelist
2026-01-31 08:47:14 -08:00
Mitchell Hashimoto
7f008d126f
inspector: surface info is back
2026-01-31 08:47:14 -08:00
Mitchell Hashimoto
53b2a777e7
inspector: screen info has its own dockspace
2026-01-31 08:47:14 -08:00
Mitchell Hashimoto
fdbe4343c2
remove some unused files
2026-01-31 08:47:14 -08:00
Mitchell Hashimoto
b37ac8b287
inspector: screen cursor info
2026-01-31 08:47:13 -08:00
Mitchell Hashimoto
5c867bf1d7
inspector: move style to widgets dir
2026-01-31 08:47:13 -08:00
Mitchell Hashimoto
82dd9021bf
inspector: starting screen
2026-01-31 08:47:13 -08:00
Mitchell Hashimoto
28086a7adc
inspector: terminal migrate content
2026-01-31 08:47:13 -08:00
Mitchell Hashimoto
7cfac87fc4
inspector: trying new stuff
2026-01-31 08:47:13 -08:00
Mitchell Hashimoto
38aae2325d
inspector: trying new logic layout
2026-01-31 08:47:13 -08:00
Mitchell Hashimoto
7073fb88f4
inspector: remove cursor helper, move it to screen, style helper
2026-01-31 08:47:13 -08:00
Mitchell Hashimoto
bdd0295e0e
inspector: add style file for style widgets
2026-01-31 08:47:13 -08:00
Mitchell Hashimoto
1fa74b19e8
inspector: grid section lets you pick a cell
2026-01-31 08:47:13 -08:00
Mitchell Hashimoto
f23e67388d
inspector: add grid section to screen
2026-01-31 08:47:13 -08:00
Mitchell Hashimoto
4992212ecd
inspector: add more cursor state
2026-01-31 08:47:13 -08:00
Mitchell Hashimoto
e5a03a103c
inspector: show warning if inactive screen being viewed
2026-01-31 08:47:13 -08:00
Mitchell Hashimoto
0b3f4ae340
inspector: move screens to terminal section
2026-01-31 08:47:13 -08:00
Mitchell Hashimoto
4c5af7073e
inspector: move screen window to dedicated file
2026-01-31 08:47:12 -08:00
Mitchell Hashimoto
4c2ea6a9d8
inspector: fix up detachable headers to dock
2026-01-31 08:47:12 -08:00
Mitchell Hashimoto
1d7def0d2e
inspector: move modes out to separate header
2026-01-31 08:47:12 -08:00
Mitchell Hashimoto
86af16b081
inspector: move surface window out to its own file
2026-01-31 08:47:12 -08:00
Mitchell Hashimoto
ff14938389
inspector: detachable collapsing headers
2026-01-31 08:47:12 -08:00
Mitchell Hashimoto
d58703a245
update AGENTS.md
2026-01-31 08:47:12 -08:00
Mitchell Hashimoto
061730ef97
inspector: terminal mouse section
2026-01-31 08:47:12 -08:00
Mitchell Hashimoto
03f012f567
inspector: terminal colors
2026-01-31 08:47:12 -08:00
Mitchell Hashimoto
41b5dc4928
inspector: terminal tab
2026-01-31 08:47:12 -08:00
Mitchell Hashimoto
377c6d7700
inspector: add AGENTS.md
2026-01-31 08:47:12 -08:00