diff --git a/src/uu/nl/src/helper.rs b/src/uu/nl/src/helper.rs index a62936d75..dc2e9dfd8 100644 --- a/src/uu/nl/src/helper.rs +++ b/src/uu/nl/src/helper.rs @@ -29,7 +29,7 @@ fn parse_style(chars: &[char]) -> Result { pub fn parse_options(settings: &mut crate::Settings, opts: &clap::ArgMatches) -> Vec { // This vector holds error messages encountered. let mut errs: Vec = vec![]; - settings.renumber = !opts.contains_id(options::NO_RENUMBER); + settings.renumber = opts.get_flag(options::NO_RENUMBER); match opts.get_one::(options::NUMBER_SEPARATOR) { None => {} Some(val) => { diff --git a/src/uu/nl/src/nl.rs b/src/uu/nl/src/nl.rs index 7e18d7588..2e9bf92a0 100644 --- a/src/uu/nl/src/nl.rs +++ b/src/uu/nl/src/nl.rs @@ -213,7 +213,8 @@ pub fn uu_app() -> Command { Arg::new(options::NO_RENUMBER) .short('p') .long(options::NO_RENUMBER) - .help("do not reset line numbers at logical pages"), + .help("do not reset line numbers at logical pages") + .action(ArgAction::SetFalse), ) .arg( Arg::new(options::NUMBER_SEPARATOR) diff --git a/tests/by-util/test_nl.rs b/tests/by-util/test_nl.rs index 7317d8cca..39c076d43 100644 --- a/tests/by-util/test_nl.rs +++ b/tests/by-util/test_nl.rs @@ -71,3 +71,10 @@ fn test_sections_and_styles() { } // spell-checker:enable } + +#[test] +fn test_no_renumber() { + for arg in ["-p", "--no-renumber"] { + new_ucmd!().arg(arg).succeeds(); + } +}