3e973080037ae68ac25a08545e7cdc60ba128900
- Author
- Keith Yao <i@yaofur.com>
- Committer
- Marc Cornellà <marc.cornella@live.com>
- Date
Message
nvm: speed-up nvm loading with `--no-use`
Closes #7138
Co-authored-by: Marc Cornellà <marc.cornella@live.com>
Diff
1diff --git a/plugins/nvm/nvm.plugin.zsh b/plugins/nvm/nvm.plugin.zsh
2index 21fb3112b1ab17b01acb1591326d7ccd05a72b5c..640f1d45c77c984940e4c63d9ea42fbdb3b31137 100644
3--- a/plugins/nvm/nvm.plugin.zsh
4+++ b/plugins/nvm/nvm.plugin.zsh
5@@ -12,15 +12,22 @@ which nvm &> /dev/null && return
6
7 if [[ -f "$NVM_DIR/nvm.sh" ]]; then
8 # Load nvm if it exists in $NVM_DIR
9- source "$NVM_DIR/nvm.sh"
10+ source "$NVM_DIR/nvm.sh" --no-use
11 else
12 # Otherwise try to load nvm installed via Homebrew
13 # User can set this if they have an unusual Homebrew setup
14 NVM_HOMEBREW="${NVM_HOMEBREW:-/usr/local/opt/nvm}"
15 # Load nvm from Homebrew location if it exists
16- [[ -f "$NVM_HOMEBREW/nvm.sh" ]] && source "$NVM_HOMEBREW/nvm.sh"
17+ [[ -f "$NVM_HOMEBREW/nvm.sh" ]] && source "$NVM_HOMEBREW/nvm.sh" --no-use
18 fi
19
20+# Call nvm when first using node, npm or yarn
21+function node npm yarn {
22+ unfunction node npm yarn
23+ nvm use default
24+ command "$0" "$@"
25+}
26+
27 # Load nvm bash completion
28 for nvm_completion in "$NVM_DIR/bash_completion" "$NVM_HOMEBREW/etc/bash_completion.d/nvm"; do
29 if [[ -f "$nvm_completion" ]]; then