14 releases

0.1.14 Aug 10, 2024
0.1.13 Aug 9, 2024
0.1.11 Mar 13, 2024
0.1.10 Feb 29, 2024
0.0.1 Dec 3, 2014

#83 in Configuration

Download history 22/week @ 2024-07-27 180/week @ 2024-08-03 208/week @ 2024-08-10 5/week @ 2024-08-17 23/week @ 2024-09-14 8/week @ 2024-09-21 29/week @ 2024-09-28 1/week @ 2024-10-05

860 downloads per month

Unlicense

33KB
839 lines

rush - the RUst SHell

🚧 barely functional wip 🚧

A rich shell with great defaults, similar to fish. Aiming to provide:

  • syntax highlighting
  • strong historical suggestion & tab completion experience
  • vi mode
  • terminal multiplexer

All in a no dependency, pure-rust, tiny binary (one day).

Rush also takes a unique stance towards power user configuration:

  • no startup files are parsed upon startup
  • power users can configure their shell by pulling rush as a library dependency and configuring their shell in code
  • plugins for prompts and auto completions can be defined as simple rust functions and distributed through cargo (rather than in a scripting language and distributed ad-hocly)

These values aim to provide an improved experience for both types of users:

  • faster -- default systems programming language rather than a scripting one.
  • reliable -- loosely coupled tools, configuration files and scripting languages don't have strong guarantees around correctness. Rust and Cargo have strong enforcement of contracts and conventions around evolving code.
  • portable -- the way you get binaries, plugins and perform configurations varies significantly based on the platform. The rust programming language and cargo's behavior varies significantly less.
  • rich experience -- if you're writing a plugin in rust, it's trivial to add a library from Cargo's massive collection of community libraries.

Dependencies

~4–11MB
~115K SLoC