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,6 +1,6 @@
#+TITLE: cl-tui Layout Engine — v0.0.3
#+TITLE: cl-tty Layout Engine — v0.0.3
#+STARTUP: content
#+FILETAGS: :cl-tui:layout:v0.0.3:
#+FILETAGS: :cl-tty:layout:v0.0.3:
#+OPTIONS: ^:nil
* Layout Engine
@@ -85,10 +85,10 @@ means a full Yoga FFI binding is unnecessary — ~200 lines of CL math.
** Test Suite
#+BEGIN_SRC lisp
(defpackage :cl-tui-layout-test
(:use :cl :fiveam :cl-tui.layout)
(defpackage :cl-tty-layout-test
(:use :cl :fiveam :cl-tty.layout)
(:export #:run-tests))
(in-package :cl-tui-layout-test)
(in-package :cl-tty-layout-test)
(def-suite layout-suite :description "Layout engine tests")
(in-suite layout-suite)
@@ -288,7 +288,7 @@ means a full Yoga FFI binding is unnecessary — ~200 lines of CL math.
*** Package
#+BEGIN_SRC lisp
(defpackage :cl-tui.layout
(defpackage :cl-tty.layout
(:use :cl)
(:export
;; Classes
@@ -306,7 +306,7 @@ means a full Yoga FFI binding is unnecessary — ~200 lines of CL math.
#:compute-layout
;; Macros
#:vbox #:hbox #:spacer))
(in-package :cl-tui.layout)
(in-package :cl-tty.layout)
#+END_SRC
*** Layout Node Class