diff options
Diffstat (limited to 'plugins/nvm/nvm.plugin.zsh')
-rw-r--r-- | plugins/nvm/nvm.plugin.zsh | 23 |
1 files changed, 19 insertions, 4 deletions
diff --git a/plugins/nvm/nvm.plugin.zsh b/plugins/nvm/nvm.plugin.zsh index 4bab8e9d7..2264a2420 100644 --- a/plugins/nvm/nvm.plugin.zsh +++ b/plugins/nvm/nvm.plugin.zsh @@ -1,8 +1,23 @@ # Set NVM_DIR if it isn't already defined [[ -z "$NVM_DIR" ]] && export NVM_DIR="$HOME/.nvm" -# Try to load nvm only if command not already available -if ! type "nvm" &> /dev/null; then - # Load nvm if it exists - [[ -f "$NVM_DIR/nvm.sh" ]] && source "$NVM_DIR/nvm.sh" +# Don't try to load nvm if command already available +type "nvm" &> /dev/null && return + +# Load nvm if it exists in $NVM_DIR +if [[ -f "$NVM_DIR/nvm.sh" ]]; then + source "$NVM_DIR/nvm.sh" + return +fi + +# 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" +# Load nvm bash completion from Homebrew if it exists +if [[ -f "$NVM_HOMEBREW/etc/bash_completion.d/nvm" ]]; then + autoload -U +X bashcompinit && bashcompinit + source "$NVM_HOMEBREW/etc/bash_completion.d/nvm" fi |