]> git.friedersdorff.com Git - max/dotfiles.git/blobdiff - emacs/.emacs
Fix email notifications under slackware
[max/dotfiles.git] / emacs / .emacs
index ae2f6547407915e0426adb90c4e6fea587099265..b2f87c1fcdfb974f7d1a45a215d17071f086128c 100644 (file)
@@ -22,7 +22,7 @@
     ("#CC9393" "#DFAF8F" "#F0DFAF" "#7F9F7F" "#BFEBBF" "#93E0E3" "#94BFF3" "#DC8CC3")))
  '(package-selected-packages
    (quote
-    (yaml-mode minimap js2-mode editorconfig wanderlust evil-magit evil-leader evil-org molokai-theme org-evil flycheck-mypy jinja2 jinja2-mode highlight-indent-guides projectile helm-projectile zenburn-theme helm helm-config use-package flycheck company-jedi company org evil)))
+    (mu4e-alert yaml-mode minimap js2-mode editorconfig wanderlust evil-magit evil-leader evil-org molokai-theme org-evil flycheck-mypy jinja2 jinja2-mode highlight-indent-guides projectile helm-projectile zenburn-theme helm helm-config use-package flycheck company-jedi company org evil)))
  '(pdf-view-midnight-colors (quote ("#DCDCCC" . "#383838")))
  '(vc-annotate-background "#2B2B2B")
  '(vc-annotate-color-map
@@ -57,6 +57,8 @@
 (make-directory "~/.emacs.d/autosaves/" t)
 
 (use-package evil
+  :init
+  (setq evil-want-C-i-jump nil)
   :ensure t
   :config (evil-mode 1))
 
 (use-package yaml-mode
   :ensure t)
 
-
-(use-package wanderlust
-  :ensure t)
-
 (use-package mu4e
   :config
   (setq
           "/usr/bin/mbsync -c /home/max/.mbsync/personal-gmail.mbsync -a &&"
           "/usr/bin/mbsync -c /home/max/.mbsync/aber.mbsync -a")
    mu4e-update-interval 60)
+  ; Force mu4e to rename file on moving
+  (setq mu4e-change-filenames-when-moving t)
   (setq
    message-send-mail-function 'smtpmail-send-it
    smtpmail-default-smtp-server "mail.friedersdorff.com"
    smtpmail-auth-credentials (expand-file-name "~/.authinfo.gpg"))
+  (setq mu4e-drafts-folder "/Drafts")
   (setq mu4e-contexts
        `( , (make-mu4e-context
              :name "Personal"
              :enter-func (lambda () (mu4e-message "Switch to Peronal context"))
              :match-func (lambda (msg)
                            (when msg
-                             mu4e-message-contact-field-matches msg
-                             :to "max\+?.*@frie(dersdorff)?.com"))
+                             (mu4e-message-contact-field-matches
+                              msg (list :to :cc :bcc)
+                              "max\\+?.*@frie\\(dersdorff\\)?.com")))
              :vars '((user-mail-address . "max@friedersdorff.com")
                      (user-full-name . "Maximilian Friedersdorff")
                      (mu4e-sent-folder . "/personal/Sent")
-                     (mu4e-drafts-folder . "/personal/Drafts")
                      (mu4e-trash-folder . "/personal/Trash")
                      (smtpmail-smtp-server . "mail.friedersdorff.com")
                      (smtpmail-smtp-service . 587))),
             :enter-func (lambda () (mu4e-message "Switch to Gmail context"))
             :match-func (lambda (msg)
                           (when msg
-                            mu4e-message-contact-field-matches msg
-                            :to "maxf130\+?.*@gmail.com"))
+                            (mu4e-message-contact-field-matches
+                             msg (list :to :cc :bcc)
+                             "maxf130\\+?.*@gmail.com")))
             :vars '((user-mail-address . "maxf130@gmail.com")
                     (user-full-name . "Maximilian Friedersdorff")
                     (mu4e-sent-folder . "/personal-gmail/Sent")
                     (mu4e-sent-messages-behaviour . 'delete)
-                    (mu4e-drafts-folder . "/personal-gmail/Drafts")
                     (smtpmail-smtp-server . "smtp.gmail.com")
                     (smtpmail-smtp-service . 587))),
            (make-mu4e-context
             :enter-func (lambda () (mu4e-message "Switch to Aber context"))
             :match-func (lambda (msg)
                           (when msg
-                            mu4e-message-contact-field-matches msg
-                            :to "maf54\+?.*@aber.ac.uk"))
+                            (mu4e-message-contact-field-matches
+                             msg (list :to :cc :bcc)
+                             ".*@aber.ac.uk")))
             :vars '((user-mail-address . "maf54@aber.ac.uk")
                     (user-full-name . "Maximilian Friedersdorff")
                     (mu4e-sent-folder . "/aber/Sent")
-                    (mu4e-drafts-folder . "/aber/Drafts")
                     (mu4e-trash-folder . "/aber/Trash")
                     (smtpmail-smtp-server . "smtp.office365.com")
                     (smtpmail-smtp-service . 587))))
 
-       mu4e-context-policy 'pick-first))
+       mu4e-context-policy 'pick-first)
+  (setq mu4e-html2text-command "lynx -stdin -dump -force_html")
+  (add-to-list 'mu4e-bookmarks
+              '((concatenate
+                 'string
+                 "flag:unread "
+                 "AND ( "
+                 "maildir:/personal/Inbox OR "
+                 "maildir:/personal/slackware OR "
+                 "maildir:/personal-gmail/Inbox OR "
+                 "maildir:/aber/Inbox "
+                 ")") "Unread Interesting Messages" ?i)
+              ))
+
+(use-package mu4e-alert
+  :ensure t
+  :config
+  (setq mu4e-alert-interesting-mail-query
+       (concatenate
+        'string
+        "flag:unread "
+        "AND ( "
+        "maildir:/personal/Inbox OR "
+        "maildir:/personal/slackware OR "
+        "maildir:/personal-gmail/Inbox OR "
+        "maildir:/aber/Inbox "
+        ")"))
+  (mu4e-alert-set-default-style 'libnotify)
+  (add-hook 'after-init-hook #'mu4e-alert-enable-notifications))
 
 
 ;;;(global-company-mode)