Enable "quiet mode"
This commit is contained in:
parent
5254362522
commit
acd8f875ec
@ -9,7 +9,11 @@ use id3_image::embed_image;
|
||||
struct Opt {
|
||||
/// Verbose mode (-v, -vv, -vvv, etc.)
|
||||
#[structopt(short = "v", long = "verbose", parse(from_occurrences))]
|
||||
verbose: u8,
|
||||
verbose: i8,
|
||||
|
||||
/// Quiet mode, implies no verbosity, and also no error explanations
|
||||
#[structopt(short = "q", long = "quiet")]
|
||||
quiet: bool,
|
||||
|
||||
/// Music file to embed image into
|
||||
#[structopt(name = "music-file.mp3", required = true, parse(from_os_str))]
|
||||
@ -22,15 +26,18 @@ struct Opt {
|
||||
|
||||
fn main() {
|
||||
let opt = Opt::from_args();
|
||||
let verbosity = if opt.quiet { -1 } else { opt.verbose };
|
||||
let music_filename = opt.music_filename;
|
||||
let image_filename = opt.image_filename.
|
||||
unwrap_or_else(|| music_filename.with_extension("jpg"));
|
||||
|
||||
if let Err(e) = embed_image(&music_filename, &image_filename) {
|
||||
eprintln!("{}", e);
|
||||
if verbosity >= 0 {
|
||||
eprintln!("{}", e);
|
||||
}
|
||||
process::exit(1);
|
||||
}
|
||||
if opt.verbose >= 1 {
|
||||
if verbosity >= 1 {
|
||||
println!("Embedded {:?} into {:?}", image_filename, music_filename);
|
||||
}
|
||||
}
|
||||
|
@ -9,7 +9,11 @@ use id3_image::extract_first_image;
|
||||
struct Opt {
|
||||
/// Verbose mode (-v, -vv, -vvv, etc.)
|
||||
#[structopt(short = "v", long = "verbose", parse(from_occurrences))]
|
||||
verbose: u8,
|
||||
verbose: i8,
|
||||
|
||||
/// Quiet mode, implies no verbosity, and also no error explanations
|
||||
#[structopt(short = "q", long = "quiet")]
|
||||
quiet: bool,
|
||||
|
||||
/// Music file to extract image from
|
||||
#[structopt(name = "music-file.mp3", required = true, parse(from_os_str))]
|
||||
@ -22,19 +26,22 @@ struct Opt {
|
||||
|
||||
fn main() {
|
||||
let opt = Opt::from_args();
|
||||
let verbosity = if opt.quiet { -1 } else { opt.verbose };
|
||||
|
||||
let image_filename = opt.image_filename.clone().
|
||||
unwrap_or_else(|| opt.music_filename.with_extension("jpg"));
|
||||
|
||||
if let Err(e) = extract_first_image(&opt.music_filename, &image_filename) {
|
||||
eprintln!("{}", e);
|
||||
if verbosity >= 0 {
|
||||
eprintln!("{}", e);
|
||||
}
|
||||
process::exit(1);
|
||||
}
|
||||
|
||||
if opt.verbose == 1 {
|
||||
if verbosity == 1 {
|
||||
// then just print the output filename for scripting purposes:
|
||||
println!("{}", image_filename.display());
|
||||
} else if opt.verbose >= 2 {
|
||||
} else if verbosity >= 2 {
|
||||
// show a longer status message:
|
||||
println!("Extracted cover art from {:?} to {:?}", opt.music_filename, image_filename);
|
||||
}
|
||||
|
@ -10,7 +10,11 @@ use id3_image::remove_images;
|
||||
struct Opt {
|
||||
/// Verbose mode (-v, -vv, -vvv, etc.)
|
||||
#[structopt(short = "v", long = "verbose", parse(from_occurrences))]
|
||||
verbose: u8,
|
||||
verbose: i8,
|
||||
|
||||
/// Quiet mode, implies no verbosity, and also no error explanations
|
||||
#[structopt(short = "q", long = "quiet")]
|
||||
quiet: bool,
|
||||
|
||||
/// Don't ask for confirmation before removing
|
||||
#[structopt(long = "no-confirm")]
|
||||
@ -23,29 +27,35 @@ struct Opt {
|
||||
|
||||
fn main() {
|
||||
let opt = Opt::from_args();
|
||||
let verbosity = if opt.quiet { -1 } else { opt.verbose };
|
||||
let confirm = !opt.no_confirm;
|
||||
|
||||
if !opt.no_confirm {
|
||||
if verbosity >= 0 && confirm {
|
||||
print_prompt();
|
||||
let mut input = String::new();
|
||||
while let Err(_) = io::stdin().read_line(&mut input) {
|
||||
println!("Could not read your input, please try again.");
|
||||
if verbosity >= 0 {
|
||||
eprintln!("Could not read your input, please try again.");
|
||||
}
|
||||
print_prompt();
|
||||
}
|
||||
|
||||
let choice = input.to_lowercase().trim().chars().next().unwrap_or('y');
|
||||
if choice != 'y' {
|
||||
if opt.verbose >= 1 {
|
||||
if verbosity >= 1 {
|
||||
println!("Exiting without removing images");
|
||||
}
|
||||
process::exit(0);
|
||||
return;
|
||||
}
|
||||
}
|
||||
|
||||
if let Err(e) = remove_images(&opt.music_filename) {
|
||||
eprintln!("{}", e);
|
||||
if verbosity >= 0 {
|
||||
eprintln!("{}", e);
|
||||
}
|
||||
process::exit(1);
|
||||
}
|
||||
if opt.verbose >= 1 {
|
||||
if verbosity >= 1 {
|
||||
println!("Removed images on {:?}", opt.music_filename);
|
||||
}
|
||||
}
|
||||
|
Loading…
Reference in New Issue
Block a user