Lazily loading notmuch into Emacs
Sean Whitton
spwhitton at spwhitton.name
Mon Jun 1 10:36:16 PDT 2020
Hello,
I don't want to put (require 'notmuch) into my Emacs init because that
will slow down initial Emacs startup a fair bit, especially since my
(file which is equivalent to) notmuch-config.el does quite a bit of
processing to populate notmuch-saved-searches.
So I have this:
;; Ensure notmuch does its `message-mode' configuration and that my
;; notmuch-config.el gets loaded before certain commands happen. An
;; alternative to advising `compose-mail' and friends here would be
;; to remap its keys to `notmuch-mua-new-mail', but it is nice to
;; have things work correctly if some lisp code somewhere calls
;; `compose-mail' or friends
(defun spw/load-notmuch (&rest ignore)
(require 'notmuch))
(dolist (cmd '(compose-mail
compose-mail-other-window
compose-mail-other-frame
notmuch-jump-search
notmuch-hello))
(advice-add cmd :before #'spw/load-notmuch))
(global-set-key "\C-cs" #'notmuch-search)
(global-set-key "\C-cm" #'notmuch-jump-search)
(global-set-key "\C-cM" #'notmuch-hello)
This is not a very idiomatic way to make use of an ELPA package,
however. Does anyone have a better approach that does not involve
advice-add? I'm using the elpa-notmuch package on Debian.
--
Sean Whitton
More information about the notmuch
mailing list