Hacker Newsnew | past | comments | ask | show | jobs | submitlogin

then fish is maybe not for you for now. i like fish exactly because it broke out of the limitations imposed by POSIX. in my view, POSIX should have never even gone as far as specifying any kind of shell syntax. imagine what we'd do if it had gone even as far as specifying programming languages. that stuff just doesn't belong there.

compatibility should be limited to interoperability. but it should not limit how we can design our tools.

and the tools do adapt. more and more of them work just fine with fish. maybe some day in the future your tools will work with fish too.

I spend half a day trying to export my two decades of bash/zsh customizations

don't. if you switch to fish, you should not want/need those customizations, because if you want to make fish look or work like your old shell, why are you even switching? you are learning a new environment with new features. get used to fish as it is first. after a while you may discover fish's own customization options, and the many tools that provide customizations across multiple shells. your own handcoded adaptions are probably not even portable to any other shell.

Reinventing the whole wheel to make it look exactly the way you want, while disregarding compatibility with everything that already exists, is probably the biggest violation of the UNIX philosophy

fish is not reinventing the wheel. it is creating new wheels with features that we never had before.

the popularity of fish just shows that this incompatibility is not a problem to many. if it were, fish would be dead by now. other shells are gaining ground that also break compatibility and maybe we'll find a future where these compatibility issues are not issues anymore because we will have learned to build environments that don't depend on that compatibility.



What broke fish for me is behaviour bugs. e.g https://github.com/fish-shell/fish-shell/issues/1786 but there are more that makes it a no go for me.


not really a bug but a missing feature but i get your point. i find psub one of the weak spots of fish, and i'd prefer if fish could support >() and <() as syntax instead.

it's much more intuitive (foo) is clearly a command and > and < are in and out respectively. if i look at (foo | psub) i am wondering what that is supposed to mean.




Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: