#shell

app nsh

A command-line shell written in Rust that focuses on productivity and swiftness

20 releases

new 0.4.2 Jul 21, 2021
0.4.0 Jan 9, 2021
0.3.5 Aug 26, 2020
0.3.4 Jun 14, 2020
0.0.3 Dec 19, 2018

#1410 in Command line utilities

Download history 21/week @ 2021-04-06 50/week @ 2021-04-13 10/week @ 2021-04-20 9/week @ 2021-04-27 6/week @ 2021-05-04 7/week @ 2021-05-11 21/week @ 2021-05-18 4/week @ 2021-05-25 1/week @ 2021-06-01 18/week @ 2021-06-08 2/week @ 2021-06-15 4/week @ 2021-06-22 9/week @ 2021-06-29 7/week @ 2021-07-06 7/week @ 2021-07-13 113/week @ 2021-07-20

62 downloads per month

CC0-1.0 OR MIT

355KB
9K SLoC

nsh

CI Status Latest version

A command-line shell that focuses on productivity and swiftness featuring:

  • A POSIX compliant interactive shell with some Bash extensions.
  • Tab completions and syntax highlighting.
  • Bash completion support (by internally invoking the genuine Bash).
  • Builtin zero configration features.
  • Written in Rust 🦀

screenshot

Installation

$ cargo install nsh

Documentation

Documentation

Why create a new shell?

Bash is the best for executing shell scripts but its interactive mode is not satisfactory. I am a zsh user for the last decade but I don't need customizability and got tired of making my zshrc faster. Fish is really neat but I prefer old-fashioned, traditional, and ergonomic shell syntax.

Contributing

nsh is in alpha stage: there are many missing features which Bash provides, there are kludges in source code, and there must be bugs. To make nsh practical for daily use, I need your help!

How can I contribute?

  • Report bugs in GitHub issues. Please attach a minimal reproducible example (e.g. shell script) if possible. It helps me to fix the bug easier.
  • Suggest enhancements in GitHub issues.
  • Submit a Pull Request which implements a new feature, fixes a bug, refactors code, rephrases sentences in documentation, etc.

License

CC0 or MIT. Choose whichever you prefer.

Dependencies

~10MB
~190K SLoC