Fix bug of battery plugin not displaying right low percentages (Linux)
authorJesus de Mula Cano <demula@gmail.com>
Mon, 7 Mar 2011 16:06:31 +0000 (17:06 +0100)
committerJesus de Mula Cano <demula@gmail.com>
Mon, 7 Mar 2011 16:06:31 +0000 (17:06 +0100)
plugins/battery.plugin.bash

index 00f283c..4946c2c 100644 (file)
@@ -6,13 +6,37 @@ battery_percentage(){
     local ACPI_OUTPUT=$(acpi -b)
     case $ACPI_OUTPUT in
       *" Unknown"*) 
-        echo $ACPI_OUTPUT | head -c 22 | tail -c 2
+        local PERC_OUTPUT=$(echo $ACPI_OUTPUT | head -c 22 | tail -c 2)
+        case $PERC_OUTPUT in
+          *%)
+            echo "0${PERC_OUTPUT}" | head -c 2
+            ;;
+          *)
+            echo ${PERC_OUTPUT}
+            ;;
+        esac
         ;;
       *" Discharging"*) 
-        echo $ACPI_OUTPUT | head -c 26 | tail -c 2
+        local PERC_OUTPUT=$(echo $ACPI_OUTPUT | head -c 26 | tail -c 2)
+        case $PERC_OUTPUT in
+          *%)
+            echo "0${PERC_OUTPUT}" | head -c 2
+            ;;
+          *)
+            echo ${PERC_OUTPUT}
+            ;;
+        esac
         ;;
       *" Charging"*) 
-        echo $ACPI_OUTPUT | head -c 23 | tail -c 2
+        local PERC_OUTPUT=$(echo $ACPI_OUTPUT | head -c 23 | tail -c 2)
+        case $PERC_OUTPUT in
+          *%)
+            echo "0${PERC_OUTPUT}" | head -c 2
+            ;;
+          *)
+            echo ${PERC_OUTPUT}
+            ;;
+        esac
         ;;
       *" Full"*) 
         echo '99'