Extremely fast and simple git prompt for bash
You can use the executable from this repo or install it with npm
npm install -g bashy
~/.bashrc (linux) or
~/.bash_profile (MacOS) you need to add
bashy to your
export PS1='$(bashy) $ '
This example will give you the next prompt:
repo at branch✓ $ # if you are in a git repo folder $ # otherwise
You can also choose a path relative to your home folder with the option
export PS1='$(bashy -r) $ ' # results in ~/repos/bashy at master $
NOTE: Since version 2.5.0
bashy does not support branch status on subdirectories of a repo. This decision meant a 2x increase in performance.
I've been a
zsh user for a long time just for the prompts of
oh-my-zsh. But because
oh-my-zsh started to slow my prompt so much I decided to go back to
bash and make my own customizations.
The first tool I used to do so was
vcprompt, but the speed was not improving a lot.
If we compare
bashy to other tools like
vcprompt we can see is much faster:
$ time vcprompt real 0m0.094s user 0m0.037s sys 0m0.024s $ time bashy real 0m0.010s user 0m0.004s sys 0m0.003s
bashyis faster but, come on,
0.094sis still very fast.
Yes and no. While times like those can be indistinguishable for humans, you can totally notice the difference in slower systems and also in fast terminal actions like:
Okay okay, you don't care so much about the performance because you love customization, and tools like
vcprompt are very good at that. While
bashy does not have a built in customization option, it's extremely easy to customize. Just edit the script, purely bash, and write your own icons there, add more colors, or even rearrange the branch name and directory. Your imagination is the limit here.
You can use your own modified version of bashy cloning this repo and linking it with npm:
npm remove -g bashy # Uninstall the global bashy git clone https://github.com/pablopunk/bashy # Clone this repo cd bashy npm link # Link bashy # Use it!
If you still wanna use ZSH,
bashy will work as well as in bash.
There is also a really cool prompt for zsh called pure. It's also really fast, beautiful and asynchronous!
|© 2017 Pablo Varela|