@@ -50,28 +50,31 @@ function __sdkman_set_candidate_home() {
5050}
5151
5252function __sdkman_export_candidate_home() {
53- local candidate_name=" $1 "
54- local candidate_dir=" $2 "
55- local candidate_home_var=" $( echo ${candidate_name} | tr ' [:lower:]' ' [:upper:]' ) _HOME"
56- export $( echo " $candidate_home_var " ) =" $candidate_dir "
57- }
53+ local candidate_name candidate_dir ucase_candidate_name
54+
55+ candidate_name=" $1 "
56+ candidate_dir=" $2 "
5857
59- function __sdkman_determine_candidate_bin_dir() {
60- local candidate_dir =" $1 "
61- if [[ -d " ${candidate_dir} /bin " ] ]; then
62- echo " ${candidate_dir} /bin "
58+ if [ " $zsh_shell " = true ] ; then
59+ ucase_candidate_name =" ${candidate_name : u} "
60+ elif [ " $bash_shell " = true ]; then
61+ ucase_candidate_name= " ${candidate_name^^} "
6362 else
64- echo " $candidate_dir "
63+ ucase_candidate_name= " $( printf %s " $candidate_name " | tr ' [:lower:] ' ' [:upper:] ' ) "
6564 fi
65+
66+ export " ${ucase_candidate_name} _HOME=$candidate_dir "
6667}
6768
6869function __sdkman_prepend_candidate_to_path() {
69- local candidate_dir candidate_bin_dir
70+ local candidate_dir
7071
7172 candidate_dir=" $1 "
72- candidate_bin_dir=$( __sdkman_determine_candidate_bin_dir " $candidate_dir " )
73- echo " $PATH " | grep -q " $candidate_dir " || PATH=" ${candidate_bin_dir} :${PATH} "
74- unset CANDIDATE_BIN_DIR
73+
74+ if [ -d " ${candidate_dir} /bin" ]; then
75+ candidate_dir=" ${candidate_dir} /bin"
76+ fi
77+ [[ " :$PATH :" == * " :$candidate_dir :" * ]] || PATH=" ${candidate_dir} :${PATH} "
7578}
7679
7780function __sdkman_link_candidate_version() {
0 commit comments