Live data from Hacker News

Fish Shell 3.2

github.com

11–20 of 133 posts

Re: Fish Shell 3.2

#12

Fish is my shell of choice, like many in this thread. To me it just works, without configuring anything (ok, maybe a couple of aliases), with great defaults. As an example, type anything(for instance, '.conf') + up arrow, and there you see all the completions (for instance, 'less /etc/postgresql/10/main/pg_hba.conf' shows for me) based on the shell history. You can then cycle through them with up/down arrows. It is t…

For this specific use-case, ctrl+R + fzf works nicely.

Re: Fish Shell 3.2

#14

Fish is my shell of choice, like many in this thread. To me it just works, without configuring anything (ok, maybe a couple of aliases), with great defaults. As an example, type anything(for instance, '.conf') + up arrow, and there you see all the completions (for instance, 'less /etc/postgresql/10/main/pg_hba.conf' shows for me) based on the shell history. You can then cycle through them with up/down arrows. It is t…

For this specific use-case, ctrl+R + fzf works nicely.

We’ve added some improvements in this release that should make that a better experience by improving the performance of `history` when piped to fzf (or anything else). The output was previously buffered and GNU wide character comparison/conversion is insanely slow so that had to be hacked around.

Re: Fish Shell 3.2

#15
post #2

Don't have anything to add to this except to say thanks to the team for an amazing product. Been using fish shell for 5+ years now and I love it. "Finally, a command line shell for the 90s"!

Many of us use it, I personally in my daily basis development Fish shell is pretty neat and increases productivity in terminal. However I still use Bash in the server side where I need for example, explicit error aborting like `set -e` that Fish doesn't have yet. https://github.com/fish-shell/fish-shell/issues/510

set -e is not great and is not recommended. http://mywiki.wooledge.org/BashFAQ/105

Re: Fish Shell 3.2

#17
I think Fish is an excellent interactive shell. I've still got Bash as my default shell for non-interactive sessions, but I configured Konsole to start Fish by default for interactive use (Settings->Command, set to the path to the fish executable). That way scripts that need Bash still work, but I get a sane environment for interaction. For "portable" scripts I write POSIX shell, C, or Python, depending on what I need to be portable to.

fish_add_path will solve one of the few annoying things about Fish.

I've been looking at trying Oil as a Bash replacement though, I think Oil for scripting + Fish for interaction might be a best-of-both-worlds setup.

Re: Fish Shell 3.2

#18
post #8

Fish is my shell of choice for a couple years now. Not because it's the perfect shell, but because it's a lot better than any other for interactive shells. For scripting I still stick to bash because it's more portable and I already know how to cope with its warts. And sometimes when I can't remember the fish syntax by heart, I just launch a bash from inside fish to run my command and then Ctrl-D :-)

I switched to fish a very long time ago (2009 maybe?) because it started up so much faster than zsh w/ all the plugins that it took to get the fancy features fish had out of the box. Since then, fish has only become a lot faster as we have focused on performance and optimizations considerably.

Re: Fish Shell 3.2

#19

I always see these posts, get tempted to use fish instead of bash but then I ask the ubiquity question and end up saying "Not today..."

If you mean for script portability: you can still easily call scripts with bash directly. For scripts that modify the environment, use bass.

If you mean that you still have to use bash on other machines: yeah, I feel you there.

At least for me, I'm fortunate that if I end up using a machine frequently, I can just install fish and add my config/dot files.

Re: Fish Shell 3.2

#20

I always see these posts, get tempted to use fish instead of bash but then I ask the ubiquity question and end up saying "Not today..."

The ubiquity question?

bash is installed by default on pretty much everything but for fish I need to un-learn bash shenanigans like `esac` which I fear would hurt more than help in general.

Either that, or maybe I'm just lazy and missing out on a nice tool...

Post reply on HN