use clap::{App, Arg};

fn main() {
    let matches = App::new("echor")
        .version("0.1.0")
        .author("perro <hi@perrotuerto.blog>")
        .about("Rust echo")
        .arg(
            Arg::with_name("text")
                .value_name("TEXTO")
                .help("Texto de entrada")
                .required(true)
                .min_values(1),
        )
        .arg(
            Arg::with_name("omit_newline")
                .short("n")
                .help("No imprime nueva línea")
                .takes_value(false),
        )
        .get_matches();
    // OJO: unwrap es seguro de llamar porque 'text' está forzado en tener al menos un valor
    let text = matches.values_of_lossy("text").unwrap();
    let ending = if matches.is_present("omit_newline") { "" } else { "\n"};
    print!("{}{}", text.join(" "), ending);
}
