hjkl_theme/lib.rs
1//! Unified theme schema for the hjkl editor stack.
2//!
3//! Phase 1: TOML parse, palette interning, capture fallback chain.
4//! No rendering backends in this phase.
5//!
6//! # Quick start
7//!
8//! ```rust
9//! use hjkl_theme::loader;
10//!
11//! // Load from a file path:
12//! // let theme = loader::load_from_path(std::path::Path::new("my-theme.toml")).unwrap();
13//!
14//! // Parse from a TOML string:
15//! let theme = loader::parse_toml("\"@keyword\" = \"#cba6f7\"").unwrap();
16//!
17//! // Fall back to the built-in dark theme:
18//! let theme = loader::default_theme();
19//! ```
20
21pub mod captures;
22mod color;
23mod error;
24pub mod loader;
25mod palette;
26mod style;
27pub mod theme;
28
29pub use captures::CaptureMap;
30pub use color::Color;
31pub use error::ThemeError;
32pub use palette::Palette;
33pub use style::{Modifiers, StyleSpec, UiStyles};
34pub use theme::Theme;