spacemacs/layers/+email/mu4e/packages.el

85 lines
2.4 KiB
EmacsLisp
Raw Normal View History

;;; packages.el --- mu4e Layer packages File for Spacemacs
2015-08-02 05:30:30 +00:00
;;
;; Copyright (c) 2012-2016 Sylvain Benner & Contributors
2015-08-02 05:30:30 +00:00
;;
;; Author: Sylvain Benner <sylvain.benner@gmail.com>
;; URL: https://github.com/syl20bnr/spacemacs
;;
;; This file is not part of GNU Emacs.
;;
;;; License: GPLv3
(setq mu4e-packages
'(
2016-01-18 04:27:50 +00:00
(mu4e :skip-install t)
mu4e-alert
mu4e-maildirs-extension
org
))
2015-08-02 05:30:30 +00:00
(defun mu4e/init-mu4e ()
(use-package mu4e
:commands (mu4e mu4e-compose-new)
2015-08-02 05:30:30 +00:00
:init
(progn
(spacemacs/set-leader-keys "a M" 'mu4e)
(global-set-key (kbd "C-x m") 'mu4e-compose-new))
2015-08-02 05:30:30 +00:00
:config
(progn
(evilified-state-evilify-map mu4e-main-mode-map
2015-08-02 05:30:30 +00:00
:mode mu4e-main-mode
:bindings
(kbd "j") 'mu4e~headers-jump-to-maildir)
(evilified-state-evilify-map
mu4e-headers-mode-map
:mode mu4e-headers-mode
:bindings
(kbd "C-j") 'mu4e-headers-next
(kbd "C-k") 'mu4e-headers-prev
(kbd "J") (lambda ()
(interactive)
(mu4e-headers-mark-thread nil '(read))))
(evilified-state-evilify-map
mu4e-view-mode-map
:mode mu4e-view-mode
:bindings
(kbd "C-j") 'mu4e-view-headers-next
(kbd "C-k") 'mu4e-view-headers-prev
(kbd "J") (lambda ()
(interactive)
(mu4e-view-mark-thread '(read))))
2015-08-02 05:30:30 +00:00
2016-01-12 06:37:58 +00:00
(setq mu4e-completing-read-function
(if (configuration-layer/layer-usedp 'spacemacs-ivy)
'ivy-completing-read
'helm--completing-read-default))
2015-08-02 05:30:30 +00:00
(add-to-list 'mu4e-view-actions
'("View in browser" . mu4e-action-view-in-browser) t)
(when mu4e-account-alist
(add-hook 'mu4e-compose-pre-hook 'mu4e/set-account)
(add-hook 'message-sent-hook 'mu4e/mail-account-reset)))))
(defun mu4e/init-mu4e-alert ()
(use-package mu4e-alert
:defer t
:init (with-eval-after-load 'mu4e
(when mu4e-enable-notifications
(mu4e-alert-enable-notifications))
(when mu4e-enable-mode-line
(mu4e-alert-enable-mode-line-display)))))
(defun mu4e/init-mu4e-maildirs-extension ()
(use-package mu4e-maildirs-extension
:defer t
:init (with-eval-after-load 'mu4e (mu4e-maildirs-extension-load))))
(defun mu4e/post-init-org ()
;; load org-mu4e when org is actually loaded
(with-eval-after-load 'org (require 'org-mu4e nil 'noerror)))