3 ms·
I made fish my default shell for around a month, and I really liked the smart suggestions of what command I was going for when I started typing. But the "vi" m
by linsomniac 8y ago
I made fish my default shell for around a month, and I really liked the smart suggestions of what command I was going for when I started typing. But the "vi" mode had enough incompatibilities that it really irritated me, it was extremely incomplete. Discussions of it with devs went nowhere. Plus, there were incompatibilities in the language that I could never bring myself to commit to memory; I might have if the vi mode were better but as it was I didn't want to get any further invested in it than I was.
In the end I switched back to zsh and enabled "zsh-autosuggestions", which gave me the thing I loved most about fish, without any of the parts that I didn't. There's also some other extensions I'd like to try that enhance history like "McFly" ( https://github.com/cantino/mcfly https://github.com/cantino/mcfly ), based on this previous zsh-histdb discussion: https://news.ycombinator.com/item?id=15041772 https://news.ycombinator.com/item?id=15041772
- dmix 8y agoZSH seems to have broader community support and there's a plugin for basically everything. This is why I chose to stick with it over Fish. If I just wanted a very simple shell, with good defaults, I'd choose Fish. But much like why I use (Neo)Vim I prefer the DIY approach and have gotten my ZSH to the point over the years (and a hundred scripts later) where I love it. But ZSH the language is pretty awful and non-intuitive (although way better than bash when you dig into it). Even though I've been writing it for years I still get it mixed up often. My hope is that Evlish shell will be mature enough soon to use day-to-day, which is the only one I've seen with a modern scripting language (written in Go) and is 10x faster than my ZSH (which is very noticeable): https://elv.sh https://elv.sh
- dancek 8y agoSimilar story for me, but I consider the POSIX shell language a worthwhile least-common-denominator language. I avoid using bash or zsh extensions except interactively (and in a zsh plugin I maintain [0]). As I think you need to know the standard shell language anyway, new shell DSLs are a bit of a turn-off to me. If the language is trivial it's not very powerful and if it's powerful it takes time to learn. That's why I have high hopes for shells that combine tried-and-true programming languages and their ecosystems to a thin shell layer. Like http://xonsh.org http://xonsh.org or https://docs.racket-lang.org/rash/index.html https://docs.racket-lang.org/rash/index.html . But if I'm completely honest, I think bash will still be the standard choice in 5 years and weird shells you haven't heard of will still be weird shells you haven't heard of. [0]: https://gitlab.com/code-stats/code-stats-zsh https://gitlab.com/code-stats/code-stats-zsh
- kbd 8y agoQuick correction, the actual url for Xonsh is http://xon.sh http://xon.sh. My understanding is that xonsh.org is an out-of-date unaffiliated mirror that the author of Xonsh doesn't control :(
- dancek 8y agoOh, oops. Too bad I can't edit anymore. Sad that the out-of-date site os ranked better on Google for "python shell".
- h1d 8y agoWhy not just use fish for scripting? That's what I do as zsh as shell works better for me as well. Shell scripting finally looks a little saner thanks to fish.
- zanchey 8y agoI think vi mode suffers because it's a relatively niche feature - none of the current committers use it as far as I know, and pull requests to improve it are fairly infrequent. It gained t/T/;/,/d{f,F,t,T} in 3.0 in two different pull requests, which represents about 1% of all PRs in the 3.0 cycle. I don't think it helps that it's this huge target area which (the small number of?) users use a slightly different 10% of, and it can be quite complex to integrate new features into existing editor state.
- ElijahLynn 8y agoI tried VI mode on Fish for a while but yeah, I just turned it off and have stuck with the default Emacs mode instead. Been much happier since I did that.