summaryrefslogtreecommitdiffstats
path: root/emacsconf-mail.el
diff options
context:
space:
mode:
authorSacha Chua <sacha@sachachua.com>2022-11-28 19:59:34 -0500
committerSacha Chua <sacha@sachachua.com>2022-11-28 19:59:34 -0500
commit94adfdf2ea92cdb3e711af11017332735ba5e5ff (patch)
treea3f78086e3e2939631d5daae1f5292356cd77560 /emacsconf-mail.el
parentd78066a7d5f8fdca09a525a8d49eb9cd15bd9074 (diff)
downloademacsconf-el-94adfdf2ea92cdb3e711af11017332735ba5e5ff.tar.xz
emacsconf-el-94adfdf2ea92cdb3e711af11017332735ba5e5ff.zip
hyperlist updates
Diffstat (limited to 'emacsconf-mail.el')
-rw-r--r--emacsconf-mail.el29
1 files changed, 29 insertions, 0 deletions
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