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
30 lines
825 B
Common Lisp
30 lines
825 B
Common Lisp
(defpackage :cl-tty.backend
|
|
(:use :cl)
|
|
(:export
|
|
;; Backend classes
|
|
#:backend #:simple-backend
|
|
;; Lifecycle
|
|
#:initialize-backend #:shutdown-backend
|
|
#:backend-size #:backend-write #:backend-clear
|
|
;; Drawing
|
|
#:draw-text #:draw-border #:draw-rect
|
|
#:draw-link #:draw-ellipsis
|
|
;; Cursor
|
|
#:cursor-move #:cursor-hide #:cursor-show #:cursor-style
|
|
;; Sync
|
|
#:begin-sync #:end-sync
|
|
;; Input
|
|
#:read-event #:enable-mouse #:enable-bracketed-paste
|
|
;; Queries
|
|
#:capable-p
|
|
;; Constructors
|
|
#:make-simple-backend
|
|
;; Modern backend
|
|
#:modern-backend #:make-modern-backend
|
|
;; Internal (for testing)
|
|
#:sgr-fg #:sgr-bg #:sgr-attr
|
|
#:cursor-move-escape #:cursor-style-escape
|
|
#:decicm-begin #:decicm-end #:osc8-link
|
|
#:hex-to-rgb #:border-char))
|
|
(in-package :cl-tty.backend)
|