From 92785ab92c0d3de6ea660876e511c43c45aed0c8 Mon Sep 17 00:00:00 2001 From: JT <547158+jntrnr@users.noreply.github.com> Date: Mon, 2 May 2022 07:26:29 +1200 Subject: [PATCH] Add unescaping to external command parsing (#5399) --- crates/nu-parser/src/parser.rs | 10 ++++++++-- 1 file changed, 8 insertions(+), 2 deletions(-) diff --git a/crates/nu-parser/src/parser.rs b/crates/nu-parser/src/parser.rs index d9bc86d1f9..a251683362 100644 --- a/crates/nu-parser/src/parser.rs +++ b/crates/nu-parser/src/parser.rs @@ -264,8 +264,11 @@ pub fn parse_external_call( error = error.or(err); Box::new(arg) } else { + let (contents, err) = unescape_unquote_string(&head_contents, head_span); + error = error.or(err); + Box::new(Expression { - expr: Expr::String(String::from_utf8_lossy(&head_contents).to_string()), + expr: Expr::String(contents), span: head_span, ty: Type::String, custom_completion: None, @@ -285,8 +288,11 @@ pub fn parse_external_call( error = error.or(err); args.push(arg); } else { + let (contents, err) = unescape_unquote_string(contents, *span); + error = error.or(err); + args.push(Expression { - expr: Expr::String(String::from_utf8_lossy(contents).to_string()), + expr: Expr::String(contents), span: *span, ty: Type::String, custom_completion: None,