Skip to content

Commit 51ef409

Browse files
committed
refactor: use ${array[@]:-}/${array[@]:+} simplify codes 🚞
1 parent 6da59cb commit 51ef409

File tree

5 files changed

+13
-11
lines changed

5 files changed

+13
-11
lines changed

bin/ap

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -130,7 +130,8 @@ while [ $# -gt 0 ]; do
130130
esac
131131
done
132132

133-
[ ${#files[@]} -eq 0 ] && files=(.)
133+
# if files is empty, use "."
134+
files=("${files[@]:-.}")
134135
readonly files
135136

136137
################################################################################

bin/find-in-jars

Lines changed: 1 addition & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -268,9 +268,7 @@ readonly dirs
268268
# convert extensions to find -iname options
269269
find_iname_options=()
270270
for e in "${extensions[@]}"; do
271-
(("${#find_iname_options[@]}" == 0)) &&
272-
find_iname_options=(-iname "*.$e") ||
273-
find_iname_options=("${find_iname_options[@]}" -o -iname "*.$e")
271+
find_iname_options=(${find_iname_options[@]:+"${find_iname_options[@]}" -o} -iname "*.$e")
274272
done
275273
readonly find_iname_options
276274

bin/uq

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -194,7 +194,7 @@ while (($# > 0)); do
194194
;;
195195
--)
196196
shift
197-
argv=("${argv[@]}" "$@")
197+
argv=(${argv[@]:+"${argv[@]}"} "$@")
198198
break
199199
;;
200200
-)

bin/xpl

Lines changed: 7 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -66,7 +66,7 @@ progVersion() {
6666
# parse options
6767
################################################################################
6868

69-
declare -a args=()
69+
declare -a files=()
7070
selected=false
7171
while [ $# -gt 0 ]; do
7272
case "$1" in
@@ -82,23 +82,26 @@ while [ $# -gt 0 ]; do
8282
;;
8383
--)
8484
shift
85-
args=(${args[@]:+"${args[@]}"} "$@")
85+
files=(${files[@]:+"${files[@]}"} "$@")
8686
break
8787
;;
8888
-*)
8989
usage 2 "${PROG}: unrecognized option '$1'"
9090
;;
9191
*)
92-
args=(${args[@]:+"${args[@]}"} "$1")
92+
files=(${files[@]:+"${files[@]}"} "$1")
9393
shift
9494
;;
9595
esac
9696
done
9797

98+
# if files is empty, use one element "."
99+
files=("${files[@]:-.}")
100+
98101
# if program name is xpf, set option selected!
99102
[ "xpf" == "${PROG}" ] && selected=true
100103

101-
readonly args selected
104+
readonly files selected
102105

103106
################################################################################
104107
# biz logic
@@ -143,7 +146,6 @@ openOneFile() {
143146
printf 'open %14s: %s\n' "$selected_msg" "$file"
144147
}
145148

146-
[ "${#args[@]}" == 0 ] && files=(.) || files=("${args[@]}")
147149
has_error=false
148150

149151
for file in "${files[@]}"; do

legacy-bin/swtrunk

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -27,7 +27,8 @@ greenEcho() {
2727
colorEcho 32 "$@"
2828
}
2929

30-
[ $# -eq 0 ] && dirs=(.) || dirs=("$@")
30+
# if dirs is empty, use "."
31+
dirs=("${dirs[@]:-.}")
3132

3233
for d in "${dirs[@]}"; do
3334
[ ! -d "${d}/.svn" ] && {

0 commit comments

Comments
 (0)