{ gsub(/"/,"") gsub(/'/,"\047") # print "DEBUG: " $0 artist=$1 album=$2 title=$3 position=$4 player=$5 status=$6 } ($0 == "") || (status ~ /stopped/) { system("jq -Mnc {}") next } (status ~ /playing/) { icon="󰲸" } (status ~ /paused/) { icon="󰏤" } (artist != "") && (album != "") { text=sprintf("%s - %s - %s (%s)", artist, album, title, position) tooltip=sprintf("%s\nby %s\nfrom %s\n(%s)", title, artist, album, player) } (artist == "") { text=sprintf("%s - %s (%s)", album, title, position) tooltip=sprintf("%s\nfrom %s\n(%s)", title, album, player) } (album == "") { text=sprintf("%s - %s (%s)", artist, title, position) tooltip=sprintf("%s\nby %s\n(%s)", title, artist, player) } (artist == "") && (album == "") { text=sprintf("%s (%s)", title, position) tooltip=sprintf("%s\n(%s)", title, player) } # edge cases to beautify the output (player == "tdesktop") && (title ~ /Unknown Track/) { text="telegram voice message" } { system(sprintf("jq -rMnc --arg class \"%s\" --arg text \"%s %s\" --arg tt \"%s\" '{ class: $class, text: $text|@html, tooltip: $tt|@html }'", \ status, icon, text, tooltip)) } END {}