From 94adfdf2ea92cdb3e711af11017332735ba5e5ff Mon Sep 17 00:00:00 2001 From: Sacha Chua Date: Mon, 28 Nov 2022 19:59:34 -0500 Subject: hyperlist updates --- emacsconf-mail.el | 29 +++++++++++++++++++++++++++++ 1 file changed, 29 insertions(+) (limited to 'emacsconf-mail.el') diff --git a/emacsconf-mail.el b/emacsconf-mail.el index 5b93acd..179dcc3 100644 --- a/emacsconf-mail.el +++ b/emacsconf-mail.el @@ -244,5 +244,34 @@ Include some other things, too, such as emacsconf-year, title, name, email, url, (kill-buffer buffer)))) (buffer-list))) +(defun emacsconf-mail-notmuch-search-for-talk (talk) + "Search for e-mail related to TALK." + (interactive (list (emacsconf-complete-talk-info))) + (notmuch-search + (concat + (mapconcat + (lambda (o) + (format "from:%s or to:%s" o o)) + (split-string (plist-get talk :email) " *, *") + " or ") + " or (" emacsconf-id " and " (plist-get talk :slug) ")"))) + +;;; Volunteers + +(defun emacsconf-mail-volunteers (volunteers) + (interactive + (list + (completing-read-multiple + "Volunteers: " (emacsconf-volunteer-emails-for-completion)))) + (compose-mail (string-join volunteers ", "))) + +(defun emacsconf-mail-notmuch-search-for-volunteer (volunteer) + (interactive + (list + (completing-read + "Volunteer: " (emacsconf-volunteer-emails-for-completion)))) + (let ((email (if (string-match "<\\(.*?\\)>" volunteer) (match-string 1) volunteer))) + (notmuch-search (format "from:%s or to:%s" email email)))) + (provide 'emacsconf-mail) ;;; emacsconf-mail.el ends here -- cgit v1.2.3