I stopped using fish a while ago, when it would crash whenever I opened a console session (so I couldn't do anything when X didn't start). I switched to zsh with fish emulation, but lately I realized I have a shell that takes much longer to start up and basically does everything fish does, and nothing more.
If fishfish is more stable, I'll switch in a heartbeat.
> I stopped using fish a while ago, when it would crash whenever I opened a console session (so I couldn't do anything when X didn't start)
This is why I launch my interactive shell from a failsafe /bin/sh instead of using chsh. If zsh ever messes up horribly, I end up back in a good old bog standard shell prompt.
REALSHELLS="/usr/local/bin/zsh /usr/bin/zsh"
for REALSHELL in $REALSHELLS; do
if [ -e $REALSHELL ]; then
if ! $REALSHELL -l; then
echo "$REALSHELL exit $?"
fi
echo "$SHELL exit in 1s, Ctrl-C to abort"
sleep 1 && exit
fi
done
echo "No shells in [$REALSHELLS] found, falling back to $SHELL"
I just downloaded it and while it looks awesome, I see the rvm problem. I haven't used zsh but I'm assuming from your comment that zsh is compatible with RVM. Seems like it shouldn't be too hard to write a fish version of the script that sets up your rvm environment, but if you've gone down that path and it proved too painful I won't bother. However, perhaps fish + rbenv works. Has anyone tried that?
Yes, I switched from rvm to rbenv because rvm didn’t work with fish. rbenv did work with fish.
I switched away from fish after that because go (a directory-jumping tool) required bash to install (http://code.google.com/p/go-tool/wiki/InstallNotes). I didn’t know how to port that bash code to fish, since I don’t know bash scripting, and I also anticipated that I would keep finding cool programs that didn’t work with fish.
If fishfish is more stable, I'll switch in a heartbeat.