Expand description
Configuration for the TUI
This module provides configuration management for the RiceCoder TUI. Configuration can be loaded from files or environment variables, and includes settings for:
- Theme selection
- Animation preferences
- Mouse support
- Terminal dimensions
- Accessibility options
§Configuration Hierarchy
Configuration is loaded in the following priority order (highest to lowest):
- Runtime overrides (CLI flags, environment variables)
- Project-level config (
.ricecoder/config.yaml) - User-level config (
~/.ricecoder/config.yaml) - Built-in defaults
§Examples
Loading default configuration:
ⓘ
use ricecoder_tui::TuiConfig;
let config = TuiConfig::load()?;
println!("Theme: {}", config.theme);
println!("Animations: {}", config.animations);Creating custom configuration:
ⓘ
use ricecoder_tui::TuiConfig;
let config = TuiConfig {
theme: "dracula".to_string(),
animations: false,
mouse: true,
..Default::default()
};
config.save()?;§Configuration File Format
Configuration files use YAML format:
theme: dracula
animations: true
mouse: true
accessibility:
screen_reader_enabled: false
high_contrast_mode: false
disable_animations: falseStructs§
- TuiConfig
- TUI configuration