This is the tuition Reference Manual, version 1.0.3, generated automatically by Declt version 4.0 beta 2 "William Riker" on Fri May 15 12:02:48 2026 GMT+0.
tuition/tuition.asdtuition/src/package.lisptuition/src/protocol.lisptuition/src/errors.lisptuition/src/thread-pool.lisptuition/src/style.lisptuition/src/borders.lisptuition/src/layout.lisptuition/src/zone.lisptuition/src/terminal.lisptuition/src/input.lisptuition/src/keybinding.lisptuition/src/renderer.lisptuition/src/program.lisptuition/src/spring.lisptuition/src/markdown.lisptuition/src/table.lisptuition/src/list.lisptuition/src/tree.lisptuition/src/components/textinput.lisptuition/src/components/viewport.lisptuition/src/components/textarea.lisptuition/src/components/paginator.lisptuition/src/components/spinner.lisptuition/src/components/progress.lisptuition/src/components/stopwatch.lisptuition/src/components/timer.lisptuition/src/components/help.lisptuitiontuition.components.textinputtuition.render.tabletuition.components.helptuition.components.timertuition.render.listtuition.components.paginatortuition.components.viewporttuition.render.treetuition.components.textareatuition.components.stopwatchtuition.components.progresstuition.components.spinnerThe main system appears first, followed by any subsystem dependency.
tuitionA Common Lisp library for building TUIs
Anthony Green <green@moxielogic.com>
MIT
1.0.3
bordeaux-threads (system).
trivial-channels (system).
version-string (system).
alexandria (system).
serapeum (system).
src (module).
src/components (module).
Modules are listed depth-first from the system components tree.
tuition/srctuition (system).
package.lisp (file).
protocol.lisp (file).
errors.lisp (file).
thread-pool.lisp (file).
style.lisp (file).
borders.lisp (file).
layout.lisp (file).
zone.lisp (file).
terminal.lisp (file).
input.lisp (file).
keybinding.lisp (file).
renderer.lisp (file).
program.lisp (file).
spring.lisp (file).
markdown.lisp (file).
table.lisp (file).
list.lisp (file).
tree.lisp (file).
tuition/src/componentssrc (module).
tuition (system).
textinput.lisp (file).
viewport.lisp (file).
textarea.lisp (file).
paginator.lisp (file).
spinner.lisp (file).
progress.lisp (file).
stopwatch.lisp (file).
timer.lisp (file).
help.lisp (file).
Files are sorted by type and then listed depth-first from the systems components trees.
tuition/tuition.asdtuition/src/package.lisptuition/src/protocol.lisptuition/src/errors.lisptuition/src/thread-pool.lisptuition/src/style.lisptuition/src/borders.lisptuition/src/layout.lisptuition/src/zone.lisptuition/src/terminal.lisptuition/src/input.lisptuition/src/keybinding.lisptuition/src/renderer.lisptuition/src/program.lisptuition/src/spring.lisptuition/src/markdown.lisptuition/src/table.lisptuition/src/list.lisptuition/src/tree.lisptuition/src/components/textinput.lisptuition/src/components/viewport.lisptuition/src/components/textarea.lisptuition/src/components/paginator.lisptuition/src/components/spinner.lisptuition/src/components/progress.lisptuition/src/components/stopwatch.lisptuition/src/components/timer.lisptuition/src/components/help.lisptuition/src/package.lisptuition/src/protocol.lispsrc (module).
batch (function).
cmd (type).
cmd-sequence (function).
defmessage (macro).
init (generic function).
key-msg (class).
key-msg-alt (reader method).
key-msg-ctrl (reader method).
key-msg-key (reader method).
key-msg-p (function).
make-key-msg (function).
make-mouse-drag-event (function).
make-mouse-move-event (function).
make-mouse-msg (function).
make-mouse-press-event (function).
make-mouse-release-event (function).
make-mouse-scroll-event (function).
make-paste-msg (function).
make-quit-msg (function).
make-resume-msg (function).
make-suspend-msg (function).
make-tick-msg (function).
make-window-size-msg (function).
message (class).
mouse-button-event (class).
mouse-drag-event (class).
mouse-drag-event-p (function).
mouse-event (class).
mouse-event-alt (reader method).
mouse-event-button (reader method).
mouse-event-ctrl (reader method).
mouse-event-p (function).
mouse-event-shift (reader method).
mouse-event-x (reader method).
mouse-event-y (reader method).
mouse-move-event (class).
mouse-msg (class).
mouse-msg-action (reader method).
mouse-msg-alt (reader method).
mouse-msg-button (reader method).
mouse-msg-ctrl (reader method).
mouse-msg-p (function).
mouse-msg-shift (reader method).
mouse-msg-x (reader method).
mouse-msg-y (reader method).
mouse-press-event (class).
mouse-press-event-p (function).
mouse-release-event (class).
mouse-release-event-p (function).
mouse-scroll-direction (reader method).
mouse-scroll-event (class).
mouse-scroll-event-p (function).
msg (type).
paste-msg (class).
paste-msg-p (function).
paste-msg-text (reader method).
print-object (method).
print-object (method).
print-object (method).
print-object (method).
print-object (method).
print-object (method).
print-object (method).
print-object (method).
print-object (method).
print-object (method).
quit-cmd (function).
quit-msg (class).
quit-msg-p (function).
resume-msg (class).
resume-msg-p (function).
suspend-msg (class).
suspend-msg-p (function).
tick (function).
tick-msg (class).
tick-msg-p (function).
tick-msg-time (reader method).
update (generic function).
update-message (generic function).
view (generic function).
window-size-msg (class).
window-size-msg-height (reader method).
window-size-msg-p (function).
window-size-msg-width (reader method).
focus-in-msg (class).
focus-in-msg-p (function).
focus-out-msg (class).
focus-out-msg-p (function).
make-focus-in-msg (function).
make-focus-out-msg (function).
tuition/src/errors.lispsrc (module).
*error-handler* (special variable).
handle-error (function).
input-error (condition).
terminal-error (condition).
terminal-operation-error (condition).
tuition-error (condition).
input-error-reason (reader method).
terminal-error-operation (reader method).
terminal-error-reason (reader method).
tuition/src/thread-pool.lispsrc (module).
*default-pool-size* (special variable).
*use-thread-pool* (special variable).
copy-thread-pool (function).
make-pool (function).
make-thread-pool (function).
pool-stats (function).
shutdown-pool (function).
submit-command (function).
thread-pool (structure).
thread-pool-lock (reader).
(setf thread-pool-lock) (writer).
thread-pool-p (function).
thread-pool-program (reader).
(setf thread-pool-program) (writer).
thread-pool-queue (reader).
(setf thread-pool-queue) (writer).
thread-pool-running (reader).
(setf thread-pool-running) (writer).
thread-pool-size (reader).
thread-pool-workers (reader).
(setf thread-pool-workers) (writer).
worker-loop (function).
tuition/src/style.lispsrc (module).
*bg-black* (special variable).
*bg-blue* (special variable).
*bg-bright-black* (special variable).
*bg-bright-blue* (special variable).
*bg-bright-cyan* (special variable).
*bg-bright-green* (special variable).
*bg-bright-magenta* (special variable).
*bg-bright-red* (special variable).
*bg-bright-white* (special variable).
*bg-bright-yellow* (special variable).
*bg-cyan* (special variable).
*bg-green* (special variable).
*bg-magenta* (special variable).
*bg-red* (special variable).
*bg-white* (special variable).
*bg-yellow* (special variable).
*fg-black* (special variable).
*fg-blue* (special variable).
*fg-bright-black* (special variable).
*fg-bright-blue* (special variable).
*fg-bright-cyan* (special variable).
*fg-bright-green* (special variable).
*fg-bright-magenta* (special variable).
*fg-bright-red* (special variable).
*fg-bright-white* (special variable).
*fg-bright-yellow* (special variable).
*fg-cyan* (special variable).
*fg-green* (special variable).
*fg-magenta* (special variable).
*fg-red* (special variable).
*fg-white* (special variable).
*fg-yellow* (special variable).
adaptive-color (class).
bold (function).
color-256 (function).
color-rgb (function).
colored (function).
complete-adaptive-color (class).
complete-color (class).
detect-color-support (function).
detect-dark-background (function).
ellipsize (function).
height (function).
indent-lines (function).
italic (function).
make-adaptive-color (function).
make-complete-adaptive-color (function).
make-complete-color (function).
make-style (function).
parse-hex-color (function).
render-styled (function).
size (function).
split-string-by-newline (function).
style (class).
truncate-text (function).
underline (function).
visible-length (function).
width (function).
wrap-text (function).
%ansi-tokenp (function).
%char-display-width (function).
%code-in-range-p (function).
%combining-char-p (function).
%east-asian-wide-p (function).
%maybe-parse-int (function).
%mk-rtok (function).
%newline-tokenp (function).
%replace-first (function).
%rtok (structure).
%rtok-p (function).
%rtok-text (reader).
(setf %rtok-text) (writer).
%rtok-type (reader).
(setf %rtok-type) (writer).
%space-tokenp (function).
%tokenize (function).
%whitespacep (function).
%word-tokenp (function).
*blink* (special variable).
*bold* (special variable).
*dim* (special variable).
*hidden* (special variable).
*italic* (special variable).
*reverse* (special variable).
*strikethrough* (special variable).
*underline* (special variable).
adaptive-dark (reader method).
(setf adaptive-dark) (writer method).
adaptive-light (reader method).
(setf adaptive-light) (writer method).
ansi-color (function).
ansi-reset (function).
apply-margin (function).
apply-min-height (function).
apply-padding (function).
apply-underline-to-text-only (function).
apply-width-align (function).
as-background-code (function).
as-foreground-code (function).
bidi-isolate (function).
bidi-isolate-ltr (function).
complete-adaptive-dark (reader method).
complete-adaptive-light (reader method).
complete-ansi (reader method).
complete-ansi256 (reader method).
complete-truecolor (reader method).
copy-%rtok (function).
resolve-adaptive-color (function).
resolve-color (function).
style-align (reader method).
(setf style-align) (writer method).
style-background (reader method).
(setf style-background) (writer method).
style-blink (reader method).
(setf style-blink) (writer method).
style-bold (reader method).
(setf style-bold) (writer method).
style-faint (reader method).
(setf style-faint) (writer method).
style-foreground (reader method).
(setf style-foreground) (writer method).
style-height (reader method).
(setf style-height) (writer method).
style-inline (reader method).
(setf style-inline) (writer method).
style-italic (reader method).
(setf style-italic) (writer method).
style-margin-bottom (reader method).
(setf style-margin-bottom) (writer method).
style-margin-left (reader method).
(setf style-margin-left) (writer method).
style-margin-right (reader method).
(setf style-margin-right) (writer method).
style-margin-top (reader method).
(setf style-margin-top) (writer method).
style-max-height (reader method).
(setf style-max-height) (writer method).
style-max-width (reader method).
(setf style-max-width) (writer method).
style-padding-bottom (reader method).
(setf style-padding-bottom) (writer method).
style-padding-left (reader method).
(setf style-padding-left) (writer method).
style-padding-right (reader method).
(setf style-padding-right) (writer method).
style-padding-top (reader method).
(setf style-padding-top) (writer method).
style-reverse (reader method).
(setf style-reverse) (writer method).
style-strikethrough (reader method).
(setf style-strikethrough) (writer method).
style-underline (reader method).
(setf style-underline) (writer method).
style-width (reader method).
(setf style-width) (writer method).
truncate-to-height (function).
truncate-to-width (function).
tuition/src/borders.lispsrc (module).
*border-ascii* (special variable).
*border-block* (special variable).
*border-double* (special variable).
*border-hidden* (special variable).
*border-markdown* (special variable).
*border-normal* (special variable).
*border-rounded* (special variable).
*border-thick* (special variable).
border (class).
make-border (function).
render-border (function).
border-bottom (reader method).
(setf border-bottom) (writer method).
border-bottom-left (reader method).
(setf border-bottom-left) (writer method).
border-bottom-right (reader method).
(setf border-bottom-right) (writer method).
border-left (reader method).
(setf border-left) (writer method).
border-middle (reader method).
(setf border-middle) (writer method).
border-middle-bottom (reader method).
(setf border-middle-bottom) (writer method).
border-middle-left (reader method).
(setf border-middle-left) (writer method).
border-middle-right (reader method).
(setf border-middle-right) (writer method).
border-middle-top (reader method).
(setf border-middle-top) (writer method).
border-right (reader method).
(setf border-right) (writer method).
border-top (reader method).
(setf border-top) (writer method).
border-top-left (reader method).
(setf border-top-left) (writer method).
border-top-right (reader method).
(setf border-top-right) (writer method).
tuition/src/layout.lispsrc (module).
+bottom+ (constant).
+center+ (constant).
+left+ (constant).
+middle+ (constant).
+right+ (constant).
+top+ (constant).
join-horizontal (function).
join-vertical (function).
place (function).
place-horizontal (function).
place-vertical (function).
align-text (function).
block-height (function).
block-width (function).
calculate-offset (function).
tuition/src/zone.lispsrc (module).
*zone-manager* (special variable).
init-global-zone-manager (function).
make-zone-manager (function).
zone-clear (function).
zone-enabled-p (function).
zone-get (function).
zone-in-bounds-p (method).
zone-in-bounds-p (method).
zone-in-bounds-p (method).
zone-in-bounds-p (method).
zone-info (class).
zone-manager (class).
zone-mark (function).
zone-new-prefix (function).
zone-pos (function).
zone-scan (function).
zone-set-enabled (function).
*marker-counter* (special variable).
*prefix-counter* (special variable).
zone-info-end-x (reader method).
(setf zone-info-end-x) (writer method).
zone-info-end-y (reader method).
(setf zone-info-end-y) (writer method).
zone-info-id (reader method).
(setf zone-info-id) (writer method).
zone-info-start-x (reader method).
(setf zone-info-start-x) (writer method).
zone-info-start-y (reader method).
(setf zone-info-start-y) (writer method).
zone-manager-enabled (reader method).
(setf zone-manager-enabled) (writer method).
zone-manager-ids (reader method).
(setf zone-manager-ids) (writer method).
zone-manager-lock (reader method).
(setf zone-manager-lock) (writer method).
zone-manager-rids (reader method).
(setf zone-manager-rids) (writer method).
zone-manager-zones (reader method).
(setf zone-manager-zones) (writer method).
tuition/src/terminal.lispsrc (module).
get-terminal-size (function).
with-raw-terminal (macro).
*original-termios* (special variable).
clear-screen (function).
disable-bracketed-paste (function).
disable-focus-events (function).
disable-mouse (function).
enable-bracketed-paste (function).
enable-focus-events (function).
enable-mouse-all-motion (function).
enable-mouse-cell-motion (function).
enter-alt-screen (function).
enter-raw-mode (function).
exit-alt-screen (function).
exit-raw-mode (function).
hide-cursor (function).
resume-terminal (function).
show-cursor (function).
stream-fd (function).
suspend-terminal (function).
tuition/src/input.lispsrc (module).
key-string (function).
%ilog (function).
*input-log-enabled* (special variable).
*input-log-file* (special variable).
*input-stream* (special variable).
ctrl-char-to-key (function).
disable-input-logging (function).
enable-input-logging (function).
parse-bracketed-paste (function).
parse-csi-sequence (function).
parse-escape-sequence (function).
parse-escape-start (function).
parse-mouse-sequence (function).
parse-ss3-sequence (function).
read-key (function).
tuition/src/keybinding.lispsrc (module).
key-matches (function).
keybinding (class).
keybinding-disable (function).
keybinding-enable (function).
keybinding-enabled-p (reader method).
(setf keybinding-enabled-p) (writer method).
keybinding-help-desc (reader method).
(setf keybinding-help-desc) (writer method).
keybinding-help-key (reader method).
(setf keybinding-help-key) (writer method).
keybinding-help-line (function).
keybinding-keys (reader method).
(setf keybinding-keys) (writer method).
keybinding-matches (function).
keybindings-help (function).
make-keybinding (function).
make-navigation-keybindings (function).
make-quit-keybinding (function).
make-scroll-keybindings (function).
make-selection-keybindings (function).
match-key-spec (function).
tuition/src/renderer.lispsrc (module).
clear-to-end-of-screen (function).
last-output (reader method).
(setf last-output) (writer method).
move-cursor (function).
move-cursor-home (function).
output-stream (reader method).
(setf output-stream) (writer method).
render (method).
renderer (class).
tuition/src/program.lispsrc (module).
defprogram (macro).
join (function).
kill-program (function).
make-program (function).
program (class).
quit (function).
run (function).
send (function).
stop (function).
event-loop (function).
handle-message (function).
input-loop (function).
msg-channel (reader method).
(setf msg-channel) (writer method).
program-cmd-pool (reader method).
(setf program-cmd-pool) (writer method).
program-model (reader method).
(setf program-model) (writer method).
program-options (reader method).
(setf program-options) (writer method).
program-renderer (reader method).
(setf program-renderer) (writer method).
program-restore-fn (reader method).
(setf program-restore-fn) (writer method).
program-running (reader method).
(setf program-running) (writer method).
program-tty-stream (reader method).
(setf program-tty-stream) (writer method).
run-batch (function).
run-command (function).
run-sequence (function).
tuition/src/spring.lispsrc (module).
fps (function).
make-spring (function).
make-spring-animation (function).
make-spring-bouncy (function).
make-spring-gentle (function).
make-spring-smooth (function).
make-spring-snappy (function).
spring (structure).
spring-update (function).
+epsilon+ (constant).
copy-spring (function).
spring-p (function).
spring-pos-pos-coef (reader).
(setf spring-pos-pos-coef) (writer).
spring-pos-vel-coef (reader).
(setf spring-pos-vel-coef) (writer).
spring-vel-pos-coef (reader).
(setf spring-vel-pos-coef) (writer).
spring-vel-vel-coef (reader).
(setf spring-vel-vel-coef) (writer).
tuition/src/markdown.lispsrc (module).
make-markdown-renderer (function).
make-markdown-style (function).
make-style-ascii (function).
make-style-dark (function).
make-style-light (function).
make-style-pink (function).
markdown (function).
markdown-renderer (class).
markdown-style (structure).
render-markdown (function).
backtick-char-p (function).
copy-markdown-style (function).
find-closing-backtick (function).
markdown-style-bold-color (reader).
(setf markdown-style-bold-color) (writer).
markdown-style-code-bg (reader).
(setf markdown-style-code-bg) (writer).
markdown-style-code-block-bg (reader).
(setf markdown-style-code-block-bg) (writer).
markdown-style-code-block-color (reader).
(setf markdown-style-code-block-color) (writer).
markdown-style-code-block-margin (reader).
(setf markdown-style-code-block-margin) (writer).
markdown-style-code-color (reader).
(setf markdown-style-code-color) (writer).
markdown-style-document-color (reader).
(setf markdown-style-document-color) (writer).
markdown-style-document-margin (reader).
(setf markdown-style-document-margin) (writer).
markdown-style-emph-color (reader).
(setf markdown-style-emph-color) (writer).
markdown-style-h1-bold (reader).
(setf markdown-style-h1-bold) (writer).
markdown-style-h1-color (reader).
(setf markdown-style-h1-color) (writer).
markdown-style-h1-prefix (reader).
(setf markdown-style-h1-prefix) (writer).
markdown-style-h2-bold (reader).
(setf markdown-style-h2-bold) (writer).
markdown-style-h2-color (reader).
(setf markdown-style-h2-color) (writer).
markdown-style-h2-prefix (reader).
(setf markdown-style-h2-prefix) (writer).
markdown-style-h3-bold (reader).
(setf markdown-style-h3-bold) (writer).
markdown-style-h3-color (reader).
(setf markdown-style-h3-color) (writer).
markdown-style-h3-prefix (reader).
(setf markdown-style-h3-prefix) (writer).
markdown-style-hr-char (reader).
(setf markdown-style-hr-char) (writer).
markdown-style-italic-color (reader).
(setf markdown-style-italic-color) (writer).
markdown-style-link-color (reader).
(setf markdown-style-link-color) (writer).
markdown-style-link-underline (reader).
(setf markdown-style-link-underline) (writer).
markdown-style-list-bullet (reader).
(setf markdown-style-list-bullet) (writer).
markdown-style-list-indent (reader).
(setf markdown-style-list-indent) (writer).
markdown-style-ordered-bullet-format (reader).
(setf markdown-style-ordered-bullet-format) (writer).
markdown-style-p (function).
markdown-style-quote-color (reader).
(setf markdown-style-quote-color) (writer).
markdown-style-quote-indent (reader).
(setf markdown-style-quote-indent) (writer).
markdown-style-quote-prefix (reader).
(setf markdown-style-quote-prefix) (writer).
markdown-style-strong-color (reader).
(setf markdown-style-strong-color) (writer).
markdown-wrap-text (function).
parse-inline-styles (function).
parse-table-row (function).
render-markdown-line (function).
render-table (function).
renderer-preserve-newlines (reader method).
(setf renderer-preserve-newlines) (writer method).
renderer-style (reader method).
(setf renderer-style) (writer method).
renderer-width (reader method).
(setf renderer-width) (writer method).
resolve-markdown-color (function).
split-by-char (function).
split-string-by-whitespace (function).
style-text (function).
table-row-p (function).
table-separator-p (function).
tuition/src/table.lispsrc (module).
+header-row+ (constant).
make-table (function).
table (class).
table-border (reader method).
(setf table-border) (writer method).
table-border-style (reader method).
(setf table-border-style) (writer method).
table-clear-rows (function).
table-headers (reader method).
(setf table-headers) (writer method).
table-height (reader method).
(setf table-height) (writer method).
table-render (function).
table-row (function).
table-rows (reader method).
(setf table-rows) (writer method).
table-style-func (reader method).
(setf table-style-func) (writer method).
table-width (reader method).
(setf table-width) (writer method).
calculate-column-widths (function).
render-cell (function).
table-border-bottom (reader method).
(setf table-border-bottom) (writer method).
table-border-header (reader method).
(setf table-border-header) (writer method).
table-border-left (reader method).
(setf table-border-left) (writer method).
table-border-right (reader method).
(setf table-border-right) (writer method).
table-border-top (reader method).
(setf table-border-top) (writer method).
table-widths (reader method).
(setf table-widths) (writer method).
tuition/src/list.lispsrc (module).
alphabet-enumerator (function).
arabic-enumerator (function).
bullet-enumerator (function).
list-item (function).
list-render (function).
new-list (function).
roman-enumerator (function).
tree-enumerator (function).
list-enumerator (reader method).
(setf list-enumerator) (writer method).
list-enumerator-style (reader method).
(setf list-enumerator-style) (writer method).
list-indent (reader method).
(setf list-indent) (writer method).
list-item-style (reader method).
(setf list-item-style) (writer method).
list-items (reader method).
(setf list-items) (writer method).
tui-list (class).
tuition/src/tree.lispsrc (module).
default-enumerator (function).
make-tree (function).
rounded-enumerator (function).
tree-child (function).
tree-render (function).
tree-root (function).
tree-children (reader method).
(setf tree-children) (writer method).
tree-enumerator (reader method).
(setf tree-enumerator) (writer method).
tree-enumerator-style (reader method).
(setf tree-enumerator-style) (writer method).
tree-indent (reader method).
(setf tree-indent) (writer method).
tree-item-style (reader method).
(setf tree-item-style) (writer method).
tree-root-style (reader method).
(setf tree-root-style) (writer method).
tree-root-text (reader method).
(setf tree-root-text) (writer method).
tui-tree (class).
tuition/src/components/textinput.lispsrc/components (module).
make-textinput (function).
textinput (class).
textinput-blur (function).
textinput-char-limit (reader method).
(setf textinput-char-limit) (writer method).
textinput-focus (function).
textinput-focused (reader method).
(setf textinput-focused) (writer method).
textinput-init (function).
textinput-placeholder (reader method).
(setf textinput-placeholder) (writer method).
textinput-prompt (reader method).
(setf textinput-prompt) (writer method).
textinput-reset (function).
textinput-set-value (function).
textinput-update (function).
textinput-value (reader method).
(setf textinput-value) (writer method).
textinput-view (function).
textinput-width (reader method).
(setf textinput-width) (writer method).
%ti-adjust-offset (function).
%ti-apply-change (function).
%ti-next-word-boundary (function).
%ti-prev-word-boundary (function).
%ti-push-undo (function).
textinput-cursor-pos (reader method).
(setf textinput-cursor-pos) (writer method).
textinput-echo-char (reader method).
(setf textinput-echo-char) (writer method).
textinput-echo-mode (reader method).
(setf textinput-echo-mode) (writer method).
textinput-keymap (reader method).
(setf textinput-keymap) (writer method).
textinput-kill-ring (reader method).
(setf textinput-kill-ring) (writer method).
textinput-offset (reader method).
(setf textinput-offset) (writer method).
textinput-on-change (reader method).
(setf textinput-on-change) (writer method).
textinput-redo-stack (reader method).
(setf textinput-redo-stack) (writer method).
textinput-transform (reader method).
(setf textinput-transform) (writer method).
textinput-undo-stack (reader method).
(setf textinput-undo-stack) (writer method).
textinput-validator (reader method).
(setf textinput-validator) (writer method).
tuition/src/components/viewport.lispsrc/components (module).
make-viewport (function).
viewport (class).
viewport-at-bottom-p (function).
viewport-at-top-p (function).
viewport-content (function).
viewport-goto-bottom (function).
viewport-goto-top (function).
viewport-half-page-down (function).
viewport-half-page-up (function).
viewport-height (reader method).
(setf viewport-height) (writer method).
viewport-init (function).
viewport-page-down (function).
viewport-page-up (function).
viewport-scroll-down (function).
viewport-scroll-left (function).
viewport-scroll-percent (function).
viewport-scroll-right (function).
viewport-scroll-up (function).
viewport-set-content (function).
viewport-total-lines (function).
viewport-update (function).
viewport-view (function).
viewport-visible-lines (function).
viewport-width (reader method).
(setf viewport-width) (writer method).
viewport-x-offset (reader method).
(setf viewport-x-offset) (writer method).
viewport-y-offset (reader method).
(setf viewport-y-offset) (writer method).
viewport-horizontal-step (reader method).
(setf viewport-horizontal-step) (writer method).
viewport-lines (reader method).
(setf viewport-lines) (writer method).
viewport-longest-line-width (function).
viewport-max-y-offset (function).
viewport-mouse-wheel-delta (reader method).
(setf viewport-mouse-wheel-delta) (writer method).
viewport-mouse-wheel-enabled (reader method).
(setf viewport-mouse-wheel-enabled) (writer method).
viewport-set-x-offset (function).
viewport-set-y-offset (function).
viewport-visible-lines-list (function).
tuition/src/components/textarea.lispsrc/components (module).
make-textarea (function).
textarea (class).
textarea-blur (function).
textarea-char-limit (reader method).
(setf textarea-char-limit) (writer method).
textarea-cursor-position (function).
textarea-focus (function).
textarea-focused (reader method).
(setf textarea-focused) (writer method).
textarea-height (reader method).
(setf textarea-height) (writer method).
textarea-init (function).
textarea-insert-rune (function).
textarea-insert-string (function).
textarea-length (function).
textarea-line-count (function).
textarea-placeholder (reader method).
(setf textarea-placeholder) (writer method).
textarea-prompt (reader method).
(setf textarea-prompt) (writer method).
textarea-reset (function).
textarea-set-value (function).
textarea-show-line-numbers (reader method).
(setf textarea-show-line-numbers) (writer method).
textarea-update (function).
textarea-value (function).
textarea-view (function).
textarea-width (reader method).
(setf textarea-width) (writer method).
textarea-col (reader method).
(setf textarea-col) (writer method).
textarea-current-line (function).
textarea-cursor-blink (reader method).
(setf textarea-cursor-blink) (writer method).
textarea-cursor-down (function).
textarea-cursor-end (function).
textarea-cursor-left (function).
textarea-cursor-right (function).
textarea-cursor-start (function).
textarea-cursor-up (function).
textarea-delete-char-backward (function).
textarea-delete-char-forward (function).
textarea-lines (reader method).
(setf textarea-lines) (writer method).
textarea-max-lines (reader method).
(setf textarea-max-lines) (writer method).
textarea-newline (function).
textarea-row (reader method).
(setf textarea-row) (writer method).
textarea-set-cursor (function).
tuition/src/components/paginator.lispsrc/components (module).
+arabic+ (constant).
+dots+ (constant).
make-paginator (function).
paginator (class).
paginator-active-dot (reader method).
(setf paginator-active-dot) (writer method).
paginator-arabic-format (reader method).
(setf paginator-arabic-format) (writer method).
paginator-get-slice-bounds (function).
paginator-inactive-dot (reader method).
(setf paginator-inactive-dot) (writer method).
paginator-init (function).
paginator-items-on-page (function).
paginator-next-page (function).
paginator-on-first-page-p (function).
paginator-on-last-page-p (function).
paginator-page (reader method).
(setf paginator-page) (writer method).
paginator-per-page (reader method).
(setf paginator-per-page) (writer method).
paginator-prev-page (function).
paginator-set-total-pages (function).
paginator-total-pages (reader method).
(setf paginator-total-pages) (writer method).
paginator-type (reader method).
(setf paginator-type) (writer method).
paginator-update (function).
paginator-view (function).
paginator-arabic-view (function).
paginator-dots-view (function).
tuition/src/components/spinner.lispsrc/components (module).
*spinner-dot* (special variable).
*spinner-ellipsis* (special variable).
*spinner-globe* (special variable).
*spinner-hamburger* (special variable).
*spinner-jump* (special variable).
*spinner-line* (special variable).
*spinner-meter* (special variable).
*spinner-minidot* (special variable).
*spinner-monkey* (special variable).
*spinner-moon* (special variable).
*spinner-points* (special variable).
*spinner-pulse* (special variable).
make-spinner (function).
make-spinner-tick-msg (function).
print-object (method).
spinner (class).
spinner-init (function).
spinner-tick-msg (class).
spinner-tick-msg-p (function).
spinner-update (function).
spinner-view (function).
spinner-fps (reader method).
(setf spinner-fps) (writer method).
spinner-frame-index (reader method).
(setf spinner-frame-index) (writer method).
spinner-frames (reader method).
(setf spinner-frames) (writer method).
spinner-id (reader method).
(setf spinner-id) (writer method).
spinner-tick-msg-id (reader method).
tuition/src/components/progress.lispsrc/components (module).
make-progress (function).
progress (class).
progress-empty-char (reader method).
(setf progress-empty-char) (writer method).
progress-full-char (reader method).
(setf progress-full-char) (writer method).
progress-increment (function).
progress-init (function).
progress-percent (reader method).
(setf progress-percent) (writer method).
progress-set-percent (function).
progress-show-percentage (reader method).
(setf progress-show-percentage) (writer method).
progress-update (function).
progress-view (function).
progress-width (reader method).
(setf progress-width) (writer method).
tuition/src/components/stopwatch.lispsrc/components (module).
format-duration (function).
make-stopwatch (function).
stopwatch (class).
stopwatch-elapsed (reader method).
(setf stopwatch-elapsed) (writer method).
stopwatch-init (function).
stopwatch-interval (reader method).
(setf stopwatch-interval) (writer method).
stopwatch-reset (function).
stopwatch-running (reader method).
(setf stopwatch-running) (writer method).
stopwatch-start (function).
stopwatch-stop (function).
stopwatch-toggle (function).
stopwatch-update (function).
stopwatch-view (function).
stopwatch-id (reader method).
(setf stopwatch-id) (writer method).
stopwatch-start-time (reader method).
(setf stopwatch-start-time) (writer method).
stopwatch-tick-cmd (function).
tuition/src/components/timer.lispsrc/components (module).
make-timer (function).
make-timer-timeout-msg (function).
print-object (method).
timer (class).
timer-duration (reader method).
(setf timer-duration) (writer method).
timer-init (function).
timer-interval (reader method).
(setf timer-interval) (writer method).
timer-remaining (reader method).
(setf timer-remaining) (writer method).
timer-reset (function).
timer-running (reader method).
(setf timer-running) (writer method).
timer-set-duration (function).
timer-start (function).
timer-stop (function).
timer-timeout-msg (class).
timer-timeout-msg-p (function).
timer-toggle (function).
timer-update (function).
timer-view (function).
timer-id (reader method).
(setf timer-id) (writer method).
timer-start-time (reader method).
(setf timer-start-time) (writer method).
timer-tick-cmd (function).
timer-timeout-msg-id (reader method).
tuition/src/components/help.lispsrc/components (module).
help (class).
help-binding (structure).
help-ellipsis (reader method).
(setf help-ellipsis) (writer method).
help-full-separator (reader method).
(setf help-full-separator) (writer method).
help-full-view (function).
help-init (function).
help-short-separator (reader method).
(setf help-short-separator) (writer method).
help-short-view (function).
help-show-all (reader method).
(setf help-show-all) (writer method).
help-update (function).
help-view (function).
help-width (reader method).
(setf help-width) (writer method).
make-binding (function).
make-help (function).
copy-help-binding (function).
help-binding-description (reader).
(setf help-binding-description) (writer).
help-binding-enabled (reader).
(setf help-binding-enabled) (writer).
help-binding-key (reader).
(setf help-binding-key) (writer).
help-binding-p (function).
help-column-should-render-p (function).
help-should-add-item-p (function).
make-help-binding (function).
Packages are listed by definition order.
tuitiontuition.components.textinputtuition.render.tabletuition.components.helptuition.components.timertuition.render.listtuition.components.paginatortuition.components.viewporttuition.render.treetuition.components.textareatuition.components.stopwatchtuition.components.progresstuition.components.spinnertuitionTuition: A Common Lisp library for building TUIs.
tui
common-lisp.
*bg-black* (special variable).
*bg-blue* (special variable).
*bg-bright-black* (special variable).
*bg-bright-blue* (special variable).
*bg-bright-cyan* (special variable).
*bg-bright-green* (special variable).
*bg-bright-magenta* (special variable).
*bg-bright-red* (special variable).
*bg-bright-white* (special variable).
*bg-bright-yellow* (special variable).
*bg-cyan* (special variable).
*bg-green* (special variable).
*bg-magenta* (special variable).
*bg-red* (special variable).
*bg-white* (special variable).
*bg-yellow* (special variable).
*border-ascii* (special variable).
*border-block* (special variable).
*border-double* (special variable).
*border-hidden* (special variable).
*border-markdown* (special variable).
*border-normal* (special variable).
*border-rounded* (special variable).
*border-thick* (special variable).
*error-handler* (special variable).
*fg-black* (special variable).
*fg-blue* (special variable).
*fg-bright-black* (special variable).
*fg-bright-blue* (special variable).
*fg-bright-cyan* (special variable).
*fg-bright-green* (special variable).
*fg-bright-magenta* (special variable).
*fg-bright-red* (special variable).
*fg-bright-white* (special variable).
*fg-bright-yellow* (special variable).
*fg-cyan* (special variable).
*fg-green* (special variable).
*fg-magenta* (special variable).
*fg-red* (special variable).
*fg-white* (special variable).
*fg-yellow* (special variable).
*zone-manager* (special variable).
+bottom+ (constant).
+center+ (constant).
+left+ (constant).
+middle+ (constant).
+right+ (constant).
+top+ (constant).
+version+ (special variable).
adaptive-color (class).
batch (function).
bold (function).
border (class).
cmd (type).
cmd-sequence (function).
color-256 (function).
color-rgb (function).
colored (function).
complete-adaptive-color (class).
complete-color (class).
defmessage (macro).
defprogram (macro).
detect-color-support (function).
detect-dark-background (function).
ellipsize (function).
fps (function).
get-terminal-size (function).
handle-error (function).
height (function).
height (slot).
indent-lines (function).
init (generic function).
init-global-zone-manager (function).
input-error (condition).
italic (function).
join (function).
join-horizontal (function).
join-vertical (function).
key-matches (function).
key-msg (class).
key-msg-alt (generic reader).
key-msg-ctrl (generic reader).
key-msg-key (generic reader).
key-msg-p (function).
key-string (function).
keybinding (class).
keybinding-disable (function).
keybinding-enable (function).
keybinding-enabled-p (generic reader).
(setf keybinding-enabled-p) (generic writer).
keybinding-help-desc (generic reader).
(setf keybinding-help-desc) (generic writer).
keybinding-help-key (generic reader).
(setf keybinding-help-key) (generic writer).
keybinding-help-line (function).
keybinding-keys (generic reader).
(setf keybinding-keys) (generic writer).
keybinding-matches (function).
keybindings-help (function).
kill-program (function).
make-adaptive-color (function).
make-border (function).
make-complete-adaptive-color (function).
make-complete-color (function).
make-key-msg (function).
make-keybinding (function).
make-markdown-renderer (function).
make-markdown-style (function).
make-mouse-drag-event (function).
make-mouse-move-event (function).
make-mouse-msg (function).
make-mouse-press-event (function).
make-mouse-release-event (function).
make-mouse-scroll-event (function).
make-navigation-keybindings (function).
make-paste-msg (function).
make-program (function).
make-quit-keybinding (function).
make-quit-msg (function).
make-resume-msg (function).
make-scroll-keybindings (function).
make-selection-keybindings (function).
make-spring (function).
make-spring-animation (function).
make-spring-bouncy (function).
make-spring-gentle (function).
make-spring-smooth (function).
make-spring-snappy (function).
make-style (function).
make-style-ascii (function).
make-style-dark (function).
make-style-light (function).
make-style-pink (function).
make-suspend-msg (function).
make-tick-msg (function).
make-window-size-msg (function).
make-zone-manager (function).
markdown (function).
markdown-renderer (class).
markdown-style (structure).
message (class).
mouse-button-event (class).
mouse-drag-event (class).
mouse-drag-event-p (function).
mouse-event (class).
mouse-event-alt (generic reader).
mouse-event-button (generic reader).
mouse-event-ctrl (generic reader).
mouse-event-p (function).
mouse-event-shift (generic reader).
mouse-event-x (generic reader).
mouse-event-y (generic reader).
mouse-move-event (class).
mouse-msg (class).
mouse-msg-action (generic reader).
mouse-msg-alt (generic reader).
mouse-msg-button (generic reader).
mouse-msg-ctrl (generic reader).
mouse-msg-p (function).
mouse-msg-shift (generic reader).
mouse-msg-x (generic reader).
mouse-msg-y (generic reader).
mouse-press-event (class).
mouse-press-event-p (function).
mouse-release-event (class).
mouse-release-event-p (function).
mouse-scroll-direction (generic reader).
mouse-scroll-event (class).
mouse-scroll-event-p (function).
msg (type).
parse-hex-color (function).
paste-msg (class).
paste-msg-p (function).
paste-msg-text (generic reader).
place (function).
place-horizontal (function).
place-vertical (function).
program (class).
quit (function).
quit-cmd (function).
quit-msg (class).
quit-msg-p (function).
render-border (function).
render-markdown (function).
render-styled (function).
resume-msg (class).
resume-msg-p (function).
run (function).
send (function).
size (function).
split-string-by-newline (function).
spring (structure).
spring-update (function).
stop (function).
style (class).
suspend-msg (class).
suspend-msg-p (function).
terminal-error (condition).
terminal-operation-error (condition).
tick (function).
tick-msg (class).
tick-msg-p (function).
tick-msg-time (generic reader).
truncate-text (function).
tuition-error (condition).
underline (function).
update (generic function).
update-message (generic function).
view (generic function).
visible-length (function).
width (function).
width (slot).
window-size-msg (class).
window-size-msg-height (generic reader).
window-size-msg-p (function).
window-size-msg-width (generic reader).
with-raw-terminal (macro).
wrap-text (function).
zone-clear (function).
zone-enabled-p (function).
zone-get (function).
zone-in-bounds-p (generic function).
zone-info (class).
zone-manager (class).
zone-mark (function).
zone-new-prefix (function).
zone-pos (function).
zone-scan (function).
zone-set-enabled (function).
%ansi-tokenp (function).
%char-display-width (function).
%code-in-range-p (function).
%combining-char-p (function).
%east-asian-wide-p (function).
%ilog (function).
%maybe-parse-int (function).
%mk-rtok (function).
%newline-tokenp (function).
%replace-first (function).
%rtok (structure).
%rtok-p (function).
%rtok-text (reader).
(setf %rtok-text) (writer).
%rtok-type (reader).
(setf %rtok-type) (writer).
%space-tokenp (function).
%tokenize (function).
%whitespacep (function).
%word-tokenp (function).
*blink* (special variable).
*bold* (special variable).
*default-pool-size* (special variable).
*dim* (special variable).
*hidden* (special variable).
*input-log-enabled* (special variable).
*input-log-file* (special variable).
*input-stream* (special variable).
*italic* (special variable).
*marker-counter* (special variable).
*original-termios* (special variable).
*prefix-counter* (special variable).
*reverse* (special variable).
*strikethrough* (special variable).
*underline* (special variable).
*use-thread-pool* (special variable).
+epsilon+ (constant).
adaptive-dark (generic reader).
(setf adaptive-dark) (generic writer).
adaptive-light (generic reader).
(setf adaptive-light) (generic writer).
align-text (function).
ansi-color (function).
ansi-reset (function).
apply-margin (function).
apply-min-height (function).
apply-padding (function).
apply-underline-to-text-only (function).
apply-width-align (function).
as-background-code (function).
as-foreground-code (function).
backtick-char-p (function).
bidi-isolate (function).
bidi-isolate-ltr (function).
block-height (function).
block-width (function).
border-bottom (generic reader).
(setf border-bottom) (generic writer).
border-bottom-left (generic reader).
(setf border-bottom-left) (generic writer).
border-bottom-right (generic reader).
(setf border-bottom-right) (generic writer).
border-left (generic reader).
(setf border-left) (generic writer).
border-middle (generic reader).
(setf border-middle) (generic writer).
border-middle-bottom (generic reader).
(setf border-middle-bottom) (generic writer).
border-middle-left (generic reader).
(setf border-middle-left) (generic writer).
border-middle-right (generic reader).
(setf border-middle-right) (generic writer).
border-middle-top (generic reader).
(setf border-middle-top) (generic writer).
border-right (generic reader).
(setf border-right) (generic writer).
border-top (generic reader).
(setf border-top) (generic writer).
border-top-left (generic reader).
(setf border-top-left) (generic writer).
border-top-right (generic reader).
(setf border-top-right) (generic writer).
calculate-offset (function).
clear-screen (function).
clear-to-end-of-screen (function).
complete-adaptive-dark (generic reader).
complete-adaptive-light (generic reader).
complete-ansi (generic reader).
complete-ansi256 (generic reader).
complete-truecolor (generic reader).
copy-%rtok (function).
copy-markdown-style (function).
copy-spring (function).
copy-thread-pool (function).
ctrl-char-to-key (function).
disable-bracketed-paste (function).
disable-focus-events (function).
disable-input-logging (function).
disable-mouse (function).
enable-bracketed-paste (function).
enable-focus-events (function).
enable-input-logging (function).
enable-mouse-all-motion (function).
enable-mouse-cell-motion (function).
enter-alt-screen (function).
enter-raw-mode (function).
event-loop (function).
exit-alt-screen (function).
exit-raw-mode (function).
find-closing-backtick (function).
focus-in-msg (class).
focus-in-msg-p (function).
focus-out-msg (class).
focus-out-msg-p (function).
handle-message (function).
hide-cursor (function).
input-error-reason (generic reader).
input-loop (function).
last-output (generic reader).
(setf last-output) (generic writer).
make-focus-in-msg (function).
make-focus-out-msg (function).
make-pool (function).
make-thread-pool (function).
markdown-style-bold-color (reader).
(setf markdown-style-bold-color) (writer).
markdown-style-code-bg (reader).
(setf markdown-style-code-bg) (writer).
markdown-style-code-block-bg (reader).
(setf markdown-style-code-block-bg) (writer).
markdown-style-code-block-color (reader).
(setf markdown-style-code-block-color) (writer).
markdown-style-code-block-margin (reader).
(setf markdown-style-code-block-margin) (writer).
markdown-style-code-color (reader).
(setf markdown-style-code-color) (writer).
markdown-style-document-color (reader).
(setf markdown-style-document-color) (writer).
markdown-style-document-margin (reader).
(setf markdown-style-document-margin) (writer).
markdown-style-emph-color (reader).
(setf markdown-style-emph-color) (writer).
markdown-style-h1-bold (reader).
(setf markdown-style-h1-bold) (writer).
markdown-style-h1-color (reader).
(setf markdown-style-h1-color) (writer).
markdown-style-h1-prefix (reader).
(setf markdown-style-h1-prefix) (writer).
markdown-style-h2-bold (reader).
(setf markdown-style-h2-bold) (writer).
markdown-style-h2-color (reader).
(setf markdown-style-h2-color) (writer).
markdown-style-h2-prefix (reader).
(setf markdown-style-h2-prefix) (writer).
markdown-style-h3-bold (reader).
(setf markdown-style-h3-bold) (writer).
markdown-style-h3-color (reader).
(setf markdown-style-h3-color) (writer).
markdown-style-h3-prefix (reader).
(setf markdown-style-h3-prefix) (writer).
markdown-style-hr-char (reader).
(setf markdown-style-hr-char) (writer).
markdown-style-italic-color (reader).
(setf markdown-style-italic-color) (writer).
markdown-style-link-color (reader).
(setf markdown-style-link-color) (writer).
markdown-style-link-underline (reader).
(setf markdown-style-link-underline) (writer).
markdown-style-list-bullet (reader).
(setf markdown-style-list-bullet) (writer).
markdown-style-list-indent (reader).
(setf markdown-style-list-indent) (writer).
markdown-style-ordered-bullet-format (reader).
(setf markdown-style-ordered-bullet-format) (writer).
markdown-style-p (function).
markdown-style-quote-color (reader).
(setf markdown-style-quote-color) (writer).
markdown-style-quote-indent (reader).
(setf markdown-style-quote-indent) (writer).
markdown-style-quote-prefix (reader).
(setf markdown-style-quote-prefix) (writer).
markdown-style-strong-color (reader).
(setf markdown-style-strong-color) (writer).
markdown-wrap-text (function).
match-key-spec (function).
move-cursor (function).
move-cursor-home (function).
msg-channel (generic reader).
(setf msg-channel) (generic writer).
output-stream (generic reader).
(setf output-stream) (generic writer).
parse-bracketed-paste (function).
parse-csi-sequence (function).
parse-escape-sequence (function).
parse-escape-start (function).
parse-inline-styles (function).
parse-mouse-sequence (function).
parse-ss3-sequence (function).
parse-table-row (function).
pool-stats (function).
program-cmd-pool (generic reader).
(setf program-cmd-pool) (generic writer).
program-model (generic reader).
(setf program-model) (generic writer).
program-options (generic reader).
(setf program-options) (generic writer).
program-renderer (generic reader).
(setf program-renderer) (generic writer).
program-restore-fn (generic reader).
(setf program-restore-fn) (generic writer).
program-running (generic reader).
(setf program-running) (generic writer).
program-tty-stream (generic reader).
(setf program-tty-stream) (generic writer).
read-key (function).
render (generic function).
render-markdown-line (function).
render-table (function).
renderer (class).
renderer-preserve-newlines (generic reader).
(setf renderer-preserve-newlines) (generic writer).
renderer-style (generic reader).
(setf renderer-style) (generic writer).
renderer-width (generic reader).
(setf renderer-width) (generic writer).
resolve-adaptive-color (function).
resolve-color (function).
resolve-markdown-color (function).
resume-terminal (function).
run-batch (function).
run-command (function).
run-sequence (function).
show-cursor (function).
shutdown-pool (function).
split-by-char (function).
split-string-by-whitespace (function).
spring-p (function).
spring-pos-pos-coef (reader).
(setf spring-pos-pos-coef) (writer).
spring-pos-vel-coef (reader).
(setf spring-pos-vel-coef) (writer).
spring-vel-pos-coef (reader).
(setf spring-vel-pos-coef) (writer).
spring-vel-vel-coef (reader).
(setf spring-vel-vel-coef) (writer).
stream-fd (function).
style-align (generic reader).
(setf style-align) (generic writer).
style-background (generic reader).
(setf style-background) (generic writer).
style-blink (generic reader).
(setf style-blink) (generic writer).
style-bold (generic reader).
(setf style-bold) (generic writer).
style-faint (generic reader).
(setf style-faint) (generic writer).
style-foreground (generic reader).
(setf style-foreground) (generic writer).
style-height (generic reader).
(setf style-height) (generic writer).
style-inline (generic reader).
(setf style-inline) (generic writer).
style-italic (generic reader).
(setf style-italic) (generic writer).
style-margin-bottom (generic reader).
(setf style-margin-bottom) (generic writer).
style-margin-left (generic reader).
(setf style-margin-left) (generic writer).
style-margin-right (generic reader).
(setf style-margin-right) (generic writer).
style-margin-top (generic reader).
(setf style-margin-top) (generic writer).
style-max-height (generic reader).
(setf style-max-height) (generic writer).
style-max-width (generic reader).
(setf style-max-width) (generic writer).
style-padding-bottom (generic reader).
(setf style-padding-bottom) (generic writer).
style-padding-left (generic reader).
(setf style-padding-left) (generic writer).
style-padding-right (generic reader).
(setf style-padding-right) (generic writer).
style-padding-top (generic reader).
(setf style-padding-top) (generic writer).
style-reverse (generic reader).
(setf style-reverse) (generic writer).
style-strikethrough (generic reader).
(setf style-strikethrough) (generic writer).
style-text (function).
style-underline (generic reader).
(setf style-underline) (generic writer).
style-width (generic reader).
(setf style-width) (generic writer).
submit-command (function).
suspend-terminal (function).
table-row-p (function).
table-separator-p (function).
terminal-error-operation (generic reader).
terminal-error-reason (generic reader).
thread-pool (structure).
thread-pool-lock (reader).
(setf thread-pool-lock) (writer).
thread-pool-p (function).
thread-pool-program (reader).
(setf thread-pool-program) (writer).
thread-pool-queue (reader).
(setf thread-pool-queue) (writer).
thread-pool-running (reader).
(setf thread-pool-running) (writer).
thread-pool-size (reader).
thread-pool-workers (reader).
(setf thread-pool-workers) (writer).
truncate-to-height (function).
truncate-to-width (function).
worker-loop (function).
zone-info-end-x (generic reader).
(setf zone-info-end-x) (generic writer).
zone-info-end-y (generic reader).
(setf zone-info-end-y) (generic writer).
zone-info-id (generic reader).
(setf zone-info-id) (generic writer).
zone-info-start-x (generic reader).
(setf zone-info-start-x) (generic writer).
zone-info-start-y (generic reader).
(setf zone-info-start-y) (generic writer).
zone-manager-enabled (generic reader).
(setf zone-manager-enabled) (generic writer).
zone-manager-ids (generic reader).
(setf zone-manager-ids) (generic writer).
zone-manager-lock (generic reader).
(setf zone-manager-lock) (generic writer).
zone-manager-rids (generic reader).
(setf zone-manager-rids) (generic writer).
zone-manager-zones (generic reader).
(setf zone-manager-zones) (generic writer).
tuition.components.textinputtui.textinput
common-lisp.
make-textinput (function).
textinput (class).
textinput-blur (function).
textinput-char-limit (generic reader).
(setf textinput-char-limit) (generic writer).
textinput-focus (function).
textinput-focused (generic reader).
(setf textinput-focused) (generic writer).
textinput-init (function).
textinput-placeholder (generic reader).
(setf textinput-placeholder) (generic writer).
textinput-prompt (generic reader).
(setf textinput-prompt) (generic writer).
textinput-reset (function).
textinput-set-value (function).
textinput-update (function).
textinput-value (generic reader).
(setf textinput-value) (generic writer).
textinput-view (function).
textinput-width (generic reader).
(setf textinput-width) (generic writer).
%ti-adjust-offset (function).
%ti-apply-change (function).
%ti-next-word-boundary (function).
%ti-prev-word-boundary (function).
%ti-push-undo (function).
textinput-cursor-pos (generic reader).
(setf textinput-cursor-pos) (generic writer).
textinput-echo-char (generic reader).
(setf textinput-echo-char) (generic writer).
textinput-echo-mode (generic reader).
(setf textinput-echo-mode) (generic writer).
textinput-keymap (generic reader).
(setf textinput-keymap) (generic writer).
textinput-kill-ring (generic reader).
(setf textinput-kill-ring) (generic writer).
textinput-offset (generic reader).
(setf textinput-offset) (generic writer).
textinput-on-change (generic reader).
(setf textinput-on-change) (generic writer).
textinput-redo-stack (generic reader).
(setf textinput-redo-stack) (generic writer).
textinput-transform (generic reader).
(setf textinput-transform) (generic writer).
textinput-undo-stack (generic reader).
(setf textinput-undo-stack) (generic writer).
textinput-validator (generic reader).
(setf textinput-validator) (generic writer).
tuition.render.tableTable rendering utilities for displaying tabular data.
tui.render.table
tui.r.table
common-lisp.
+header-row+ (constant).
make-table (function).
table (class).
table-border (generic reader).
(setf table-border) (generic writer).
table-border-style (generic reader).
(setf table-border-style) (generic writer).
table-clear-rows (function).
table-headers (generic reader).
(setf table-headers) (generic writer).
table-height (generic reader).
(setf table-height) (generic writer).
table-render (function).
table-row (function).
table-rows (generic reader).
(setf table-rows) (generic writer).
table-style-func (generic reader).
(setf table-style-func) (generic writer).
table-width (generic reader).
(setf table-width) (generic writer).
calculate-column-widths (function).
render-cell (function).
table-border-bottom (generic reader).
(setf table-border-bottom) (generic writer).
table-border-header (generic reader).
(setf table-border-header) (generic writer).
table-border-left (generic reader).
(setf table-border-left) (generic writer).
table-border-right (generic reader).
(setf table-border-right) (generic writer).
table-border-top (generic reader).
(setf table-border-top) (generic writer).
table-widths (generic reader).
(setf table-widths) (generic writer).
tuition.components.helpHelp view component for displaying key bindings and shortcuts.
tui.help
common-lisp.
help (class).
help-binding (structure).
help-ellipsis (generic reader).
(setf help-ellipsis) (generic writer).
help-full-separator (generic reader).
(setf help-full-separator) (generic writer).
help-full-view (function).
help-init (function).
help-short-separator (generic reader).
(setf help-short-separator) (generic writer).
help-short-view (function).
help-show-all (generic reader).
(setf help-show-all) (generic writer).
help-update (function).
help-view (function).
help-width (generic reader).
(setf help-width) (generic writer).
make-binding (function).
make-help (function).
copy-help-binding (function).
help-binding-description (reader).
(setf help-binding-description) (writer).
help-binding-enabled (reader).
(setf help-binding-enabled) (writer).
help-binding-key (reader).
(setf help-binding-key) (writer).
help-binding-p (function).
help-column-should-render-p (function).
help-should-add-item-p (function).
make-help-binding (function).
tuition.components.timerTimer component: countdown with tick-based updates.
tui.timer
common-lisp.
make-timer (function).
make-timer-timeout-msg (function).
timer (class).
timer-duration (generic reader).
(setf timer-duration) (generic writer).
timer-init (function).
timer-interval (generic reader).
(setf timer-interval) (generic writer).
timer-remaining (generic reader).
(setf timer-remaining) (generic writer).
timer-reset (function).
timer-running (generic reader).
(setf timer-running) (generic writer).
timer-set-duration (function).
timer-start (function).
timer-stop (function).
timer-timeout-msg (class).
timer-timeout-msg-p (function).
timer-toggle (function).
timer-update (function).
timer-view (function).
timer-id (generic reader).
(setf timer-id) (generic writer).
timer-start-time (generic reader).
(setf timer-start-time) (generic writer).
timer-tick-cmd (function).
timer-timeout-msg-id (generic reader).
tuition.render.listList rendering utilities with various enumeration styles.
tui.render.list
tui.r.list
common-lisp.
alphabet-enumerator (function).
arabic-enumerator (function).
bullet-enumerator (function).
list-item (function).
list-render (function).
new-list (function).
roman-enumerator (function).
tree-enumerator (function).
list-enumerator (generic reader).
(setf list-enumerator) (generic writer).
list-enumerator-style (generic reader).
(setf list-enumerator-style) (generic writer).
list-indent (generic reader).
(setf list-indent) (generic writer).
list-item-style (generic reader).
(setf list-item-style) (generic writer).
list-items (generic reader).
(setf list-items) (generic writer).
tui-list (class).
tuition.components.paginatortui.paginator
common-lisp.
+arabic+ (constant).
+dots+ (constant).
make-paginator (function).
paginator (class).
paginator-active-dot (generic reader).
(setf paginator-active-dot) (generic writer).
paginator-arabic-format (generic reader).
(setf paginator-arabic-format) (generic writer).
paginator-get-slice-bounds (function).
paginator-inactive-dot (generic reader).
(setf paginator-inactive-dot) (generic writer).
paginator-init (function).
paginator-items-on-page (function).
paginator-next-page (function).
paginator-on-first-page-p (function).
paginator-on-last-page-p (function).
paginator-page (generic reader).
(setf paginator-page) (generic writer).
paginator-per-page (generic reader).
(setf paginator-per-page) (generic writer).
paginator-prev-page (function).
paginator-set-total-pages (function).
paginator-total-pages (generic reader).
(setf paginator-total-pages) (generic writer).
paginator-type (generic reader).
(setf paginator-type) (generic writer).
paginator-update (function).
paginator-view (function).
paginator-arabic-view (function).
paginator-dots-view (function).
tuition.components.viewporttui.viewport
common-lisp.
make-viewport (function).
viewport (class).
viewport-at-bottom-p (function).
viewport-at-top-p (function).
viewport-content (function).
viewport-goto-bottom (function).
viewport-goto-top (function).
viewport-half-page-down (function).
viewport-half-page-up (function).
viewport-height (generic reader).
(setf viewport-height) (generic writer).
viewport-init (function).
viewport-page-down (function).
viewport-page-up (function).
viewport-scroll-down (function).
viewport-scroll-left (function).
viewport-scroll-percent (function).
viewport-scroll-right (function).
viewport-scroll-up (function).
viewport-set-content (function).
viewport-total-lines (function).
viewport-update (function).
viewport-view (function).
viewport-visible-lines (function).
viewport-width (generic reader).
(setf viewport-width) (generic writer).
viewport-x-offset (generic reader).
(setf viewport-x-offset) (generic writer).
viewport-y-offset (generic reader).
(setf viewport-y-offset) (generic writer).
viewport-horizontal-step (generic reader).
(setf viewport-horizontal-step) (generic writer).
viewport-lines (generic reader).
(setf viewport-lines) (generic writer).
viewport-longest-line-width (function).
viewport-max-y-offset (function).
viewport-mouse-wheel-delta (generic reader).
(setf viewport-mouse-wheel-delta) (generic writer).
viewport-mouse-wheel-enabled (generic reader).
(setf viewport-mouse-wheel-enabled) (generic writer).
viewport-set-x-offset (function).
viewport-set-y-offset (function).
viewport-visible-lines-list (function).
tuition.render.treeTree rendering utilities for hierarchical data structures.
tui.render.tree
tui.r.tree
common-lisp.
default-enumerator (function).
make-tree (function).
rounded-enumerator (function).
tree-child (function).
tree-render (function).
tree-root (function).
tree-children (generic reader).
(setf tree-children) (generic writer).
tree-enumerator (generic reader).
(setf tree-enumerator) (generic writer).
tree-enumerator-style (generic reader).
(setf tree-enumerator-style) (generic writer).
tree-indent (generic reader).
(setf tree-indent) (generic writer).
tree-item-style (generic reader).
(setf tree-item-style) (generic writer).
tree-root-style (generic reader).
(setf tree-root-style) (generic writer).
tree-root-text (generic reader).
(setf tree-root-text) (generic writer).
tui-tree (class).
tuition.components.textareatui.textarea
common-lisp.
make-textarea (function).
textarea (class).
textarea-blur (function).
textarea-char-limit (generic reader).
(setf textarea-char-limit) (generic writer).
textarea-cursor-position (function).
textarea-focus (function).
textarea-focused (generic reader).
(setf textarea-focused) (generic writer).
textarea-height (generic reader).
(setf textarea-height) (generic writer).
textarea-init (function).
textarea-insert-rune (function).
textarea-insert-string (function).
textarea-length (function).
textarea-line-count (function).
textarea-placeholder (generic reader).
(setf textarea-placeholder) (generic writer).
textarea-prompt (generic reader).
(setf textarea-prompt) (generic writer).
textarea-reset (function).
textarea-set-value (function).
textarea-show-line-numbers (generic reader).
(setf textarea-show-line-numbers) (generic writer).
textarea-update (function).
textarea-value (function).
textarea-view (function).
textarea-width (generic reader).
(setf textarea-width) (generic writer).
textarea-col (generic reader).
(setf textarea-col) (generic writer).
textarea-current-line (function).
textarea-cursor-blink (generic reader).
(setf textarea-cursor-blink) (generic writer).
textarea-cursor-down (function).
textarea-cursor-end (function).
textarea-cursor-left (function).
textarea-cursor-right (function).
textarea-cursor-start (function).
textarea-cursor-up (function).
textarea-delete-char-backward (function).
textarea-delete-char-forward (function).
textarea-lines (generic reader).
(setf textarea-lines) (generic writer).
textarea-max-lines (generic reader).
(setf textarea-max-lines) (generic writer).
textarea-newline (function).
textarea-row (generic reader).
(setf textarea-row) (generic writer).
textarea-set-cursor (function).
tuition.components.stopwatchStopwatch component: count-up timer with tick updates.
tui.stopwatch
common-lisp.
format-duration (function).
make-stopwatch (function).
stopwatch (class).
stopwatch-elapsed (generic reader).
(setf stopwatch-elapsed) (generic writer).
stopwatch-init (function).
stopwatch-interval (generic reader).
(setf stopwatch-interval) (generic writer).
stopwatch-reset (function).
stopwatch-running (generic reader).
(setf stopwatch-running) (generic writer).
stopwatch-start (function).
stopwatch-stop (function).
stopwatch-toggle (function).
stopwatch-update (function).
stopwatch-view (function).
stopwatch-id (generic reader).
(setf stopwatch-id) (generic writer).
stopwatch-start-time (generic reader).
(setf stopwatch-start-time) (generic writer).
stopwatch-tick-cmd (function).
tuition.components.progressProgress bar component: textual progress visualization.
tui.progress
common-lisp.
make-progress (function).
progress (class).
progress-empty-char (generic reader).
(setf progress-empty-char) (generic writer).
progress-full-char (generic reader).
(setf progress-full-char) (generic writer).
progress-increment (function).
progress-init (function).
progress-percent (generic reader).
(setf progress-percent) (generic writer).
progress-set-percent (function).
progress-show-percentage (generic reader).
(setf progress-show-percentage) (generic writer).
progress-update (function).
progress-view (function).
progress-width (generic reader).
(setf progress-width) (generic writer).
tuition.components.spinnerSpinner component: simple animated indicator via ticks.
tui.spinner
common-lisp.
*spinner-dot* (special variable).
*spinner-ellipsis* (special variable).
*spinner-globe* (special variable).
*spinner-hamburger* (special variable).
*spinner-jump* (special variable).
*spinner-line* (special variable).
*spinner-meter* (special variable).
*spinner-minidot* (special variable).
*spinner-monkey* (special variable).
*spinner-moon* (special variable).
*spinner-points* (special variable).
*spinner-pulse* (special variable).
make-spinner (function).
make-spinner-tick-msg (function).
spinner (class).
spinner-init (function).
spinner-tick-msg (class).
spinner-tick-msg-p (function).
spinner-update (function).
spinner-view (function).
spinner-fps (generic reader).
(setf spinner-fps) (generic writer).
spinner-frame-index (generic reader).
(setf spinner-frame-index) (generic writer).
spinner-frames (generic reader).
(setf spinner-frames) (generic writer).
spinner-id (generic reader).
(setf spinner-id) (generic writer).
spinner-tick-msg-id (generic reader).
Definitions are sorted by export status, category, package, and then by lexicographic order.
Display pagination as numbers (1/10)
Display pagination as dots (• ○ ○)
Special row index for the header row in style functions.
ASCII-only border.
Solid block border.
Double-line border.
Markdown table border.
Standard border with 90 degree corners.
Border with rounded corners.
Thick border.
Function of (WHERE CONDITION) called when internal errors are caught.
WHERE is a keyword indicating origin, e.g., :event-loop, :input-loop, :terminal.
Users may bind or set this to customize error reporting.
Dot spinner.
Ellipsis spinner.
Globe spinner.
Hamburger spinner.
Jumping spinner.
Simple line spinner.
Meter spinner.
Mini dot spinner.
Monkey spinner.
Moon phases spinner.
Points spinner.
Pulsing spinner.
Define a message class NAME with SLOTS and a simple printer.
SLOTS are DEFCLASS slot specs. PRINT-NAME overrides the printed tag.
DOCUMENTATION sets the class docstring (defaults to a short description).
Define a model class named CLASS-NAME and its TEA protocol methods.
Parameters:
- SLOTS: list of DEFCLASS slot specs.
- INIT: body producing the initial command (evaluated with MODEL bound).
- UPDATE: body that receives (model msg) and returns (values new-model cmd).
- VIEW: body that receives MODEL and returns a string.
Example:
(tui:defprogram counter
:slots ((count :initform 0 :accessor count))
:init nil
:update (cond ((and (tui:key-msg-p msg) (char= (tui:key-msg-key msg) #q))
(values model (tui:quit-cmd)))
(t (values model nil)))
:view (format nil "Count: ~D" (count model)))
Execute BODY with the terminal in raw TUI mode.
Args:
- ALT-SCREEN: enter/exit alternate screen when true.
- MOUSE: one of :cell-motion, :all-motion, or NIL.
- FOCUS-EVENTS: enable focus in/out events (default: T).
Always restores the terminal, even if BODY errors.
Alphabetic enumerator (a. b. c. ...).
Arabic numeral enumerator (1. 2. 3. ...).
Batch multiple commands to run concurrently (filters out NILs).
Render text in bold.
Bullet point enumerator.
Sequence multiple commands to run in order (filters out NILs).
Create a 256-color code (0-255).
Set foreground to nil for background colors.
Create an RGB true color code (0-255 for each component). Set foreground to nil for background colors.
Render text with foreground and/or background color.
Default tree enumerator with ASCII box characters.
Detect the color support level of the terminal.
Returns :truecolor, :256color, :16color, or :monochrome.
Attempt to detect if terminal has dark background.
Returns T for dark, NIL for light.
Checks multiple environment variables and known terminals.
Convenience wrapper around TRUNCATE-TEXT with default ellipsis.
Format a duration in seconds as HH:MM:SS.SS
Parameters:
- SECONDS: Duration in seconds
- PRECISION: Number of decimal places for subseconds (default 2)
Convert frames per second to time delta (seconds per frame). Use this as the delta-time parameter when creating a spring.
Example: (make-spring-animation (fps 60) 6.0d0 0.5d0)
Get the current terminal size as (width . height).
Invoke the configured error handler for a caught CONDITION at WHERE.
Get the height (in lines) of rendered text.
Render full (multi-column) help from a list of binding groups. Each group is a list of bindings that form a column.
Initialize the help view. Returns nil (no command).
Render short (single line) help from a list of bindings.
Update help with a message. Returns (values new-help cmd). Note: help view typically doesn’t handle messages directly.
Render the help view. Takes either a list of bindings (short) or a list of binding lists (full).
Indent each line of TEXT by N spaces.
Initialize the global zone manager.
Render text in italic.
Join a thread (compat wrapper).
Join text blocks horizontally at the given vertical position. Position can be :top, :middle, :bottom, or a number 0.0-1.0.
Join text blocks vertically at the given horizontal position. Position can be :left, :center, :right, or a number 0.0-1.0.
Check if a key message matches any of the given key specifications.
This is a convenience function for simple key matching without creating a binding.
Example:
(key-matches msg #\q :escape (#\c :ctrl t))
Return true if OBJ is a key-msg.
Convert a key-msg to a string representation.
Disable a keybinding.
Enable a keybinding.
Generate a single-line help string for a keybinding.
Returns a string in the format "key description" if enabled, nil otherwise.
Check if a key message matches this binding.
Returns T if the message matches any of the binding’s keys and the binding is enabled.
Generate help text from a list of keybindings.
Parameters:
- BINDINGS: List of keybinding objects
- SEPARATOR: String to separate multiple bindings (default " ")
- FORMAT: One of :inline (single line) or :full (multi-line)
Returns a formatted help string showing all enabled bindings.
Kill the program immediately.
Add an item to the list.
Render a list to a string.
Create an adaptive color that changes based on terminal background.
Create a new help binding.
Create a custom border.
Create an adaptive color with complete color specs for light and dark backgrounds.
Create a complete color with specific values for different terminal profiles.
Create a new help view.
Construct a key-msg from KEY and modifier flags ALT/CTRL.
Create a new keybinding.
Parameters:
- KEYS: A list of key specifications. Each spec is either:
- A character (e.g., #\k)
- A keyword (e.g., :up)
- A list (key &key alt ctrl) for modified keys (e.g., (#\c :ctrl t))
- HELP-KEY: Short help text for the key (e.g., "↑/k")
- HELP-DESC: Description of the action (e.g., "move up")
- ENABLED: Whether the binding is enabled (default t)
Example:
(make-keybinding
:keys ’(#\k :up)
:help-key "↑/k"
:help-desc "move up")
Create a new markdown renderer with the specified style.
Styles: :dark (default), :light, :pink, :ascii, or a markdown-style struct.
Construct a mouse-drag-event.
Construct a mouse-move-event.
Construct a mouse-msg with position, button, modifiers, and ACTION (legacy).
Construct a mouse-press-event.
Construct a mouse-release-event.
Construct a mouse-scroll-event.
Standard navigation keybindings.
Returns a plist: (:up binding :down binding :left binding :right binding).
Create a new paginator.
Construct a paste-msg carrying TEXT.
Create a new program with the given initial model.
Options (keyword args only):
:alt-screen t|nil
:mouse one of :cell-motion, :all-motion, or NIL
:pool-size number of worker threads for command execution (default: 4)
Set to NIL to disable thread pool (spawns thread per command)
Create a new progress bar.
Standard quit keybinding (q, ctrl+c, esc).
Construct a quit-msg instance.
Construct a resume-msg.
Standard scroll keybindings (page up/down, home/end).
Returns a plist: (:page-up binding :page-down binding :home binding :end binding).
Standard selection keybindings.
Returns a plist: (:enter binding :space binding).
Create a new spinner with the given frames and FPS.
Construct a spinner-tick-msg with the given ID.
Create a new spring with precomputed coefficients.
DELTA-TIME: Time step (use FPS helper or provide seconds per frame)
ANGULAR-FREQUENCY: Speed of animation (higher = faster), typically 1.0-10.0
DAMPING-RATIO: Oscillation behavior:
< 1.0: Under-damped (bouncy, overshoots)
= 1.0: Critically-damped (smooth, no overshoot)
> 1.0: Over-damped (slow, no overshoot)
Returns a SPRING structure for use with SPRING-UPDATE.
Example:
(defvar *my-spring* (make-spring-animation (fps 60) 6.0d0 0.5d0))
Then in your update loop:
(multiple-value-setq (x x-velocity)
(spring-update *my-spring* x x-velocity target-x))
Create a bouncy, under-damped spring (overshoots and oscillates). Good for: playful animations, attention-grabbing effects.
Create a gentle, over-damped spring (slow, no overshoot). Good for: subtle animations, fade-ins, gentle transitions.
Create a smooth, critically-damped spring (no overshoot). Good for: smooth scrolling, menu animations, general UI movement.
Create a snappy, responsive spring.
Good for: button presses, quick responses, interactive elements.
Create a new stopwatch.
Parameters:
- INTERVAL: Update frequency in seconds (default 0.1 for 10 FPS)
Create a new style with the given attributes.
Create an ASCII-only style (no colors).
Create a dark theme style (default).
Create a light theme style.
Create a pink theme style.
Construct a suspend-msg.
Create a new table.
Create a new textarea with the given dimensions.
Create a new text input.
Construct a tick-msg with TIME (defaults to current internal time).
Create a new countdown timer.
Parameters:
- DURATION: Timer duration in seconds (default 60)
- INTERVAL: Update frequency in seconds (default 0.1 for 10 FPS)
Construct a timer-timeout-msg with identifier ID.
Create a new tree with optional root text.
Create a new viewport with the given dimensions.
Construct a window-size-msg with WIDTH and HEIGHT.
Shorthand for render-markdown.
Return true if OBJ is a mouse-drag-event.
Return true if OBJ is a mouse-event.
Return true if OBJ is a mouse-msg.
Return true if OBJ is a mouse-press-event.
Return true if OBJ is a mouse-release-event.
Return true if OBJ is a mouse-scroll-event.
Create a new list with the given items.
Get start and end indices for the current page of a slice. Returns (values start end).
Initialize the paginator. Returns nil (no command).
Get the number of items on the current page.
Navigate to the next page.
Check if on the first page.
Check if on the last page.
Navigate to the previous page.
Calculate and set total pages from number of items. Returns total pages.
Update paginator with a message. Returns (values new-paginator cmd).
Render the paginator to a string.
Parse a hex color like #FF0000 or #F00 to RGB ANSI code.
Return true if OBJ is a paste-msg.
Place text in a width x height space at the given positions.
Optional WHITESPACE-CHAR and WHITESPACE-FG control whitespace styling.
Place text horizontally in a space of given width.
Position can be :left, :center, :right, or a number 0.0-1.0.
Optional WHITESPACE-CHAR and WHITESPACE-FG control whitespace styling.
Place text vertically in a space of given height.
Position can be :top, :middle, :bottom, or a number 0.0-1.0.
Increment the progress by amount.
Initialize the progress bar. Returns nil (no command needed).
Set the progress percentage (0.0 to 1.0).
Update the progress bar. Currently no messages to handle. Returns (values new-progress cmd).
Render the progress bar.
Quit the program gracefully.
Return a command that quits the program.
Return true if OBJ is a quit-msg.
Render text with a border around it.
Colors are applied per-border-character to avoid being cleared by content resets.
Render markdown text to ANSI-styled output.
TEXT: Markdown source text
STYLE: One of :dark, :light, :pink, :ascii, or a markdown-style struct
WIDTH: Maximum line width for wrapping
Returns formatted string with ANSI escape codes.
Example:
(render-markdown "# Hello\n\nThis is **bold** and *italic*." :style :dark)
Render TEXT with STYLE, ensuring ANSI colors cover the whole block.
The previous implementation applied ANSI escape codes before padding, width/alignment and height adjustments. That meant only the glyphs in TEXT were styled, while layout spaces added later (for padding or centering) were left unstyled — so background colors didn’t fill boxes. We instead compute the final block first, then wrap it with ANSI codes.
Return true if OBJ is a resume-msg.
Roman numeral enumerator (i. ii. iii. ...).
Rounded tree enumerator with curved characters.
Run the program’s main loop. Blocks until the program exits.
Send a message to the program’s update loop.
Get both width and height of rendered text. Returns (values width height).
Initialize the spinner and return a tick command.
Return true if OBJ is a spinner-tick-msg.
Update the spinner with a message. Returns (values new-spinner cmd).
Render the current spinner frame.
Split a string by newlines.
Update position and velocity values toward a target using spring physics.
SPRING: Spring created with MAKE-SPRING-ANIMATION
POSITION: Current position
VELOCITY: Current velocity
TARGET-POSITION: Equilibrium position (where spring wants to be)
Returns (values new-position new-velocity)
Example:
(let ((x 0.0d0)
(x-vel 0.0d0)
(target 100.0d0)
(spring (make-spring-animation (fps 60) 6.0d0 0.5d0)))
;; In update loop:
(multiple-value-setq (x x-vel)
(spring-update spring x x-vel target)))
Request the program to stop by setting running to NIL.
Initialize the stopwatch. Returns nil (no command unless auto-start).
Reset the stopwatch to zero.
Start the stopwatch. Returns a tick command.
Stop the stopwatch.
Toggle the stopwatch between running and stopped. Returns a tick command if starting, nil if stopping.
Update the stopwatch with a tick message. Returns (values new-stopwatch cmd).
Render the stopwatch time.
Return true if OBJ is a suspend-msg.
Clear all rows from the table.
Render the table to a string.
Add a row to the table.
Remove focus from the textarea.
Get cursor position as (row col).
Give focus to the textarea.
Initialize the textarea. Returns nil (no command).
Insert a single character at the cursor position.
Insert a string at the cursor position.
Get the total character count.
Get the number of lines.
Reset the textarea to empty state.
Set the textarea’s content.
Update textarea with a message. Returns (values new-textarea cmd).
Get the textarea’s full content as a string.
Render the textarea to a string.
Blur (unfocus) the text input.
Focus the text input.
Initialize the text input. Returns nil (no command needed).
Reset the input to empty.
Set the input value and move cursor to end.
Update the text input with a key message. Returns (values new-input cmd).
Render the text input.
Create a command that waits for DURATION seconds then produces a message.
If FN is provided, calls it to produce the message.
If FN is not provided, returns a tick-msg.
For recurring ticks (animations, timers), return another tick command from your update function when handling the tick message.
Return true if OBJ is a tick-msg.
Initialize the timer. Returns nil (no command unless auto-start).
Reset the timer to its full duration.
Set the timer duration in seconds.
Start the timer. Returns a tick command.
Stop the timer.
Return true if OBJ is a timer-timeout-msg.
Toggle the timer between running and stopped. Returns a tick command if starting, nil if stopping.
Update the timer with a tick message. Returns (values new-timer cmd).
Render the timer countdown.
Add children to the tree. Children can be strings or other trees.
Tree-style enumerator with branches.
Render a tree to a string.
Set the root text of the tree.
Truncate TEXT to WIDTH visible columns, preserving ANSI sequences. If truncation occurs, append ELLIPSIS (default: …).
Render text underlined.
Check if viewport is at or past the bottom.
Check if viewport is at the top.
Get the viewport’s full content as a string.
Go to the bottom of the content.
Go to the top of the content.
Scroll down by half a page.
Scroll up by half a page.
Initialize the viewport. Returns nil (no command).
Scroll down by one page (viewport height).
Scroll up by one page (viewport height).
Scroll down by N lines.
Scroll left by N columns (or horizontal-step if N is nil).
Get scroll position as a percentage (0.0 to 1.0).
Scroll right by N columns (or horizontal-step if N is nil).
Scroll up by N lines.
Set the viewport’s content.
Get total number of lines in the viewport.
Update viewport with a message. Returns (values new-viewport cmd).
Render the viewport to a string.
Get number of currently visible lines.
Calculate visible display width of STR, excluding ANSI escapes and accounting for wide/combining chars.
Get the width (in columns) of rendered text.
Accounts for ANSI escape sequences and returns the width of the widest line.
Return true if OBJ is a window-size-msg.
Wrap TEXT to WIDTH columns, preserving ANSI sequences.
Options:
- BREAK-WORDS: if true, split words longer than WIDTH.
- NORMALIZE-SPACES: collapse runs of spaces into single spaces between words.
- INDENT: spaces at the start of the first line.
- CONTINUATION-INDENT: spaces at the start of wrapped lines.
Remove stored zone information for the given ID.
Check if zone manager is enabled.
Get zone information for the given ID. Returns nil if not found.
Mark text with zone markers for mouse tracking. Returns text wrapped with invisible ANSI markers.
Generate a unique zone prefix to prevent ID collisions.
Get mouse position relative to zone. Returns (values x y) or (values -1 -1).
Scan text for zone markers, extract zone positions, and return cleaned text. This should be called at the root model’s view output.
Enable or disable the zone manager.
Initialize the model and return an optional initial command.
keybinding)) ¶keybinding)) ¶Whether this binding is currently enabled
keybinding)) ¶keybinding)) ¶Description of the action (e.g., "move up")
keybinding)) ¶keybinding)) ¶Short help text for the key (e.g., "↑/k")
keybinding)) ¶keybinding)) ¶List of key specifications that trigger this binding
keys.
mouse-event)) ¶automatically generated reader method
alt.
mouse-button-event)) ¶Button: :left, :middle, or :right
mouse-event)) ¶automatically generated reader method
ctrl.
mouse-event)) ¶automatically generated reader method
mouse-event)) ¶X coordinate (column, 1-based)
x.
mouse-event)) ¶Y coordinate (row, 1-based)
y.
mouse-scroll-event)) ¶Scroll direction: :up or :down
Handle a message and return (values new-model cmd).
Dispatch helper that can be specialized by message classes. Default returns (values model nil).
Render the model to a string for display.
window-size-msg)) ¶automatically generated reader method
window-size-msg)) ¶automatically generated reader method
null) (msg mouse-event)) ¶nil zone is never in bounds.
zone-info) (msg mouse-event)) ¶Check if a mouse event is within the bounds of a zone. Uses the same coordinate adjustments as mouse-msg.
zone-info) (msg mouse-msg)) ¶Check if a mouse message is within the bounds of a zone.
Despite documentation saying mouse coords are 1-based, empirically they
seem to need different handling. Mouse X is 1-based, but mouse Y appears
to already match our 0-based line counting after accounting for rendering offset.
resume-msg) stream) ¶suspend-msg) stream) ¶window-size-msg) stream) ¶focus-in-msg) stream) ¶focus-out-msg) stream) ¶timer-timeout-msg) stream) ¶spinner-tick-msg) stream) ¶:reason
This slot is read-only.
:reason
This slot is read-only.
:operation
This slot is read-only.
Base condition for Tuition errors.
error.
Represents a key binding for help display.
Style configuration for markdown rendering.
structure-object.
2
string
"# "
:bright-cyan
t
string
"## "
:bright-blue
t
string
"### "
:blue
t
:bright-yellow
:white
:black
1
string
"• "
2
string
"~d. "
string
"│ "
:bright-black
0
:bright-blue
t
string
"─"
:italic
:bold
A cached set of motion parameters for efficient spring simulation. Use MAKE-SPRING-ANIMATION to create, then SPRING-UPDATE to animate.
structure-object.
double-float
0.0d0
double-float
0.0d0
double-float
0.0d0
double-float
0.0d0
Color that adapts to terminal background.
Border character definitions.
(setf border-bottom).
border-bottom.
(setf border-bottom-left).
border-bottom-left.
(setf border-bottom-right).
border-bottom-right.
(setf border-left).
border-left.
(setf border-middle).
border-middle.
(setf border-middle-bottom).
border-middle-bottom.
(setf border-middle-left).
border-middle-left.
(setf border-middle-right).
border-middle-right.
(setf border-middle-top).
border-middle-top.
(setf border-right).
border-right.
(setf border-top).
border-top.
(setf border-top-left).
border-top-left.
(setf border-top-right).
border-top-right.
"─"
:top
"─"
:bottom
"│"
:left
"│"
:right
"┌"
:top-left
"┐"
:top-right
"└"
:bottom-left
"┘"
:bottom-right
"├"
:middle-left
"┤"
:middle-right
"┼"
:middle
"┬"
:middle-top
"┴"
:middle-bottom
Adaptive color using complete color specifications.
Complete color specification with values for each color profile.
24-bit RGB color (hex string like #FF0000)
:truecolor
This slot is read-only.
256-color ANSI code (0-255)
:ansi256
This slot is read-only.
16-color ANSI code (0-15 or ANSI code string)
:ansi
This slot is read-only.
A help view component for displaying key bindings.
Maximum width (0 = no limit)
0
:width
Whether to show full help
:show-all
Separator for short help
" • "
:short-separator
Separator for full help columns
" "
:full-separator
Ellipsis when truncating
"…"
:ellipsis
Message KEY-MSG.
A key binding with associated help text.
List of key specifications that trigger this binding
:keys
Short help text for the key (e.g., "↑/k")
:help-key
Description of the action (e.g., "move up")
:help-desc
Whether this binding is currently enabled
t
:enabled
Markdown to ANSI terminal renderer.
Rendering style
(tuition:make-style-dark)
:style
Maximum line width
80
:width
Preserve multiple newlines
:preserve-newlines
Root class of all messages.
Mouse event with a button.
Button: :left, :middle, or :right
:button
This slot is read-only.
Mouse moved with button held.
Base class for all mouse events.
X coordinate (column, 1-based)
:x
This slot is read-only.
Y coordinate (row, 1-based)
:y
This slot is read-only.
:shift
This slot is read-only.
:alt
This slot is read-only.
:ctrl
This slot is read-only.
Mouse moved without button pressed.
Legacy mouse event (use mouse-event subclasses instead).
:x
This slot is read-only.
:y
This slot is read-only.
:button
This slot is read-only.
:shift
This slot is read-only.
:alt
This slot is read-only.
:ctrl
This slot is read-only.
:action
This slot is read-only.
Mouse button pressed.
Mouse button released.
Mouse scroll wheel event.
Scroll direction: :up or :down
:direction
This slot is read-only.
A pagination component for navigating pages of content.
(setf paginator-active-dot).
paginator-active-dot.
(setf paginator-arabic-format).
paginator-arabic-format.
(setf paginator-inactive-dot).
paginator-inactive-dot.
(setf paginator-page).
paginator-page.
(setf paginator-per-page).
paginator-per-page.
(setf paginator-total-pages).
paginator-total-pages.
(setf paginator-type).
paginator-type.
Display type (arabic or dots)
common-lisp.
tuition.components.paginator:+arabic+
:type
Current page number (0-indexed)
0
:page
Number of items per page
10
:per-page
Total number of pages
1
:total-pages
Character for active page in dots mode
"•"
:active-dot
Character for inactive pages in dots mode
"○"
:inactive-dot
Format string for arabic mode
"~d/~d"
:arabic-format
Message PASTE-MSG.
:text
This slot is read-only.
A Bubble Tea program instance.
(setf msg-channel).
msg-channel.
(setf program-cmd-pool).
program-cmd-pool.
(setf program-model).
program-model.
(setf program-options).
program-options.
(setf program-renderer).
program-renderer.
(setf program-restore-fn).
program-restore-fn.
(setf program-running).
program-running.
(setf program-tty-stream).
program-tty-stream.
:model
(make-instance (quote tuition::renderer))
(trivial-channels:make-channel)
:options
A progress bar component.
Current progress (0.0 to 1.0)
0.0
:percent
Width of the progress bar in characters
40
:width
Whether to show percentage
t
:show-percentage
Character for filled portion
#\full_block
:full-char
Character for empty portion
#\light_shade
:empty-char
Message QUIT-MSG.
Message RESUME-MSG.
A spinner component for indicating activity.
List of animation frames
tuition.components.spinner:*spinner-line*
:frames
Seconds between frames
0.1
:fps
Current frame index
0
Unique ID for this spinner instance
(get-universal-time)
Message SPINNER-TICK-MSG.
:id
This slot is read-only.
A stopwatch component that counts up.
Whether the stopwatch is running
Elapsed time in seconds
0.0
Internal real time when started
Update interval in seconds (default 0.1 = 10 FPS)
0.1
:interval
Unique ID for tick messages
(get-universal-time)
A style definition for terminal output.
(setf style-align).
style-align.
(setf style-background).
style-background.
(setf style-blink).
style-blink.
(setf style-bold).
style-bold.
(setf style-faint).
style-faint.
(setf style-foreground).
style-foreground.
(setf style-height).
style-height.
(setf style-inline).
style-inline.
(setf style-italic).
style-italic.
(setf style-margin-bottom).
style-margin-bottom.
(setf style-margin-left).
style-margin-left.
(setf style-margin-right).
style-margin-right.
(setf style-margin-top).
style-margin-top.
(setf style-max-height).
style-max-height.
(setf style-max-width).
style-max-width.
(setf style-padding-bottom).
style-padding-bottom.
(setf style-padding-left).
style-padding-left.
(setf style-padding-right).
style-padding-right.
(setf style-padding-top).
style-padding-top.
(setf style-reverse).
style-reverse.
(setf style-strikethrough).
style-strikethrough.
(setf style-underline).
style-underline.
(setf style-width).
style-width.
common-lisp.
0
0
0
0
0
0
0
0
common-lisp.
:left
Message SUSPEND-MSG.
A table for rendering tabular data.
(setf table-border).
table-border.
(setf table-border-bottom).
table-border-bottom.
(setf table-border-header).
table-border-header.
(setf table-border-left).
table-border-left.
(setf table-border-right).
table-border-right.
(setf table-border-style).
table-border-style.
(setf table-border-top).
table-border-top.
(setf table-headers).
table-headers.
(setf table-height).
table-height.
(setf table-rows).
table-rows.
(setf table-style-func).
table-style-func.
(setf table-width).
table-width.
(setf table-widths).
table-widths.
List of header strings
List of rows, each row is a list of cell strings
Border style to use
tuition:*border-normal*
Style object for border rendering
Function (row col) -> style for cell styling
Column widths (nil means auto-calculate)
Total table width
Total table height
t
t
t
t
Whether to draw border between header and body
t
A multi-line text input component.
(setf textarea-char-limit).
textarea-char-limit.
(setf textarea-col).
textarea-col.
(setf textarea-cursor-blink).
textarea-cursor-blink.
(setf textarea-focused).
textarea-focused.
(setf textarea-height).
textarea-height.
(setf textarea-lines).
textarea-lines.
(setf textarea-max-lines).
textarea-max-lines.
(setf textarea-placeholder).
textarea-placeholder.
(setf textarea-prompt).
textarea-prompt.
(setf textarea-row).
textarea-row.
(setf textarea-show-line-numbers).
textarea-show-line-numbers.
(setf textarea-width).
textarea-width.
Width of the textarea
40
:width
Height of the textarea
6
:height
Content lines (vector of strings)
(vector "")
Current cursor row
0
Current cursor column
0
Whether the textarea has focus
Placeholder text when empty
""
:placeholder
Whether to show line numbers
t
:show-line-numbers
Prompt string for each line
"> "
:prompt
Maximum character count (0 = unlimited)
0
:char-limit
Maximum number of lines
1000
:max-lines
Whether cursor is visible (for blinking)
t
A single-line text input component.
(setf textinput-char-limit).
textinput-char-limit.
(setf textinput-cursor-pos).
textinput-cursor-pos.
(setf textinput-echo-char).
textinput-echo-char.
(setf textinput-echo-mode).
textinput-echo-mode.
(setf textinput-focused).
textinput-focused.
(setf textinput-keymap).
textinput-keymap.
(setf textinput-kill-ring).
textinput-kill-ring.
(setf textinput-offset).
textinput-offset.
(setf textinput-on-change).
textinput-on-change.
(setf textinput-placeholder).
textinput-placeholder.
(setf textinput-prompt).
textinput-prompt.
(setf textinput-redo-stack).
textinput-redo-stack.
(setf textinput-transform).
textinput-transform.
(setf textinput-undo-stack).
textinput-undo-stack.
(setf textinput-validator).
textinput-validator.
(setf textinput-value).
textinput-value.
(setf textinput-width).
textinput-width.
Current input value
""
:value
Cursor position
0
Placeholder text when empty
""
:placeholder
Prompt to display before input
"> "
:prompt
Display width
20
:width
Horizontal scroll offset for keeping cursor visible
0
Maximum character limit (0 = unlimited)
0
:char-limit
Whether input is focused
t
Echo mode: :normal or :password
:normal
:echo-mode
Mask character when echo-mode is :password
#\*
:echo-char
Optional function (string->bool) to validate new values
:validator
Optional function (string->string) to transform edits before apply
:transform
Optional function called with (input new-value) after change
:on-change
Optional custom key handler: (lambda (input msg) -> handledp)
:keymap
(quote nil)
(quote nil)
(quote nil)
Message TICK-MSG.
common-lisp.
(get-internal-real-time)
:time
This slot is read-only.
A countdown timer component.
Whether the timer is running
Total timer duration in seconds
60.0
:duration
Remaining time in seconds
60.0
Internal real time when started
Update interval in seconds (default 0.1 = 10 FPS)
0.1
:interval
Unique ID for messages
(get-universal-time)
Message TIMER-TIMEOUT-MSG.
:id
This slot is read-only.
A viewport for scrollable content.
(setf viewport-height).
viewport-height.
(setf viewport-horizontal-step).
viewport-horizontal-step.
(setf viewport-lines).
viewport-lines.
(setf viewport-mouse-wheel-delta).
viewport-mouse-wheel-delta.
(setf viewport-mouse-wheel-enabled).
viewport-mouse-wheel-enabled.
(setf viewport-width).
viewport-width.
(setf viewport-x-offset).
viewport-x-offset.
(setf viewport-y-offset).
viewport-y-offset.
Width of the viewport
80
:width
Height of the viewport
24
:height
Vertical scroll position
0
Horizontal scroll position
0
Content lines
Whether mouse wheel scrolling is enabled
t
:mouse-wheel-enabled
Number of lines to scroll with mouse wheel
3
:mouse-wheel-delta
Number of columns to scroll horizontally
4
:horizontal-step
Message WINDOW-SIZE-MSG.
Information about a mouse zone’s position and bounds.
:id
0
:start-x
0
:start-y
0
:end-x
0
:end-y
Manager for tracking mouse zones in TUI applications.
t
Map of user ID -> zone-info
(make-hash-table :test (quote equal))
Map of user ID -> generated marker ID
(make-hash-table :test (quote equal))
Map of generated marker ID -> user ID
(make-hash-table :test (quote equal))
(bordeaux-threads:make-lock "zone-manager-lock")
Small epsilon value for floating point comparisons.
Based on the harmonica Go implementation which uses a similar approach.
Default number of worker threads in the command pool.
Can be overridden via :pool-size option to make-program.
When true, key parsing writes debug logs to *input-log-file*.
Path to write input debugging logs when enabled.
The stream to read input from. Set by the program.
Counter for generating unique zone markers.
Stores the terminal state before entering raw mode.
Counter for generating unique zone prefixes.
When true, use thread pool for command execution.
When false, spawn a new thread for each command (original behavior).
The thread-per-command behavior matches Go’s Bubble Tea but doesn’t scale well in Common Lisp due to OS thread overhead. Thread pool is recommended for production use.
Return display width of character CH in columns: 0, 1, or 2.
Return T if CODE is a combining/zero-width mark.
This is a minimal set covering common Unicode combining ranges and Arabic vowel marks.
Return T if CODE should be treated as double-width in monospaced terminals.
This is a pragmatic subset covering CJK, Hangul, Hiragana/Katakana, and fullwidth forms.
Internal: write a log line if *input-log-enabled* is true.
text.
type.
Tokenize STR into ANSI sequences, words, spaces, and newlines. ANSI escape sequences are preserved but not counted for width.
Align text within the given width.
Optional WHITESPACE-CHAR specifies the character to use for padding (default #\Space).
Optional WHITESPACE-FG specifies the foreground color for whitespace.
Generate ANSI escape code for a color.
Reset all ANSI formatting.
Apply margins to text.
Ensure TEXT has at least MIN-HEIGHT lines by adding space-filled lines.
Lines added are padded to the current block width so backgrounds render.
Apply padding to TEXT. Adds left/right spaces and blank lines for top/bottom.
This version preserves each line’s natural width (no global expansion), which avoids runaway trailing spaces when composing large documents.
Apply width and alignment to text. If content exceeds width, truncate.
Normalize CODE so it represents a background SGR parameter.
Normalize CODE so it represents a foreground SGR parameter.
Check if CHAR is a backtick or backtick-like character.
Wrap TEXT in Unicode bidi isolate markers (FSI ... PDI) to prevent mixing LTR/RTL from affecting surrounding separators/borders.
Wrap TEXT in LTR isolate (LRI ... PDI) and append LRM inside to keep trailing padding/separators in LTR context.
Get the height of a text block (number of lines).
Get the maximum visible width of a text block.
Calculate the width of each column based on content.
Calculate offset for positioning.
Clear the terminal screen.
Clear from cursor to end of screen.
Convert a control character to its key representation.
For most control chars, returns the corresponding lowercase letter.
For special cases like tab, enter, backspace, returns a keyword.
Disable bracketed paste mode.
Disable focus in/out event reporting.
Disable input parsing logs.
Disable mouse tracking.
Enable bracketed paste mode.
Enable focus in/out event reporting.
Enable verbose input parsing logs to PATH.
Enable mouse all motion tracking.
Enable mouse cell motion tracking.
Enter alternate screen buffer.
Put the terminal in raw mode for TUI applications.
Main event processing loop.
Exit alternate screen buffer.
Restore the terminal to its original state.
Find closing backtick (or backtick-like char) in TEXT starting from START.
Return true if OBJ is a focus-in-msg.
Return true if OBJ is a focus-out-msg.
Process a message through the update function.
key.
Check if a column has any enabled bindings.
Check if an item should be added given width constraints. Returns (values should-add-p tail-string).
Hide the terminal cursor.
Read input and send input messages (key/mouse/paste) to the program.
Construct a focus-in-msg.
Construct a focus-out-msg.
Create a thread pool with SIZE worker threads.
PROGRAM is the program instance that commands will send messages to.
Recommended sizes:
- 2-4 for mostly timer-based applications
- 4-8 for mixed I/O and timer applications
- 8-16 for I/O-heavy applications
Too many workers wastes resources; too few may cause head-of-line blocking.
Wrap text to fit within width, with optional indentation. Internal helper for markdown rendering.
Check if a key specification matches the given key and modifiers.
Spec can be:
- A character or keyword (exact match, no modifiers)
- A list (key &key alt ctrl) for modified keys
Move cursor to specific position (1-indexed).
Move cursor to home position (1,1).
Render pagination as arabic numbers.
Render pagination as dots.
Read everything until ESC [ 201 ~ and return a paste message.
Parse a CSI (Control Sequence Introducer) sequence (ESC [).
Parse an escape sequence starting after ESC.
Parse an escape sequence after reading ESC.
Parse inline markdown styles: **bold**, *italic*, ‘code‘, [links](url).
Parse SGR mouse tracking sequence: ESC [ < Cb ; Cx ; Cy (M or m) Returns new hierarchical mouse event types.
Parse an SS3 sequence (ESC O <char>) used for arrows in application mode.
Parse a table row into a list of cell contents.
Return statistics about the pool for debugging/monitoring.
Returns a plist with:
:size - Number of worker threads
:alive - Number of currently alive workers
:running - Whether the pool is accepting new commands
Read a single key from stdin and return a key-msg. Returns nil if no input is available.
Render a cell with the given text, applying style if available.
Render a single markdown line with appropriate styling.
Render markdown table lines as a formatted table.
Resolve an adaptive color to actual color based on terminal background.
Resolve a color to an ANSI code string based on terminal capabilities. Handles complete-color objects by selecting the best available option.
Resolve a markdown color keyword to actual ANSI code.
Resume the terminal using the restore function.
Run multiple commands concurrently.
Execute a command.
If thread pool is enabled and available, submits the command to the pool. Otherwise, spawns a new thread for each command (original behavior).
Run multiple commands in sequence.
Show the terminal cursor.
Gracefully shutdown the thread pool.
Sends shutdown signals to all workers and waits for them to finish. This will block until all currently executing commands complete.
Split STRING by CHAR into a list of substrings.
Split string by whitespace.
Create a tick command for the stopwatch.
Get the file descriptor for a stream.
Apply ANSI styling to text. Helper function for markdown rendering.
Submit a command to the thread pool for execution.
Returns T if the command was queued, NIL if the pool is shutting down.
Suspend the terminal - restore original state for backgrounding. Returns a function to restore the TUI state.
Check if LINE is a markdown table row (starts with |).
Check if LINE is a markdown table separator row (|—|—|).
Get the current line text.
Move cursor down one line.
Move cursor to end of line.
Move cursor left one character.
Move cursor right one character.
Move cursor to start of line.
Move cursor up one line.
Delete character before cursor (backspace).
Delete character at cursor (delete).
Insert a newline at cursor position.
Set cursor column, clamping to line length.
lock.
Create a tick command for the timer.
Truncate text to max-height lines.
Truncate each line of text to max-width columns.
Find the width of the longest line.
Calculate the maximum Y offset.
Set X offset, clamping to valid range.
Set Y offset, clamping to valid range.
Get the list of currently visible lines.
Main loop for a worker thread.
Workers block on the command queue and execute commands as they arrive. Exit when receiving a nil command (shutdown signal).
adaptive-color)) ¶adaptive-color)) ¶Color for dark backgrounds
dark.
adaptive-color)) ¶adaptive-color)) ¶Color for light backgrounds
complete-adaptive-color)) ¶Complete color for dark backgrounds
dark.
complete-adaptive-color)) ¶Complete color for light backgrounds
complete-color)) ¶16-color ANSI code (0-15 or ANSI code string)
ansi.
complete-color)) ¶256-color ANSI code (0-255)
complete-color)) ¶24-bit RGB color (hex string like #FF0000)
input-error)) ¶markdown-renderer)) ¶markdown-renderer)) ¶Preserve multiple newlines
markdown-renderer)) ¶markdown-renderer)) ¶Rendering style
markdown-renderer)) ¶markdown-renderer)) ¶Maximum line width
spinner-tick-msg)) ¶automatically generated reader method
id.
terminal-operation-error)) ¶terminal-error)) ¶timer-timeout-msg)) ¶automatically generated reader method
id.
zone-manager)) ¶automatically generated reader method
zone-manager)) ¶automatically generated writer method
zone-manager)) ¶zone-manager)) ¶Map of user ID -> generated marker ID
zone-manager)) ¶automatically generated reader method
zone-manager)) ¶automatically generated writer method
zone-manager)) ¶zone-manager)) ¶Map of generated marker ID -> user ID
zone-manager)) ¶zone-manager)) ¶Map of user ID -> zone-info
A bounded pool of worker threads for executing commands.
structure-object.
fixnum
4
This slot is read-only.
list
boolean
t
(bordeaux-threads:make-lock "thread-pool-lock")
Terminal window gained focus.
Terminal window lost focus.
Manages rendering to the terminal.
A renderable list.
A renderable tree structure.
(function tuition.render.tree:default-enumerator)
0
| Jump to: | %
(
A B C D E F G H I J K L M N O P Q R S T U V W Z |
|---|
| Jump to: | %
(
A B C D E F G H I J K L M N O P Q R S T U V W Z |
|---|
| Jump to: | *
+
A B C D E F H I K L M O P Q R S T U V W X Y Z |
|---|
| Jump to: | *
+
A B C D E F H I K L M O P Q R S T U V W X Y Z |
|---|
| Jump to: | %
A B C E F H I K L M P Q R S T V W Z |
|---|
| Jump to: | %
A B C E F H I K L M P Q R S T V W Z |
|---|