1
Fork 0
mirror of https://github.com/RGBCube/uutils-coreutils synced 2025-08-01 05:27:45 +00:00

nl: clap 3

This commit is contained in:
Terts Diepraam 2022-01-11 14:14:12 +01:00
parent 64f57a9200
commit 5b13ec9c66
2 changed files with 30 additions and 26 deletions

View file

@ -15,7 +15,7 @@ edition = "2018"
path = "src/nl.rs" path = "src/nl.rs"
[dependencies] [dependencies]
clap = { version = "2.33", features = ["wrap_help"] } clap = { version = "3.0", features = ["wrap_help", "cargo"] }
aho-corasick = "0.7.3" aho-corasick = "0.7.3"
libc = "0.2.42" libc = "0.2.42"
memchr = "2.2.0" memchr = "2.2.0"

View file

@ -140,84 +140,88 @@ pub fn uumain(args: impl uucore::Args) -> UResult<()> {
Ok(()) Ok(())
} }
pub fn uu_app() -> App<'static, 'static> { pub fn uu_app<'a>() -> App<'a> {
App::new(uucore::util_name()) App::new(uucore::util_name())
.name(NAME) .name(NAME)
.version(crate_version!()) .version(crate_version!())
.usage(USAGE) .override_usage(USAGE)
.arg(Arg::with_name(options::FILE).hidden(true).multiple(true))
.arg( .arg(
Arg::with_name(options::BODY_NUMBERING) Arg::new(options::FILE)
.short("b") .hide(true)
.multiple_occurrences(true),
)
.arg(
Arg::new(options::BODY_NUMBERING)
.short('b')
.long(options::BODY_NUMBERING) .long(options::BODY_NUMBERING)
.help("use STYLE for numbering body lines") .help("use STYLE for numbering body lines")
.value_name("SYNTAX"), .value_name("SYNTAX"),
) )
.arg( .arg(
Arg::with_name(options::SECTION_DELIMITER) Arg::new(options::SECTION_DELIMITER)
.short("d") .short('d')
.long(options::SECTION_DELIMITER) .long(options::SECTION_DELIMITER)
.help("use CC for separating logical pages") .help("use CC for separating logical pages")
.value_name("CC"), .value_name("CC"),
) )
.arg( .arg(
Arg::with_name(options::FOOTER_NUMBERING) Arg::new(options::FOOTER_NUMBERING)
.short("f") .short('f')
.long(options::FOOTER_NUMBERING) .long(options::FOOTER_NUMBERING)
.help("use STYLE for numbering footer lines") .help("use STYLE for numbering footer lines")
.value_name("STYLE"), .value_name("STYLE"),
) )
.arg( .arg(
Arg::with_name(options::HEADER_NUMBERING) Arg::new(options::HEADER_NUMBERING)
.short("h") .short('h')
.long(options::HEADER_NUMBERING) .long(options::HEADER_NUMBERING)
.help("use STYLE for numbering header lines") .help("use STYLE for numbering header lines")
.value_name("STYLE"), .value_name("STYLE"),
) )
.arg( .arg(
Arg::with_name(options::LINE_INCREMENT) Arg::new(options::LINE_INCREMENT)
.short("i") .short('i')
.long(options::LINE_INCREMENT) .long(options::LINE_INCREMENT)
.help("line number increment at each line") .help("line number increment at each line")
.value_name("NUMBER"), .value_name("NUMBER"),
) )
.arg( .arg(
Arg::with_name(options::JOIN_BLANK_LINES) Arg::new(options::JOIN_BLANK_LINES)
.short("l") .short('l')
.long(options::JOIN_BLANK_LINES) .long(options::JOIN_BLANK_LINES)
.help("group of NUMBER empty lines counted as one") .help("group of NUMBER empty lines counted as one")
.value_name("NUMBER"), .value_name("NUMBER"),
) )
.arg( .arg(
Arg::with_name(options::NUMBER_FORMAT) Arg::new(options::NUMBER_FORMAT)
.short("n") .short('n')
.long(options::NUMBER_FORMAT) .long(options::NUMBER_FORMAT)
.help("insert line numbers according to FORMAT") .help("insert line numbers according to FORMAT")
.value_name("FORMAT"), .value_name("FORMAT"),
) )
.arg( .arg(
Arg::with_name(options::NO_RENUMBER) Arg::new(options::NO_RENUMBER)
.short("p") .short('p')
.long(options::NO_RENUMBER) .long(options::NO_RENUMBER)
.help("do not reset line numbers at logical pages"), .help("do not reset line numbers at logical pages"),
) )
.arg( .arg(
Arg::with_name(options::NUMBER_SEPARATOR) Arg::new(options::NUMBER_SEPARATOR)
.short("s") .short('s')
.long(options::NUMBER_SEPARATOR) .long(options::NUMBER_SEPARATOR)
.help("add STRING after (possible) line number") .help("add STRING after (possible) line number")
.value_name("STRING"), .value_name("STRING"),
) )
.arg( .arg(
Arg::with_name(options::STARTING_LINE_NUMBER) Arg::new(options::STARTING_LINE_NUMBER)
.short("v") .short('v')
.long(options::STARTING_LINE_NUMBER) .long(options::STARTING_LINE_NUMBER)
.help("first line number on each logical page") .help("first line number on each logical page")
.value_name("NUMBER"), .value_name("NUMBER"),
) )
.arg( .arg(
Arg::with_name(options::NUMBER_WIDTH) Arg::new(options::NUMBER_WIDTH)
.short("w") .short('w')
.long(options::NUMBER_WIDTH) .long(options::NUMBER_WIDTH)
.help("use NUMBER columns for line numbers") .help("use NUMBER columns for line numbers")
.value_name("NUMBER"), .value_name("NUMBER"),