wish
Wish (Wizard Shell) ✨
🚀 Wish is a yet another modern, lightweight shell written in Crystal, combining speed, flexibility, and a touch of wizardry for an enhanced command-line experience.
⚡ Quick Start
-
Installation (requires Crystal ≥ 1.16):
git clone https://github.com/your-repo/wish cd wish crystal build --release src/wish.cr sudo mv wish /usr/local/bin
Or simply download binary from releases and add it to your path!
-
Run:
wish
-
Example Config (
~/.config/wish/config.wif
):; Add specified path to $PATH variable. ; Same as export PATH=/home/archeda/.local/bin:$PATH (add-to-path "/home/archeda/.local/bin") ; Creating an environment variable. Same as export FOO=bar (export FOO "bar") ; Prompt customization ; You can use *magical* variables via "#variable-name" to make your prompt functional. ; Available variables: ; ; cwd - current working directory. Example: "/home/profile/.local/bin $" ; ; cwd-shortened - shortened pwd. Example: "/h/p/.l/bin $" ; ; whoami - name of current user Example: "root /h/p/.l/bin $" ; ; git - git branch and status in cwd Example: "/h/p/.l/bin [Master] X $ " ; NOTE: if there is no git repository in cwd, then value of #git is empty string ; (set-prompt "#whoami #cwd $ ") ; Defining aliases (alias ls "lsd") (alias cat "bat")
🔧 Commands
Command | Description |
---|---|
wish -v |
Show version |
wish -c |
Validate config |
cd |
Change working directory |
exit |
Close wish |
history |
List command history |
!! |
Repeat last command |
!number |
Repeat command with specified index |
alias |
List aliases |
variables |
List environment variables |
And all binaries from $PATH
📦 Dependencies
- Crystal ≥ 1.16
📜 License
MIT — free to use and modify.
✨ Experience the magic of the command line!
wish # Start right away!
Repository
wish
Owner
Statistic
- 3
- 0
- 1
- 0
- 1
- 28 days ago
- June 21, 2025
License
Links
Synced at
Fri, 01 Aug 2025 02:39:36 GMT
Languages