mirror of
https://github.com/RGBCube/uutils-coreutils
synced 2025-07-28 19:47:45 +00:00
Merge branch 'master' of github.com:uutils/coreutils into feature/preserve_timestamps_#1758
This commit is contained in:
commit
8471088d6d
4 changed files with 38 additions and 5 deletions
|
@ -95,12 +95,21 @@ impl WordFilter {
|
||||||
if matches.opt_present("b") {
|
if matches.opt_present("b") {
|
||||||
crash!(1, "-b not implemented yet");
|
crash!(1, "-b not implemented yet");
|
||||||
}
|
}
|
||||||
let reg = if matches.opt_present("W") {
|
// Ignore empty string regex from cmd-line-args
|
||||||
matches.opt_str("W").expect("parsing options failed!")
|
let arg_reg: Option<String> = if matches.opt_present("W") {
|
||||||
} else if config.gnu_ext {
|
matches.opt_str("W").filter(|reg| !reg.is_empty())
|
||||||
"\\w+".to_owned()
|
|
||||||
} else {
|
} else {
|
||||||
"[^ \t\n]+".to_owned()
|
None
|
||||||
|
};
|
||||||
|
let reg = match arg_reg {
|
||||||
|
Some(arg_reg) => arg_reg,
|
||||||
|
None => {
|
||||||
|
if config.gnu_ext {
|
||||||
|
"\\w+".to_owned()
|
||||||
|
} else {
|
||||||
|
"[^ \t\n]+".to_owned()
|
||||||
|
}
|
||||||
|
}
|
||||||
};
|
};
|
||||||
WordFilter {
|
WordFilter {
|
||||||
only_specified: o,
|
only_specified: o,
|
||||||
|
|
|
@ -8,6 +8,22 @@ fn gnu_ext_disabled_roff_no_ref() {
|
||||||
.stdout_only_fixture("gnu_ext_disabled_roff_no_ref.expected");
|
.stdout_only_fixture("gnu_ext_disabled_roff_no_ref.expected");
|
||||||
}
|
}
|
||||||
|
|
||||||
|
#[test]
|
||||||
|
fn gnu_ext_disabled_roff_no_ref_empty_word_regexp() {
|
||||||
|
new_ucmd!()
|
||||||
|
.args(&["-G", "-R", "-W", "", "input"])
|
||||||
|
.succeeds()
|
||||||
|
.stdout_only_fixture("gnu_ext_disabled_roff_no_ref.expected");
|
||||||
|
}
|
||||||
|
|
||||||
|
#[test]
|
||||||
|
fn gnu_ext_disabled_roff_no_ref_word_regexp_exc_space() {
|
||||||
|
new_ucmd!()
|
||||||
|
.args(&["-G", "-R", "-W", "[^\t\n]+", "input"])
|
||||||
|
.succeeds()
|
||||||
|
.stdout_only_fixture("gnu_ext_disabled_roff_no_ref_word_regexp_exc_space.expected");
|
||||||
|
}
|
||||||
|
|
||||||
#[test]
|
#[test]
|
||||||
fn gnu_ext_disabled_roff_input_ref() {
|
fn gnu_ext_disabled_roff_input_ref() {
|
||||||
new_ucmd!()
|
new_ucmd!()
|
||||||
|
|
|
@ -261,6 +261,7 @@ impl AtPath {
|
||||||
}
|
}
|
||||||
|
|
||||||
pub fn write(&self, name: &str, contents: &str) {
|
pub fn write(&self, name: &str, contents: &str) {
|
||||||
|
log_info("open(write)", self.plus_as_string(name));
|
||||||
let _ = std::fs::write(self.plus(name), contents);
|
let _ = std::fs::write(self.plus(name), contents);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
7
tests/fixtures/ptx/gnu_ext_disabled_roff_no_ref_word_regexp_exc_space.expected
vendored
Normal file
7
tests/fixtures/ptx/gnu_ext_disabled_roff_no_ref_word_regexp_exc_space.expected
vendored
Normal file
|
@ -0,0 +1,7 @@
|
||||||
|
.xx "" "" """quotes"", for roff" ""
|
||||||
|
.xx "" "" "and some other like %a, b#, c$c" ""
|
||||||
|
.xx "" "" "hello world!" ""
|
||||||
|
.xx "" "" "let's check special characters:" ""
|
||||||
|
.xx "" "" "maybe also~or^" ""
|
||||||
|
.xx "" "" "oh, and back\slash" ""
|
||||||
|
.xx "" "" "{brackets} for tex" ""
|
Loading…
Add table
Add a link
Reference in a new issue