5 ms·
They need to update the slogan? "A command line shell for the 90s" doesn't really draw me in. What I want to know: 1. In what specific ways is it better than
by bstpierre 14y ago
They need to update the slogan? "A command line shell for the 90s" doesn't really draw me in.
What I want to know:
1. In what specific ways is it better than zsh?
2. Is it absolutely, rock-solid stable?
- icarus127 14y agoI'm wondering about the answer to #1 as well. After trying this out for a bit there's nothing obvious and there are definitely things I miss.
- ash 14y ago1. No need to mess with configs. Works out of the box. 2. Breaking Bourne Shell compatibility. Personally I find Bourne syntax hard to learn and hard to read. Fish syntax is much better. [1, 2] [1]: http://en.wikipedia.org/wiki/Friendly_interactive_shell http://en.wikipedia.org/wiki/Friendly_interactive_shell [2]: http://ridiculousfish.com/shell/user_doc/html/index.html http://ridiculousfish.com/shell/user_doc/html/index.html
- bstpierre 14y agoSounds like there's no reason for me to switch. I've already messed with configs and everything is stable now, so that's a sunk cost. I already know bourne-style syntax, so learning fish (even if it's easier) is an added cost, not to mention the fact that I have to work on various boxes that I can't install fish on so it's easier to have my fingers know how to operate a single shell (zsh) that's generally backwards-compatible with bash (which is ubiquitous).
- kator 14y agoFunny I was about to say the same thing about installing on systems. When you're a systems person or work with many different customers you can't ask them to install a custom shell. Try explaining to the CIO at a major bank why all his linux boxes need fish shell installed. So we get stuck back at the minimal set of SH syntax that I learned to master some 25 years ago.
- adamc 14y agoWhen I saw the slogan, I thought it was ironic. I kind of like it.
- snorkel 14y agoAgree. I'm happy there's finally a Mac term app that can support the same emacs color scheme I was using on a Linux desktop 14 years ago!
- Wilfred 14y ago1: a. Superb readline colouring. Nonexistent commands are shown in red, commands that exist and are on PATH in green. Unclosed string literals become obvious. b. A history search that is orders of magnitude better that Ctrl-r in Bash. (Though oh-my-zsh has the history-substring-search plugin which provides this functionality.) c. Features work out of the box, fish helps you avoid managing a .zshrc equivalent file. d. Tab completion offers hints. If I type l<tab><tab>, I get: leaftoppm (Convert Interleaf image format to a portable anymap) less (Opposite of more) lessecho (Expand metacharacters) lessfile ("input preprocessor" for less.) lesskey (Specify key bindings for less) lesspipe ("input preprocessor" for less.) lexgrog (Parse header information in man pages) (These summaries are the first lines of the man pages.) 2: I've only seen it crash on me once, which matches my experience with zsh. YMMV. I used fish exclusively for a number of years, but eventually moved back to something sh-compatible. Too many wrapper scripts assume this.
- aerique 14y agoI do not understand your last paragraph. Don't your wrapper scripts have "#!/bin/sh" at the top?
- vietor 14y agoThat's being explicit, the problem is with wrapper scripts that omit that, assuming a sh compatible shell. Still running fish on one of my systems, excited to see new development work as it was getting past the point where I was comfortable using it on anything new.
- nickburlett 14y agoAn old trick for convincing (some) shells that your script is an sh-compatibile shell is to use a colon on the first line. Support for this trick was added to fish back in 2007: https://gitorious.org/~ridiculousfish/fish-shell/fishfish/blobs/master/exec.c#line520 https://gitorious.org/~ridiculousfish/fish-shell/fishfish/bl...
- calinet6 14y agoTo be fair, it's "Finally, a command line shell for the 90s." I couldn't agree more. We've been using shells from the 80's for far too long.
- AnthonBerg 14y ago1) I don't know. I haven't dug that far into zsh, I didn't like it on the surface. Or rather I love both surface and depth of fish enough that I haven't yet investigated zsh. Maybe you could tell us? Here's a pretty good article on fish by its original author: http://arstechnica.com/information-technology/2005/12/linux-20051218/2/ http://arstechnica.com/information-technology/2005/12/linux-...