Skip to main content

rab/tui/
mod.rs

1pub mod autocomplete;
2pub mod component;
3pub mod container;
4pub mod focusable;
5pub mod fuzzy;
6pub mod image;
7pub mod keybindings;
8pub mod keys;
9pub mod kill_ring;
10pub mod overlay;
11pub mod screen;
12pub mod terminal;
13pub mod theme;
14pub mod tui_core;
15pub mod undo_stack;
16pub mod util;
17pub mod visual_truncate;
18pub mod word_nav;
19
20pub mod components;
21
22pub use component::{Component, RenderCache, RenderCacheKey};
23pub use container::Container;
24pub use focusable::{CURSOR_MARKER, Focusable};
25pub use fuzzy::{FuzzyMatch, fuzzy_filter, fuzzy_match};
26pub use keybindings::{
27    ACTION_APP_CLEAR, ACTION_APP_COMPACT_TOGGLE, ACTION_APP_EDITOR_EXTERNAL, ACTION_APP_ESCAPE,
28    ACTION_APP_EXIT, ACTION_APP_HELP, ACTION_APP_HISTORY_DOWN, ACTION_APP_HISTORY_UP,
29    ACTION_APP_INTERRUPT, ACTION_APP_MESSAGE_DEQUEUE, ACTION_APP_MESSAGE_FOLLOW_UP,
30    ACTION_APP_MODEL_CYCLE_BACKWARD, ACTION_APP_MODEL_CYCLE_FORWARD, ACTION_APP_MODEL_SELECTOR,
31    ACTION_APP_SESSION_FORK, ACTION_APP_SESSION_NEW, ACTION_APP_SESSION_RESUME,
32    ACTION_APP_SESSION_TREE, ACTION_APP_SUSPEND, ACTION_APP_THINKING_CYCLE,
33    ACTION_APP_TOGGLE_THINKING, ACTION_APP_TOOLS_EXPAND, ACTION_EDITOR_CURSOR_DOWN,
34    ACTION_EDITOR_CURSOR_LEFT, ACTION_EDITOR_CURSOR_LINE_END, ACTION_EDITOR_CURSOR_LINE_START,
35    ACTION_EDITOR_CURSOR_RIGHT, ACTION_EDITOR_CURSOR_UP, ACTION_EDITOR_CURSOR_WORD_LEFT,
36    ACTION_EDITOR_CURSOR_WORD_RIGHT, ACTION_EDITOR_DELETE_CHAR_BACKWARD,
37    ACTION_EDITOR_DELETE_CHAR_FORWARD, ACTION_EDITOR_DELETE_TO_LINE_END,
38    ACTION_EDITOR_DELETE_TO_LINE_START, ACTION_EDITOR_DELETE_WORD_BACKWARD,
39    ACTION_EDITOR_DELETE_WORD_FORWARD, ACTION_EDITOR_JUMP_BACKWARD, ACTION_EDITOR_JUMP_FORWARD,
40    ACTION_EDITOR_PAGE_DOWN, ACTION_EDITOR_PAGE_UP, ACTION_EDITOR_UNDO, ACTION_EDITOR_YANK,
41    ACTION_EDITOR_YANK_POP, ACTION_INPUT_COPY, ACTION_INPUT_NEW_LINE, ACTION_INPUT_SUBMIT,
42    ACTION_INPUT_TAB, ACTION_SELECT_CANCEL, ACTION_SELECT_CONFIRM, ACTION_SELECT_DOWN,
43    ACTION_SELECT_UP, Keybindings, get_keybindings, init_keybindings,
44};
45pub use keys::{
46    Key, decode_kitty_printable, is_key_release, is_key_repeat, match_key_id, matches_key,
47};
48pub use overlay::{
49    OverlayAnchor, OverlayEntry, OverlayLayout, OverlayMargin, OverlayOptions, SizeValue,
50};
51pub use screen::Screen;
52pub use terminal::{ProcessTerminal, Terminal, TerminalTrait};
53pub use theme::Theme;
54pub use tui_core::TUI;
55pub use util::{
56    CJK_BREAK_REGEX, apply_background_to_line, is_cjk_break, is_image_line, is_whitespace_char,
57    normalize_terminal_output, slice_by_column, slice_with_width, truncate_to_width, visible_width,
58    visual_col_to_byte_offset, wrap_text_with_ansi,
59};
60pub use word_nav::{
61    WordNavigationOptions, WordSegment, find_word_backward, find_word_backward_with,
62    find_word_forward, find_word_forward_with,
63};