#!/usr/bin/env bash # regex allows waybar to display ampersand track=$(playerctl metadata --format "{{artist}} - {{title}}"| sed -e "s/&/&/") if [ "$(playerctl metadata --format "{{artist}}")" == "" ] ; then text="" class="noPlayers" tooltip="" echo '{"text"': \"$text\",' "tooltip"': \"$tooltip\", '"class"': \"$class\"'}' exit 0 fi return_stuff() { # text tooltip class echo hi } flash_if_track_changed () { if (( $(< /tmp/moe.avalanche.music-iteration) > "$1" )) ; then echo 0 > /tmp/moe.avalanche.music-iteration echo $track > /tmp/moe.avalanche.music-current-track return fi if [ "$(< /tmp/moe.avalanche.music-current-track)" == "$track" ] ; then return else if [[ $(( $(< /tmp/moe.avalanche.music-iteration) % 2 )) -eq 0 ]] ; then # if even text=" ${track,,}" else text=">> ${track,,}" fi echo $(($(< /tmp/moe.avalanche.music-iteration)+1)) > /tmp/moe.avalanche.music-iteration fi class="track-changed" tooltip="== $(playerctl metadata --format {{album}}) ==\n>> changing track..." echo '{"text"': \"$text\",' "tooltip"': \"$tooltip\", '"class"': \"$class\"'}' exit 0 } flash_if_paused () { if [ $(playerctl status) == "Paused" ] ; then if [ $(< /tmp/moe.avalanche.music-disp) == "1" ] ; then text="|| ${track,,}" echo "0" > /tmp/moe.avalanche.music-disp elif [ $(< /tmp/moe.avalanche.music-disp) == "0" ] ; then text="${track,,}" echo "1" > /tmp/moe.avalanche.music-disp else echo "paused: ${track,,}" echo "0" > /tmp/moe.avalanche.music-disp fi class="pausedd" tooltip="== $(playerctl metadata --format {{album}}) ==\n=> paused, click to play" echo '{"text"': \"$text\",' "tooltip"': \"$tooltip\", '"class"': \"$class\"'}' exit 0 fi } # # CONFIG (comment out undesired features) # flash_if_paused flash_if_track_changed 5 # arg is number of flashes # # END OF CONFIG # text=">> ${track,,}" class="default" tooltip="== $(playerctl metadata --format {{album}}) ==\n=> playing, click to pause" echo '{"text"': \"$text\",' "tooltip"': \"$tooltip\", '"class"': \"$class\"'}'