Skip to main content
  1. Blog/

Fixing Emacs problems with the fish shell

·114 words·1 min·
Diego Zamboni
Author
Diego Zamboni

I started getting errors from the TRAMP Emacs package because I was using fish as my default shell, and it does not recognize certain standard syntax elements (such as && to separate commands), and Emacs runs subcommands under the default shell. I fixed this by:

  1. Changing my account's default shell back to `/bin/bash`
  2. Changing my Terminal.app preferences to run `/usr/local/bin/fish` when a shell opens, instead of the default login shell:

  3. Log out and back in to have everything reloaded properly.

This does not change my interactive experience at all, while leaving /bin/bash as the default for sub-shells, no only in Emacs but in any other applications that might break because of fish’s non-standard syntax.