Tuesday, September 14, 2010

Emailing or replying to someone using recipient specific from address

The BBDB can be used to store specific fields which tell Gnus which accounts to
use when posting to the recipient in the BBDB.

(defun DE-bbdb-match-field-recipient (field regexp)
"Match FIELD for recipient against REGEXP.
FIELD must be a symbol, e.g. 'email-type."

(let (who rec)
(when (and
(gnus-buffer-live-p gnus-article-copy)
(setq who
(with-current-buffer gnus-article-copy
(or (message-fetch-field "reply-to")
(message-fetch-field "from")))))
(setq rec
(cadr (gnus-extract-address-components who)))))
(string-match regexp (bbdb-get-field rec field)))))

;; by adding a bdbb field called "email-type" and setting it to "friend-alias"
;; this gnus-posting-style is met when replying to people. If posting from a group
;; with "friends" in the name ditto.
(add-to-list `gnus-posting-styles `((or (string-match ,(rx "friends") gnus-newsgroup-name) (DE-bbdb-match-field-recipient 'email-type "friend-alias"))
(from rgr/friends-email)
(name rgr/friends-name)
(organization nil)
(eval (setq mml2015-signers nil))
(signature-file "~/.emacs.d/.sigs/friends.sig")) t )

No comments:

Post a Comment