Merge pull request #177 from Ambroisie/detect-xdg-config

Use XDG-compatible plugin path when available
This commit is contained in:
Bruno Sutic 2020-09-02 09:42:24 +02:00 committed by GitHub
commit b36202ace9
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
2 changed files with 13 additions and 2 deletions

View File

@ -1,6 +1,8 @@
# Changing plugins install dir # Changing plugins install dir
By default, TPM installs plugins to `~/.tmux/plugins/`. By default, TPM installs plugins in a subfolder named `plugins/` inside
`$XDG_CONFIG_HOME/tmux/` if a `tmux.conf` file was found at that location, or
inside `~/.tmux/` otherwise.
You can change the install path by putting this in `.tmux.conf`: You can change the install path by putting this in `.tmux.conf`:

11
tpm
View File

@ -21,8 +21,17 @@ tpm_path_set() {
tmux show-environment -g "$DEFAULT_TPM_ENV_VAR_NAME" >/dev/null 2>&1 tmux show-environment -g "$DEFAULT_TPM_ENV_VAR_NAME" >/dev/null 2>&1
} }
# Check if configuration file exists at an XDG-compatible location, if so use
# that directory for TMUX_PLUGIN_MANAGER_PATH. Otherwise use $DEFAULT_TPM_PATH.
set_default_tpm_path() { set_default_tpm_path() {
tmux set-environment -g "$DEFAULT_TPM_ENV_VAR_NAME" "$DEFAULT_TPM_PATH" local xdg_tmux_path="${XDG_CONFIG_HOME:-$HOME/.config}/tmux"
local tpm_path="$DEFAULT_TPM_PATH"
if [ -f "$xdg_tmux_path/tmux.conf" ]; then
tpm_path="$xdg_tmux_path/plugins/"
fi
tmux set-environment -g "$DEFAULT_TPM_ENV_VAR_NAME" "$tpm_path"
} }
# Ensures TMUX_PLUGIN_MANAGER_PATH global env variable is set. # Ensures TMUX_PLUGIN_MANAGER_PATH global env variable is set.