mirror of
https://github.com/nushell/nushell.git
synced 2025-04-24 05:08:29 +02:00
Fixes #9448 # Description Attempts to fix a bug from the linked issue. # User-Facing Changes - The editor doesn't crash on wrong commands # Tests + Formatting Tests cover my changes. Make sure you've run and fixed any issues with these commands: - `cargo fmt --all -- --check` to check standard code formatting (`cargo fmt --all` applies these changes) - `cargo clippy --workspace -- -D warnings -D clippy::unwrap_used -A clippy::needless_collect -A clippy::result_large_err` to check that you're using the standard code style - `cargo test --workspace` to check that all tests pass - `cargo run -- crates/nu-std/tests/run.nu` to run the tests for the standard library
This commit is contained in:
parent
d00a040da9
commit
67b1dcae44
@ -697,12 +697,14 @@ Operating system commands:
|
|||||||
if (escape || osc) && (param_is_valid_string) {
|
if (escape || osc) && (param_is_valid_string) {
|
||||||
let code_vec: Vec<char> = code_string.chars().collect();
|
let code_vec: Vec<char> = code_string.chars().collect();
|
||||||
if code_vec[0] == '\\' {
|
if code_vec[0] == '\\' {
|
||||||
|
let span = match call.get_flag_expr("escape") {
|
||||||
|
Some(expr) => expr.span,
|
||||||
|
None => call.head,
|
||||||
|
};
|
||||||
|
|
||||||
return Err(ShellError::TypeMismatch {
|
return Err(ShellError::TypeMismatch {
|
||||||
err_message: "no need for escape characters".into(),
|
err_message: "no need for escape characters".into(),
|
||||||
span: call
|
span,
|
||||||
.get_flag_expr("escape")
|
|
||||||
.expect("Unexpected missing argument")
|
|
||||||
.span,
|
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
13
crates/nu-command/tests/commands/platform/ansi_.rs
Normal file
13
crates/nu-command/tests/commands/platform/ansi_.rs
Normal file
@ -0,0 +1,13 @@
|
|||||||
|
use nu_test_support::{nu, pipeline};
|
||||||
|
|
||||||
|
#[test]
|
||||||
|
fn test_ansi_shows_error_on_escape() {
|
||||||
|
let actual = nu!(
|
||||||
|
cwd: "tests/fixtures/formats", pipeline(
|
||||||
|
r#"
|
||||||
|
ansi -e \
|
||||||
|
"#
|
||||||
|
));
|
||||||
|
|
||||||
|
assert!(actual.err.contains("no need for escape characters"))
|
||||||
|
}
|
@ -1,2 +1,3 @@
|
|||||||
|
mod ansi_;
|
||||||
mod du;
|
mod du;
|
||||||
mod kill;
|
mod kill;
|
||||||
|
Loading…
Reference in New Issue
Block a user