Comment by mikkupikku
1 day ago
Exactly why I switched to fish. Fish doesn't come preconfigured exactly how I would like, but it's close enough that I just grew accustomed to fish defaults and have no trouble with it now, and no longer give any thought to shell configuration.
The additional upside of this approach is that you can also quite easily install fish on any host and it won't need any configuration to match what you're already used to
Totally agree. Fish out of the box is super performant, lots of tools ship completions for it, and the UX is just great. Only recommendation for people new to fish is to read the keybinds thoroughly. I convinced an eng on my team to switch but he was using it like sh: not using tab complete, shift+arrows for partial complete, etc. Slowed him down a ton.
Really curious what is missing from the default configuration in your setup.
If I'm feeling really fancy I may enable vim bindings and add the fuzzy find plugin, but plain fish is so good on its own.
Best shell UX for minimal effort is: fish shell + starship prompt.
Using starship for the prompt provides many pretty UX improvements (showing current git branch, language version, kubernetes context, etc.).