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
This commit is contained in:
Hermes
2026-05-11 19:55:37 +00:00
parent 9648c72b85
commit 811d51a4f2
51 changed files with 930 additions and 229 deletions

View File

@@ -1,4 +1,4 @@
;; demo.lisp — minimal cl-tui demo
;; demo.lisp — minimal cl-tty demo
(load "/root/quicklisp/setup.lisp")
(ql:quickload :fiveam :silent t)
(load "backend/package.lisp")
@@ -11,7 +11,7 @@
(load "src/components/box.lisp")
(load "src/components/text.lisp")
(load "src/components/render.lisp")
(in-package :cl-tui.box)
(in-package :cl-tty.box)
;; Demo 1: Simple backend (ASCII)
(let* ((b (make-simple-backend))
@@ -21,7 +21,7 @@
;; Demo 2: Box with text inside
(let* ((b (make-simple-backend))
(tx (make-text "This is cl-tui in action!" :width 28 :height 1)))
(tx (make-text "This is cl-tty in action!" :width 28 :height 1)))
(setf (layout-node-direction (text-layout-node tx)) :column)
(compute-layout (text-layout-node tx) 28 1)
(render tx b)