From 1539a1b5d4394c6a397e3a68f36f9ba66d161a4b Mon Sep 17 00:00:00 2001 From: Lee Watson Date: Sat, 21 Nov 2015 11:49:22 +0000 Subject: [PATCH 1/3] Add ability to run an external mail update command, and support multi-level maildirs containing multiple accounts. --- widgets/maildir.lua | 11 ++++++++--- 1 file changed, 8 insertions(+), 3 deletions(-) diff --git a/widgets/maildir.lua b/widgets/maildir.lua index 79d28b5..4f3fc79 100644 --- a/widgets/maildir.lua +++ b/widgets/maildir.lua @@ -33,14 +33,19 @@ local function worker(args) local mailpath = args.mailpath or os.getenv("HOME") .. "/Mail" local ignore_boxes = args.ignore_boxes or {} local settings = args.settings or function() end + local ext_mail_cmd = args.external_mail_cmd maildir.widget = wibox.widget.textbox('') function update() + if ext_mail_cmd ~= nil + then + awful.util.spawn(ext_mail_cmd) + end -- Find pathes to mailboxes. local p = io.popen("find " .. mailpath .. - " -mindepth 1 -maxdepth 1 -type d" .. - " -not -name .git") + " -mindepth 1 -maxdepth 2 -type d" .. + " -not -name .git") local boxes = {} repeat line = p:read("*l") @@ -56,7 +61,7 @@ local function worker(args) "-not -name '.*' -printf a") -- Strip off leading mailpath. - local box = string.match(line, mailpath .. "/*([^/]+)") + local box = string.match(line, mailpath .. "/(.*)") local nummails = string.len(mailstring) if nummails > 0 then From 94204ac2dad82e8b9b206cb596b3a27fb8379640 Mon Sep 17 00:00:00 2001 From: Lee Watson Date: Sat, 21 Nov 2015 11:53:19 +0000 Subject: [PATCH 2/3] Styling to match upstream --- widgets/maildir.lua | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/widgets/maildir.lua b/widgets/maildir.lua index 4f3fc79..12f3545 100644 --- a/widgets/maildir.lua +++ b/widgets/maildir.lua @@ -44,8 +44,8 @@ local function worker(args) end -- Find pathes to mailboxes. local p = io.popen("find " .. mailpath .. - " -mindepth 1 -maxdepth 2 -type d" .. - " -not -name .git") + " -mindepth 1 -maxdepth 2 -type d" .. + " -not -name .git") local boxes = {} repeat line = p:read("*l") From 35957f391460172500255ffe20cf1b34622d93f1 Mon Sep 17 00:00:00 2001 From: Lee Watson Date: Sat, 21 Nov 2015 11:56:32 +0000 Subject: [PATCH 3/3] Fix missing awful --- widgets/maildir.lua | 1 + 1 file changed, 1 insertion(+) diff --git a/widgets/maildir.lua b/widgets/maildir.lua index 12f3545..2476601 100644 --- a/widgets/maildir.lua +++ b/widgets/maildir.lua @@ -13,6 +13,7 @@ local spairs = require("lain.helpers").spairs local wibox = require("wibox") +local awful = require("awful") local util = require("lain.util") local io = { popen = io.popen }