A question for people who have already switched to the fish shell: What is the biggest drawback of using fish? For example, you get accustomed to it on your system and then have to work with Bash or Zsh on your company’s server systems. And if I’m going to make such a big switch from Bash to fish, then why not switch to Nushell instead?
I use Fish as a user shell everywhere I can and end up using Bash daily for scripting and on servers/VMs/containers at work, I've also been using Nushell a lot recently for personal scripts.
Biggest drawbacks for me is mixing up a few bits of syntax and some software doesn't ship Fish completion scripts, although I never write scripts in Fish which reduces the syntax I actually use.
In my opinion Fish is worth it just for the auto complete suggestions alone, but I also really like the way it handles editing config, it's sane default config, understandable error messages, and plug-ins.
Nushell is very nice, but I find it doesn't match the usability of Fish for interactive shells. Love it for scripts though.
Biggest drawback is unfamiliarity with the syntax, but that comes with time in my experience. I think the syntax is overall better and much better documented.
I switched to fish because for most interactive use case it’s so much better, without requiring any new muscle memory. I tried zsh at first but it winds up slow to get even close to where fish is out of the box. I still end up scripting in bash or sh for portability.
nu-shell won’t be available in as many places, and it looks to me like it would change paradigm in a way that would hinder working with bash or zsh over time. That’s just my 2c though as I have only briefly glanced at it and haven’t truly considered using it.
The main drawback is that I'm used to all the goodness that comes by default and have to get used to how primitive Bash is when I'm forced to use it.
I also prefer fish's scripting syntax (and built-in utilities) over bash, and some people don't like installing fish to run my scripts.
Nushell is far from fish in terms of interactive usage, and I find the scripting language to be too unstable for writing scripts you want to keep in the medium term.