alma 0.1.0

A Bevy-native modal text editor with Vim-style navigation.
Documentation
#![deny(clippy::all)]
#![deny(clippy::dbg_macro)]
#![deny(clippy::cargo)]
#![allow(clippy::multiple_crate_versions)]
#![warn(clippy::nursery)]
#![deny(clippy::pedantic)]
#![deny(missing_docs)]
#![forbid(unsafe_code)]
#![deny(unused_results)]
#![allow(clippy::collapsible_if)]
#![deny(clippy::missing_docs_in_private_items)]
#![warn(clippy::missing_errors_doc)]
#![warn(clippy::missing_panics_doc)]

//! Core library for the Alma Bevy application.

/// Application bootstrap and plugin wiring.
mod app;

/// File-backed buffer state and persistence.
mod buffer;

/// Editor backend adapter boundary.
mod editor;

/// Pure editor domain data and transformations.
mod domain;

/// Bevy ECS dataflow contracts.
mod ecs;

/// Feature bundles built on top of the ECS/domain contracts.
mod features;

/// Font catalog and font-selection helpers.
mod fonts;

/// Filesystem policy and persistence helpers.
mod fs_utils;

/// Render-stage synchronization systems.
mod render;

/// Initial editor view scene construction.
mod scene;

/// UTF-8 byte-stream storage and editing.
pub mod text_stream;

/// Vim-style editing primitives.
mod vim;

pub use app::{run, run_headless};
pub use buffer::{BufferEdit, BufferEditReport, BufferFile, BufferOpenError, BufferWriteError};
pub use editor::{EditorBackendAdapter, EditorBackendSnapshot, EditorSyncReport};
pub use fs_utils::{DEFAULT_MAX_FILE_BYTES, FilesystemConfig};
pub use text_stream::{TextByteStream, TextStreamError};
pub use vim::{
    ActionContext, ActionDispatcher, BuiltinAction, CharSearch, CharSearchDirection,
    CharSearchPlacement, Count, Counted, KeyAction, KeySequence, KeyToken, Keymap, KeymapSet,
    LeaderBinding, LeaderConfig, LeaderState, LineAddress, ModeSet, ModeSwitch, Motion,
    NormalCommand, NormalCommandContext, NormalGrammar, NormalGrammarOutput, NormalState, Operator,
    PageDirection, ParagraphDirection, QuitPolicy, SearchCaseSensitivity, SearchDirection,
    SearchOutcome, SearchQuery, SearchState, ViewportPosition, VimAction, VimCommand,
    VimCommandState, VimCommandText, VimConfig, VimCursor, VimError, VimMode, VimSearchState,
    VimSelection, VimSelectionState, VimStatusLine, VimStatusMessage, VisualCommandContext,
    VisualGrammarOutput, VisualMode, VisualState, WordKind, WriteQuitPolicy, apply_search_outcome,
};