aboutsummaryrefslogtreecommitdiff
path: root/tmux
diff options
context:
space:
mode:
authorxero <x@xero.nu>2015-03-29 21:29:33 -0400
committerxero <x@xero.nu>2015-03-29 21:29:33 -0400
commit1798f2d8515196196faa394e0c970fd122b4b643 (patch)
tree482b533e89e60b2c270032974798b8ad053b4ee9 /tmux
parent4c5b76373ac4c026a1a743576e0e30199134d0ae (diff)
downloaddotfiles_ascii-1798f2d8515196196faa394e0c970fd122b4b643.tar.xz
dotfiles_ascii-1798f2d8515196196faa394e0c970fd122b4b643.zip
add custom tmux status bar
Diffstat (limited to 'tmux')
-rw-r--r--tmux/.tmux.conf4
-rwxr-xr-xtmux/code/sys/status86
2 files changed, 88 insertions, 2 deletions
diff --git a/tmux/.tmux.conf b/tmux/.tmux.conf
index 6bb56f9..9daf23b 100644
--- a/tmux/.tmux.conf
+++ b/tmux/.tmux.conf
@@ -105,9 +105,9 @@ setw -g window-status-content-attr blink
setw -g window-status-current-attr dim
# Info on right
-set -g status-right-length 30
+set -g status-right-length 100
set -g status-right ''
-#set -g status-right '#[bg=colour141]#[fg=colour0]█▓░ #(~/code/sys/status)'
+set -g status-right '#[bg=colour141]#[fg=colour0]█▓░ #(~/code/sys/status)'
# Info on left (no session display)
set -g status-left ''
diff --git a/tmux/code/sys/status b/tmux/code/sys/status
new file mode 100755
index 0000000..3ed259b
--- /dev/null
+++ b/tmux/code/sys/status
@@ -0,0 +1,86 @@
+#!/bin/sh
+
+#FULL=♡
+#EMPTY=♥
+FULL=▓
+EMPTY=░
+EOL=▒
+SIZE=7
+C0="#000000"
+C1="#222222"
+C2="#1C596E"
+C3="#B3291C"
+C4="#3A3A3A"
+C5="#efefef"
+C6="#878787"
+
+draw()
+{
+ perc=$1
+ SIZE=$2
+ inc=$(( perc * SIZE / 100 ))
+ out=
+ thiscolor=
+ for v in `seq 0 $(( SIZE - 1 ))`; do
+ test "$v" -le "$inc" \
+ && out="${out}#[fg=$C0]${FULL}" \
+ || out="${out}#[fg=$C1]${EMPTY}"
+ done
+ echo $out
+}
+temp()
+{
+ t=$(sensors | awk '/Core\ 0/ {gsub(/\+/,"",$3); gsub(/\..+/,"",$3) ; print $3}')
+ tc=$C0
+ case 1 in
+ $((t <= 50)))
+ tc=$C2
+ ;;
+ $((t >= 75)))
+ tc=$C3
+ ;;
+ esac
+ echo "#[fg=$tc]$t°c"
+}
+bat()
+{
+ BATPATH=/sys/class/power_supply/BAT1
+ STATUS=$BATPATH/status
+ BAT_FULL=$BATPATH/charge_full
+ BAT_NOW=$BATPATH/charge_now
+ bf=$(cat $BAT_FULL)
+ bn=$(cat $BAT_NOW)
+ stat=$(cat $STATUS)
+ case $stat in
+ Full)
+ st="="
+ ;;
+ Discharging)
+ st="-"
+ ;;
+ Charging)
+ st="+"
+ ;;
+ esac
+ echo "#[fg=$C0]"$st$(( 100 * $bn / $bf ))"%"
+}
+cpu()
+{
+ CPU_USE=$(grep 'cpu ' /proc/stat | awk '{usage=($2+$4)*100/($2+$4+$5)} END {print usage}')
+ printf "%.0f" $CPU_USE
+}
+ram()
+{
+ free | awk '/Mem:/ {print int($3/$2 * 100.0)}'
+}
+clock()
+{
+ mtime=$(date +'%H:%M')
+ myear=$(date +'%Y-%m-')
+ mday=$(date +'%d')
+ echo "#[fg=$C5]#[bg=$C4] $mtime #[fg=$C6]$myear#[fg=$C5]$mday #[fg=$C6]$EOL"
+}
+
+CPU_INFO=`cpu`
+RAM_INFO=`ram`
+echo -e `bat` `draw $RAM_INFO 4` `temp` `draw $CPU_INFO 7``clock`