โ Psst! Migrating from v1.x to v2.x? We got you. Check our migration guide and happy upgrading!
pure

Pretty, minimal and fast Fish
๐ prompt, ported fromzsh.
Install
โฅ2.5
Fisher
fisher add rafaelrinaldi/pureOh My Fish!
omf install pure
ln -s $OMF_PATH/themes/pure/conf.d/pure.fish ~/.config/fish/conf.d/pure.fish
ln -s $OMF_PATH/themes/pure/conf.d/_pure_init.fish ~/.config/fish/conf.d/pure_init.fishFundle
fundle plugin rafaelrinaldi/pure;
fundle install;Manually
Via cURL:
# Download the installer to `/tmp`
curl git.io/pure-fish --output /tmp/pure_installer.fish --location --silent
# Source and trigger the installer
source /tmp/pure_installer.fish; and install_pureFeatures
- Fully customizable ;
- Excellent prompt character
โฏ; - Display current directory tail ;
- Display
gitbranch name ;- Display
*whengitrepository is dirty ; - Display
โกwhen branch is ahead (commits to push) ; - Display
โฃwhen branch is behind (commits to pull) ;
- Display
- Change
โฏto red when previous command has failed ; - Update terminal title with current folder and command ;
- Display username and hostname when in an
SSHsession ; - Display duration when command run more that
5seconds ; - Display
Pythonvirtualenv when activated ; - Fine control over colors ;
- Display
VImode and custom symbol for non-insert mode.
Configuration
You can tweak pretty much everything in pure by overriding defaults with global variables in your config.fish file:
set -g pure_symbol_prompt ">"
or by changing universal variables directly in the terminal (which will be preserved between all fish sessions on the computer):
set -U pure_symbol_prompt ">"
Prompt Symbol
| Option | Default | Description |
|---|---|---|
pure_symbol_prompt |
โฏ |
Prompt symbol. |
pure_symbol_reverse_prompt |
โฎ |
VI non-insert mode symbol. |
pure_symbol_git_unpulled_commits |
โฃ |
Branch is behind upstream (commits to pull). |
pure_symbol_git_unpushed_commits |
โก |
Branch is ahead upstream (commits to push). |
pure_symbol_git_dirty |
* |
Repository is Dirty (uncommitted/untracked changes). |
pure_symbol_title_bar_separator |
โ |
git symbols?
Features
| Option | Default | Description |
|---|---|---|
pure_enable_git |
true |
Show info about Git repository. |
pure_threshold_command_duration |
5 |
Show command duration when above this value (seconds). |
pure_separate_prompt_on_error |
false |
Show last command exit code as a separate character. |
pure_begin_prompt_with_current_directory |
true |
true: pwd git, SSH, duration.false: SSH pwd git, duration. |
pure_reverse_prompt_symbol_in_vimode |
true |
true: โฎ indicate a non-insert mode.false: indicate vi mode with [I], [N], [V]. |
Colors
You can configure pure colors by changing the values of variables below. The value of these variables can be one of the colors accepted by the set_color command (including various options like --background, -o, --underline, etc.):
set pure_color_success 6638F0 --italics
Variables regulating color for certain features from the second column can also accept one of the base color names:
set pure_color_ssh_user_root pure_color_dark
Take a note on the absence of $ sign before the second argument in this case. By default all feature colors inherit their values from base colors.
| Base Color | Inherited by | Default |
|---|---|---|
pure_color_primary |
pure_color_current_directory |
blue |
pure_color_info |
pure_color_git_unpulled_commitspure_color_git_unpushed_commits |
cyan |
pure_color_mute |
pure_color_git_branchpure_color_git_dirtypure_color_ssh_hostnamepure_color_ssh_separatorpure_color_ssh_user_normalpure_color_virtualenv |
brblack |
pure_color_success |
pure_color_prompt_on_success |
magenta |
pure_color_normal |
pure_color_jobs |
normal |
pure_color_danger |
pure_color_prompt_on_error |
red |
pure_color_light |
pure_color_ssh_user_root |
white |
pure_color_warning |
pure_color_command_duration |
yellow |
pure_color_dark |
black |
Tests
requirements: fishtape.
fishtape tests/*.test.fish
Maintainers
Kudos to all our awesome
License
MIT ยฉ Rafael Rinaldi



