From: Jameson Graef Rollins <jrollins@finestructure.net>
Date: Wed, 25 Jan 2012 00:06:19 +0000 (-0800)
Subject: emacs: add message archiving functions
X-Git-Tag: debian/0.12_rc1-1~137
X-Git-Url: https://git.cworth.org/git?a=commitdiff_plain;h=436c98a9732ea66a134674d7ff4711b7cdd8bbf9;p=notmuch

emacs: add message archiving functions

This adds two new message archiving functions that parallel the thread
archiving functions: notmuch-show-archive-message{,-then-next}.  The
former also takes a prefix argument to unarchive the message (ie. put
back in inbox).
---

diff --git a/emacs/notmuch-show.el b/emacs/notmuch-show.el
index 10b3ea91..28713504 100644
--- a/emacs/notmuch-show.el
+++ b/emacs/notmuch-show.el
@@ -1622,6 +1622,23 @@ buffer."
   (notmuch-show-archive-thread)
   (notmuch-show-next-thread))
 
+(defun notmuch-show-archive-message (&optional unarchive)
+  "Archive the current message.
+
+If a prefix argument is given, the message will be
+\"unarchived\" (ie. the \"inbox\" tag will be added instead of
+removed)."
+  (interactive "P")
+  (if unarchive
+      (notmuch-show-add-tag "inbox")
+    (notmuch-show-remove-tag "inbox")))
+
+(defun notmuch-show-archive-message-then-next ()
+  "Archive the current message, then show the next open message in the current thread."
+  (interactive)
+  (notmuch-show-archive-message)
+  (notmuch-show-next-open-message))
+
 (defun notmuch-show-stash-cc ()
   "Copy CC field of current message to kill-ring."
   (interactive)