forked from bonsai/harakit
fop(1): bring getopt(3) usage up-to-date
This commit is contained in:
parent
965d1bb76e
commit
6e4aeb7be7
19
src/fop.rs
19
src/fop.rs
@ -33,25 +33,20 @@ use sysexits::{ EX_DATAERR, EX_IOERR, EX_UNAVAILABLE, EX_USAGE };
|
|||||||
fn main() {
|
fn main() {
|
||||||
let argv = args().collect::<Vec<String>>();
|
let argv = args().collect::<Vec<String>>();
|
||||||
let mut d = '\u{1E}'.to_string();
|
let mut d = '\u{1E}'.to_string();
|
||||||
|
let mut index_arg = 0;
|
||||||
|
|
||||||
let usage = format!(
|
let usage = format!(
|
||||||
"Usage: {} [-d delimiter] index command [args...]",
|
"Usage: {} [-d delimiter] index command [args...]",
|
||||||
argv[0],
|
argv[0],
|
||||||
);
|
);
|
||||||
let mut index_arg = 0;
|
|
||||||
let mut arg_parser = Parser::new(&argv, "d:");
|
|
||||||
|
|
||||||
while let Some(opt) = argv.getopt("d:") {
|
while let Some(opt) = argv.getopt("d:") {
|
||||||
match opt {
|
match opt.opt() {
|
||||||
Ok(o) => {
|
Ok(_) => {
|
||||||
/* unwrap because Err(OptError::MissingArg) will be returned if
|
/* unwrap because Err(OptError::MissingArg) will be returned if
|
||||||
* o.arg is None */
|
* opt.arg() is None */
|
||||||
let arg = o.arg.clone().unwrap();
|
d = opt.arg().unwrap();
|
||||||
let arg_char = arg.chars().collect::<Vec<char>>();
|
index_arg = opt.ind();
|
||||||
if arg_char.len() > 1 {
|
|
||||||
eprintln!("{}: {}: Not a character.", argv[0], arg);
|
|
||||||
exit(EX_USAGE);
|
|
||||||
} else { d = arg_char[0]; }
|
|
||||||
index_arg = o.index();
|
|
||||||
},
|
},
|
||||||
Err(_) => {
|
Err(_) => {
|
||||||
eprintln!("{}", usage);
|
eprintln!("{}", usage);
|
||||||
|
Loading…
Reference in New Issue
Block a user