mirror of https://github.com/lcpz/lain.git
1.6 KiB
1.6 KiB
Shows and controls alsa volume with a textbox.
myvolume = lain.widgets.alsa()
- Left click: Launch
alsamixer
in yourterminal
. - Right click: Mute/unmute.
- Scroll wheel: Increase/decrase volume.
The function takes a table as optional argument, which can contain:
Variable | Meaning | Type | Default |
---|---|---|---|
channel |
Mixer channel | string | "Master" |
step |
Step at which volume is increased/decreased | string | "1%" |
header |
Text to show before value | string | " Vol " |
header_color |
Header color | string | beautiful.fg_normal or "#FFFFFF" |
color |
Value color | string | beautiful.fg_focus or "#FFFFFF" |
and outputs the following table:
Variable | Meaning | Type |
---|---|---|
widget |
The widget | wibox.widget.textbox |
channel |
Alsa channel | string |
step |
Increase/decrease step | string |
notify |
Update widget |
function |
Finally, you can control the widget with key bindings like these:
-- Volume control
awful.key({ altkey }, "Up",
function ()
awful.util.spawn("amixer sset " .. volume.channel .. " " .. volume.step .. "+")
volume.notify()
end),
awful.key({ altkey }, "Down",
function ()
awful.util.spawn("amixer sset " .. volume.channel .. " " .. volume.step .. "-")
volume.notify()
end),
awful.key({ altkey }, "m",
function ()
awful.util.spawn("amixer set Master playback toggle")
volume.notify()
end),
awful.key({ altkey, "Control" }, "m",
function ()
awful.util.spawn("amixer set Master playback 100%", false )
volume.notify()
end),
where altkey = "Mod1"
.