From b5da5b662ac4516a762d086d03af90f71665f71d Mon Sep 17 00:00:00 2001 From: MineralwaterXu Date: Tue, 1 Dec 2020 22:24:45 +0800 Subject: autostart and dwmstatus --- dwmbar-functions/dwm_transmission.sh | 50 ++++++++++++++++++++++++++++++++++++ 1 file changed, 50 insertions(+) create mode 100755 dwmbar-functions/dwm_transmission.sh (limited to 'dwmbar-functions/dwm_transmission.sh') diff --git a/dwmbar-functions/dwm_transmission.sh b/dwmbar-functions/dwm_transmission.sh new file mode 100755 index 0000000..f11c719 --- /dev/null +++ b/dwmbar-functions/dwm_transmission.sh @@ -0,0 +1,50 @@ +#!/bin/sh + +# A dwm_bar function to show the status of a torrent woth transmission-remote +# Joe Standring +# GNU GPLv3 + +# Dependencies: transmission-remote + +dwm_transmission () { + TORRENT=$(transmission-remote -l | sed '2q;d' | sed 's/\(.\) /\1/g') + ID=$(printf "%s" "$TORRENT" | awk '{print $1;}') + STATUS=$(printf "%s" "$TORRENT" | awk '{print $8;}') + ETA=$(printf "%s" "$TORRENT" | awk '{print $4;}') + NAME=$(printf "%s" "$TORRENT" | awk '{for(i=9;i<=NF;++i)print $i}' | tr -d "\n" | head -c 20; printf "...") + DONE=$(printf "%s" "$TORRENT" | awk '{print $2;}') + UP=$(printf "%s" "$TORRENT" | awk '{print $5;}') + DOWN=$(printf "%s" "$TORRENT" | awk '{print $5;}') + + if [ "$ID" != "Sum:" ]; then + printf "%s" "$SEP1" + if [ "$IDENTIFIER" = "unicode" ]; then + case "$STATUS" in + "Idle") + printf "🛑 %s | %s %s ⬆%s ⬇%s" "$NAME" "$DONE" "$ETA" "$UP" "$DOWN" + ;; + "Seeding") + printf "🌱 %s | ⬆%s ⬇%s" "$NAME" "$UP" "$DOWN" + ;; + "Downloading") + printf "⏬ %s | %s %s ⬆%s ⬇%s" "$NAME" "$DONE" "$ETA" "$UP" "$DOWN" + ;; + esac + else + case "$STATUS" in + "Idle") + printf "IDLE %s | %s %s ⬆%s ⬇%s" "$NAME" "$DONE" "$ETA" "$UP" "$DOWN" + ;; + "Seeding") + printf "SEEDING %s | ⬆%s ⬇%s" "$NAME" "$UP" "$DOWN" + ;; + "Downloading") + printf "DOWNLOADING %s | %s %s ⬆%s ⬇%s" "$NAME" "$DONE" "$ETA" "$UP" "$DOWN" + ;; + esac + fi + printf "%s\n" "$SEP2" + fi +} + +dwm_transmission -- cgit v1.2.1