Where Is the Contour Terminal Config File?
Where the Contour terminal keeps its YAML config on each OS, and how to load a custom file per launch.
Last updated
Contour keeps its whole setup in one YAML file whose home moves per OS. Unix builds honor the XDG config home with a fallback under the home directory. Windows builds use Local app data instead of Roaming.
The file generates on first run, so missing files usually mean the app never launched. A subcommand can load any path for testing without touching the default. Keep the working file backed up since one YAML holds every profile. Key mappings and color profiles live in the same YAML, so one file roams all.
Where Contour stores this, by platform
~/.config/contour/contour.yml
Default YAML config honoring XDG on Unix with a home fallback. First run generates it. Override per launch with the config subcommand.
~/.config/contour/contour.yml
Same Unix rule as Linux rather than a Library path. Shares the filename and profile structure. Override per launch the same way.
%LOCALAPPDATA%\contour\contour.yml
Local app data home rather than Roaming. Same YAML structure as Unix builds. Override per launch with the config subcommand.
Frequently asked questions
How do I use a custom Contour config location?
Launch with the config subcommand pointing at your file to override the default path. Profiles inside the YAML select which block applies per window. Keep the default file as fallback until the custom one proves stable.
Contour ignores my config after an XDG change. Why?
Echo the variable and check whether it points somewhere unexpected, since Contour honors it on Unix systems. The Mac build follows the same Unix rule rather than using Library paths. Windows ignores the variable and uses Local app data.
Notice an outdated path? Let us know.