summaryrefslogtreecommitdiff
path: root/lisp
diff options
context:
space:
mode:
authorrekado <rekado@elephly.net>2016-11-10 10:49:54 +0100
committerrekado <rekado@elephly.net>2016-11-10 20:21:25 +0100
commit2742323c3133431207967cb57f3c944952fb950b (patch)
tree4c2f76319d8c846a94bd2a5a60952eca4c7262ce /lisp
parent692cfd1c28259c7dc18936fe5b72c6b989772e9b (diff)
email: Add custom refile and trash functions.
Diffstat (limited to 'lisp')
-rw-r--r--lisp/email.el23
1 files changed, 23 insertions, 0 deletions
diff --git a/lisp/email.el b/lisp/email.el
index bb5dde7..7bbcac0 100644
--- a/lisp/email.el
+++ b/lisp/email.el
@@ -22,6 +22,29 @@
(setq mu4e-hide-index-messages t)
(setq mu4e-html2text-command 'mu4e-shr2text)
(setq mu4e-view-show-images t)
+
+(defun my/mu4e-trash-folder (msg)
+ "Do not copy mails across maildirs to trash them."
+ (let ((dir (and msg
+ (mu4e-message-field-raw msg :maildir))))
+ (cond
+ ((not dir) "/private/Trash")
+ ((string-prefix-p "/mdc-personal" dir)
+ "/mdc-personal/Deleted Items")
+ (t (let ((prefix (cadr (split-string dir "/"))))
+ (concat "/" prefix "/Trash"))))))
+
+(defun my/mu4e-refile-folder (msg)
+ "Do not copy mails across maildirs to archive them."
+ (let ((dir (and msg
+ (mu4e-message-field-raw msg :maildir))))
+ (cond
+ ((not dir) "/private/Archives")
+ ((string-prefix-p "/mdc-personal" dir)
+ "/mdc-personal/Archive")
+ (t (let ((prefix (cadr (split-string dir "/"))))
+ (concat "/" prefix "/Archives"))))))
+
;; use imagemagick, if available
(when (fboundp 'imagemagick-register-types)
(imagemagick-register-types))