Make --exact optional for skim by having --no-exact in the NAVI_FZF_OVERRIDES environment variable

This commit is contained in:
Iain Earl 2020-05-29 08:36:18 +01:00
parent 317cc34016
commit 1d65f73994
No known key found for this signature in database
GPG key ID: 0D4647F71061A12C

View file

@ -31,7 +31,6 @@ impl Finder for SkimFinder {
"--ansi", "--ansi",
"--bind", "--bind",
"ctrl-j:down,ctrl-k:up", "ctrl-j:down,ctrl-k:up",
"--exact",
]); ]);
if opts.autoselect { if opts.autoselect {
@ -84,16 +83,27 @@ impl Finder for SkimFinder {
command.args(&["--header-lines", format!("{}", opts.header_lines).as_str()]); command.args(&["--header-lines", format!("{}", opts.header_lines).as_str()]);
} }
let mut exact = true;
if let Some(o) = opts.overrides { if let Some(o) = opts.overrides {
if o.contains("--no-exact") {
exact = false
}
o.as_str() o.as_str()
.split(' ') .split(' ')
.map(|s| s.to_string()) .map(|s| s.to_string())
.filter(|s| !s.is_empty()) .filter(|s| !s.is_empty())
.filter(|s| s != "--no-exact")
.for_each(|s| { .for_each(|s| {
command.arg(s); command.arg(s);
}); });
} }
if exact {
command.arg("--exact");
}
let child = command.stdin(Stdio::piped()).stdout(Stdio::piped()).spawn(); let child = command.stdin(Stdio::piped()).stdout(Stdio::piped()).spawn();
let mut child = match child { let mut child = match child {