macOSLinuxWindows

Where Is the Yazi Config File?

Where the Yazi terminal file manager reads yazi.toml, keymap.toml, and theme files on Unix and Windows.

Last updated

Yazi reads three TOML files from one config directory: yazi.toml for behavior, keymap.toml for bindings, and theme.toml for colors. On macOS and Linux that directory is ~/.config/yazi, on Windows it is %AppData%\yazi\config.

You only create files for what you want to change. Anything you leave out falls back to the preset shipped with the release, so a minimal yazi.toml with five lines is a complete and valid setup. The docs site lists every option with its default, which beats guessing key names from memory.

Where Yazi stores this, by platform

macOS
~/.config/yazi

yazi.toml, keymap.toml, and theme.toml go directly here. Run yazi --print-config-path if the folder seems ignored; it prints the exact directory this build reads. Plugins and flavors sit in subfolders of the same root.

Linux
~/.config/yazi

Same path as macOS, honoring $XDG_CONFIG_HOME when set. The YAZI_CONFIG_HOME variable overrides the whole directory for one run, which is the clean way to test themes. State like file history lives outside this folder.

Windows
%AppData%\yazi\config

Note the extra config level compared to Unix: yazi\config under Roaming. Paste %AppData%\yazi\config into Explorer. TOML syntax is identical across OSes, so dotfiles can share the same file contents.

Frequently asked questions

where is the yazi config file

Create ~/.config/yazi/yazi.toml on macOS or Linux (%AppData%\yazi\config\yazi.toml on Windows). Copy only the sections you want from the shipped preset, since your file overrides the built in defaults key by key.

where do i change yazi keybindings

In keymap.toml in the same directory. Use the prepend_keymap section to add bindings on top of the defaults instead of replacing them. A full keymap array replaces everything, which is rarely what you want.

can i use a different yazi config folder

Set YAZI_CONFIG_HOME to the directory you want before launching. That folder then needs its own yazi.toml and keymap.toml. Handy for testing a new setup without touching the working one.

Notice an outdated path? Let us know.