Merge pull request #153 from TheReverend403/master

Allow maildir.lua to run a mail update command, and support multiple maildirs in one widget.
This commit is contained in:
Luke Bonham 2015-11-22 09:09:09 +01:00
commit 63440b4301
1 changed files with 8 additions and 2 deletions

View File

@ -13,6 +13,7 @@ local spairs = require("lain.helpers").spairs
local wibox = require("wibox") local wibox = require("wibox")
local awful = require("awful")
local util = require("lain.util") local util = require("lain.util")
local io = { popen = io.popen } local io = { popen = io.popen }
@ -33,13 +34,18 @@ local function worker(args)
local mailpath = args.mailpath or os.getenv("HOME") .. "/Mail" local mailpath = args.mailpath or os.getenv("HOME") .. "/Mail"
local ignore_boxes = args.ignore_boxes or {} local ignore_boxes = args.ignore_boxes or {}
local settings = args.settings or function() end local settings = args.settings or function() end
local ext_mail_cmd = args.external_mail_cmd
maildir.widget = wibox.widget.textbox('') maildir.widget = wibox.widget.textbox('')
function update() function update()
if ext_mail_cmd ~= nil
then
awful.util.spawn(ext_mail_cmd)
end
-- Find pathes to mailboxes. -- Find pathes to mailboxes.
local p = io.popen("find " .. mailpath .. local p = io.popen("find " .. mailpath ..
" -mindepth 1 -maxdepth 1 -type d" .. " -mindepth 1 -maxdepth 2 -type d" ..
" -not -name .git") " -not -name .git")
local boxes = {} local boxes = {}
repeat repeat
@ -56,7 +62,7 @@ local function worker(args)
"-not -name '.*' -printf a") "-not -name '.*' -printf a")
-- Strip off leading mailpath. -- Strip off leading mailpath.
local box = string.match(line, mailpath .. "/*([^/]+)") local box = string.match(line, mailpath .. "/(.*)")
local nummails = string.len(mailstring) local nummails = string.len(mailstring)
if nummails > 0 if nummails > 0
then then