Fish shell, a popular user-friendly command-line shell, has announced version 4.2, a new release that builds on the 4.0 series. Among the most visible improvements is an upgrade to history-based autosuggestions, which now properly handle multi-line commands.
Fish 4.2 also improves how prompts are managed: transient prompts that contain more lines than the final one are now cleared properly, preventing visual clutter on screen. Similarly, the shell now hides parts of a multi-line prompt that have scrolled out of view, eliminating duplicated lines after repainting.



it has loads of features that would require extensions or plugins in bash, like autocomplete, abbreviations, or fancy prompts, except they all work out of the box and with minimal configuration and behave intuitively
fish is also a much nicer language to write scripts in than bash
totally painless to transition, your bash skills are all transferable
I rewrote my entire ~/.local/bin repo of scripts from bash to fish and they are probably 50% shorter on average, actually understandable after not reading them for 6 months so highly maintainable, and actually fun to write in comparison. Argument parsing is also such a breeze.
I love it. Been using it a few years now and I’ll never use a Bourne style shell again, interactively. Nushell is the only other type of shell I’ve my eyes on, but that seems more useful if I’m in a position where I need to process a lot of data like logs or something.
At the end of the day, fish is still a language for the shell, hence not necesaarily readable if you don’t pay attention to that kind of thing. The difference is that the special-character count drops by like 80% and it is actually possible to write something readable. Imo this is next to impossible in bash. Also their builtins are pure love. The
stringcommand covers pretty much anything you might ever wish to do with any kind of string.i made the transition from fish to nushell and can confirm all this stupid JSON data and YAML config was the reason
You made a full transition? Or just when you are working with the data and configs?
If on he other hand you want a transition that’s really painful and slow but sooo rewarding (highly subjective, of course) you can look into nushell. They just said “screw this 50 years of conceptual baggage and let’s do it data centric and proper”.
I still am at perhaps 10% the speed of my zsh setup but the concepts are so intriguing I’m sticking to it. At least I try to …