|
|
Subscribe / Log in / New account

New features in the fish shell

New features in the fish shell

Posted Sep 29, 2020 22:15 UTC (Tue) by areilly (subscriber, #87829)
Parent article: New features in the fish shell

I tried fish a few years ago but gave up after a month or so. There are some good ideas in there, around auto or semi-auto configuration, but what ultimately killed it for me was the "not Posix sh" syntax. All of the UI stuff was lovely, but I don't see that that has to imply a different shell language (and obviously things like ZSH have most of the UI loveliness and still mostly-sh compatibility). The thing that ultimately did it in for me was that I couldn't get it to behave sensibly around remote ssh commands (with fish as the login shell on the remote machine). I've come to the conclusion that sh is just a really nice language syntax. Particularly nice for its ability to express complicated things on one line.


to post comments

New features in the fish shell

Posted Sep 30, 2020 5:21 UTC (Wed) by johannes (guest, #116140) [Link] (1 responses)

I think it's a fine choice to use fish interactively and sh for scripts.
The use case is different, so different tools are justified. The most used interactive commands work the same way in fish.
There are easy-to-learn fish equivalents for constructs that are commonly used interactively. If something is missing it can usually be implemented in a small function.
Supporting obscure features from other shells yields diminishing returns, but widely used features are happily added, like && and var=value.
Likewise, humans use different constructs in oral and written language, both languages co-evolve and adopt useful features from each other.

> All of the UI stuff was lovely, but I don't see that that has to imply a different shell language

True but it's much easier to implement consistent highlighting, indentation, completion and error messages if the language is syntactically simple. Other shells don't indent or highlight at all.

> I couldn't get it to behave sensibly around remote ssh commands (with fish as the login shell on the remote machine).

Yeah, that's one of the places where setting fish as login shell can backfire. It's often better to launch it in a different way.

New features in the fish shell

Posted Sep 30, 2020 10:31 UTC (Wed) by mathstuf (subscriber, #69389) [Link]

> Yeah, that's one of the places where setting fish as login shell can backfire. It's often better to launch it in a different way.

I agree. I use zsh almost exclusively, but my login shell is bash. I configure my terminal-launching keybindings and tmux to use zsh by default instead.


Copyright © 2025, Eklektix, Inc.
Comments and public postings are copyrighted by their creators.
Linux is a registered trademark of Linus Torvalds