X-Git-Url: https://git.madduck.net/etc/awesome.git/blobdiff_plain/5ea12705d4737c6ca1fb2495715c924551cc3397..716595550f974afc115b492b6f9be6d048dbfca4:/widgets/maildir.lua?ds=sidebyside

diff --git a/widgets/maildir.lua b/widgets/maildir.lua
index 79d28b5..e963fc6 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 }
@@ -33,13 +34,18 @@ 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 then
+            awful.util.spawn(ext_mail_cmd)
+        end
+
         -- Find pathes to mailboxes.
         local p = io.popen("find " .. mailpath ..
-                           " -mindepth 1 -maxdepth 1 -type d" ..
+                           " -mindepth 1 -maxdepth 2 -type d" ..
                            " -not -name .git")
         local boxes = {}
         repeat
@@ -56,7 +62,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
@@ -68,6 +74,7 @@ local function worker(args)
         p:close()
 
         newmail = "no mail"
+
         -- Count the total number of mails irrespective of where it was found
         total = 0