@@ -53,7 +53,7 @@ contains() {
5353 # if [ ${#contains_list__[@]} -gt 1 ]; then
5454 # contains_list__="${contains_list__[@]}"
5555 # fi
56- if [[ ! " ${contains_list__[@]} " =~ " (|'" ' |"' " )$2 (|'" ' |"' " ) " ] ]; then
56+ if [] ! " ${contains_list__[@]} " =~ " (|'" ' |"' " )$2 (|'" ' |"' " ) " ]; then
5757 echo ' true'
5858 fi
5959 # [[ $contains_list__ =~ (^|[[:space:]])(|'"'|"'")$2(|'"'|"'")($|[[:space:]]) ]] && echo 'true' || echo ''
@@ -81,156 +81,6 @@ string_to_array()
8181 IFS=$old_SEP
8282}
8383
84- parse_arguments ()
85- {
86- local old_SEP=$IFS
87- local -n parse_arguments_args=" $1 "
88- # echo "0.str: $@"
89- if [ $# -gt 0 ]; then
90- has_args=" true"
91- local str=" $( echo " $@ " | sed -e ' s/--/-_sep_/g' | sed -e ' s/ -/§/g' ) "
92- # echo "str: $str"
93- IFS=" §" ; read -ra array <<< " $str" ;
94- local c=$( echo " ${array[0]} " | grep ' -' -c)
95- if [ $c -eq 0 ]; then
96- shift
97- if [ $# -eq 0 ]; then
98- IFS=$old_SEP
99- return
100- fi
101- local str=" $( echo " $@ " | sed -e ' s/--/-_sep_/g' | sed -e ' s/ -/§/g' ) "
102- # echo "str: $str"
103- IFS=" §" ; read -ra array <<< " $str" ;
104- fi
105- # echo "str: $str"
106- # echo "array: ${array[@]}"
107- for s in " ${array[@]} "
108- do
109- # echo "0:s: $s"
110- if [ ! " $s " ] || [ " $s " = " " ]; then
111- continue
112- fi
113- local s=" $( echo " $s " | xargs -d ' ' | tr -d ' \n' ) "
114- # echo "s: $s"
115- local s=" $( echo " -$s " | sed -e ' s/_sep_/-/g' ) "
116- # echo "s: $s"
117- arg=()
118- if [ $( grep ' =' -c <<< $s ) -gt 0 ]; then
119- IFS=' =' ; read -ra arg <<< " $s"
120- # echo "eq.arg: { key: ${arg[0]}, value: ${arg[1]} }"
121- else
122- IFS=' ' ; read -ra arg_ <<< " $s"
123- arg[0]=" ${arg_[0]} "
124- arg[1]=" ${arg_[@]: 1} "
125- # echo "space.arg: { key: ${arg[0]}, value: ${arg[1]} }"
126- fi
127- # echo "%%% ${arg[@]}"
128-
129- local key=" ${arg[0]} "
130- # echo "key: $key"
131- if [ ! " $key " = " -n" ]; then
132- local key=" $( echo " ${arg[0]} " | xargs -d ' ' | tr -d ' \n' ) "
133- fi
134- local value=" ${arg[1]} "
135- # echo "key: $key, value: $value"
136-
137- if [ ! " $value " ]; then
138- local c=$( echo " $s " | grep ' ' -c)
139- if [ $c -gt 0 ]; then
140- IFS=' ' ; read -ra arg <<< " $s"
141- local key=" $( echo " ${arg[0]} " ) "
142- local value=" $( echo " $s " | sed -e " s/$key //g" | xargs -d ' ' | tr -d ' \n' ) "
143- fi
144- fi
145- local value=" ${value:- true} "
146- if [ " $key " ]; then
147- if [ " $key " != " -n" ]; then
148- key=" $( echo " $key " | sed -e " s/---/--/g" | xargs -d ' ' | tr -d ' \n' ) "
149- fi
150- if [ " $key " != " -" ]; then
151- local value=$( echo " $value " | xargs -d ' ' | tr -d ' \n' )
152- old_value=${parse_arguments_args["$key"]}
153- if [ " $old_value " != " $value " ]; then
154- if [ " $old_value " ] && [ " $value " != " true" ]; then
155- if [ ! " $argument_single_mode " ] && [ " $value " ]; then
156- value=" $old_value ,$value "
157- else
158- value=" $old_value "
159- fi
160- fi
161- # if [ "$old_value" ]; then
162- # print_gray "old_value: [$old_value], value: [$value]"
163- # fi
164-
165- parse_arguments_args[" $key " ]=" $value "
166- fi
167- fi
168- fi
169- done
170- fi
171-
172- get_arg verbose ' --verbose'
173- if [ " $verbose " ]; then
174- debug=" true"
175- for key in " ${! parse_arguments_args[@]} " ;
176- do
177- key=" ${key} "
178- value=" ${parse_arguments_args[${key}]} "
179- done
180- fi
181- IFS=$old_SEP
182- }
183-
184- get_arg ()
185- {
186- local -n value=" $1 "
187- local old_SEP=$IFS
188- local global=" true"
189- if [ " $4 " ]; then
190- local -n get_arg_args=" $4 "
191- fi
192-
193- if [ " $5 " ]; then
194- local global=" $5 "
195- fi
196-
197- if [ " $global " != " true" ]; then
198- value=" "
199- fi
200-
201- # echo "keys: $2"
202- IFS=" ," ; read -ra keys <<< " $2" ;
203- for key in " ${keys[@]} "
204- do
205- if [ ! " $key " = " -n" ]; then
206- key=" $( echo " $key " | xargs -d ' ' | tr -d ' \n' ) "
207- fi
208- key_value=" "
209- if [ ! " $4 " ]; then
210- key_value=" ${ARGS[$key]} "
211- else
212- key_value=" ${get_arg_args[$key]} "
213- fi
214- if [ " $key_value " ]; then
215- if [ ! " $argument_single_mode " ] && [ " $value " ] && [ " $value " != " true" ]; then
216- value=" $value ,$key_value "
217- else
218- value=" $key_value "
219- fi
220- fi
221- done
222-
223- if [ ! " $value " ] && [ " $3 " ]; then
224- value=" $3 "
225- fi
226- IFS=$old_SEP
227- if [ " $value " ] && [ " $1 " != " debug" ] && [ " $1 " != " verbose" ]; then
228- if [ " $global " == " true" ]; then
229- print_verbose " Loaded argument $1 :'$value '"
230- fi
231- fi
232- }
233-
23484fix_print_message ()
23585{
23686 msg=" $( echo " $1 " | sed -e ' s/%/%%/g' ) "
@@ -738,18 +588,8 @@ git__setup()
738588}
739589
740590if [ ! " $include_loaded " ]; then
741- declare -A ARGS
742-
743- first_param=" $3 "
744- shift
745- parse_arguments ARGS $@
746-
747591 curr_dir=" $( pwd) "
748592 namespace_filter=" -A"
749-
750- get_arg silent ' --silent'
751- get_arg verbose ' --verbose'
752- get_arg debug ' --debug' " $verbose "
753593
754594 include_main
755595fi
0 commit comments