Projects / The friendly interactive shell

The friendly interactive shell

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
Licenses
Operating Systems
Implementation

RSS Recent releases

Release Notes: Many new features, fixes, and optimizations.

  •  08 Mar 2009 17:36

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

  •  12 Jan 2008 23:47

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

  •  08 Feb 2007 12:05

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

  •  07 Dec 2006 23:26

Release Notes: 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.

RSS Recent comments

26 Nov 2007 06:10 icheyne

Re: 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.

24 Oct 2005 07:40 liljencrantz

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.

24 Oct 2005 04:53 poisoned

Too bad ...
It can't simply be used as a drop-in replacement for

bash

=/

I like it so much ...

08 Apr 2005 04:39 gvy

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...

08 Apr 2005 04:33 liljencrantz

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.

Screenshot

Project Spotlight

Skylable SX

A cloud storage toolkit.

Screenshot

Project Spotlight

slapt-src

A slackbuild utility.