]> git.notmuchmail.org Git - notmuch/blobdiff - emacs/notmuch-company.el
emacs: add compatibility functions for emacs 23
[notmuch] / emacs / notmuch-company.el
index 0619c7ef739951c6618b67c47c565bc457b754dd..5d75c1455933e0548cb44fe47b26d718c4656a14 100644 (file)
@@ -28,6 +28,7 @@
 ;;; Code:
 
 (eval-when-compile (require 'cl))
+(require 'notmuch-lib)
 
 (defvar notmuch-company-last-prefix nil)
 (make-variable-buffer-local 'notmuch-company-last-prefix)
 (defun notmuch-company-setup ()
   (company-mode)
   (make-local-variable 'company-backends)
-  (setq company-backends '(notmuch-company)))
+  (setq company-backends '(notmuch-company))
+  ;; Disable automatic company completion unless an internal
+  ;; completion method is configured. Company completion (using
+  ;; internal completion) can still be accessed via standard company
+  ;; functions, e.g., company-complete.
+  (unless (eq notmuch-address-command 'internal)
+    (notmuch-setq-local company-idle-delay nil)))
 
 ;;;###autoload
 (defun notmuch-company (command &optional arg &rest _ignore)
@@ -72,7 +79,7 @@
                          (lambda (callback)
                            ;; First run quick asynchronous harvest based on what the user entered so far
                            (notmuch-address-harvest
-                            (format "to:%s*" arg) nil
+                            arg nil
                             (lambda (_proc _event)
                               (funcall callback (notmuch-address-matching arg))
                               ;; Then start the (potentially long-running) full asynchronous harvest if necessary