1 unstable release
0.0.1 | Jun 18, 2024 |
---|
#42 in #unix-shell
37KB
1K
SLoC
crsh
Crappy Rust SHell. Basic implementation of a unix shell written in Rust, not meant to actually be used or taken seriously.
Features
- Functional prompt
- Command launching, piping, and logical grouping
- Basic builtin commands
cd
,which
,exit
- Non-interactive mode
- Prompt history
Todo
- Command lists
- Flesh out builtins
- Fully functional IO redirection
- History persistence
- Set/unset shell options
- Setting/reading env vars
- Bash-esque variable expansion
- Launching sub-shells
- Full scripting functionality
- Rewrite parser to use shunting yard
- Implement stack based compiler/interpreter
- Implement
ctrl-z
andctrl-c
and proper signal handling - New scripting language
- Custom prompt styling
- Loading configuration files (ie.
.profile
,.*rc
,.*env
) - Autocompletion
- Syntax highlighting
Dependencies
~2.5–9MB
~60K SLoC