caixa_theme/lib.rs
1//! `caixa-theme` — colors + semantic styles shared across the caixa
2//! ecosystem.
3//!
4//! Three tiers:
5//! - [`palette`] — Nord (the canonical pleme-io palette), exposed as
6//! `#RRGGBB` hex strings + 24-bit tuples.
7//! - [`Semantic`] — the small set of named styles every tool maps to
8//! (Keyword, Symbol, String, Comment, Error, Warning, Info, Hint,
9//! Added, Removed, Caret, Muted).
10//! - [`blackmatter`] — overlays that pick which Nord color a given
11//! Semantic renders as. The default overlay is `blackmatter_dark`,
12//! matching blackmatter-nvim + blackmatter-shell.
13//!
14//! Consumers (caixa-fmt, caixa-lint, caixa-lsp, caixa.nvim) pick a
15//! [`Theme`] at startup and ask `theme.style(Semantic::Error)` to get a
16//! concrete RGB triple.
17
18pub mod blackmatter;
19pub mod palette;
20pub mod style;
21
22pub use blackmatter::Theme;
23pub use palette::{Nord, Rgb};
24pub use style::Semantic;