demo.lisp:
- Removed ignore-errors wrapper: run-demo now returns normally,
followed by (uiop:quit 0) at top level — fixes exit code always 1 bug
- Manual set-raw-mode/unwind-protect/restore-terminal-state instead of
with-raw-terminal macro (safer in edge cases)
- Graceful fallback when raw mode fails: continues in pipe-safe mode
so the demo renders frames even without terminal control
- Simplified tab rendering, fixed textarea-lines display
The demo runs correctly in both interactive and pipe-safe modes.
In a real terminal: raw mode, keyboard/mouse event loop.
In pipe-safe mode: spins rendering frames (read-event returns nil).
Verified running: frames render correctly with borders, tabs, content,
status bar, and event counter.
9.1 KiB
9.1 KiB