nushell/crates
JT 8ee52b6ee1
Relax the closure syntax, highlight differently (#8846)
# Description

This relaxes the closure syntax so that `||` is no longer required. This
allows for `ls | each { $in.name }` for example.

I've gone ahead and changed the syntax highlighting so that blocks and
closures are distinct for now.

# User-Facing Changes

Removes `||` requirement for closures.

# Tests + Formatting

Don't forget to add tests that cover your changes.

Make sure you've run and fixed any issues with these commands:

- `cargo fmt --all -- --check` to check standard code formatting (`cargo
fmt --all` applies these changes)
- `cargo clippy --workspace -- -D warnings -D clippy::unwrap_used -A
clippy::needless_collect` to check that you're using the standard code
style
- `cargo test --workspace` to check that all tests pass
- `cargo run -- crates/nu-std/tests/run.nu` to run the tests for the
standard library

> **Note**
> from `nushell` you can also use the `toolkit` as follows
> ```bash
> use toolkit.nu # or use an `env_change` hook to activate it
automatically
> toolkit check pr
> ```

# 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-04-12 05:21:52 +12:00
..
nu_plugin_custom_values Bump to 0.78.1 development version (#8741) 2023-04-05 13:36:10 +12:00
nu_plugin_example Bump to 0.78.1 development version (#8741) 2023-04-05 13:36:10 +12:00
nu_plugin_formats Bump to 0.78.1 development version (#8741) 2023-04-05 13:36:10 +12:00
nu_plugin_gstat Bump git2 from 0.16.1 to 0.17.0 (#8722) 2023-04-05 19:20:58 +00:00
nu_plugin_inc Bump to 0.78.1 development version (#8741) 2023-04-05 13:36:10 +12:00
nu_plugin_python update nu_plugin_python due to signature changes (#8107) 2023-02-18 13:27:24 +00:00
nu_plugin_query Bump to 0.78.1 development version (#8741) 2023-04-05 13:36:10 +12:00
nu-cli Relax the closure syntax, highlight differently (#8846) 2023-04-12 05:21:52 +12:00
nu-cmd-lang Remove autoprinting of for loop (#8843) 2023-04-11 05:23:22 +12:00
nu-color-config Relax the closure syntax, highlight differently (#8846) 2023-04-12 05:21:52 +12:00
nu-command Revert numberlike parsing restriction (#8845) 2023-04-12 05:21:31 +12:00
nu-engine Add $nu.current-exe variable (#8789) 2023-04-07 13:51:09 -05:00
nu-explore Remove old alias implementation (#8797) 2023-04-07 21:09:38 +03:00
nu-glob Bump to 0.78.1 development version (#8741) 2023-04-05 13:36:10 +12:00
nu-json Bump to 0.78.1 development version (#8741) 2023-04-05 13:36:10 +12:00
nu-parser Relax the closure syntax, highlight differently (#8846) 2023-04-12 05:21:52 +12:00
nu-path Correction bug multiple dots mkdir and touch (#8486) 2023-04-05 20:22:56 +03:00
nu-plugin Bump to 0.78.1 development version (#8741) 2023-04-05 13:36:10 +12:00
nu-pretty-hex Bump to 0.78.1 development version (#8741) 2023-04-05 13:36:10 +12:00
nu-protocol Relax the closure syntax, highlight differently (#8846) 2023-04-12 05:21:52 +12:00
nu-std stdlib test runner: implement setup and teardown commands to unit tests (#8776) 2023-04-10 22:42:11 +02:00
nu-system Add ppid to ps command (#8750) 2023-04-05 13:12:01 -05:00
nu-table Bump to 0.78.1 development version (#8741) 2023-04-05 13:36:10 +12:00
nu-term-grid Bump to 0.78.1 development version (#8741) 2023-04-05 13:36:10 +12:00
nu-test-support Add option to not load std-lib. Default tests to not use std-lib (#8833) 2023-04-10 10:55:29 +12:00
nu-utils Relax the closure syntax, highlight differently (#8846) 2023-04-12 05:21:52 +12:00
README.md Remove old nushell/merge engine-q 2022-02-07 14:54:06 -05:00

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.