From: Mark Walters <markwalters1009@gmail.com>
Date: Sun, 16 Oct 2016 16:12:23 +0000 (+0100)
Subject: emacs: make notmuch-search-tag tag the region when called non-interactively.
X-Git-Tag: 0.24_rc0~102
X-Git-Url: https://git.cworth.org/git?a=commitdiff_plain;h=b810e64242faf1616ee2f81358cbb8bd31f03d18;p=notmuch

emacs: make notmuch-search-tag tag the region when called non-interactively.

The normal tag commands in search mode tag the all threads meeting the
region when called interactively. This makes them do the same when
called non-interactively. This is a change in the api.
---

diff --git a/emacs/notmuch.el b/emacs/notmuch.el
index 2fc72b7e..ef4bb2b1 100644
--- a/emacs/notmuch.el
+++ b/emacs/notmuch.el
@@ -562,12 +562,15 @@ Returns (TAG-CHANGES REGION-BEGIN REGION-END)."
 See `notmuch-tag' for information on the format of TAG-CHANGES.
 When called interactively, this uses the region if the region is
 active.  When called directly, BEG and END provide the region.
-If these are nil or not provided, this applies to the thread at
-point.
+If these are nil or not provided, then, if the region is active
+this applied to all threads meeting the region, and if the region
+is inactive this applies to the thread at point.
 
 If ONLY-MATCHED is non-nil, only tag matched messages."
   (interactive (notmuch-search-interactive-tag-changes))
-  (unless (and beg end) (setq beg (point) end (point)))
+  (unless (and beg end)
+    (setq beg (car (notmuch-search-interactive-region))
+	  end (cadr (notmuch-search-interactive-region))))
   (let ((search-string (notmuch-search-find-stable-query-region
 			beg end only-matched)))
     (notmuch-tag search-string tag-changes)