summaryrefslogtreecommitdiff
path: root/bm
diff options
context:
space:
mode:
authorzachir <zachir@librem.one>2025-08-30 09:40:41 -0500
committerzachir <zachir@librem.one>2025-08-30 09:40:41 -0500
commita26e6ae5253d95e7238dab20e298129a468e04f6 (patch)
tree859d057fa005024b4241a546b86713fafe9963b0 /bm
parentb3954287e7d50d744da3221677c89e108cff36c4 (diff)
Improve dmenu support
You can now (again) pass multiple flags to dmenu through -d flags, as well as for some scripts all args are passed to dmenu.
Diffstat (limited to 'bm')
-rwxr-xr-xbm8
1 files changed, 6 insertions, 2 deletions
diff --git a/bm b/bm
index 08bde92..95eec02 100755
--- a/bm
+++ b/bm
@@ -57,7 +57,7 @@ while getopts "hbBcrflmqxwd:u:" o; do case "${o}" in
m) SEL="MBC" ;;
q) SEL="QBC" ;;
c) SEL="CLIPB" ;;
- d) ARG="$OPTARG";;
+ d) ARG=${ARG:+"$ARG "}"$OPTARG" ;;
u) URL="$OPTARG " ;;
*) printhelp ;;
esac done
@@ -85,6 +85,10 @@ bra () {
}
#}}}
+dmenu_lp () {
+ dmenu -l 15 -p "$@"
+}
+
#{{{ main
if [ -n "$SEL" ]; then
case "$SEL" in
@@ -103,7 +107,7 @@ if [ -z "$CLIPB$BRA$BSC$FDC$FFC$LWC$MBC$QBC" ]; then
echo "$BROWSERSINSTALLED"
[ -z "$BROWSERSINSTALLED" ] && \
printf "No suitable browsers!\n" && exit 1
- BROWSERSEL="$(echo "$BROWSERSINSTALLED" | dmenu -l 10 -p "browser?" ${ARG:+"$ARG"})"
+ BROWSERSEL="$(echo "$BROWSERSINSTALLED" | dmenu_lp "browser?" ${ARG:+"$ARG"})"
[ -z "$BROWSERSEL" ] && \
printf "No browser selected!\n" && exit 1
case "$BROWSERSEL" in