diff --git a/crates/nu-parser/src/parser.rs b/crates/nu-parser/src/parser.rs index 607637cbb8..b758650f54 100644 --- a/crates/nu-parser/src/parser.rs +++ b/crates/nu-parser/src/parser.rs @@ -2168,10 +2168,54 @@ pub fn unescape_string(bytes: &[u8], span: Span) -> (Vec, Option output.push(b'/'); idx += 1; } + Some(b'(') => { + output.push(b'('); + idx += 1; + } + Some(b')') => { + output.push(b')'); + idx += 1; + } + Some(b'{') => { + output.push(b'{'); + idx += 1; + } + Some(b'}') => { + output.push(b'}'); + idx += 1; + } + Some(b'$') => { + output.push(b'$'); + idx += 1; + } + Some(b'^') => { + output.push(b'^'); + idx += 1; + } + Some(b'#') => { + output.push(b'#'); + idx += 1; + } + Some(b'|') => { + output.push(b'|'); + idx += 1; + } + Some(b'~') => { + output.push(b'~'); + idx += 1; + } + Some(b'a') => { + output.push(0x7); + idx += 1; + } Some(b'b') => { output.push(0x8); idx += 1; } + Some(b'e') => { + output.push(0x1b); + idx += 1; + } Some(b'f') => { output.push(0xc); idx += 1;