1
0
Fork 0
oh-my-zsh/plugins/direnv/direnv.plugin.zsh

20 lines
609 B
Bash
Raw Permalink Normal View History

# If direnv is not found, don't continue and print a warning
if (( ! $+commands[direnv] )); then
echo "Warning: direnv not found. Please install direnv and ensure it's in your PATH before using this plugin."
return
fi
2020-03-20 13:38:40 +01:00
_direnv_hook() {
trap -- '' SIGINT;
eval "$(direnv export zsh)";
2020-03-20 13:38:40 +01:00
trap - SIGINT;
}
typeset -ag precmd_functions;
if [[ -z "${precmd_functions[(r)_direnv_hook]+1}" ]]; then
2020-03-20 13:38:40 +01:00
precmd_functions=( _direnv_hook ${precmd_functions[@]} )
fi
typeset -ag chpwd_functions;
if [[ -z "${chpwd_functions[(r)_direnv_hook]+1}" ]]; then
2020-03-20 13:38:40 +01:00
chpwd_functions=( _direnv_hook ${chpwd_functions[@]} )
fi