-
Notifications
You must be signed in to change notification settings - Fork 210
Shows in a textbox the remaining time and percentage capacity of your laptop battery, as well as the current wattage. Multiple batteries are supported.
Displays a notification when battery is low or critical.
mybattery = lain.widgets.bat()
Variable | Meaning | Type | Default |
---|---|---|---|
timeout |
Refresh timeout seconds | int | 30 |
battery |
Single battery id | string | "BAT0" |
batteries |
Multiple batteries id table | table of strings | {"BAT0"} |
ac |
AC | string | "AC0" |
notify |
Show notification popups | string | "on" |
settings |
User settings | function | empty function |
You only have to define one between battery
and batteries
.
If you have one battery, you can either use args.battery = "BAT*"
or args.batteries = {"BAT*"}
. Of course, if you have multiple batteries, you need to use the latter option.
To disable warning notifications, set notify
to "off"
.
settings
can use the bat_now
table, which contains the following strings:
-
status
, battery status ("N/A", "Discharging", "Charging", "Full"); -
n_status[i]
, i-th battery status (like above); -
ac_status
, AC-plug flag (0 if cable is unplugged, 1 if plugged, "N/A" otherwise); -
perc
, total charge percentage (integer between 0 and 100 or "N/A"); -
n_perc
, i-th battery charge percentage (like above); -
time
, time remaining until charge if charging, until discharge if discharging (HH:SS string or "N/A"); -
watt
, battery watts (float with 2 decimals).
and can modify the following two tables, which will be the preset for the naughty notifications:
-
bat_notification_low_preset
(used if battery charge level <= 15) -
bat_notification_critical_preset
(used if battery charge level <= 5)
Check here for the list of variables they can contain.
Default definition:
bat_notification_low_preset = {
title = "Battery low",
text = "Plug the cable!",
timeout = 15,
fg = "#202020",
bg = "#CDCDCD"
}
bat_notification_critical_preset = {
title = "Battery exhausted",
text = "Shutdown imminent",
timeout = 15,
fg = "#000000",
bg = "#FFFFFF"
}
Variable | Meaning | Type |
---|---|---|
widget |
The widget | wibox.widget.textbox |
update |
Update widget
|
function |
The update
function can be used to refresh the widget before timeout
expires.
- Another common identifier for
ac
isACAD
. - If your widget is always on "N/A" with default settings, and you have a single battery, then
BAT0
is not your battery file. Locate the right one in/sys/class/power_supply/
and setbattery
properly. For instance, withBAT1
:
batwidget = lain.widgets.bat({
battery = "BAT1",
-- [...]
})
It has been reported (#250 awesome-copycats/#283) that, in some systems, the files /sys/class/power_supply/BAT*/{current_now, power_now}
could be missing. When this is the case, the widget can't calculate the battery percentage when discharging (other tools like acpi
can't work properly too).
If you're having such issue, you can use this widget instead.