summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMarc Cornellà <marc.cornella@live.com>2020-02-25 11:54:52 +0100
committerMarc Cornellà <marc.cornella@live.com>2020-02-25 11:56:26 +0100
commit7290a08bf6098993b783877c8feab4c33cf49c38 (patch)
treed72c4f50be23f39d9aa1de2d8b5a6ec01d8d73f2
parent0e57142729656bd0bd81a39704328330f9db4557 (diff)
downloadzsh-7290a08bf6098993b783877c8feab4c33cf49c38.tar.gz
zsh-7290a08bf6098993b783877c8feab4c33cf49c38.tar.bz2
zsh-7290a08bf6098993b783877c8feab4c33cf49c38.zip
battery: fix floating point output in macOS
Fixes #8676
-rw-r--r--plugins/battery/battery.plugin.zsh32
1 files changed, 17 insertions, 15 deletions
diff --git a/plugins/battery/battery.plugin.zsh b/plugins/battery/battery.plugin.zsh
index 6fe801c9f..857ab6e8c 100644
--- a/plugins/battery/battery.plugin.zsh
+++ b/plugins/battery/battery.plugin.zsh
@@ -21,7 +21,8 @@ if [[ "$OSTYPE" = darwin* ]]; then
local smart_battery_status="$(ioreg -rc AppleSmartBattery)"
local -F maxcapacity=$(command grep '^.*"MaxCapacity"\ =\ ' <<< $smart_battery_status | sed -e 's/^.*"MaxCapacity"\ =\ //')
local -F currentcapacity=$(command grep '^.*"CurrentCapacity"\ =\ ' <<< $smart_battery_status | sed -e 's/^.*CurrentCapacity"\ =\ //')
- echo $(( (currentcapacity/maxcapacity) * 100 ))
+ local -i pct=$(( (currentcapacity/maxcapacity) * 100 ))
+ echo $pct
}
function battery_pct_remaining() {
@@ -47,16 +48,17 @@ if [[ "$OSTYPE" = darwin* ]]; then
}
function battery_pct_prompt () {
+ local battery_pct color
if ioreg -rc AppleSmartBattery | command grep -q '^.*"ExternalConnected"\ =\ No'; then
- b=$(battery_pct_remaining)
- if [[ $b -gt 50 ]]; then
+ battery_pct=$(battery_pct_remaining)
+ if [[ $battery_pct -gt 50 ]]; then
color='green'
- elif [[ $b -gt 20 ]]; then
+ elif [[ $battery_pct -gt 20 ]]; then
color='yellow'
else
color='red'
fi
- echo "%{$fg[$color]%}[$(battery_pct_remaining)%%]%{$reset_color%}"
+ echo "%{$fg[$color]%}[${battery_pct}%%]%{$reset_color%}"
else
echo "∞"
fi
@@ -93,19 +95,19 @@ elif [[ "$OSTYPE" = freebsd* ]]; then
}
function battery_pct_prompt() {
- local b color
- b=$(battery_pct_remaining)
+ local battery_pct color
+ battery_pct=$(battery_pct_remaining)
if battery_is_charging; then
echo "∞"
else
- if [[ $b -gt 50 ]]; then
+ if [[ $battery_pct -gt 50 ]]; then
color='green'
- elif [[ $b -gt 20 ]]; then
+ elif [[ $battery_pct -gt 20 ]]; then
color='yellow'
else
color='red'
fi
- echo "%{$fg[$color]%}$(battery_pct_remaining)%%%{$reset_color%}"
+ echo "%{$fg[$color]%}${battery_pct}%%%{$reset_color%}"
fi
}
@@ -136,19 +138,19 @@ elif [[ "$OSTYPE" = linux* ]]; then
}
function battery_pct_prompt() {
- local b color
- b=$(battery_pct_remaining)
+ local battery_pct color
+ battery_pct=$(battery_pct_remaining)
if battery_is_charging; then
echo "∞"
else
- if [[ $b -gt 50 ]]; then
+ if [[ $battery_pct -gt 50 ]]; then
color='green'
- elif [[ $b -gt 20 ]]; then
+ elif [[ $battery_pct -gt 20 ]]; then
color='yellow'
else
color='red'
fi
- echo "%{$fg[$color]%}$(battery_pct_remaining)%%%{$reset_color%}"
+ echo "%{$fg[$color]%}${battery_pct}%%%{$reset_color%}"
fi
}