counsel-bbdb

Homepage: https://github.com/redguard/counsel-bbdb

Author: Chen Bin

Updated:

Summary

Quick search&input email from BBDB based on Emacs API `completing-read'

Commentary

Input email address from BBDB efficiently using Emacs API `completing-read'.
Smart to know some ethic groups whose family name is before given name.
Since it does not use any API from `bbdb', it's always fast and stable.

`M-x counsel-bbdb-complete-mail' to input email address.
`M-x counsel-bbdb-reload' to reload contacts from BBDB database.
`M-x counsel-bbdb-expand-mail-alias' to expand mail alias.  Mail Alias
is also called "Contact Group" or "Address Book Group" in other email clients.

You can customize `counsel-bbdb-customized-insert' to insert
email in your own way:
  (setq counsel-bbdb-customized-insert
        (lambda (r append-comma)
          (let* ((family-name (nth 1 r))
                 (given-name (nth 2 r))
                 (display-name (nth 3 r))
                 (mail (nth 4 r))))
          (insert (format "%s:%s:%s:%s%s"
                          given-name
                          family-name
                          display-name
                          mail
                          (if append-comma ", " " ")))))

Dependencies