#!/bin/sh . $HOME/.bin/_config showlist() { printf '%s\n' \ "next prev play stop shuffle sort load tank load local --------- > $(amused status | head -1 | sed 's,/tank/pub/Audio_/,,g') ---------" amused show | cut -d'/' -f5- } SEL="$( showlist | $DMENU_CMD -p Playlist -l 30)" amused_shuffle() {( NOTIFY_CMD "shuffle started in background"; amused show | sort -R | amused load; NOTIFY_CMD "shuffle finished"; )&} amused_sort() {( NOTIFY_CMD "sorting started in background" amused show | sort -u | amused load NOTIFY_CMD "sorting finished" )&} amused_load_tank() {( NOTIFY_CMD "loading started in background" ssh 192.168.1.20 "find /tank/pub/Audio_* -type f" | grep -Ev "jpg|jpeg|png|gif|/[Cc]over\." | amused load NOTIFY_CMD "loading finished" )&} amused_load_local() {( NOTIFY_CMD "loading started in background" find /home/sdk/Music -type f | grep -Ev "jpg|jpeg|png|gif|/[Cc]over\." | amused load NOTIFY_CMD "loading finished" )&} amused_cmd() { amused "${@}" NOTIFY_CMD "$(amused status | head -1 | cut -d'/' -f5-)" } case "${SEL}" in play) amused_cmd play; ;; prev) amused_cmd prev; ;; stop) amused_cmd stop; ;; next) amused_cmd next; ;; shuffle) amused_shuffle; ;; sort) amused_sort; ;; load*tank) amused_load_tank; ;; load*local) amused_load_local; ;; *) amused_cmd jump "${SEL}"; ;; esac