Skip to main content

Crate twrite_core

Crate twrite_core 

Source
Expand description

Core headless text buffer, syntax, movement, selection, and hook primitives.

Re-exports§

pub use buffer::EditorBuffer;
pub use context_menu::COPY_ID;
pub use context_menu::CUT_ID;
pub use context_menu::ContextMenuCaps;
pub use context_menu::ContextMenuContext;
pub use context_menu::ContextMenuItem;
pub use context_menu::ContextMenuState;
pub use context_menu::DELETE_ID;
pub use context_menu::KeyHint;
pub use context_menu::PASTE_ID;
pub use context_menu::REDO_ID;
pub use context_menu::SELECT_ALL_ID;
pub use context_menu::UNDO_ID;
pub use context_menu::collect_context_items;
pub use context_menu::default_context_items;
pub use coordinates::Point;
pub use effect::HookEffect;
pub use error::EditorError;
pub use error::Result as EditorResult;
pub use hook::AutoPairsHook;
pub use hook::CursorStyle;
pub use hook::EditorHook;
pub use hook::HookContext;
pub use hook::HookOutcome;
pub use hook::KeyEvent;
pub use hook::Modifiers;
pub use hook::SearchSnapshot;
pub use keycode::KeyCode;
pub use markdown::ConcealMode;
pub use markdown::MarkdownConfig;
pub use markdown::MarkdownHighlighter;
pub use markdown::MarkdownHook;
pub use markdown::TABLE_CELL_TAG;
pub use markdown::TABLE_DELIMITER_TAG;
pub use markdown::TABLE_HEADER_TAG;
pub use markdown::TableAlignment;
pub use markdown::TableBlock;
pub use markdown::TableLayout;
pub use markdown::TableRowKind;
pub use markdown::fence_rows;
pub use markdown::find_unescaped_pipes;
pub use markdown::is_fenced_row;
pub use markdown::parse_delimiter_row;
pub use markdown::split_table_cells;
pub use markdown::table_block_at;
pub use markdown::table_block_at_with_fences;
pub use markdown::table_layouts;
pub use markdown::table_layouts_with_fences;
pub use movement::CharKind;
pub use movement::classify_char;
pub use movement::find_line_end;
pub use movement::find_line_range_at;
pub use movement::find_line_start;
pub use movement::find_next_word_end;
pub use movement::find_prev_word_start;
pub use movement::find_word_range_at;
pub use prompt::PromptAction;
pub use prompt::PromptItem;
pub use prompt::PromptPlacement;
pub use prompt::PromptSpec;
pub use prompt::PromptState;
pub use prompt::fuzzy_filter;
pub use prompt::fuzzy_score;
pub use search::SearchQuery;
pub use search::SearchState;
pub use search::find_matches;
pub use search::find_next;
pub use search::find_prev;
pub use search::replace_all_query;
pub use search::collect_replacements;
pub use search::replace_one_query;
pub use search_hook::REPLACE_PROMPT_ID;
pub use search_hook::SEARCH_PROMPT_ID;
pub use search_hook::SearchAction;
pub use search_hook::SearchHook;
pub use selection::Selection;
pub use syntax::ConcealedLine;
pub use syntax::DisplayPad;
pub use syntax::HighlightTag;
pub use syntax::Rgba;
pub use syntax::StyleSpan;
pub use syntax::StyleValue;
pub use syntax::StyledSegment;
pub use syntax::SyntaxHighlighter;
pub use syntax::TextStyle;
pub use syntax::UnderlineDecoration;
pub use syntax::display_width;
pub use syntax::split_line_intervals;

Modules§

batteries
Battery registry: optional, feature-gated editor batteries (see it for the contract and checklist for adding new batteries). Battery registry: optional, feature-gated editor batteries.
buffer
Text buffer implementation backed by a Rope.
context_menu
Headless right-click context menu state and item merging.
coordinates
2D text coordinates (row and column).
effect
App-level hook effects (save, load, quit, messages) for headless frontends.
error
Strongly-typed error types and results for editor operations.
history
Granular undo/redo transaction history.
hook
Extensible hook system and input interceptors.
keycode
Structured key identity for hooks, hints, and keymaps. Structured key identity for hooks, hints, and keymaps.
markdown
CommonMark and GitHub Flavored Markdown highlighter and interactive hook.
movement
Text movement and boundary calculation primitives.
prompt
Headless prompt / input-box primitive (bottom bar, command palette).
search
Headless find & replace engine (literal and regex search, single-undo batch replace).
search_hook
Stock search/replace hook binding the engine to the shared prompt.
selection
Text selection ranges and anchor/head management.
syntax
Headless syntax highlighting, styling tokens, and interval splitting.