1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29
use crate::config::{ModuleConfig, RootModuleConfig, SegmentConfig}; use ansi_term::{Color, Style}; use starship_module_config_derive::ModuleConfig; #[derive(Clone, ModuleConfig)] pub struct EnvVarConfig<'a> { pub symbol: Option<SegmentConfig<'a>>, pub variable: Option<&'a str>, pub default: Option<&'a str>, pub prefix: &'a str, pub suffix: &'a str, pub style: Style, pub disabled: bool, } impl<'a> RootModuleConfig<'a> for EnvVarConfig<'a> { fn new() -> Self { EnvVarConfig { symbol: None, variable: None, default: None, prefix: "", suffix: "", style: Color::Black.bold().dimmed(), disabled: false, } } }