mirror of
https://github.com/ohmyzsh/ohmyzsh.git
synced 2026-05-22 04:51:12 +02:00
39 lines
No EOL
846 B
Bash
39 lines
No EOL
846 B
Bash
# Set NVM_DIR if it isn't already defined
|
|
[[ -z "$NVM_DIR" ]] && export NVM_DIR="$HOME/.nvm"
|
|
|
|
# Load nvm if it exists
|
|
[[ -f "$NVM_DIR/nvm.sh" ]] && source "$NVM_DIR/nvm.sh"
|
|
|
|
# Auto load version node if exists .nvmrc
|
|
[[ -n "$ZSH_NVM_AUTOLOAD" ]] || ZSH_NVM_AUTOLOAD=false
|
|
|
|
load-nvmrc() {
|
|
local node_version="$(nvm version)"
|
|
local nvmrc_path="$(nvm_find_nvmrc)"
|
|
|
|
if [ -n "$nvmrc_path" ]
|
|
then
|
|
local nvmrc_node_version=$(nvm version "$(cat "${nvmrc_path}")")
|
|
|
|
if [ "$nvmrc_node_version" = "N/A" ]
|
|
then
|
|
nvm install
|
|
fi
|
|
|
|
if [ "$nvmrc_node_version" != "$node_version" ]
|
|
then
|
|
nvm use
|
|
fi
|
|
elif [ "$node_version" != "$(nvm version default)" ]
|
|
then
|
|
echo "Reverting to nvm default version"
|
|
nvm use default
|
|
fi
|
|
}
|
|
|
|
if [[ "$ZSH_NVM_AUTOLOAD" == "true" ]]
|
|
then
|
|
autoload -U add-zsh-hook
|
|
add-zsh-hook chpwd load-nvmrc
|
|
load-nvmrc
|
|
fi |