From 1798f2d8515196196faa394e0c970fd122b4b643 Mon Sep 17 00:00:00 2001 From: xero Date: Sun, 29 Mar 2015 21:29:33 -0400 Subject: add custom tmux status bar --- tmux/.tmux.conf | 4 +-- tmux/code/sys/status | 86 ++++++++++++++++++++++++++++++++++++++++++++++++++++ 2 files changed, 88 insertions(+), 2 deletions(-) create mode 100755 tmux/code/sys/status 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` -- cgit v1.2.1