this post was submitted on 10 Nov 2025
146 points (99.3% liked)

Linux

10098 readers
647 users here now

A community for everything relating to the GNU/Linux operating system (except the memes!)

Also, check out:

Original icon base courtesy of lewing@isc.tamu.edu and The GIMP

founded 2 years ago
MODERATORS
 

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.

you are viewing a single comment's thread
view the rest of the comments
[–] tom@jlai.lu 10 points 2 days ago (2 children)

Fish is great out of the box!

Check out the Fish for Bash users guide since it explains the main differences.

The few issues I’ve seen for daily use are that export does not work and you need to use set -x VAR value instead, $PS1 is not recognized because Fish uses its own prompt system, and wildcards work a bit differently...

[–] rozodru@pie.andmc.ca 4 points 2 days ago

it really is fantastic out of the box. When I switched to NixOS I had decided to stay on zsh/ohmyzsh and it was an absolute slog. it was so slow and didn't mesh well with the zsh plugins. Someone suggested I try Fish instead as it pretty much could do what Zsh does with plugins but right out of the box. Fish was much faster and indeed could do everything that I had configured zsh to do but I didn't have to configure Fish at all. It's great, I'll never use another shell.

[–] rezad@lemmy.world 1 points 2 days ago (1 children)

export does not work

works for me in fish.

[–] victorz@lemmy.world 1 points 2 days ago* (last edited 2 days ago)

In fish, man export:

export is a function included for compatibility with POSIX shells. In general, the set <> builtin should be used instead. When called without arguments, export prints a list of currently-exported variables, like set -x.

So it's not really a proper built-in command, but a wrapper around set. But for all intents and purposes... 👍