nushell/src
Bob Hyman e616b2e247
Support extended unicode escapes in strings: "\u{10fff}" (#7883)
# Description

Support extended unicode escapes in strings with same syntax as Rust:
`"\u{6e}"`.

# User-Facing Changes

New syntax in string literals, `\u{NNNNNN}`, to go along with the
existing `\uNNNN`.
New syntax accepts 1-6 hex digits and rejects values greater than
0x10FFFF (max Unicode char)..

_(List of all changes that impact the user experience here. This helps
us keep track of breaking changes.)_

Won't break existing scripts, since this is new syntax.  

We might consider deprecating `char -u`, since users can now embed
unicode chars > 0xFFFF with the new escape.

# Tests + Formatting

Several unit tests and one integration test added.

- [x] `cargo fmt --all -- --check` to check standard code formatting
(`cargo fmt --all` applies these changes)
Done
- [x] `cargo clippy --workspace -- -D warnings -D clippy::unwrap_used -A
clippy::needless_collect` to check that you're using the standard code
style
Done
- [x] `cargo test --workspace` to check that all tests pass  
Done

# After Submitting

- [ ] If your PR had any user-facing changes, update [the
documentation](https://github.com/nushell/nushell.github.io) after the
PR is merged, if necessary. This will help us keep the docs up to date.
2023-01-29 09:25:53 +13:00
..
tests Support extended unicode escapes in strings: "\u{10fff}" (#7883) 2023-01-29 09:25:53 +13:00
command.rs Extract gather_commandline_args (#7868) 2023-01-26 17:56:55 -06:00
config_files.rs add some startup performance metrics (#7851) 2023-01-24 14:28:59 -06:00
logger.rs Reduce again the number of match calls (#7815) 2023-01-24 12:23:42 +01:00
main.rs Extract gather_commandline_args (#7868) 2023-01-26 17:56:55 -06:00
README.md Remove old nushell/merge engine-q 2022-02-07 14:54:06 -05:00
signals.rs Cleanup of src/main.rs (#7801) 2023-01-20 10:44:49 -08:00
terminal.rs Move all functions of main.rs into modules (#7803) 2023-01-20 13:20:38 -08:00
test_bins.rs Reduce again the number of match calls (#7815) 2023-01-24 12:23:42 +01:00
tests.rs Revert "Primitives now use color closures..." (#7710) 2023-01-08 21:53:52 -08:00

Nushell REPL

This directory contains the main Nushell REPL (read eval print loop) as part of the CLI portion of Nushell, which creates the nu binary itself.

Current versions of the nu binary will use the Nu argument parsing logic to parse the commandline arguments passed to nu, leaving the logic here to be a thin layer around what the core libraries.