X-Git-Url: https://git.alrj.org/?p=zsh.d.git;a=blobdiff_plain;f=S70_battery;h=bdc1750df88da3a6c50d358c4b05ad33f67d89e6;hp=023f0042d5b018ba297f9c13645a774565ed6c3d;hb=24e74f7cd9e63583edcc3facf253bf439202319f;hpb=32afa7668c575e962af9dac2bd3586a1db4f5491 diff --git a/S70_battery b/S70_battery index 023f004..bdc1750 100644 --- a/S70_battery +++ b/S70_battery @@ -1,51 +1,42 @@ #! /usr/bin/zsh -# -# Prepare a "battery level" gauge ready to be used in prompt. -# - battery_level() { + # Return a "battery level" gauge ready to be used in prompt. + local online remaining bstatus gauge gcolor online=0 acpi -a 2> /dev/null | grep -q "on-line" && online=1 - bstatus="$(acpi -b 2> /dev/null)" remaining="$(echo ${bstatus[(w)4]} | sed -r 's/(^[0-9]+)%.*/\1/')" if [[ -z "$remaining" ]]; then - psvar[2]="" return elif [[ "$remaining" -eq "100" && "$online" -eq "1" ]]; then - psvar[2]="" return - #elif [[ "$remaining" -gt "95" ]]; then - # export BATT_GAUGE="" - # return elif [[ "$remaining" -lt "10" ]]; then - psvar[2]="►" - psvar[3]="red" + echo "${C_RED}►${C_NO}" return fi gauge="" - gcolor="green" + rgauge="" + gcolor=${C_BGREEN} for i in $(seq ${remaining[1]}); do gauge="${gauge}►" done + for i in $(seq $(( 10 - ${remaining[1]})) ); do + rgauge="${rgauge}·" + done if [[ "${#gauge}" -lt "3" ]]; then - gcolor="red" + gcolor=${C_BRED} elif [[ "${#gauge}" -lt "6" ]]; then - gcolor="yellow" + gcolor=${C_BYELLOW} fi - psvar[2]="${gauge}" - psvar[3]="${gcolor}" - + echo "${gcolor}${gauge}${C_NO}${C_WHITE}${rgauge}${C_NO}" } - -precmd_functions+="battery_level"