forked from extern/nushell
related to - https://github.com/nushell/nushell/pull/9907 # Description https://github.com/nushell/nushell/pull/9907 removed the front space from all `PROMPT_INDICATOR`s but this is not what the default behaviour of Nushell is, i.e. in `nu --no-config-file`. this PR - removes the space that is prepended by Nushell before the prompt indicator to match the `default_env.nu` - swaps INSERT and NORMAL in the Rust code to match the `:` and `>` respectively in `default_env.nu` ## 🔍 try the changes > **Warning** > i had to comment out in my config all the `$env.PROMPT_INDICATOR... = ...` to avoid these variables to propagate to `cargo run -- -n` in either `cargo run -- -n` or `cargo run -- --config crates/nu-utils/src/sample_config/default_config.nu --env-config crates/nu-utils/src/sample_config/default_env.nu`, - see `/path/to/nushell>` as the prompt with the default `emacs` edit mode - run `$env.config.edit_mode = vi` - see `/path/to/nushell:` as the INSERT prompt in Vi mode - press Escape to go into NORMAL mode - see `/path/to/nushell>` as the NORMAL prompt in Vi mode - press I to go back into INSERT mode - see `/path/to/nushell:` as the INSERT prompt in Vi mode # User-Facing Changes the prompts in `nu --no-config-file` and `nu --config default_config.nu --env-config default_env.nu` should be the same 😌 # Tests + Formatting - 🟢 `toolkit fmt` - 🟢 `toolkit clippy` - ⚫ `toolkit test` - ⚫ `toolkit test stdlib` # After Submitting
Nushell core libraries and plugins
These sub-crates form both the foundation for Nu and a set of plugins which extend Nu with additional functionality.
Foundational libraries are split into two kinds of crates:
- Core crates - those crates that work together to build the Nushell language engine
- Support crates - a set of crates that support the engine with additional features like JSON support, ANSI support, and more.
Plugins are likewise also split into two types:
- Core plugins - plugins that provide part of the default experience of Nu, including access to the system properties, processes, and web-connectivity features.
- Extra plugins - these plugins run a wide range of different capabilities like working with different file types, charting, viewing binary data, and more.