From 473d5d0173b80917692bb316d8c681be16355510 Mon Sep 17 00:00:00 2001 From: Strubbelkopp Date: Fri, 25 Jul 2025 12:18:36 +0200 Subject: Add clap for more advanced argument parsing --- src/main.rs | 19 +++++++++++-------- 1 file changed, 11 insertions(+), 8 deletions(-) (limited to 'src') diff --git a/src/main.rs b/src/main.rs index e4d1b6e..d6313fa 100644 --- a/src/main.rs +++ b/src/main.rs @@ -1,20 +1,23 @@ use crossterm::terminal::size; use std::env; use unicode_width::UnicodeWidthStr; +use clap::Parser; mod mikuart; use mikuart::get_miku_art; -fn main() -> Result<(), Box> { - let args: Vec = env::args().collect(); +#[derive(Parser)] +#[command(version, about, long_about = None)] +struct Args { + /// Text to display in the speech bubble + text: String, - if args.len() == 1 { - println!("Usage: mikusays "); - println!("Example: mikusays \"Hello, World!\""); - return Ok(()); - } +} - let text = args[1..].join(" "); +fn main() -> Result<(), Box> { + let args = Args::parse(); + + let text = args.text; draw_miku_says(&text)?; Ok(()) -- cgit v1.3-2-g0d8e