[PATCH 1/3] emacs: replace use of notmuch-address-message-insinuate
David Bremner
david at tethera.net
Sat Oct 24 10:41:22 PDT 2015
This allows e.g. Gnus users to load this file without changing
message-mode behaviour.
This will disable completion for those that did not customize the
variable but relied on the existence of a file named "notmuch-addresses"
in their path. In the next commit the default behaviour will change to
use a "workalike" internal completion mechanism.
---
emacs/notmuch-address.el | 20 +++++---------------
emacs/notmuch-mua.el | 7 +++++--
2 files changed, 10 insertions(+), 17 deletions(-)
diff --git a/emacs/notmuch-address.el b/emacs/notmuch-address.el
index fde3c1b..39200ef 100644
--- a/emacs/notmuch-address.el
+++ b/emacs/notmuch-address.el
@@ -23,11 +23,13 @@
;;
-(defcustom notmuch-address-command "notmuch-addresses"
+(defcustom notmuch-address-command nil
"The command which generates possible addresses. It must take a
single argument and output a list of possible matches, one per
-line."
- :type 'string
+line. The default value of nil disables address completion."
+ :type '(radio
+ (const :tag "Disable address completion" nil)
+ (string :tag "Use external completion command" "notmuch-addresses"))
:group 'notmuch-send
:group 'notmuch-external)
@@ -54,11 +56,6 @@ to know how address selection is made by default."
(defvar notmuch-address-history nil)
-(defun notmuch-address-message-insinuate ()
- (unless (memq notmuch-address-message-alist-member message-completion-alist)
- (setq message-completion-alist
- (push notmuch-address-message-alist-member message-completion-alist))))
-
(defun notmuch-address-options (original)
(process-lines notmuch-address-command original))
@@ -109,11 +106,4 @@ to know how address selection is made by default."
(not (file-directory-p bin))))
(throw 'found-command bin))))))))
-;; If we can find the program specified by `notmuch-address-command',
-;; insinuate ourselves into `message-mode'.
-(when (notmuch-address-locate-command notmuch-address-command)
- (notmuch-address-message-insinuate))
-
-;;
-
(provide 'notmuch-address)
diff --git a/emacs/notmuch-mua.el b/emacs/notmuch-mua.el
index 57465b2..6cc9656 100644
--- a/emacs/notmuch-mua.el
+++ b/emacs/notmuch-mua.el
@@ -269,7 +269,11 @@ Note that these functions use `mail-citation-hook' if that is non-nil."
(set-buffer-modified-p nil))
(define-derived-mode notmuch-message-mode message-mode "Message[Notmuch]"
- "Notmuch message composition mode. Mostly like `message-mode'")
+ "Notmuch message composition mode. Mostly like `message-mode'"
+ (when notmuch-address-command
+ (unless (memq notmuch-address-message-alist-member message-completion-alist)
+ (setq message-completion-alist
+ (push notmuch-address-message-alist-member message-completion-alist)))))
(define-key notmuch-message-mode-map (kbd "C-c C-c") #'notmuch-mua-send-and-exit)
(define-key notmuch-message-mode-map (kbd "C-c C-s") #'notmuch-mua-send)
@@ -296,7 +300,6 @@ OTHER-ARGS are passed through to `message-mail'."
(message-hide-headers)
(set-buffer-modified-p nil)
(notmuch-mua-maybe-set-window-dedicated)
-
(message-goto-to))
(defcustom notmuch-identities nil
--
2.6.1
More information about the notmuch
mailing list