dotfiles/.config/waybar/scripts/spotify.sh

101 lines
3.1 KiB
Bash
Executable file

#!/bin/sh
# install playerctl
# player_status=$(playerctl status 2> /dev/null)
# if [ "$player_status" = "Playing" ]; then
# echo "$(playerctl metadata artist) - $(playerctl metadata title)"
# elif [ "$player_status" = "Paused" ]; then
# echo " $(playerctl metadata artist) - $(playerctl metadata title)"
# fi
#!/usr/bin/env bash
# exec 2>"$XDG_RUNTIME_DIR/waybar-playerctl.log"
# IFS=$'\n\t'
#
# while true; do
#
# while read -r playing position length name artist title arturl hpos hlen; do
# # remove leaders
# playng=${playing:1} position=${position:1} length=${length:1} name=${name:1}
# artist=${artist:1} title=${title:1} arturl=${arturl:1} hpos=${hpos:1} hlen=${hlen:1}
#
# # build line
# line="${artist:+$artist ${title:+- }}${title:+$title }${hpos:+$hpos${hlen:+|}}$hlen"
#
# # json escaping
# line="${line//\"/\\\"}"
# ((percentage = length ? (100 * (position % length)) / length : 0))
#
# if [ -z "$line" ]
# then
# text=""
# else
# text="<span color='#1db954'></span> $line"
# fi
# #
# # integrations for other services (nwg-wrapper)
# if [[ $title != "$ptitle" || $artist != "$partist" || $parturl != "$arturl" ]]; then
# typeset -p playing length name artist title arturl >"$XDG_RUNTIME_DIR/waybar-playerctl.info"
# pkill -8 nwg-wrapper
# ptitle=$title partist=$artist parturl=$arturl
# fi
#
# # exit if print fails
# printf '{"text":"%s","tooltip":"%s","class":"%s","percentage":%s}\n' \
# "$text" "$playing $name | $line" "$percentage" "$percentage" || break 2
#
# done < <(
# # requires playerctl>=2.0
# # Add non-space character ":" before each parameter to prevent 'read' from skipping over them
# playerctl --follow metadata --player playerctld --format \
# $':{{emoji(status)}}\t:{{position}}\t:{{mpris:length}}\t:{{playerName}}\t:{{markup_escape(artist)}}\t:{{markup_escape(title)}}\t:{{mpris:artUrl}}\t:{{duration(position)}}\t:{{duration(mpris:length)}}' &
# echo $! >"$XDG_RUNTIME_DIR/waybar-playerctl.pid"
# )
#
# # no current players
# # exit if print fails
# echo '<span foreground=#dc322f>⏹</span>' || break
# sleep 15
#
# done
#
# kill "$(<"$XDG_RUNTIME_DIR/waybar-playerctl.pid")"
#!/usr/bin/env bash
# exec 2>"$XDG_RUNTIME_DIR/waybar-playerctl.log"
# IFS=$'\n\t'
#
# while true; do
#
# while read -r playing position length name artist title arturl hpos hlen; do
while true; do
player_status=$(playerctl status 2>/dev/null)
if [ -z "$(playerctl metadata album)" ]; then
if [ "$player_status" = "Playing" ]; then
echo "$(playerctl metadata artist) - $(playerctl metadata title)"
elif [ "$player_status" = "Paused" ]; then
echo "$(playerctl metadata artist) - $(playerctl metadata title)"
else
echo ""
fi
else
if [ "$player_status" = "Playing" ]; then
echo "<span color='#1db954'></span> $(playerctl metadata artist) - $(playerctl metadata title)"
elif [ "$player_status" = "Paused" ]; then
echo "<span color='#1db954'></span>  $(playerctl metadata artist) - $(playerctl metadata title)"
else
echo ""
fi
fi
sleep 1
done
# done
#
# kill "$(<"$XDG_RUNTIME_DIR/waybar-playerctl.pid")"