- Soporta jerarquía de ficheros TOML que mapean ajustes a estructuras fuertemente tipadas con valores predefinidos. - Permite definir configuraciones distintas para cada entorno. - Añade la macro `include_config!` para facilitar la asignación modular de ajustes de configuración. - Añade documentación detallada y tests de verificación.
30 lines
854 B
Rust
30 lines
854 B
Rust
use crate::global;
|
|
|
|
use std::sync::LazyLock;
|
|
|
|
use figlet_rs::FIGfont;
|
|
|
|
pub static FIGFONT: LazyLock<FIGfont> = LazyLock::new(|| {
|
|
let slant = include_str!("slant.flf");
|
|
let small = include_str!("small.flf");
|
|
let speed = include_str!("speed.flf");
|
|
let starwars = include_str!("starwars.flf");
|
|
|
|
FIGfont::from_content(
|
|
match global::SETTINGS.app.startup_banner.to_lowercase().as_str() {
|
|
"off" => slant,
|
|
"slant" => slant,
|
|
"small" => small,
|
|
"speed" => speed,
|
|
"starwars" => starwars,
|
|
_ => {
|
|
println!(
|
|
"\n FIGfont \"{}\" not found for banner. Using \"Slant\". Check settings.",
|
|
global::SETTINGS.app.startup_banner,
|
|
);
|
|
slant
|
|
}
|
|
},
|
|
)
|
|
.unwrap()
|
|
});
|