From: Dmitry Gutov Date: Fri, 10 Oct 2014 02:22:34 +0000 (+0400) Subject: Call `bbdb-search' inside `eval' block X-Git-Url: https://code.delx.au/gnu-emacs-elpa/commitdiff_plain/96bf7b8611e8633238d1bc2b6b8b7d6bd040ec1a?hp=bec2600d4d77a06a2df0108a26c0ed3a2e1e226d Call `bbdb-search' inside `eval' block Fixes #202 --- diff --git a/company-bbdb.el b/company-bbdb.el index acdd30ac1..22741a205 100644 --- a/company-bbdb.el +++ b/company-bbdb.el @@ -27,6 +27,12 @@ (declare-function bbdb-dwim-mail "bbdb-com") (declare-function bbdb-search "bbdb-com") +(defun company-bbdb--candidates (arg) + (cl-mapcan (lambda (record) + (mapcar (lambda (mail) (bbdb-dwim-mail record mail)) + (bbdb-record-get-field record 'mail))) + (eval '(bbdb-search (bbdb-records) arg nil arg)))) + ;;;###autoload (defun company-bbdb (command &optional arg &rest ignore) "`company-mode' completion back-end for `bbdb'." @@ -38,10 +44,7 @@ (looking-back "^\\(To\\|Cc\\|Bcc\\):.*" (line-beginning-position)) (company-grab-symbol))) - (candidates (cl-mapcan (lambda (record) - (mapcar (lambda (mail) (bbdb-dwim-mail record mail)) - (bbdb-record-get-field record 'mail))) - (bbdb-search (bbdb-records) arg nil arg))) + (candidates (company-bbdb--candidates arg)) (sorted t) (no-cache t)))