Pretty, minimal and fast prompt for various shell.
Original design by sindresorhus/pure.
Support various shells as possible with only one codebase.
❤️ I'm familiar with some of them (bash
, zsh
, fish
) but would love to have help support the other (elvish
, ksh
, powershell
, tcsh
, xonsh
).
Feature | bash |
elvish |
fish |
ksh |
powershell |
tcsh |
xonsh |
zsh |
---|---|---|---|---|---|---|---|---|
Excellent prompt character ❯ |
✔ | ✔ | ✔ | ✔ | ||||
Display current directory tail | ✔ | ✔ | ✔ | ✔ | ||||
Display git branch name |
✔ | ✔ | ✔ | ✔ | ||||
Display * when git repository is dirty |
✔ | ✔ | ✔ | ✔ | ||||
Display ⇡ when branch is ahead(commits to push) |
||||||||
Display ⇣ when branch is being(commits to pull) |
||||||||
Change ❯ to red when previous command has failed |
✔ | ✖ | ✔ | ✔ | ||||
Update terminal title with current folder and command |
||||||||
Display username and hostname when in an SSH session |
||||||||
Display duration when command run more that 5 seconds |
||||||||
Display Python virtualenv when activated |
✔ | ✔ | ✔ | |||||
Fine control over colors | ||||||||
Right prompt control | ||||||||
Display VI mode and custom symbol for non-insert mode |
requirements: git
and pip
.
Install required Python modules:
pip install pure colorful gitpython --user
git clone git@github.com:edouard-lopez/pure-x.git $HOME/.pure
fish $HOME/.pure/install/configure.fish
git clone git@github.com:edouard-lopez/pure-x.git $HOME/.pure
zsh $HOME/.pure/install/configure.zsh
git clone git@github.com:edouard-lopez/pure-x.git $HOME/.pure
bash $HOME/.pure/install/configure.bash
Elvish has its own built-in package manager (epm
), so you do not need to clone
the repository by hand. Instead, from within the Elvish shell, run the following
commands:
use epm
epm:install github.com/edouard-lopez/pure-x.git
elvish ~/.elvish/lib/github.com/edouard-lopez/pure-x.git/install/configure.elv
Note: the last command simply adds the following line to your ~/.elvish/rc.elv
file, which you can also add by hand or run interactively to test the prompt:
use github.com/edouard-lopez/pure-x.git/config/prompt
Set PURE_THEME
environment variable and edit your config file (see more about theme configuration).
See CONTRIBUTING.md
MIT © Édouard Lopez.
- Original sindresorhus/pure Zsh implementation ;
- 🐟 pure-fish/pure Fish implementation (features rich) ;
- 🐍 edouard-lopez/pure.py Python implementation (partial features) ;
- 🐐 edouard-lopez/pure.go Golang implementation (partial features) ;
- ⚙️ xcambar/purs Rust implementation ;
- 🪟 nickcox/pure-pwsh PowerShell implementation.
- 🐚 krashikiworks/pure-prompt-bash Bash implementation.