An open API service indexing awesome lists of open source software.

https://github.com/ndunnett/crsh

Basic implementation of a unix shell written in Rust.
https://github.com/ndunnett/crsh

rust shell

Last synced: 6 months ago
JSON representation

Basic implementation of a unix shell written in Rust.

Awesome Lists containing this project

README

          

#

crsh

Crappy Rust SHell. Basic shell written in Rust, not meant to actually be used or taken seriously.

## Features

* Functional and performant prompt
* Command launching, piping, logical grouping, and lists
* Basic builtin commands `cd`, `which`, `exit`
* Non-interactive mode
* Persistent prompt history
* Parameter and subshell substitution (partially complete)

## Todo

* Full POSIX compliant scripting functionality
* Fully functional IO redirection
* Setting local and environment variables
* Complete subshell implementation
* Complete parameter expansion/substitution
* Globbing and pattern matching
* Implement asynchronous task management
* Flesh out builtins
* Set/unset shell options
* Implement stack based compiler/interpreter
* New scripting language (alongside POSIX scripting)
* Custom prompt styling
* Loading configuration files (ie. `.profile`, `.*rc`, `.*env`)
* Autocompletion and hinting
* Syntax highlighting
* Proper Windows support

## Goals

* High performance
* Fully featured and customisable prompt
* POSIX compliant scripting as well as a modern scripting language
* Multiplatform compatibility (Linux, macOS, Windows)
* Easy and portable configuration