Hermes Agent
352f27e260
fix: osc8-link doubled backslashes in format string
...
The osc8-link implementation and its test both had doubled
backslashes (\\ -> \\) in their format strings, producing two
literal backslashes at runtime instead of the single backslash
needed for the OSC 8 string terminator (ST = ESC \).
Fix: change \\ to \\ in both the implementation and test format
strings. The tangled .lisp files now have correct escaped
backslashes (\) producing one backslash in the runtime string.
Additionally clean up a patch artifact that left a stray backslash
before the opening quote.
2026-05-12 19:26:00 +00:00
Hermes Agent
29f99a576d
literate: restructure all 19 org files with per-function blocks and prose
...
Every function, defclass, defstruct, defgeneric, defmethod, defmacro,
defvar, and defparameter in every org file now has its own #+BEGIN_SRC
block with literate prose above it explaining the design reasoning.
Block counts before → after:
package.org: 1 → 7
container-package.org: 1 → 1 (prose expanded)
dirty.org: 4 → 6
render.org: 10 → 25
theme.org: 6 → 19
box-renderable.org: 9 → 29
scrollbox.org: 8 → 26
tabbar.org: 5 → 10
backend-protocol.org: 8 → 66
modern-backend.org: 17 → 53
detection.org: 4 → 6
layout-engine.org: 9 → 36
framebuffer.org: 8 → 37
markdown-renderer.org:13 → 38
dialog.org: 17 → 23 (merged dual structure)
mouse.org: 4 → 25
select.org: 12 → 30
slot.org: 4 → 12
text-input.org: 11 → 53
Total: ~153 blocks → ~502 blocks
Bugs fixed during restructuring:
- render.org: stray π character typo (backenπd → backend)
- modern-backend.org: sgr-attr missing closing paren + #+END_SRC
- detection.org: invalid #\Esc character reference
- select.org: extra closing paren in select-visible-options
All 13 test suites pass at 100%.
2026-05-12 18:55:07 +00:00
Hermes Agent
c77c6b9d02
literate: convert org/modern-backend.org from doc-only to tangle source
...
Now tangles to modern.lisp + modern-tests.lisp.
Deleted hand-written originals and regenerated from org — GREEN.
2026-05-12 17:14:37 +00:00
Hermes
811d51a4f2
Rename cl-tui -> cl-tty, v0.9.0: Dialog System + Toast
...
Rename: cl-tty avoids naming collision with Quicklisp's cl-tui (naryl/cl-tui,
a cl-charms-based ncurses library). Our project is pure escape-sequence CL.
v0.9.0 adds:
- Dialog base class: modal overlay with backdrop, centered panel, size
variants (:small/:medium/:large), stack-based management
- Dialog subclasses: alert, confirm, select-dialog, prompt-dialog
- Toast notifications: transient, top-right corner, auto-dismiss,
colored variants (info/success/warning/error)
- 78 tests total, 100% passing
ASDF: read-time package references (+fiveam:+) replaced with
find-symbol so .asd loads without FiveAM pre-loaded
2026-05-11 19:55:37 +00:00
Hermes
0397d1de2c
v0.0.2: modern backend — raw escape sequences
...
Implements the modern-backend with truecolor SGR, Unicode box-drawing
(rounded/double/single), DECICM synchronized updates, OSC 8 hyperlinks,
cursor style control, and hex color parsing.
RED: 32 checks, 5 fail (class forward-ref + test bug)
GREEN: 32/32 checks passing (100%)
- backend/modern.lisp — escape generators + modern-backend class
- backend/modern-tests.lisp — 16 test cases, 32 assertions
- backend/package.lisp — updated exports
- org/modern-backend.org — literate source
2026-05-11 12:53:55 +00:00