reimplement parsing in a case statement
This commit is contained in:
24
sxbm
24
sxbm
@ -135,13 +135,25 @@ bm_list(){
|
|||||||
|
|
||||||
bm_open(){
|
bm_open(){
|
||||||
[ -z "$1" ] && die "No arguments given"
|
[ -z "$1" ] && die "No arguments given"
|
||||||
|
while [ -n "$1" ]; do
|
||||||
if [ $( bm_list "$@" | wc -l ) -eq 1 ]; then
|
case "$1" in
|
||||||
|
"-f"|"--force")
|
||||||
|
local FORCE="1"
|
||||||
|
shift
|
||||||
|
;;
|
||||||
|
*)
|
||||||
local LINK=$( bm_list "-c" "$@" | awk '{print $2}' )
|
local LINK=$( bm_list "-c" "$@" | awk '{print $2}' )
|
||||||
else
|
shift "$#"
|
||||||
[ $( bm_list "$@" | wc -l ) -gt 1 ] &&
|
;;
|
||||||
die "Too many links" ||
|
esac
|
||||||
die "No links"
|
done
|
||||||
|
|
||||||
|
[ -z "$LINK" ] && die "No links found"
|
||||||
|
|
||||||
|
local LINK_NUM=$( printf "$LINK" | wc -l )
|
||||||
|
|
||||||
|
if [ "$LINK_NUM" -gt 0 ]; then
|
||||||
|
die "Too many links\nUse 'sxbm open -f' to force open them all\n\n$(bm_list "-c" "$@")"
|
||||||
fi
|
fi
|
||||||
|
|
||||||
$BROWSER $LINK
|
$BROWSER $LINK
|
||||||
|
|||||||
Reference in New Issue
Block a user