The friendly interactive shell (fish) is a Unix shell that focuses on interactive use, discoverability, and user friendliness.

learn more… | top users | synonyms

25
votes
1answer
3k views

chain Fish commands via `&&` or `||`

In Bash/ZSH and other shells, I am used to using && and ||. Is there any equivalent in Fish?
24
votes
3answers
18k views

What are the differences between fish and zsh? [closed]

I'm a bash user willing to switch to a more friendly and advanced shell. I read a lot of good things about zsh, but I gave a quick test at fish and it seems great too. Both seem very close in term of ...
21
votes
2answers
7k views

Is there any way to get bash to have syntax highlighting like fish?

In the fish shell, the actual command line is syntax highlighted: Is there any way to get this same behavior in bash? There is something just like this but for zsh, not bash. Is it possible that ...
18
votes
4answers
4k views

sudo keeps asking me for my password in fish shell

sudo in Ubuntu keeps asking me for my password for every command. Previously, I only had to enter the password once, and then it would be remembered for a period of time. This recently changed, ...
11
votes
3answers
3k views

How to use fish shell in cygwin?

Is it possible to use the fish shell with cygwin? I wasn't able to compile the source in cygwin, and I didn't find any precompiled packages. Is there a good reason for not having fish in cygwin?
10
votes
4answers
4k views

$PATH is driving me nuts

OK, apologies if this is something dumb, but I'm running out of ideas. Goal: prepend /usr/local/bin to $PATH Problem: $PATH won't do what I want or expect How I got here: I want to start learning ...
9
votes
3answers
992 views

How to run a command in background with no output unless there's an error

How to suppress a command's output but show it if the command exit codes an error?
9
votes
1answer
513 views

Bind shift-tab to complete-backward in fish

I found myself using the auto-complete functionality of the fish-shell, where pressing tab twice or more cycles through the suggestions. But then I accidentaly pressed tab once to many, and I wanted ...
8
votes
3answers
917 views

What is the equivalent of bash's !$ and !! in the fish shell?

I've been using bash for a decade or so and have gotten used to being able to type !$ to repeat the last argument, e.g.: $ mkdir foo $ cd !$ cd foo (That last line is printed by the shell to tell ...
8
votes
3answers
1k views

Is there a ”reverse incremental search” functionality in Fish similar to Bash’s CTRL+R?

I’m really impressed with Fish’s autocomplete functionality. However there is one feature in Bash that I’m unable to find in Fish. When you press ctrl+R in bash and begin to type out a term, a search ...
8
votes
3answers
3k views

re-use '~/.profile` for Fish?

(I'm talking about the shell Fish, esp. Fish's Fish.) For Bash/ZSH, I had ~/.profile with some exports, aliases and other stuff. I don't want to have a separate config for environment variables for ...
5
votes
1answer
1k views

Right and fast way to test git directory and git branch?

While trying to set up my new fish shell prompt, I ended up testing ways to get the branch name and also testing if I was on a git repository. I have found (1) git rev-parse --abbrev-ref HEAD, (2) git ...
4
votes
1answer
2k views

When default shell is not bash-compatible, why do bash scripts not work well?

My default shell is fish, because it's a lot nicer. But often when I run scripts, I get errors that seem to be from the bash script being processed by fish. I think this is because the script writer ...
3
votes
2answers
804 views

Go-lang go tool works with Bash but not Fish

For those of you who have no idea what Fish is: http://fishshell.com/ Similarly, if you are not familiar with a Go coding environment and still wish to try and figure out this small puzzle, here is ...
3
votes
1answer
1k views

Using MacPorts within FISH shell

I have been playing around with FISH for a few days and I just tried to switch it to my main shell. That worked fine but now none of my software from MacPorts is recognized. I installed and followed ...
3
votes
1answer
265 views

How can I do string manipulation in fish shell

How can I do bash style string manipulations in Fish shell? Specifically, in bash read branch < ".git/HEAD" branch=${branch#ref: refs/heads/} will put the branch name in $branch variable. How ...
3
votes
1answer
181 views

Quote or bracket completion in bash, without pressing TAB

Is there any way to have bash autocomplete matching symbols like '"[{( with their right handed counterparts? I would like to do this without having to press tab. For example typing the string echo " ...
2
votes
1answer
208 views

How do I run make && make install while in fish shell

I have installed the fish shell, and I'm very happy with it ... but I cannot run the following command: make && make install This works nicely in bash... How do I run it in fish shell?
2
votes
2answers
2k views

How do you “source” a file in fish?

I'd like to use keychain with the fish shell, but I'm not sure how to get fish to load the ~/.keychain/hostname-fish file to set the appropriate environment variables. In bash, there's the "source" ...
2
votes
1answer
140 views

Can't start new fish session after incorrectly closing fish_config

I'm trying out fish (the friendly interactive shell), and tried out the browser-based config with fish_config. I didn't close this correctly. I hit ctrl-C in my shell. Now I see the error "The ...
2
votes
1answer
189 views

writing more complex math input to fish shell

The fish documentation explains that the math command is essentially a thin wrapper to bc. The bc documentation has further info about more complex ops: If bc is invoked with the -l option, a math ...
2
votes
1answer
2k views

How do I install/make a custom prompt for fish shell?

I'm using fish 2.0 in #! Linux, but this might be an installation error, since my ~/.config/fish/config.fish is empty.
2
votes
1answer
242 views

How to use the $_ positional parameter in the fish shell?

In Bash, the positional parameter $_ holds the last argument in the previous command: $ /home/joe> some-script foo bar $ /home/joe> cd $_ $ /home/joe/bar> The positional parameter $_ does ...
2
votes
1answer
250 views

How do you install pythonbrew when using the Fish Shell?

I use the Fish shell in Mac OS X and I cannot figure out how to install pythonbrew. Is this possible and if so how? What I think I need to figure out is how to convert the following for my .bashrc to ...
2
votes
2answers
771 views

fish control-left control-right keybindings

I'm using terminator along with fish and I want to use Alt-Left etc for navigating terminator and Ctrl-Left and Ctrl-right to move the cursor by word. The problem is when I do bind \cleft ...
2
votes
2answers
395 views

How to remove path from PATH variable in fish

I am using fish as my shell in Debian and recently (after some upgrade) whenever I try to use command completion I have: set: No such file or directory set: Could not add component ...
2
votes
0answers
293 views

My custom fish shell prompt keeps resetting every reboot

I switched to fish shell a month ago and I'm quite pleased with it. But recently, my custom prompt keeps resetting to the default prompt every time I turn on my PC. When opening the terminal, I'm ...
2
votes
2answers
1k views

How do I change EDITOR to be Pico in fish shell?

I can’t get Mercurial (hg) to use pico as my EDITOR when I’m using fish shell. I’ve tried using this and other variations, but nothing seems to help: set -U EDITOR pico hg commit will always open ...
1
vote
1answer
242 views

How to do command substitution in fish shell?

How would a command like this have to be expressed in fish? ls -l $(which vim)
1
vote
1answer
406 views

How to set fish as default shell in Cygwin?

I installed fish and can start it. Now I would like to use it as my default shell in Cygwin. How may I achieve this? So far I tried two thing. I overwrote the content of /etc/shells with /bin/fish ...
1
vote
2answers
279 views

Building Fish 2.0 shell under Cygwin

I wanted to have a fish shell under my cygwin instance and I wanted it so bad that I've event tried to build it but with no luck. I've gone through all the prerequisites like installing autoconf, ...
1
vote
3answers
2k views

How do I set the title of Terminal.app with the fish shell?

I'm trying the fish shell in Mac OS X, intalled using MacPorts. I'd like to have the title of my Terminal window be my current directory. Currently, the title just says Terminal - fish - 80x24 ...
1
vote
1answer
19 views

$status in Fish prompt always prints 0

I tried to add $status to my prompt in the fish shell but it always prints 0. This question was asked on irc a while back and i'm surprised there wasn't a answer here so i thought i'd post it here ...
1
vote
1answer
134 views

How can I enable tab completion for a fish function/alias?

Probably easier to just use an example here. I have a function ss that just calls: sudo systemctl $argv Tab completion works fine with the full command, but not for the ss function. I.e., ss start ...
1
vote
1answer
125 views

How to get byobu help screen (shift-F1) to work under a fish login shell?

I can get the Shift-F1 to show the help for a user that has fish as login shell. I get a glimpse of an error message that gets quickly overwritten. It says fish: Variables may not be used as ...
1
vote
1answer
312 views

Is there a way to “source” a sh script from the fish shell?

I like to put many of my environment variable definitions in the .profile script. If I am using a POSIX-compatible interactive shell like bash, I can use the source command to re-export the ...
1
vote
1answer
83 views

Change prompt on command line?

My prompt is quite verbose - which is good most of the time - but now I would like to switch it temporarily because I want to make a screen shot of the terminal. For that purpose I would prefer not to ...
1
vote
1answer
256 views

fish.config doesn't get loaded on new tab in TotalTerminal on OSX

I want to add Android SDK tools to my $PATH variable. I've entered the following to ~/.config/fish/config.fish: set -x PATH $PWD/Documents/android-sdk-macosx/tools $PATH set -x PATH ...
1
vote
2answers
498 views

run any shell script from Fish and import all exported env variables?

Is it possible somehow to import all environment variables which are exported by a subprocess started by Fish? E.g. from my Fish session, I start bash ~/.profile, which exports some variables and I ...
1
vote
0answers
9 views

RVM is not a function message when using fish shell

I'm trying to use rvm from within the fish shell rvm gemset use rails3 I'm getting the following error message from fish RVM is not a function, selecting rubies with 'rvm use ...' will not work. ...
1
vote
1answer
38 views

How do I get fish shell prompt to show the hostname?

I'm attempting to make my Fish prompt look like the old Gentoo shell did. user@hostname ~ % where the user@hostname is green, and the $PWD and symbol were blue. Right now it only shows: user@ ~ %, ...
1
vote
0answers
32 views

How to refer to absolute paths in fish?

I'm trying to get fish to recognize an absolute path, either when changing directories or when giving an input to a program. I'm used to typing an absolute path as "C:/..." but in fish the only way I ...
1
vote
2answers
239 views

Fish shell syntax highlighting looks weird in byobu-screen

When I am in plain fish shell, a command is highlighted like so: but when I am in byobu-screen and type the same thing, I get: When I do a fish_config and look at my color palette, nothing is ...
1
vote
0answers
106 views

Fish - A way to configure it such that it does not scroll through tab completions with tab

If you have a directory structure like the below ./test/locationOne ./test/locationTwo ./test/locationThree If, with bash, or fish, you type in cd test/ then hit tab, it will autocomplete until ...
1
vote
0answers
423 views

“set -xe” in fish shell

In bash, invoking set -x at the beginning of a script causes the commands to be printed on stdout while the script is executing. What's the equivalent syntax for the fish shell?
0
votes
2answers
16 views

Can a fish script distinguish between being sourced and executed?

I have a fish script that exports some variables and launches a command at the end. I'd like to be able to source this file to bring these variables into the current shell session, but without ...
0
votes
2answers
36 views

Run git command from an external directory in fish function

In a fish function, can I run a command from a certain directory without changing into it? or Can I run a git command (push) from outside the repository by specifying its path somehow? I'd like ...
0
votes
1answer
1k views

How can I setup fish shell prompt to be in a different color?

I've seen a screenshot of zsh configured to have prompt with a different color and background, and it looks like a very usable tweak:
0
votes
1answer
24 views

Escape-backspace behavior in fish shell like in other shells

I recently started using the fish shell for some things and generally like it. However I've run across one situation that would be great if there were a workaround. Say I typed a command like this: ...
0
votes
1answer
56 views

Custom bash 'context' when running from FISH

First of all, I'm on OSX10. My default shell is BASH, which I have set up (through .profile and .bashrc) to automatically run the FISH shell when I open my terminal emulator. This allows me to set up ...