Expand description
shrs is a framework for building and configuring your own shell in rust.
§Example
The most basic shell can be created very easily:
use shrs::prelude::*;
fn main() {
let myshell = ShellBuilder::default()
.build()
.unwrap();
myshell.run().unwrap();
}
For more advanced explanation on features and configuration options, see the shrs book
Modules§
- Command aliases
- Re-export of anyhow crate for error handling
- Builtin commands
- Command queue for mutating
States
andShell
in handlers - Shell autocompletion
- Re-export of crossterm types
- Environment variables
- Shell command history
- Shell runtime hooks
- Abstraction layer for processes
- Keybinding system
- Shell command language
- Plugin System
use shrs::prelude::*
to import most commonly used structs and functions- Queue for automatic insertion into prompt
- Readline implementation for shrs
- Core shell structs and shell config builder
- Globally accessible state store States are accessible through handlers
- Configuration for common color values bundled into a theme
Macros§
Structs§
- Describes the output of a command
- Writer for printing to stdout and stderr