mirror of
https://github.com/ohmyzsh/ohmyzsh.git
synced 2024-11-19 21:41:07 +01:00
itunes playlist first commit (#5860)
Added playlist feature for the itunes command: if a variable is passed and is valid - will play the playlist if a variable is passed and is invalid(no such playlist) - will stop all playing if no variable is passed will print all playlists available on the host
This commit is contained in:
parent
ef9f3d97f0
commit
d874c73f19
1 changed files with 15 additions and 0 deletions
|
@ -184,6 +184,7 @@ function vncviewer() {
|
|||
# iTunes control function
|
||||
function itunes() {
|
||||
local opt=$1
|
||||
local playlist=$2
|
||||
shift
|
||||
case "$opt" in
|
||||
launch|play|pause|stop|rewind|resume|quit)
|
||||
|
@ -200,6 +201,19 @@ function itunes() {
|
|||
vol)
|
||||
opt="set sound volume to $1" #$1 Due to the shift
|
||||
;;
|
||||
playlist)
|
||||
# Inspired by: https://gist.github.com/nakajijapan/ac8b45371064ae98ea7f
|
||||
if [[ ! -z "$playlist" ]]; then
|
||||
osascript -e 'tell application "iTunes"' -e "set new_playlist to \"$playlist\" as string" -e "play playlist new_playlist" -e "end tell" 2>/dev/null;
|
||||
if [[ $? -eq 0 ]]; then
|
||||
opt="play"
|
||||
else
|
||||
opt="stop"
|
||||
fi
|
||||
else
|
||||
opt="set allPlaylists to (get name of every playlist)"
|
||||
fi
|
||||
;;
|
||||
playing|status)
|
||||
local state=`osascript -e 'tell application "iTunes" to player state as string'`
|
||||
if [[ "$state" = "playing" ]]; then
|
||||
|
@ -250,6 +264,7 @@ EOF
|
|||
echo "\tshuf|shuffle [on|off|toggle]\tSet shuffled playback. Default: toggle. Note: toggle doesn't support the MiniPlayer."
|
||||
echo "\tvol\tSet the volume, takes an argument from 0 to 100"
|
||||
echo "\tplaying|status\tShow what song is currently playing in iTunes."
|
||||
echo "\tplaylist [playlist name]\t Play specific playlist"
|
||||
echo "\thelp\tshow this message and exit"
|
||||
return 0
|
||||
;;
|
||||
|
|
Loading…
Reference in a new issue