No matching definitions.

notebook/tui

src/notebook/tui.tur

command-mode terminal UI for .tur.md notebooks.

defn

tui-opts-make

(tui-opts-make [color : int cell_width : int scrollback : int keybindings_file : cstr])

build notebook/tui options.

defn

default-tui-opts

(default-tui-opts)

default options for the command-mode notebook TUI.

defn

tui-opts-free

(tui-opts-free [opts : int])

release a TuiOpts. Safe on 0.

defn

tui-run

(tui-run [path : cstr opts : int])

parse a notebook file and launch the command-mode TUI.

defn

tui-run-nodes

(tui-run-nodes [nodes : int opts : int])

launch the command-mode TUI with an already-parsed node list.

Internal definitions
__tui-nil-value
__tui-cons
__tui-list-nil?
__tui-head
__tui-tail
__tui-ok
__tui-err
__tui-result-ok?
__tui-result-ok-val
__tui-result-err-val
__tui-cstr-empty?
__tui-cstr-eq?
__tui-str-concat
__tui-cstr-free-- release an owned string. Safe on 0.
__tui-own-- copy a borrowed string so a concat can consume it. Status
__tui-concat-owned-- concatenate two owned strings, releasing both.
__tui-cstr-drop-last
__tui-cstr-contains-ci?
__tui-int->cstr
__tui-opts-color
__tui-opts-cell-width
__tui-opts-scrollback
__tui-opts-keybindings-file
__tui-node-cell-make
__tui-copy-cell-- a duplicate of `cell` under a new id and source.
__tui-current-cell
__tui-cells-have-id?
__tui-fresh-cell-id
__tui-append-node-- The four node-list editors below splice the existing spine rather than
__tui-insert-node-before-- splice new_node in ahead of the cell node with
__tui-insert-node-after-- splice new_node in behind the cell node with
__tui-delete-node-pair-- unlink the cell node with target_id. Returns a
__tui-blank-cell-- a new empty cell with the next free id. cell-make
__tui-cells-from-nodes-rev
__tui-reverse-- reverse a list, consuming its cons cells.
__tui-list-length
__tui-zero-list
__tui-list-nth
__tui-list-set-- set the idx-th element, extending with zeros if short.
__tui-concat-lists
__tui-write-file
__tui-state-make
__tui-cons-free-- free one cons cell, leaving its head and tail alone.
__tui-spine-free-- free a cons spine, leaving the heads alone.
__tui-state-free-- release the TUI state and everything it owns: its two
__tui-state-free-shell-- free the state's own strings and struct.
__tui-void-- void no-op, so a cleanup-only `if` has void on both arms.
__tui-box-free-- release a Result box after taking its payload out.
__tui-state-cells
__tui-state-outputs
__tui-state-set-outputs
__tui-state-set-cells
__tui-state-set-nodes
__tui-state-set-cell-count
__tui-state-set-focus
__tui-state-focus
__tui-state-cell-count
__tui-state-session
__tui-state-bindings
__tui-state-path
__tui-state-nodes
__tui-state-status
__tui-state-set-status
__tui-set-status-owned-- set the status from a string the caller hands
__tui-state-pending-effect
__tui-state-set-pending-effect
__tui-state-exit-code
__tui-state-set-quit
__tui-state-dirty
__tui-state-set-dirty
__tui-state-output-hidden
__tui-state-set-output-hidden
__tui-state-search-query
__tui-state-set-search-query
__tui-state-help-visible
__tui-state-set-help-visible
__tui-state-clipboard
__tui-state-set-clipboard
__tui-state-quit-confirm
__tui-state-set-quit-confirm
__tui-state-quit?
__tui-binding-action
__tui-binding-has-prefix
__tui-output-message-- build the status line for a just-run cell. The
__tui-cell-matches-query?
__tui-wrap-index
__tui-find-match
__tui-read-search-query
__tui-rebuild-state-- swap in a new node list and recompute everything
__tui-edit-source
__tui-run-current
__tui-run-all
__tui-save
__tui-edit-current
__tui-add-cell
__tui-delete-current
__tui-paste-cell
__tui-request-quit
__tui-search-prompt
__tui-search-next
__tui-search-prev
__tui-toggle-help
__tui-toggle-output
__tui-apply-effect
__tui-render
__tui-handle-key-- process one keystroke. `pending` is borrowed from the
__tui-loop-- read keys until the state asks to quit. Each iteration owns
__tui-load-bindings-- the built-in bindings, with a file's overrides in
__tui-run-with-path