diff --git a/src/cli.rs b/src/cli.rs index 2906b23..dd87912 100644 --- a/src/cli.rs +++ b/src/cli.rs @@ -20,12 +20,6 @@ impl colorgrad::Gradient for LolcatGradient { } } -#[derive(Debug, Clone, ValueEnum)] -pub enum Mode { - Linear, - Noise, -} - #[derive(Debug, Clone, ValueEnum)] pub enum Gradient { Cividis, @@ -91,16 +85,6 @@ pub struct Opt { #[arg(name = "File", default_value = "-", value_parser = clap::value_parser!(path::PathBuf))] pub files: Vec, - /// Set mode - #[arg( - short = 'm', - long, - value_enum, - default_value = "noise", - value_name = "MODE" - )] - pub mode: Mode, - /// Set color gradient #[arg( short, @@ -152,6 +136,10 @@ pub struct Opt { #[arg(long)] pub speed: Option, + /// Activate linear mode + #[arg(short = 'l', long, help_heading = Some("Linear Mode"))] + pub linear: bool, + /// Angle in degrees (0..360) [default: random] #[arg(short = 'A', long, value_name = "ANGLE", help_heading = Some("Linear Mode"))] pub angle: Option, diff --git a/src/lib.rs b/src/lib.rs index 6c9343f..7d9d43f 100644 --- a/src/lib.rs +++ b/src/lib.rs @@ -28,7 +28,7 @@ use std::process; mod cli; #[cfg(feature = "cli")] -pub use cli::{Gradient, Mode, Opt}; +pub use cli::{Gradient, Opt}; /// # Example /// @@ -419,7 +419,7 @@ impl From for Lolcrab { if let Some(duration) = cmd.duration { lol.set_anim_duration(duration as usize); } - if let Mode::Linear = cmd.mode { + if cmd.linear { lol.set_linear(true); if let Some(angle) = cmd.angle { lol.set_angle(angle);