Files
dotfiles_i3_notebook_arch/polybar/scripts/battery_format.sh
2025-09-22 08:27:51 +02:00

45 lines
1.4 KiB
Bash
Executable File

#!/bin/bash
TOGGLE_FILE="$HOME/.toggle_battery_label"
# Function to get battery status and percentage
get_battery_info() {
# Use acpi to get battery status and percentage
read -r status percentage <<< $(acpi -b | awk -F', ' '{print $1, $2}' | awk '{print $3, $4}' | tr -d '%,')
# Determine the battery icon based on the current percentage level
if [[ $status = *Charging* ]]; then
if [ "$percentage" -ge 80 ]; then
icon="󱊦" # nf-md-battery_charging_high
elif [ "$percentage" -ge 60 ]; then
icon="󱊥" # nf-md-battery_charging_medium
elif [ "$percentage" -ge 40 ]; then
icon="󱊤" # nf-md-battery_charging_low
else
icon="󰢟" # nf-md-battery_charging_outline
fi
else
if [ "$percentage" -ge 80 ]; then
icon="" # Battery full
elif [ "$percentage" -ge 60 ]; then
icon="" # Battery 3/4
elif [ "$percentage" -ge 40 ]; then
icon="" # Battery 1/2
elif [ "$percentage" -ge 20 ]; then
icon="" # Battery 1/4
else
icon="" # Battery empty
fi
fi
# If the toggle file exists, only show the percentage, otherwise show the icon with percentage
if [ -f "$TOGGLE_FILE" ]; then
echo "$percentage%"
else
echo "$icon"
fi
}
# Output the battery information
get_battery_info