mirror of
https://github.com/nushell/nushell.git
synced 2025-07-09 02:48:17 +02:00
related PRs and issues - supersedes https://github.com/nushell/nushell/pull/9633 - should close https://github.com/nushell/nushell/issues/9630 # Description this PR updates the `default_config.nu` config file and the `config.rs` module in `nu_protocol` so that the default behaviour of Nushell, without any config, and the one with `default_config.nu` and `default_env.nu` are the same. ## changelog -3e2bfc9bb
: copy the structure of `default_config.nu` inside the implementation of `Default` in the `config.rs` module for easier check of the default values -e25e5ccd6
: sync all the *simple* config fields, i.e. the non-structured ones -ae7e8111c
: set the `display_output` hook to always run `table` -a09a1c564
: leave only the default menus => i've removed `commands_menu`, `vars_menu` and `commands_with_description` ## todo - [x] ~~check the defaults in `$env.config.explore`~~ done in173bdbba5
andb9622084c
- [x] ~~check the defaults in `$env.config.color_config`~~ done inc411d781d
=> the theme is now `{}` by default so that it's the same as the default one with `--no-config` - [x] ~~check the defaults `$env.config.keybindings`~~ done in715a69797
- already available with the selected mode: `completion_previous`, `next_page`, `undo_or_previous_page`, `yank`, `unix-line-discard` and `kill-line`, e.g. in *vi* mode, `unlix-line-discard` is done in NORMAL mode with either `d0` from the end of the line or `dd` from anywhere in the line and `kill-line` is done in NORMAL mode with `shift + d`. these bindings are available by default in *emacs* mode as well. - previously with removed custom menus: `commands_menu`, `vars_menu` and `commands_with_description` - [x] ~~check `$env.config.datetime_format`~~ done in0ced6b8ec
=> as there is no *human* format for datetimes, i've commented out both `$env.config.datetime_format` fields - [x] ~~fix `default_env.nu`~~ done in67c215011
# User-Facing Changes this should not change anything, just make sure the default behaviour of Nushell and the `default_config.nu` are in sync. # Tests + Formatting # 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.