Re:Fish: A command line shell for the 90s
by tmysl on Saturday October 26, 2019 @02:38AM
(#21362110)
As nice as fish is, it's not fully posix compliant, leads to some weird bugs here and there
[ Parent
| on HN ]
Re:Fish: A command line shell for the 90s
by pushpop on Saturday October 26, 2019 @03:56AM
(#21362377)
Is it really a “bug” if you’re writing incompatible code for Fish? Bug implies unexpected behaviour but I’d argue that Fish’s non-POSIX behaviour is well discussed, documented, and thus should be completely expected.
Re:Fish: A command line shell for the 90s
by rgoulter on Saturday October 26, 2019 @05:18AM
(#21362670)
AFAIR the problems using fish tend to be when other programs (e.g. vim or whatever) try and interact with the shell and it's non-POSIX compliant.
The "expect it to work, didn't" is more on the user's side, going from e.g. bash to fish.
Re:Fish: A command line shell for the 90s
by pmarin on Saturday October 26, 2019 @05:42AM
(#21362763)
I know it was just an example but on any Vi clone you can set the default shell:
:set shell=/bin/bash
Re:Fish: A command line shell for the 90s
by pmarin on Saturday October 26, 2019 @03:14AM
(#21362231)
For interactive shells do not matter if is not POSIX compliant. I use csh (the really old one) as interactive shell.
Yes and no. One nice thing about shell, is that you can log your commands/look at your history - and easily automate tasks (turn an interactive session into a script).
The only trouble is, such snippets have a way of sneaking into documentation, ci pipelines and other places.
And then non-posix isn't quite as nice anymore. Even if csh or fish might be the nicer language.
I do think the oil shell project is on the right track, by trying to "fix" shell (and fish is a great source of inspiration for the interactive part).
Still, when plan9 didn't manage to take over, I guess I'm a bit sceptical about any new shell having much success...
Re:Fish: A command line shell for the 90s
by kbumsik on Saturday October 26, 2019 @07:48AM
(#21363110)
It matters a lot when dealing with default environment variables.
Even when expanding $PATH fish will give you much headache.
Re:Fish: A command line shell for the 90s
by Symmetry on Saturday October 26, 2019 @10:45AM
(#21363971)
I recommend leaving bash as your system shell and just telling your terminal emulators to start with fish.
Those are probably bugs you could report to the project.
They're intentional.
They have considered a compatibility layer in the past:
https://github.com/fish-shell/fish-shell/wiki/POSIX-compatib...