Agreed. I've been using fish now as my default shell, it took a bit of time to get used to but it's definitely been worth the time porting my zsh functions/aliases over to fish and adding inline documentation.
Very cool.
i didn't think zsh startup time was an issue
$ time zsh -c "echo foo" foo
real 0m0.005s user 0m0.002s
I think `-c` skips loading configuration. Launching a prompt will be much slower. In fish almost everything is a function and functions are loaded lazily.
Might be an OS X thing. At work on Debian zsh starts up instantly, at home on OS X it takes a good couple of seconds.
Re:Fish shell 2.0
by plorkyeran on Friday May 17, 2013 @09:15AM
(#5724091)
It's an oh-my-zsh thing, mostly. Turns out that running a lot of scripts on startup makes startup take a while.
Thing is in fish functions and completions load lazily as needed, and basically every customization is done with functions. Startup is pretty much instant regardless of configuration.
I don't run omz or many scripts for my zsh configuration.
Re:Fish shell 2.0
by fusiongyro on Friday May 17, 2013 @01:56PM
(#5725809)
Might want to check this out:
https://news.ycombinator.com/item?id=3880280
path_helper turned out to be boning me pretty hard at home, these instructions were very helpful.
Completion better than zsh ? Really ?
I'm playing around with fish since a couple of minutes and one zsh completion thing I am missing is "fuzzy" completion. In zsh with the following files in a directory:
log-20120103
log-20120104
log-20120503
log-20120603
log-20120604
I can do: "$ less 603<tab>"And it will complete to: "$ less log-20120603"
I cannot recall whether I had to specifically enable this in zsh.
[0] - https://github.com/clvv/fasd