From a746e6010ae2b260213f081789eaff01865f5664 Mon Sep 17 00:00:00 2001 From: Andy Bateman Date: Mon, 14 Sep 2015 19:27:41 +1200 Subject: [PATCH] Update osx.plugin.zsh Added function to display the song you're currently listening to in iTunes Fixed indent Indentation on line 169 was squiffy Fixed spelling Removed unnecessary wording to make function more succinct. Highlighting of Artist and Track Changed the highlighting of the Track and Artist in yellow to make use of Prompt Expansion Colors --- plugins/osx/osx.plugin.zsh | 10 ++++++++++ 1 file changed, 10 insertions(+) diff --git a/plugins/osx/osx.plugin.zsh b/plugins/osx/osx.plugin.zsh index 390960fdc..044276c1c 100644 --- a/plugins/osx/osx.plugin.zsh +++ b/plugins/osx/osx.plugin.zsh @@ -161,6 +161,15 @@ function itunes() { vol) opt="set sound volume to $1" #$1 Due to the shift ;; + playing) + local state=`osascript -e 'tell application "iTunes" to player state as string'` + if [ "$state" = "playing" ]; then + currenttrack=`osascript -e 'tell application "iTunes" to name of current track as string'` + currentartist=`osascript -e 'tell application "iTunes" to artist of current track as string'` + echo "Listening to %F{yellow}$currenttrack%f by %F{yellow}$currentartist%f"; + fi + return 0 + ;; shuf|shuff|shuffle) # The shuffle property of current playlist can't be changed in iTunes 12, # so this workaround uses AppleScript to simulate user input instead. @@ -199,6 +208,7 @@ EOF echo "\tnext|previous\tplay next or previous track" 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\tShow what song is currently playing in iTunes." echo "\thelp\tshow this message and exit" return 0 ;;