zsh/plugins/nvm/nvm.plugin.zsh
2025-11-24 11:15:24 +01:00

33 lines
627 B
Bash

typeset -a chpwd_functions __chromaz_extra_left
export NVM_DIR="$HOME/.nvm"
nvm() {
[ -s "$NVM_DIR/nvm.sh" ] && \. "$NVM_DIR/nvm.sh"
nvm "$@"
}
_prompt_nvm_version() {
[[ -z $NVM_BIN ]] && return
echo "nvm: ${NVM_BIN:h:t}"
}
__chromaz_extra_left+=_prompt_nvm_version
find-nvmrc-version() {
local dir=${1:-${PWD:a}}
if [[ $dir == / ]]; then return 1; fi
if [[ -e $dir/.nvmrc ]]; then
< $dir/.nvmrc
else
find-nvmrc-version ${dir:h}
fi
}
chpwd-set-nvm() {
if vers=$(find-nvmrc-version); then
if [[ $vers != ${NVM_BIN:h:t} ]]; then
nvm use
fi
fi
}
chpwd-set-nvm &>/dev/null
chpwd_functions+=chpwd-set-nvm