From 9683987b2910be84e0c71774f8f3a545031a3aa4 Mon Sep 17 00:00:00 2001 From: Ismo Vuorinen <11024+ivuorinen@users.noreply.github.com> Date: Mon, 25 Nov 2024 13:36:02 +0200 Subject: [PATCH] Create nvm-auto-use.plugin.zsh --- nvm-auto-use.plugin.zsh | 26 ++++++++++++++++++++++++++ 1 file changed, 26 insertions(+) create mode 100644 nvm-auto-use.plugin.zsh diff --git a/nvm-auto-use.plugin.zsh b/nvm-auto-use.plugin.zsh new file mode 100644 index 0000000..8610962 --- /dev/null +++ b/nvm-auto-use.plugin.zsh @@ -0,0 +1,26 @@ +# shellcheck shell=zsh +# Source: https://github.com/nvm-sh/nvm#zsh +# place this after nvm initialization! +autoload -U add-zsh-hook + +load-nvmrc() { + local nvmrc_path + nvmrc_path="$(nvm_find_nvmrc)" + + if [ -n "$nvmrc_path" ]; then + local nvmrc_node_version + 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 + echo "Reverting to nvm default version" + nvm use default + fi +} + +add-zsh-hook chpwd load-nvmrc +load-nvmrc