gpu_icon, fg, bg color

This commit is contained in:
Casper da Costa-Luis 2018-07-10 12:59:42 +01:00 committed by Camille TJHOA
parent 43890c45fb
commit d78c63a10d
5 changed files with 121 additions and 1 deletions

View file

@ -10,6 +10,9 @@ cpu_interpolation=(
"\#{cpu_bg_color}"
"\#{cpu_fg_color}"
"\#{gpu_percentage}"
"\#{gpu_icon}"
"\#{gpu_bg_color}"
"\#{gpu_fg_color}"
)
cpu_commands=(
"#($CURRENT_DIR/scripts/cpu_percentage.sh)"
@ -17,6 +20,9 @@ cpu_commands=(
"#($CURRENT_DIR/scripts/cpu_bg_color.sh)"
"#($CURRENT_DIR/scripts/cpu_fg_color.sh)"
"#($CURRENT_DIR/scripts/gpu_percentage.sh)"
"#($CURRENT_DIR/scripts/gpu_icon.sh)"
"#($CURRENT_DIR/scripts/gpu_bg_color.sh)"
"#($CURRENT_DIR/scripts/gpu_fg_color.sh)"
)
set_tmux_option() {

37
scripts/gpu_bg_color.sh Executable file
View file

@ -0,0 +1,37 @@
#!/usr/bin/env bash
CURRENT_DIR="$( cd "$( dirname "${BASH_SOURCE[0]}" )" && pwd )"
source "$CURRENT_DIR/helpers.sh"
gpu_low_bg_color=""
gpu_medium_bg_color=""
gpu_high_bg_color=""
gpu_low_default_bg_color="#[bg=green]"
gpu_medium_default_bg_color="#[bg=yellow]"
gpu_high_default_bg_color="#[bg=red]"
get_bg_color_settings() {
gpu_low_bg_color=$(get_tmux_option "@gpu_low_bg_color" "$gpu_low_default_bg_color")
gpu_medium_bg_color=$(get_tmux_option "@gpu_medium_bg_color" "$gpu_medium_default_bg_color")
gpu_high_bg_color=$(get_tmux_option "@gpu_high_bg_color" "$gpu_high_default_bg_color")
}
print_bg_color() {
local gpu_percentage=$($CURRENT_DIR/gpu_percentage.sh | sed -e 's/%//')
local gpu_load_status=$(cpu_load_status $gpu_percentage)
if [ $gpu_load_status == "low" ]; then
echo "$gpu_low_bg_color"
elif [ $gpu_load_status == "medium" ]; then
echo "$gpu_medium_bg_color"
elif [ $gpu_load_status == "high" ]; then
echo "$gpu_high_bg_color"
fi
}
main() {
get_bg_color_settings
print_bg_color
}
main

37
scripts/gpu_fg_color.sh Executable file
View file

@ -0,0 +1,37 @@
#!/usr/bin/env bash
CURRENT_DIR="$( cd "$( dirname "${BASH_SOURCE[0]}" )" && pwd )"
source "$CURRENT_DIR/helpers.sh"
gpu_low_fg_color=""
gpu_medium_fg_color=""
gpu_high_fg_color=""
gpu_low_default_fg_color="#[fg=green]"
gpu_medium_default_fg_color="#[fg=yellow]"
gpu_high_default_fg_color="#[fg=red]"
get_fg_color_settings() {
gpu_low_fg_color=$(get_tmux_option "@gpu_low_fg_color" "$gpu_low_default_fg_color")
gpu_medium_fg_color=$(get_tmux_option "@gpu_medium_fg_color" "$gpu_medium_default_fg_color")
gpu_high_fg_color=$(get_tmux_option "@gpu_high_fg_color" "$gpu_high_default_fg_color")
}
print_fg_color() {
local gpu_percentage=$($CURRENT_DIR/gpu_percentage.sh | sed -e 's/%//')
local gpu_load_status=$(cpu_load_status $gpu_percentage)
if [ $gpu_load_status == "low" ]; then
echo "$gpu_low_fg_color"
elif [ $gpu_load_status == "medium" ]; then
echo "$gpu_medium_fg_color"
elif [ $gpu_load_status == "high" ]; then
echo "$gpu_high_fg_color"
fi
}
main() {
get_fg_color_settings
print_fg_color
}
main

40
scripts/gpu_icon.sh Executable file
View file

@ -0,0 +1,40 @@
#!/usr/bin/env bash
CURRENT_DIR="$( cd "$( dirname "${BASH_SOURCE[0]}" )" && pwd )"
source "$CURRENT_DIR/helpers.sh"
# script global variables
gpu_low_icon=""
gpu_medium_icon=""
gpu_high_icon=""
gpu_low_default_icon="="
gpu_medium_default_icon="≡"
gpu_high_default_icon="≣"
# icons are set as script global variables
get_icon_settings() {
gpu_low_icon=$(get_tmux_option "@gpu_low_icon" "$gpu_low_default_icon")
gpu_medium_icon=$(get_tmux_option "@gpu_medium_icon" "$gpu_medium_default_icon")
gpu_high_icon=$(get_tmux_option "@gpu_high_icon" "$gpu_high_default_icon")
}
print_icon() {
local gpu_percentage=$($CURRENT_DIR/gpu_percentage.sh | sed -e 's/%//')
local gpu_load_status=$(cpu_load_status $gpu_percentage)
if [ $gpu_load_status == "low" ]; then
echo "$gpu_low_icon"
elif [ $gpu_load_status == "medium" ]; then
echo "$gpu_medium_icon"
elif [ $gpu_load_status == "high" ]; then
echo "$gpu_high_icon"
fi
}
main() {
get_icon_settings
local gpu_icon=$(print_icon "$1")
echo "$gpu_icon"
}
main

View file

@ -9,7 +9,7 @@ print_gpu_percentage() {
loads=$(nvidia-smi | sed -nr 's/.*\s([0-9]+)%.*/\1/p')
gpus=$(echo "$loads" | wc -l)
load=$(echo "$loads" | awk '{count+=$1} END {print count}')
echo "$load $gpus" | awk '{printf "%2.0f%%", $1/$2}'
echo "$load $gpus" | awk '{printf "%3.0f%%", $1/$2}'
else
echo "nvidia-smi not found"
fi