arborium_theme/
lib.rs

1//! Theme support for arborium syntax highlighting.
2//!
3//! This crate provides:
4//! - Highlight category definitions (the canonical list of syntax categories)
5//! - Capture name to theme slot mapping
6//! - Theme parsing from Helix-style TOML files
7//! - CSS and ANSI output generation
8//! - Built-in themes (catppuccin, dracula, tokyo-night, etc.)
9//!
10//! # Capture Name Mapping
11//!
12//! The crate provides a unified system for mapping the many capture names from
13//! various sources (nvim-treesitter, helix, etc.) to a small set of theme slots.
14//! See [`highlights::capture_to_slot`] and [`highlights::tag_for_capture`] for details.
15
16pub mod highlights;
17pub mod theme;
18
19pub use highlights::{
20    CAPTURE_NAMES, COUNT, HIGHLIGHTS, HighlightDef, ThemeSlot, capture_to_slot,
21    slot_to_highlight_index, tag_for_capture,
22};
23
24pub use theme::{Color, Modifiers, Style, Theme, ThemeError, builtin};