diff options
-rw-r--r-- | README.md | 7 | ||||
-rw-r--r-- | src/config.rs | 8 |
2 files changed, 11 insertions, 4 deletions
@@ -143,10 +143,11 @@ you'll probably end up wanting to customize it anyhow. There is a default file as the following paths: 1. `$XDG_CONFIG_HOME/alacritty/alacritty.yml` -2. `$HOME/.config/alacritty/alacritty.yml` +2. `$XDG_CONFIG_HOME/alacritty.yml` +3. `$HOME/.config/alacritty/alacritty.yml` -If these files are not found then one is created as `$HOME/.config/alacritty/alacritty.yml` -once alacritty is first run. +If neither path 1 or 2 are found then `$HOME/.config/alacritty/alacritty.yml` +is created as or once alacritty is first run. Many configuration options will take effect immediately upon saving changes to the config file. The only exception is the `font` and `dpi` section which diff --git a/src/config.rs b/src/config.rs index 706f1d01..b3ca5bdb 100644 --- a/src/config.rs +++ b/src/config.rs @@ -812,7 +812,8 @@ impl Config { /// The config file is loaded from the first file it finds in this list of paths /// /// 1. $XDG_CONFIG_HOME/alacritty/alacritty.yml - /// 2. $HOME/.config/alacritty/alacritty.yml + /// 2. $XDG_CONFIG_HOME/alacritty.yml + /// 3. $HOME/.config/alacritty/alacritty.yml pub fn load() -> Result<Config> { let home = env::var("HOME")?; @@ -820,6 +821,11 @@ impl Config { let path = ::xdg::BaseDirectories::with_prefix("alacritty") .ok() .and_then(|xdg| xdg.find_config_file("alacritty.yml")) + .or_else(|| { + ::xdg::BaseDirectories::new().ok().and_then(|fallback| { + fallback.find_config_file("alacritty.yml") + }) + }) .unwrap_or_else(|| { // Fallback path: $HOME/.config/alacritty/alacritty.yml let mut alt_path = PathBuf::from(&home); |