Expand description
Core library for the farben terminal styling crate.
Provides the full pipeline for parsing farben markup strings into ANSI escape sequences:
tokenization (lexer), ANSI encoding (ansi), rendering (parser),
named style registration (registry), and error types (errors).
v0.7.0 adds two supporting modules:
- [
env]: runtime detection of whether ANSI output should be enabled.env::color_enabledrespectsNO_COLORandFORCE_COLOR, falling back to TTY detection (isatty(1)on Unix,GetConsoleModeon Windows). strip: exposesstrip::strip_ansi, which removes CSI escape sequences from a string. Useful for measuring display width, plain-text logging, or piping output to tools that do not interpret ANSI codes.
Typical usage flows through the lexer::tokenize and parser::render functions,
with optional style definitions via the registry module and its macros.
Modulesยง
- ansi
- ANSI SGR escape sequence encoding for farben styles.
- env
- Runtime detection of whether ANSI color output should be enabled.
- errors
- Error types for farben markup tokenization and registry operations.
- lexer
- Tokenizer for farben markup strings.
- parser
- Token stream renderer.
- registry
- Global named style registry.
- strip
- Utilities for stripping ANSI escape sequences from strings.