From 3e973080037ae68ac25a08545e7cdc60ba128900 Mon Sep 17 00:00:00 2001 From: Keith Yao Date: Mon, 17 Sep 2018 11:14:29 +0200 Subject: [PATCH] nvm: speed-up nvm loading with `--no-use` MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Closes #7138 Co-authored-by: Marc Cornellà --- plugins/nvm/nvm.plugin.zsh | 11 +++++++++-- 1 file changed, 9 insertions(+), 2 deletions(-) diff --git a/plugins/nvm/nvm.plugin.zsh b/plugins/nvm/nvm.plugin.zsh index 21fb3112b..640f1d45c 100644 --- a/plugins/nvm/nvm.plugin.zsh +++ b/plugins/nvm/nvm.plugin.zsh @@ -12,15 +12,22 @@ which nvm &> /dev/null && return if [[ -f "$NVM_DIR/nvm.sh" ]]; then # Load nvm if it exists in $NVM_DIR - source "$NVM_DIR/nvm.sh" + source "$NVM_DIR/nvm.sh" --no-use else # Otherwise try to load nvm installed via Homebrew # User can set this if they have an unusual Homebrew setup NVM_HOMEBREW="${NVM_HOMEBREW:-/usr/local/opt/nvm}" # Load nvm from Homebrew location if it exists - [[ -f "$NVM_HOMEBREW/nvm.sh" ]] && source "$NVM_HOMEBREW/nvm.sh" + [[ -f "$NVM_HOMEBREW/nvm.sh" ]] && source "$NVM_HOMEBREW/nvm.sh" --no-use fi +# Call nvm when first using node, npm or yarn +function node npm yarn { + unfunction node npm yarn + nvm use default + command "$0" "$@" +} + # Load nvm bash completion for nvm_completion in "$NVM_DIR/bash_completion" "$NVM_HOMEBREW/etc/bash_completion.d/nvm"; do if [[ -f "$nvm_completion" ]]; then