@@ -2325,7 +2325,7 @@ $NVM_LS_REMOTE_POST_MERGED_OUTPUT" | command grep -v "N/A" | command sed '/^$/d'
2325
2325
nvm_print_npm_version nvm_npm_global_modules \
2326
2326
nvm_has_system_node nvm_has_system_iojs \
2327
2327
nvm_download nvm_get_latest nvm_has nvm_get_latest \
2328
- nvm_supports_source_options nvm_supports_xz > /dev/null 2>&1
2328
+ nvm_supports_source_options nvm_auto nvm_supports_xz > /dev/null 2>&1
2329
2329
unset RC_VERSION NVM_NODEJS_ORG_MIRROR NVM_DIR NVM_CD_FLAGS > /dev/null 2>&1
2330
2330
;;
2331
2331
* )
@@ -2343,17 +2343,41 @@ nvm_supports_xz() {
2343
2343
command which xz > /dev/null 2>&1 && nvm_version_greater_than_or_equal_to " $1 " " 2.3.2"
2344
2344
}
2345
2345
2346
- NVM_VERSION=" $( nvm_alias default 2> /dev/null || echo) "
2347
- if nvm_supports_source_options && [ " $# " -gt 0 ] && [ " _$1 " = " _--install" ]; then
2348
- if [ -n " $NVM_VERSION " ]; then
2349
- nvm install " $NVM_VERSION " > /dev/null
2350
- elif nvm_rc_version > /dev/null 2>&1 ; then
2351
- nvm install > /dev/null
2346
+ nvm_auto () {
2347
+ local NVM_MODE
2348
+ NVM_MODE=" ${1-} "
2349
+ local VERSION
2350
+ if [ " _$NVM_MODE " = ' _install' ]; then
2351
+ VERSION=" $( nvm_alias default 2> /dev/null || echo) "
2352
+ if [ -n " $VERSION " ]; then
2353
+ nvm install " $VERSION " > /dev/null
2354
+ elif nvm_rc_version > /dev/null 2>&1 ; then
2355
+ nvm install > /dev/null
2356
+ fi
2357
+ elif [ " _$NVM_MODE " = ' _use' ]; then
2358
+ VERSION=" $( nvm_alias default 2> /dev/null || echo) "
2359
+ if [ -n " $VERSION " ]; then
2360
+ nvm use --silent " $VERSION " > /dev/null
2361
+ elif nvm_rc_version > /dev/null 2>&1 ; then
2362
+ nvm use --silent > /dev/null
2363
+ fi
2364
+ elif [ " _$NVM_MODE " != ' _none' ]; then
2365
+ echo >&2 ' Invalid auto mode supplied.'
2366
+ return 1
2352
2367
fi
2353
- elif [ -n " $NVM_VERSION " ]; then
2354
- nvm use --silent " $NVM_VERSION " > /dev/null
2355
- elif nvm_rc_version > /dev/null 2>&1 ; then
2356
- nvm use --silent > /dev/null
2368
+ }
2369
+
2370
+ NVM_AUTO_MODE=' use'
2371
+ if nvm_supports_source_options; then
2372
+ while [ $# -ne 0 ]
2373
+ do
2374
+ case " $1 " in
2375
+ --install) NVM_AUTO_MODE=' install' ;;
2376
+ --no-use) NVM_AUTO_MODE=' none' ;;
2377
+ esac
2378
+ shift
2379
+ done
2357
2380
fi
2381
+ nvm_auto " $NVM_AUTO_MODE "
2358
2382
2359
2383
} # this ensures the entire script is downloaded #
0 commit comments