diff options
Diffstat (limited to 'm')
| -rwxr-xr-x | m | 33 |
1 files changed, 33 insertions, 0 deletions
@@ -0,0 +1,33 @@ +#!/bin/dash + +case "$1" in + "") socat - tcp-connect:localhost:6600 | grep -v '^OK' | sed 's/^$//';; + "dir") shift; ls "$1" | sed "s/\*//" | sed -e "$(echo 's/^/'"$(echo "$1/" | $0 strip )"'\//')" | egrep '\.(mp3|ogg|aac|flac|wav|mid|mp4|mp2|mod|mpc|mpp)';; + "strip") sed 's/\/$//' | sed 's:\(.*\/\)*\(.*\/\)*:\2\\/:' | sed 's/^\\\///' ;; + "get") shift; grep -i "^$1:" | sed 's|^'$1': \(.*\)|\1|i' ;; + "add") sed 's|\(.*\)|add \"\1\"|' | $0 ;; + "filter") shift; eval $(perl -e 'print join ("|",map { "grep -i " . $_ } @ARGV);' $*) ;; + "cmdlist") sed -e '1i command_list_begin' -e '$a command_list_end' ;; + "queue") gawk '{i--;printf "addid \"%s\" %d\n", $0, i}' ;; + "newlist") sed -e '1i clear' -e '$a play' ;; + "toggle") sed -e 's#state: \(stop\|pause\)#play#' -e 's#state: play#pause#' | tr 01 10 | tr -d : ;; + "reset-pl") echo add / | $0 newlist | $0 ;; + + "w") $0 clear ;; + "d") $0 delete $2 ;; + "t") $0 status | grep state | $0 toggle | $0 ;; + "c") $0 currentsong ;; + "l") $0 playlist ;; + "g") $0 play `[ "$2" = "" ] && cat - || echo $2`;; + "n") $0 next ;; + "p") $0 previous ;; + "s") $0 search $2 $3 ;; + "ss") $0 playlistsearch $2 $3 ;; + *) echo $* | $0 ;; +esac + +# Depreciated: +# "n") $0 g $(dc -e "$($0 cs | grep '^Pos:' | cut -c 6-) 1 + $($0 ls | wc -l) %p");; # awesome, but unnecessary +# "qry") $0 listall | $0 get | $0 filter $* ;; +# "n") $0 g $($0 status | $0 get nextsongid) ;; +# "p") $0 g $(dc -e "$($0 cs | grep '^Pos:' | cut -c 6-) 1 - p");; |
