@@ -307,7 +307,7 @@ nvm_is_valid_version() {
307
307
}
308
308
309
309
nvm_normalize_version () {
310
- echo " $1 " | command sed -e ' s/^v// ' | command awk -F. ' { printf("%d%06d%06d\n", $1,$2,$3); }'
310
+ echo " ${1 # v * } " | command awk -F. ' { printf("%d%06d%06d\n", $1,$2,$3); }'
311
311
}
312
312
313
313
nvm_ensure_version_prefix () {
@@ -324,8 +324,7 @@ nvm_format_version() {
324
324
local VERSION
325
325
VERSION=" $( nvm_ensure_version_prefix " $1 " ) "
326
326
if [ " _$( nvm_num_version_groups " $VERSION " ) " != " _3" ]; then
327
- VERSION=" $( echo " $VERSION " | command sed -e ' s/\.*$/.0/' ) "
328
- nvm_format_version " $VERSION "
327
+ nvm_format_version " ${VERSION%* \. } .0"
329
328
else
330
329
echo " $VERSION "
331
330
fi
@@ -338,10 +337,12 @@ nvm_num_version_groups() {
338
337
echo " 0"
339
338
return
340
339
fi
340
+ VERSION=" ${VERSION# v* } "
341
+ VERSION=" ${VERSION% \. } "
341
342
local NVM_NUM_DOTS
342
- NVM_NUM_DOTS=$( echo " $VERSION " | command sed -e ' s/^v// ' | command sed -e ' s/\.$// ' | command sed -e ' s/ [^\.]//g' )
343
+ NVM_NUM_DOTS=$( echo " $VERSION " | command sed -e ' s/[^\.]//g' )
343
344
local NVM_NUM_GROUPS
344
- NVM_NUM_GROUPS=" .$NVM_NUM_DOTS "
345
+ NVM_NUM_GROUPS=" .$NVM_NUM_DOTS " # add extra dot, since it's (n - 1) dots at this point
345
346
echo " ${# NVM_NUM_GROUPS} "
346
347
}
347
348
@@ -509,7 +510,7 @@ nvm_strip_iojs_prefix() {
509
510
if [ " _$1 " = " _$NVM_IOJS_PREFIX " ]; then
510
511
echo
511
512
else
512
- echo " $1 " | command sed " s/^ $NVM_IOJS_PREFIX -// "
513
+ echo " ${1 # " $NVM_IOJS_PREFIX " - * } "
513
514
fi
514
515
}
515
516
@@ -564,7 +565,7 @@ nvm_ls() {
564
565
local NUM_VERSION_GROUPS
565
566
NUM_VERSION_GROUPS=" $( nvm_num_version_groups " $PATTERN " ) "
566
567
if [ " _$NUM_VERSION_GROUPS " = " _2" ] || [ " _$NUM_VERSION_GROUPS " = " _1" ]; then
567
- PATTERN=" $( echo " $ PATTERN" | command sed -e ' s/\.*$//g ' ) ."
568
+ PATTERN=" ${ PATTERN%* \. } ."
568
569
fi
569
570
;;
570
571
esac
0 commit comments