diff options
Diffstat (limited to '.emacs.d/snippets')
-rw-r--r-- | .emacs.d/snippets/email-module.el | 80 |
1 files changed, 39 insertions, 41 deletions
diff --git a/.emacs.d/snippets/email-module.el b/.emacs.d/snippets/email-module.el index bb5559f..fc0a235 100644 --- a/.emacs.d/snippets/email-module.el +++ b/.emacs.d/snippets/email-module.el @@ -3,62 +3,60 @@ (setq mu4e-update-interval (* 10 60)) (setq mu4e-get-mail-command "mbsync -a") (setq mu4e-maildir-list "~/Mail/Inbox") -;; assumed Maildir layout - ;; ~/Maildir/Account0/{Inbox,Sent,Trash} - ;; ~/Maildir/Account1/{Inbox,Sent,Trash} - ;; where Account0 is context name - (defun my-make-mu4e-context (context-name full-name mail-address signature server) - "Return a mu4e context named CONTEXT-NAME with :match-func matching + +(defun set-mu4e-context (context-name full-name mail-address signature server) + "Return a mu4e context named CONTEXT-NAME with :match-func matching folder name CONTEXT-NAME in Maildir. The context's `user-mail-address', - `user-full-name' and `mu4e-compose-signature' is set to MAIL-ADDRESS - FULL-NAME and SIGNATURE respectively. + `user-full-name' and `mu4e-compose-signature'`smtpmail-smpt-server'. is set to MAIL-ADDRESS + FULL-NAME SIGNATURE and SERVER respectively. Special folders are set to context specific folders." - (let ((dir-name (concat "/" context-name))) - (make-mu4e-context - :name context-name - ;; we match based on the maildir of the message - ;; this matches maildir /Arkham and its sub-directories - :match-func - `(lambda (msg) - (when msg - (string-match-p + (let ((dir-name (concat "/" context-name))) + (make-mu4e-context + :name context-name + ;; we match based on the maildir of the message + :match-func + `(lambda (msg) + (when msg + (string-match-p ,(concat "^" dir-name) (mu4e-message-field msg :maildir)))) - :vars - `((user-mail-address . ,mail-address) - (user-full-name . ,full-name) - (mu4e-sent-folder . ,(concat dir-name "/Sent")) - (mu4e-drafts-folder . ,(concat dir-name "/Drafts")) - (mu4e-trash-folder . ,(concat dir-name "/Trash")) - (mu4e-trash-folder . ,(concat dir-name "/Starred")) - (mu4e-refile-folder . ,(concat dir-name "/Archive")) - (smtpmail-smtp-server . , server) - (mu4e-compose-signature . ,signature))))) - ;;Fixing duplicate UID errors when using mbsync and mu4e + :vars + `((user-mail-address . ,mail-address) + (user-full-name . ,full-name) + (mu4e-sent-folder . ,(concat dir-name "/Sent")) + (mu4e-drafts-folder . ,(concat dir-name "/Drafts")) + (mu4e-trash-folder . ,(concat dir-name "/Trash")) + (mu4e-trash-folder . ,(concat dir-name "/Starred")) + (mu4e-refile-folder . ,(concat dir-name "/Archive")) + (smtpmail-smtp-service . ,465) + (smtpmail-smtp-server . ,server) + (mu4e-compose-signature . ,signature))))) +;;Fixing duplicate UID errors when using mbsync and mu4e (setq mu4e-change-filenames-when-moving t) (setq mu4e-maildir-shortcuts - '(("/Gmail/Inbox" . ?i) - ("/Fastmail/Inbox" . ?s) + '(("/Fastmail/Inbox" . ?i) + ("/Fastmail/Sent" . ?s) ;; ("/Gmail/Trash" . ?t) ;; ("/Gmail/Drafts" . ?d) ;; ("/Gmail/[Gmail]/All Mail" . ?a - )) + )) (setq mu4e-contexts - `(,(my-make-mu4e-context - "Gmail" "Thanos Apollo" - "[email protected]" "Thanos\n https://thanosapollo.co" - "smtp.gmail.com") - ,(my-make-mu4e-context + `(, (set-mu4e-context "Fastmail" "Thanos Apollo" - "[email protected]" "Thanos" + "[email protected]" "Thanos\nhttps://thanosapollo.com/public" "smtp.fastmail.com"))) -(setq smtpmail-smtp-service 465 - smtpmail-stream-type 'ssl - smtpmail-smtp-server "smtp.fastmail.com") +;; (setq smtpmail-smtp-service 465 +;; smtpmail-stream-type 'ssl +;; smtpmail-smtp-server "smtp.fastmail.com") + + +(setq message-send-mail-function 'smtpmail-send-it + smtpmail-stream-type 'ssl) +(provide 'email-module) +;;; email-module.el ends here -(setq message-send-mail-function 'smtpmail-send-it) |