fish, the friendly interactive shell is a shell that is focused on interactive use, discoverability, and user friendliness. The design goal of fish is to give the user a rich set of powerful features in a way that is easy to discover, remember, and use. fish features a user-friendly and powerful tab-completion, including descriptions of every completion, tab-completion of strings with wildcards, and many completions for specific commands. It also features an extensive and discoverable help system. A special help command gives access to all the fish documentation in your preferred Web browser. Other features include syntax highlighting with extensive error checking, support for the X clipboard, smart terminal handling based on terminfo, an easy to search, no duplicates history.
| Tags | Shells Software Development Interpreters Utilities |
|---|---|
| Licenses | GPL |
| Operating Systems | POSIX |
| Implementation | C Unix Shell |
Recent releases


Changes: This release contains a long list of fixes for bugs, annoyances, and misfeatures, as well as many new command-specific tab completions.


Changes: Case insensitive tab completions were added. Improvements were made to the multiline editing system. A new and much more powerful keybinding system was added.


Changes: This version contains a large number of new command-specific completions. Other improvements include performance improvements, multiple bugfixes, correctness fixes, and increased overall robustness.


Changes: Help output now supports bold and underlined text. A few new or improved command specific completions have been added. Key bindings implemented as shellscript functions no longer changes the titlebar message or reexecutes the prompt, significantly reducing flicker on slow systems. ./configure now supports --without-gettext. Various minor bugs were fixed. When there are no tab completions, fish no longer sends the flash_screen sequence to the terminal. Lots and lots of polishing was done.


Changes: This release contains several new and improved tab completions and many bugfixes, including a small number of potential crash bugs.
- All comments
Recent commentsRe: zsh? :)
> I did not know about
> them until after releasing fish, since
> they are kind of hard to find. :-/
I was using Fish before I learnt about zsh, and its simplicity is far more attractive than the configuration madness of zsh.
Re: Too bad ...
> [Too bad...] It can't simply be used as a drop-in replacement for bash
> =/
> I like it so much ...
Yep. The problem is that if fish emulated the Posix/bash syntax, you probably wouldn't like it half as much, since it would be a much worse shell.
Too bad ...
It can't simply be used as a drop-in replacement for
bash
=/
I like it so much ...
Re: zsh? :)
> You would vote for zsh becoming the
> default interactive shell for most
> distributions and so would most users of
> zsh.
Exactly what was discussed recently regarding ALT Linux.
> But distros aren't switching. I guess they
> are a conservative bunch.
Well we'll see -- quite a few core team members here just use zsh. :-)
There are issues though, both with non-controversial defaults (e.g. shell pattern substitution in interactive mode) and UTF8 support. Will take some consideration and time at least...
Re: zsh? :)
>
> % I also suspect that most distros
> wouldn't dream of
> % switching from bash as the default
> shell.
>
>
> Well I'd vote for zsh being default
> shell in ALT Linux -- for
> non-minimalistic (interactive at least
> :) systems, that is. ALT isn't
> first-tier distro but still I like it
> very much for the team and quiet
> convenience in many places around the
> package base.
>
> And I'd do so exactly for zsh's gentle
> completion and care for tired people
> doing things like "rm * ~" with no
> stinkin' "-i" aliases in.
>
> If only UTF-8 locales (multibyte input)
> would get proper treatment there...
You would vote for zsh becoming the default interactive shell for most distributions and so would most users of zsh. If zsh was configured to look like bash by default, most bash users would also be happier, since zsh is a much nicer shell for interactive use. But distros aren't switching. I guess they are a conservative bunch.