remove local since its not POSIX complaint

should be fine for the most part. most of the fucntions are self
contained.

only function that gets called inside of other functions is
bm_list(). all the variables inside bm_list() start with QUERY thus it
shouldn't conflict with variables from other functions.
This commit is contained in:
NRK
2021-06-02 02:00:42 +06:00
parent 21d34ac412
commit ba11421af0

24
sxbm
View File

@ -65,14 +65,14 @@ bm_add(){
# TODO while functional, this is extremely fucking stupid. # TODO while functional, this is extremely fucking stupid.
# there has to be a better way to do this. # there has to be a better way to do this.
local LINK=$( echo "$@" | grep -o "[^[:space:]]\+\.[^[:space:]]\+" ) LINK=$( echo "$@" | grep -o "[^[:space:]]\+\.[^[:space:]]\+" )
[ -z "$LINK" ] && die "No links found" [ -z "$LINK" ] && die "No links found"
[ "$( echo "$LINK" | wc -l )" -gt 1 ] && die "Too many links!!\n$LINK" [ "$( echo "$LINK" | wc -l )" -gt 1 ] && die "Too many links!!\n$LINK"
local REMAINING=$( echo "$@" | tr " " "\n" | grep -v "[^[:space:]]\+\.[^[:space:]]\+" ) REMAINING=$( echo "$@" | tr " " "\n" | grep -v "[^[:space:]]\+\.[^[:space:]]\+" )
[ -n "$REMAINING" ] && [ -n "$REMAINING" ] &&
local TAGS=$( echo "$REMAINING" | grep "^\\+[^[:space:]]" | tr "\n" " " ) && TAGS=$( echo "$REMAINING" | grep "^\\+[^[:space:]]" | tr "\n" " " ) &&
local TITLE=$( echo "$REMAINING" | grep -v "^\\+[^[:space:]]" | tr "\n" " " ) TITLE=$( echo "$REMAINING" | grep -v "^\\+[^[:space:]]" | tr "\n" " " )
echo "$LINK $TITLE $TAGS" >> $DATA_FILE && echo "$LINK $TITLE $TAGS" >> $DATA_FILE &&
echo "Link $(wc -l < "$DATA_FILE") added successfully!" || echo "Link $(wc -l < "$DATA_FILE") added successfully!" ||
@ -80,9 +80,9 @@ bm_add(){
} }
bm_list(){ bm_list(){
local QUERY_TAG QUERY_TAG=""
local QUERY_TITLE QUERY_TITLE=""
local QUERY_STRICT="||" QUERY_STRICT="||"
while [ -n "$1" ]; do while [ -n "$1" ]; do
case "$1" in case "$1" in
@ -91,7 +91,7 @@ bm_list(){
shift shift
;; ;;
"-s"|"--strict") "-s"|"--strict")
local QUERY_STRICT="&&" QUERY_STRICT="&&"
shift shift
;; ;;
*) *)
@ -144,19 +144,19 @@ bm_list(){
bm_open(){ bm_open(){
if [ "$1" = "-f" ] || [ "$1" = "--force" ]; then if [ "$1" = "-f" ] || [ "$1" = "--force" ]; then
local FORCE=1 FORCE=1
shift shift
fi fi
[ -z "$1" ] && die "No arguments given" [ -z "$1" ] && die "No arguments given"
if [ -z "$2" ] && [ "$1" -eq "$1" 2>/dev/null ]; then if [ -z "$2" ] && [ "$1" -eq "$1" 2>/dev/null ]; then
local LINK=$( awk -v F="$1" 'NR == F {print NR" "$1}' $DATA_FILE ) LINK=$( awk -v F="$1" 'NR == F {print NR" "$1}' $DATA_FILE )
else else
local LINK=$( bm_list "-c" "$@" ) LINK=$( bm_list "-c" "$@" )
fi fi
[ -n "$LINK" ] && [ -n "$LINK" ] &&
local LINK_NUM=$( echo "$LINK" | wc -l ) || LINK_NUM=$( echo "$LINK" | wc -l ) ||
die "No links found" die "No links found"
if [ "$LINK_NUM" -gt 1 ] && [ -z "$FORCE" ]; then if [ "$LINK_NUM" -gt 1 ] && [ -z "$FORCE" ]; then