fish is a pretty cool shell that i greatly prefer to zsh, which used to be my go-to.

i exclusively used zsh for the plugins (and because it’s the default on macOS), but most (all?) of the features that i would have downloaded plugins for are either built-in to fish or were trivially written by me (which says a lot— i do NOT do well with shell scripting)

fish comes with autocomplete (which it can generate from manpages) and abbreviations, as well as a web config menu

however, fish’s awesomeness comes at the cost of POSIX compliance because they make some of their own design decisions (like everything being a function). it can still run a lot of stuff though and worse case scenario you can just call your script with sh or something