Commit 3b2f827d authored by mahi97's avatar mahi97
Browse files

add Search Option for album,artist and tracks

parent 96d57dc3
......@@ -330,8 +330,48 @@ function spotify() {
case $arg in
"play" )
if [ $# != 1 ]; then
# There are additional arguments, so find out how many
array=( $@ );
len=${#array[@]};
SPOTIFY_SEARCH_API="https://api.spotify.com/v1/search"
SPOTIFY_PLAY_URI="";
searchAndPlay() {
type="$1"
Q="$2"
cecho "Searching ${type}s for: $Q";
SPOTIFY_PLAY_URI=$( \
curl -s -G $SPOTIFY_SEARCH_API --data-urlencode "q=$Q" -d "type=$type&limit=1&offset=0" -H "Accept: application/json" \
| grep -E -o "spotify:$type:[a-zA-Z0-9]+" -m 1
)
}
case $2 in
"album" | "artist" | "track" )
_args=${array[*]:2:$len};
searchAndPlay "$2" "$_args";;
* )
_args=${array[*]:1:$len};
searchAndPlay track "$_args";;
esac
if [ "$SPOTIFY_PLAY_URI" != "" ]; then
cecho "Playing ($Q Search) -> Spotify URL: $";
osascript -e "tell application \"Spotify\" to play track \"$SPOTIFY_PLAY_URI\"";
else
cecho "No results when searching for $Q";
fi
else
# play is the only param
cecho "Playing Spotify.";
osascript -e 'tell application "Spotify" to play';
fi
break ;;
"pause" )
......
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment