Crate xi_core_lib

Source
Expand description

The main library for xi-core.

Re-exports§

pub use crate::config::BufferItems as BufferConfig;
pub use crate::config::Table as ConfigTable;
pub use crate::core::WeakXiCore;
pub use crate::core::XiCore;
pub use crate::editor::EditType;
pub use crate::plugins::manifest as plugin_manifest;
pub use crate::plugins::rpc as plugin_rpc;
pub use crate::plugins::PluginPid;
pub use crate::syntax::LanguageDefinition;
pub use crate::syntax::LanguageId;
pub use crate::tabs::test_helpers;
pub use crate::tabs::BufferId;
pub use crate::tabs::BufferIdentifier;
pub use crate::tabs::ViewId;

Modules§

annotations
Management of annotations.
backspace
Calc start of a backspace delete interval
client
Requests and notifications from the core to front-ends.
config
core
edit_types
A bunch of boilerplate for converting the EditNotifications we receive from the client into the events we use internally.
editor
event_context
A container for the state relevant to a single event.
file
Interactions with the file system.
find
Module for searching text.
index_set
A data structure for manipulating sets of indices (typically used for representing valid lines).
layers
Handles syntax highlighting and other styling.
line_cache_shadow
Data structures for tracking the state of the front-end’s line cache and preparing render plans to update it.
line_ending
Utilities for detecting and working with line endings
linewrap
Compute line wrapping breaks for text.
movement
Representation and calculation of movement within a view.
plugins
Plugins and related functionality.
recorder
Manages recording and enables playback for client sent events.
rpc
The main RPC protocol, for communication between xi-core and the client.
selection
Data structures representing (multiple) selections and cursors.
styles
Management of styles.
syntax
Very basic syntax detection.
tabs
The main container for core state.
view
watcher
Monitoring files and directories.
whitespace
Utilities for detecting and working with indentation.
width_cache
Cache and utilities for doing width measurement.
word_boundaries
Segmentation of word boundaries. Note: this current implementation is intended to work for code. Future work is to make it Unicode aware.