Skip to main content

redox_core/buffer/text_buffer/
mod.rs

1//! Split implementation of the Ropey-backed `TextBuffer`.
2//!
3//! The goal of this submodule is to keep the `TextBuffer` implementation easy to
4//! navigate and extend by separating it into focused files:
5//! - `core.rs`: struct definition + basic constructors/accessors
6//! - `lines.rs`: line indexing helpers
7//! - `positions.rs`: (line, col) conversions and cursor movement
8//! - `slicing.rs`: extracting text
9//! - `editing.rs`: mutation operations (insert/delete/apply edits)
10//! - `words.rs`: word motions
11//!
12//! `TextBuffer` remains a single public type re-exported by `buffer::mod.rs`.
13//! All methods are inherent impls spread across these modules.
14
15mod core;
16mod editing;
17mod lines;
18mod positions;
19mod search;
20mod selection;
21mod slicing;
22mod text_objects;
23mod words;
24
25pub use core::TextBuffer;
26pub use selection::{VisualModeKind, VisualSelectionEditPlan};
27pub use text_objects::{
28    DelimiterKind, TextObjectEditPlan, TextObjectKind, TextObjectScope, TextObjectSpec,
29};