diff --git a/crates/nu-cli/src/completions/completion_common.rs b/crates/nu-cli/src/completions/completion_common.rs index 6dd59da853..438ce2a1f0 100644 --- a/crates/nu-cli/src/completions/completion_common.rs +++ b/crates/nu-cli/src/completions/completion_common.rs @@ -267,8 +267,10 @@ pub fn escape_path(path: String, dir: bool) -> String { let filename_contaminated = !dir && path.contains(['\'', '"', ' ', '#', '(', ')']); let dirname_contaminated = dir && path.contains(['\'', '"', ' ', '#']); let maybe_flag = path.starts_with('-'); + let maybe_variable = path.starts_with('$'); let maybe_number = path.parse::().is_ok(); - if filename_contaminated || dirname_contaminated || maybe_flag || maybe_number { + if filename_contaminated || dirname_contaminated || maybe_flag || maybe_variable || maybe_number + { format!("`{path}`") } else { path