summaryrefslogtreecommitdiff
path: root/dmenuumount
diff options
context:
space:
mode:
authorzachir <zachir@librem.one>2025-08-30 09:47:00 -0500
committerzachir <zachir@librem.one>2025-08-30 09:47:00 -0500
commit6d4b7d826830e25b7bbe254519a1c4906284b481 (patch)
tree684046c969c6887f824aff8c0a52854eec7c52aa /dmenuumount
parenta1a6bba5f661f240ce7cf5bf623327f4b073e77a (diff)
Improve dmenu support
Diffstat (limited to 'dmenuumount')
-rwxr-xr-xdmenuumount13
1 files changed, 7 insertions, 6 deletions
diff --git a/dmenuumount b/dmenuumount
index 59383f1..32175f2 100755
--- a/dmenuumount
+++ b/dmenuumount
@@ -11,29 +11,30 @@ printhelp () {
}
while getopts "hd:" o; do case "${o}" in
- d) ARGS="$ARGS$OPTARG " ;;
+ d) ARG=${ARG:+"$ARG "}"$OPTARG" ;;
*) printhelp ;;
esac done
-DMENU="dmenu"
-DEFARGS="-l 15 -p"
+dmenu_lp () {
+ dmenu -l 15 -p "$@"
+}
unmountusb() {
[ -z "$drives" ] && exit
- chosen="$(echo "$drives" | $DMENU $DEFARGS "Unmount which drive?" $ARGS)" || exit 1
+ chosen="$(echo "$drives" | dmenu_lp "Unmount which drive?" ${ARG:+"$ARG"})" || exit 1
chosen="$(echo "$chosen" | awk '{print $1}')"
[ -z "$chosen" ] && exit
sudo umount "$chosen" && notify-send "💻 USB unmounting" "$chosen unmounted."
}
unmountandroid() { \
- chosen="$(awk '/simple-mtpfs/ {print $2}' /etc/mtab | $DMENU $DEFARGS "Unmount which device?" $ARGS )" || exit 1
+ chosen="$(awk '/simple-mtpfs/ {print $2}' /etc/mtab | dmenu_lp "Unmount which device?" ${ARG:+"$ARG"} )" || exit 1
[ -z "$chosen" ] && exit
sudo umount -l "$chosen" && notify-send "🤖 Android unmounting" "$chosen unmounted."
}
asktype() { \
- choice="$(printf "USB\\nAndroid" | $DMENU $DEFARGS "Unmount a USB drive or Android device?" $ARGS)" || exit 1
+ choice="$(printf "USB\\nAndroid" | dmenu_lp "Unmount a USB drive or Android device?" ${ARG:+"$ARG"})" || exit 1
case "$choice" in
USB) unmountusb ;;
Android) unmountandroid ;;