diff --git a/dotfiles/.zshrc b/dotfiles/.zshrc index 1341e0b..a28a9d4 100644 --- a/dotfiles/.zshrc +++ b/dotfiles/.zshrc @@ -100,22 +100,25 @@ export NVM_DIR="$HOME/.nvm" [ -s "$NVM_DIR/bash_completion" ] && \. "$NVM_DIR/bash_completion" # This loads nvm bash_completion # Automatically use node version specified in .nvmrc if present -autoload -U add-zsh-hook -load-nvmrc() { - 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 - elif [ "$nvmrc_node_version" != "$(nvm version)" ]; then - nvm use +# Only enable if nvm is loaded +if command -v nvm_find_nvmrc > /dev/null 2>&1; then + autoload -U add-zsh-hook + load-nvmrc() { + 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 + elif [ "$nvmrc_node_version" != "$(nvm version)" ]; then + nvm use + fi + elif [ -n "$(PWD=$OLDPWD nvm_find_nvmrc)" ] && [ "$(nvm version)" != "$(nvm version default)" ]; then + nvm use default fi - elif [ -n "$(PWD=$OLDPWD nvm_find_nvmrc)" ] && [ "$(nvm version)" != "$(nvm version default)" ]; then - nvm use default - fi -} -add-zsh-hook chpwd load-nvmrc -load-nvmrc + } + add-zsh-hook chpwd load-nvmrc + load-nvmrc +fi [[ -s $HOME/.autojump/etc/profile.d/autojump.sh ]] && source $HOME/.autojump/etc/profile.d/autojump.sh