nvm: split out $NVM_DIR and $NVM_INSTALL_DIR

This commit is contained in:
Andrew Janke 2015-09-10 05:55:43 -04:00 committed by janke
commit 7f4707874f
3 changed files with 18 additions and 11 deletions

View file

@ -4,24 +4,29 @@
() {
emulate -L zsh
local nvm_dir="" dir install_locations
if [[ -n $NVM_DIR ]]; then
nvm_dir=$NVM_DIR
local nvm_install_dir="" dir install_locations
if [[ -n $NVM_INSTALL_DIR ]]; then
# User-specified path
nvm_install_dir=$NVM_INSTALL_DIR
else
# Well-known common installation locations for NVM
install_locations=( ~/.nvm )
[[ -n $NVM_DIR ]] && install_locations=($NVM_DIR $install_locations)
# Mac Homebrew sticks
which brew &>/dev/null && install_locations+=$(brew --prefix nvm)
for dir ($install_locations); do
if [[ -s $dir/nvm.sh ]]; then
nvm_dir=$dir
nvm_install_dir=$dir
break
fi
done
fi
if [[ -n $nvm_dir ]]; then
source $nvm_dir/nvm.sh
if [[ -n $nvm_install_dir ]]; then
source $nvm_install_dir/nvm.sh
else
# No NVM installation found
return 0
fi
# Locate and use the completion file shipped with NVM, instead of this
@ -31,8 +36,8 @@
local bash_comp_file
# Homebrew relocates the bash completion file, so look multiple places
for bash_comp_file ( bash_completion etc/bash_completion.d/nvm ); do
if [[ -s $NVM_DIR/$bash_comp_file ]]; then
source $NVM_DIR/$bash_comp_file
if [[ -s $nvm_install_dir/$bash_comp_file ]]; then
source $nvm_install_dir/$bash_comp_file
break;
fi
done