I've used the fish_config utility to customize my syntax color scheme and now I want to copy these settings to remote servers I can't run fish_config on. Where does it save the changes made through that utility?

  • 2
    I believe as universal variables. Do set -U to see them Aug 23, 2017 at 19:03

1 Answer 1


Some settings, such as the color theme, are stored as universal variables. Run set -U to see them.

Note that at the moment universal variables are stored in a file whose name is unique to each host. In the upcoming fish 3.0.0 release we're going to make that file truly global so that simply copying your ~/.config/fish directory tree to another machine will install items like your color theme. See this issue for more details.

At the moment you need to use set -U | grep fish_color_ on the machine having the theme you like and do set -U of each var on the target machine. A bit of a pain in the ass we admit.

The prompt is saved as an autoloaded function in ~/.config/fish/functions/fish_prompt.fish.

  • 1
    Following up, since version 3, everything is stored in ~/.config/fish/fish_variables.
    – caarlos0
    Aug 12, 2020 at 13:29

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.