#!/bin/sh
|
|
|
|
# A dwm_bar function that shows the current artist, track, position, duration, and status from cmus
|
|
# Joe Standring <git@joestandring.com>
|
|
# GNU GPLv3
|
|
|
|
# Dependencies: cmus
|
|
|
|
dwm_cmus () {
|
|
if ps -C cmus > /dev/null; then
|
|
ARTIST=$(cmus-remote -Q | grep -a '^tag artist' | awk '{gsub("tag artist ", "");print}')
|
|
TRACK=$(cmus-remote -Q | grep -a '^tag title' | awk '{gsub("tag title ", "");print}')
|
|
POSITION=$(cmus-remote -Q | grep -a '^position' | awk '{gsub("position ", "");print}')
|
|
DURATION=$(cmus-remote -Q | grep -a '^duration' | awk '{gsub("duration ", "");print}')
|
|
STATUS=$(cmus-remote -Q | grep -a '^status' | awk '{gsub("status ", "");print}')
|
|
SHUFFLE=$(cmus-remote -Q | grep -a '^set shuffle' | awk '{gsub("set shuffle ", "");print}')
|
|
|
|
if [ "$IDENTIFIER" = "unicode" ]; then
|
|
if [ "$STATUS" = "playing" ]; then
|
|
STATUS="▶"
|
|
else
|
|
STATUS="⏸"
|
|
fi
|
|
|
|
if [ "$SHUFFLE" = "true" ]; then
|
|
SHUFFLE=" 🔀"
|
|
else
|
|
SHUFFLE=""
|
|
fi
|
|
else
|
|
if [ "$STATUS" = "playing" ]; then
|
|
STATUS="PLA"
|
|
else
|
|
STATUS="PAU"
|
|
fi
|
|
|
|
if [ "$SHUFFLE" = "true" ]; then
|
|
SHUFFLE=" S"
|
|
else
|
|
SHUFFLE=""
|
|
fi
|
|
fi
|
|
|
|
printf "%s %s - %s " "$STATUS" "$ARTIST" "$TRACK"
|
|
printf "%0d:%02d/" $((POSITION%3600/60)) $((POSITION%60))
|
|
printf "%0d:%02d" $((DURATION%3600/60)) $((DURATION%60))
|
|
printf "%s\n" "$SHUFFLE"
|
|
fi
|
|
}
|
|
|
|
dwm_cmus
|