#!/sbin/sh DMENU_PROMPT=$(playerctl -l | barmenu -p 'Players:') [ -z "$DMENU_PROMPT" ] && exit 1 PLAYERCONTROLS_PROMPT=$(echo "play pause play-pause stop next previous position volume status shuffle" | barmenu -p 'Action:') [ -z "$PLAYERCONTROLS_PROMPT" ] && exit 1 case "$PLAYERCONTROLS_PROMPT" in "pause"|"play"|"play-pause"|"stop"|"next"|"previous") playerctl -p "$DMENU_PROMPT" "$PLAYERCONTROLS_PROMPT" ;; "position") VALUE=$(seq -100 5 +100 | grep -v '^0$' | sed 's/^[0-9]/\+&/' | barmenu -p 'Position:') [ -z "$VALUE" ] && exit 1 playerctl -p "$DMENU_PROMPT" "$PLAYERCONTROLS_PROMPT" "$VALUE" ;; "volume") VALUE=$(set 0 5 100 |barmenu -p 'Volume:') [ -z "$VALUE" ] && exit 1 playerctl -p "$DMENU_PROMPT" "$PLAYERCONTROLS_PROMPT" "$VALUE" ;; "status") STATUS_MSG=$(playerctl -p "$DMENU_PROMPT" "$PLAYERCONTROLS_PROMPT") notify-send "$DMENU_PROMPT status" "$STATUS_MSG" ;; "shuffle") VALUE=$(echo "On Off Toggle Status" | barmenu -p "Shuffle:") [ -z "$VALUE" ] && exit 1 case "$VALUE" in "On"|"Off"|"Toggle") playerctl -p "$DMENU_PROMPT" "$PLAYERCONTROLS_PROMPT" "$VALUE" ;; "Status") STATUS_MSG=$(playerctl -p "$DMENU_PROMPT" "$PLAYERCONTROLS_PROMPT") notify-send "$DMENU_PROMPT shuffle status" "$STATUS_MSG" ;; *) exit 1 ;; esac ;; *) exit 1 ;; esac exit 0