[modules] Add battery indicator plugin

Add a plugin that displays the remaining battery power in %. This also
introduces the concept of arguments that can be passed to a module
during startup by delimiting the module name with ":", for example:

-m battery:BAT1 to query the BAT1 device.

Note that this works to an arbitray length, i.e. if a module accepts 3
parameters: -m <modulename>:<A>:<B>:<C>

The module gets the arguments as list.
This commit is contained in:
Tobias Witek 2016-10-30 18:10:25 +01:00
parent 4ad41a8ee0
commit e895400589
4 changed files with 26 additions and 5 deletions

View file

@ -28,8 +28,10 @@ def main():
for m in args.modules:
# TODO: how to cleanly handle errors here?
# (useful error messages)
module = importlib.import_module("bumblebee.modules.%s" % m)
modules.append(getattr(module, "Module")(theme))
module_name = m if not ":" in m else m.split(":")[0]
module_args = None if not ":" in m else m.split(":")[1:]
module = importlib.import_module("bumblebee.modules.%s" % module_name)
modules.append(getattr(module, "Module")(theme, module_args))
output = bumblebee.outputs.i3.i3bar()