33 lines
808 B
Rust
33 lines
808 B
Rust
use clap::Parser;
|
|
|
|
#[derive(Debug, Parser)]
|
|
#[clap(author, version, about)]
|
|
pub struct Cli {
|
|
/// Hours to count down.
|
|
#[clap(long, default_value_t = 0)]
|
|
pub hours: u64,
|
|
|
|
/// Minutes to count down.
|
|
#[clap(long, short, default_value_t = 0)]
|
|
pub minutes: u64,
|
|
|
|
/// Seconds to count down.
|
|
#[clap(long, short, default_value_t = 0)]
|
|
pub seconds: u64,
|
|
|
|
/// Audio file to play at the end of the countdown.
|
|
#[clap(long, short)]
|
|
pub alarm: Option<String>,
|
|
|
|
/// Begin countdown immediately.
|
|
#[clap(long = "immediate", long = "running", short = 'i', short = 'r')]
|
|
pub running: bool,
|
|
|
|
/// Count up from zero, actually.
|
|
#[clap(long, short = 'u')]
|
|
pub count_up: bool,
|
|
|
|
/// Use the Predator font.
|
|
#[clap(long, short)]
|
|
pub predator: bool,
|
|
}
|