X-Git-Url: https://git.madduck.net/etc/awesome.git/blobdiff_plain/6b91332a38dfd5f8758b170c592faec8b3a544fe..90398909c3bf9f952bb2bc6fddd820abf5e9cc32:/widgets/calendar.lua?ds=inline diff --git a/widgets/calendar.lua b/widgets/calendar.lua index c9e265a..f3d7b8a 100644 --- a/widgets/calendar.lua +++ b/widgets/calendar.lua @@ -37,13 +37,15 @@ function calendar:show(t_out, inc_offset) local tims = t_out or 0 local f, c_text local today = tonumber(os.date('%d')) - local init_t = '/usr/bin/cal | sed -r -e "s/(^| )( ' + local init_t = calendar.cal .. ' | sed -r -e "s/(^| )( ' - if offs == 0 + calendar.offset = calendar.offset + offs + + if offs == 0 or calendar.offset == 0 then -- current month showing, today highlighted if today >= 10 then - init_t = '/usr/bin/cal | sed -r -e "s/(^| )(' + init_t = calendar.cal .. ' | sed -r -e "s/(^| )(' end calendar.offset = 0 @@ -61,7 +63,6 @@ function calendar:show(t_out, inc_offset) local month = tonumber(os.date('%m')) local year = tonumber(os.date('%Y')) - calendar.offset = calendar.offset + offs month = month + calendar.offset if month > 12 then @@ -80,7 +81,7 @@ function calendar:show(t_out, inc_offset) calendar.notify_icon = nil - f = io.popen('/usr/bin/cal ' .. month .. ' ' .. year) + f = io.popen(calendar.cal .. ' ' .. month .. ' ' .. year) end c_text = "<tt><span font='" .. calendar.font .. " " @@ -103,6 +104,7 @@ end function calendar:attach(widget, args) local args = args or {} + calendar.cal = args.cal or "/usr/bin/cal" calendar.icons = args.icons or icons_dir .. "cal/white/" calendar.font = args.font or beautiful.font:sub(beautiful.font:find(""), beautiful.font:find(" ")) @@ -119,7 +121,11 @@ function calendar:attach(widget, args) widget:buttons(awful.util.table.join( awful.button({ }, 1, function () calendar:show(0, -1) end), awful.button({ }, 3, function () - calendar:show(0, 1) end) )) + calendar:show(0, 1) end), + awful.button({ }, 4, function () + calendar:show(0, -1) end), + awful.button({ }, 5, function () + calendar:show(0, 1) end))) end return setmetatable(calendar, { __call = function(_, ...) return create(...) end })