awesome/volume.lua

30 lines
838 B
Lua

local wibox = require("wibox")
local awful = require("awful")
volume_widget = wibox.widget.textbox()
volume_widget:set_align("right")
function update_volume()
awful.spawn.easy_async('amixer sget Master', function(stdout, stderr)
local status = stdout
local widget = volume_widget
-- local volume = tonumber(string.match(status, "(%d?%d?%d)%%")) / 100
local volume = string.match(status, "(%d?%d?%d)%%")
volume = string.format("% 3d", volume)
status = string.match(status, "%[(o[^%]]*)%]")
if string.find(status, "on", 1, true) then
-- For the volume numbers
volume = volume .. "%"
else
-- For the mute button
volume = volume .. "M"
end
widget:set_markup("V :" .. volume)
end)
end
update_volume()