Sorry, I choose neither. For many years I tweaked my ZSH configuration and carried around a theme file. Eventually I decided to try Fish and was delighted to find it did everything I had configured ZSH to do right out of the box:
- command completion (git, brew, asdf, etc)
- git branch tracking
- history completion
- sane looping and function declaration
The only thing I have done to configure it is tweaking my prompt slightly.
The only two downsides I have encountered:
- Occasionally I’ll drop into bash just to paste a command that doesn’t play nicely with fish
- I need to remember to use
env
to set some variables.