Live data from Hacker News

Fish 3.4.0

fishshell.com

11–20 of 93 posts

Re: Fish 3.4.0

#11
post #5

Any other long-suffering bash user switched to fish and never looked back? Why? Have you switched and ended up coming back to bash? Why? - Long-suffering bash user

I switched to fish about 7 years ago and never looked back. It feels so much more natural to use than bash. With all the hype (and better ecosystem) of zsh, I once genuinely tried using zsh, but eventually came crawling back to fish.

Using just plain bash seems so foreign to me. Having no FZF command history search or intelligent auto-completion would kill my productivity. I'd say it's as essential to my workflow as tmux.

The only major downside of fish, in my experience, is the incompatibility with bash scripts. Sometimes it's a hassle to rewrite those to be fish-compliant. But honestly, this is something I run into once in a blue moon. On the flip side, the simple fish syntax really encourages me to write my own fish functions, whereas with bash I was always dreading writing bash scripts.

Personally, I can fully recommend fish. In my experience, switching to it is not even painful at all, not like vim which took me quite some dedication to get through the learning curve (switched from Sublime Text).

Re: Fish 3.4.0

#12
post #7
post #5

Any other long-suffering bash user switched to fish and never looked back? Why? Have you switched and ended up coming back to bash? Why? - Long-suffering bash user

Switched and never came back. Always recommend people to use fish if they're not the "customize everything everywhere to my liking" type. The defaults of fish are great and common tasks are simple. The for loop syntax was so intuitive I got it right the first time without checking Google (which I have to do every time I write a bash for loop). Not much more to say I think.

> Always recommend people to use fish if they're not the "customize everything everywhere to my liking" type.

Fully agree. It feels like fish is the Apple of shells, in that regard. Unless you really love to tinker with your shell, the great defaults and great UX make it really easy to recommend.

Re: Fish 3.4.0

#14
post #9

Just loving every single bit of it since I switched to it. Had a couple of thoughts of migrating to zsh mostly because its more POSIX compliant but it doesn't look like such a valid argument as time passes by

I think POSIX compliance of interactive shells is completely irrelevant. POSIX shells are relevant when you're writing scripts that will be distributed, but there's no reason that needs to be done with the same shell you use interactively. I use fish presently and zsh before that for nearly 15 years, but my shell scripts have always started with #!/bin/sh

It's not like fish installs to /bin/sh, nor are /bin/sh scripts executed using fish just because your interactive shell is fish. I guess these are the two misconceptions the common worries are based on?

Re: Fish 3.4.0

#15
post #9

Just loving every single bit of it since I switched to it. Had a couple of thoughts of migrating to zsh mostly because its more POSIX compliant but it doesn't look like such a valid argument as time passes by

My company has default shell as zsh so every tool assumes that. How can I switch to fish in such an environment?

Re: Fish 3.4.0

#17
post #7

Earlier quoted context omitted.

Switched and never came back. Always recommend people to use fish if they're not the "customize everything everywhere to my liking" type. The defaults of fish are great and common tasks are simple. The for loop syntax was so intuitive I got it right the first time without checking Google (which I have to do every time I write a bash for loop). Not much more to say I think.

> Always recommend people to use fish if they're not the "customize everything everywhere to my liking" type. Fully agree. It feels like fish is the Apple of shells, in that regard. Unless you really love to tinker with your shell, the great defaults and great UX make it really easy to recommend.

Is Fish difficult to customize? Just curious since I do tend to customize everything to some degree to fit my personal prefs.

Re: Fish 3.4.0

#18
post #9

Just loving every single bit of it since I switched to it. Had a couple of thoughts of migrating to zsh mostly because its more POSIX compliant but it doesn't look like such a valid argument as time passes by

My company has default shell as zsh so every tool assumes that. How can I switch to fish in such an environment?

You can execute zsh scripts from a fish command line, or any other. Where is the problem?

Re: Fish 3.4.0

#19
post #9

Just loving every single bit of it since I switched to it. Had a couple of thoughts of migrating to zsh mostly because its more POSIX compliant but it doesn't look like such a valid argument as time passes by

I think POSIX compliance of interactive shells is completely irrelevant. POSIX shells are relevant when you're writing scripts that will be distributed, but there's no reason that needs to be done with the same shell you use interactively. I use fish presently and zsh before that for nearly 15 years, but my shell scripts have always started with #!/bin/sh It's not like fish installs to /bin/sh, nor are /bin/sh script…

Same. I've been using fish forever. Scripts that use sh or bash still work fine.

The fish scripting language is much easier to read and write than bash (for someone that doesn't write many scripts). So for local scripts I use it but for anything shared it's still bash scripts.

Re: Fish 3.4.0

#20
post #7

Earlier quoted context omitted.

Switched and never came back. Always recommend people to use fish if they're not the "customize everything everywhere to my liking" type. The defaults of fish are great and common tasks are simple. The for loop syntax was so intuitive I got it right the first time without checking Google (which I have to do every time I write a bash for loop). Not much more to say I think.

> Always recommend people to use fish if they're not the "customize everything everywhere to my liking" type. Fully agree. It feels like fish is the Apple of shells, in that regard. Unless you really love to tinker with your shell, the great defaults and great UX make it really easy to recommend.

I find myself customizing fish way more than I ever did with Bash. Writing custom completions is easy and I find the scripting syntax a lot nicer. Combining the two is really powerful. Granted, fish ships with a ton of completions out of the box so you may not need to write your own.
Post reply on HN