aboutsummaryrefslogtreecommitdiff
path: root/i3blocks/i3music.sh
blob: cad0b66499fbe79bd41e032e2ce73f19f101c6fd (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
#!/bin/sh

case $BLOCK_BUTTON in
	1) pgrep -x cmus >/dev/null && cmus-remote -r ;;
	2) pgrep -x cmus >/dev/null && cmus-remote -u ;;
	3) pgrep -x cmus >/dev/null && cmus-remote -n ;;
esac

symbol=🎵
ampersand="I"
pgrep -x cmus >/dev/null || exit 0
stat="$(cmus-remote -Q | grep "^status " | awk '{print $2}' | sed "s/&/$ampersand/")"
artist="$(cmus-remote -Q | grep "^tag artist " | cut -d' ' -f3- | sed "s/&/$ampersand/")"
title="$(cmus-remote -Q | grep "^tag title " | cut -d' ' -f3- | sed "s/&/$ampersand/")"
[ -z "$artist" ] && artist="(unknown)"
[ -z "$title" ] && title="$(basename "$(cmus-remote -Q | grep "^file" | cut -d' ' -f2- | sed "s/&/$ampersand/")")" # sed to fix & in title messing up script
if [ "$stat" = "playing" ]; then
	#echo "$symbol $artist ─ $title"
	echo "$symbol $artist ─ $title"
elif [ "$stat" = "paused" ]; then
	echo "$symbol ( $artist ─ $title )"
else
	echo "$symbol $stat"
fi