DEPRECATION NOTICE: My original goal with this prompt theme was the fastest performance possible while still looking pretty. This was achived to some degree but I've since moved on to the excellent hydro theme. Check it out, it's even faster!

Build status Licence

pure Fish Shell Theme

Yet another port of the ZSH pure prompt to fish shell 🐟.

Why create another pure? The other fish themes either didn't have async git functionality or were buggy or too low performance to use day-to-day. This theme does have working async git fetching and dirty state checking so your shell wont get slowed down even when working on large git repos. I've attempted to get the best possible performance since this is something I use constantly day in, day out.

Based on vkovtash/pure with some ideas from rafaelrinaldi/pure but with a lot of changes.

NOTE: As it is now, this theme is not intended to be customizable; all values are hard-coded to sensible defaults.

Usage

Install

With Fisher:

fisher add MaxMilton/pure

NOTE: Requires fish version >= 3.0.

Test

Check for syntax issues:

fish -n **/*.fish

Install unit test dependency:

fisher fishtape

Run unit tests:

fishtape test/*.test.fish

Known issues

  • While the yellow "•" is shown, remote git commands may fail (e.g. git fetch, git pull, git push). This is because internally the theme is doing a git fetch and git is protecting you from doing multiple writes to your repo at once. Just wait a moment until the "•" disappears and try again.
  • The theme is not very customizable. I've opted to hard-code values to suit my use case without any config overhead. If you want to customise something, I recommend forking this project and making it your own. Alternatively, rafaelrinaldi/pure is similar but does provide many customisation options.

OSX compatibility

Out of the box this theme will not work because OSX uses a BSD version of the stat command but the theme uses an option from the GNU/Linux version of stat. This is easily fixed if you're willing to use the GNU coreutils by default (which I recommend anyway):

  1. Install homebrew if you haven't already.
  2. Before you install the theme or from a bash shell, install GNU coreutils:
    brew install coreutils
    
  3. From a fish shell, add the new coreutils to your PATH (before the existing paths):
    set --universal fish_user_paths (brew --prefix coreutils)/libexec/gnubin $fish_user_paths
    

Licence

pure is an MIT licensed open source project. See LICENCE.


© 2018 Max Milton

Pure

🐟 High performance minimalist Fish shell theme with async git checks. Port of the pure ZSH prompt.

Pure Info

⭐ Stars10
🔗 Source Codegithub.com
🕒 Last Updatea year ago
🕒 Created4 years ago
🐞 Open Issues0
➗ Star-Issue RatioInfinity
😎 Authormaxmilton