[PATCH v2 0/8] Improve tag change completion
authorAustin Clements <amdragon@MIT.EDU>
Wed, 23 Oct 2013 00:21:53 +0000 (20:21 +2000)
committerW. Trevor King <wking@tremily.us>
Fri, 7 Nov 2014 17:57:32 +0000 (09:57 -0800)
43/f0f4800d051a6cd6d18cf3d74235e9fbcbcc17 [new file with mode: 0644]

diff --git a/43/f0f4800d051a6cd6d18cf3d74235e9fbcbcc17 b/43/f0f4800d051a6cd6d18cf3d74235e9fbcbcc17
new file mode 100644 (file)
index 0000000..f8a698d
--- /dev/null
@@ -0,0 +1,127 @@
+Return-Path: <amdragon@mit.edu>\r
+X-Original-To: notmuch@notmuchmail.org\r
+Delivered-To: notmuch@notmuchmail.org\r
+Received: from localhost (localhost [127.0.0.1])\r
+       by olra.theworths.org (Postfix) with ESMTP id 1CB05429E47\r
+       for <notmuch@notmuchmail.org>; Tue, 22 Oct 2013 17:22:26 -0700 (PDT)\r
+X-Virus-Scanned: Debian amavisd-new at olra.theworths.org\r
+X-Spam-Flag: NO\r
+X-Spam-Score: -0.7\r
+X-Spam-Level: \r
+X-Spam-Status: No, score=-0.7 tagged_above=-999 required=5\r
+       tests=[RCVD_IN_DNSWL_LOW=-0.7] autolearn=disabled\r
+Received: from olra.theworths.org ([127.0.0.1])\r
+       by localhost (olra.theworths.org [127.0.0.1]) (amavisd-new, port 10024)\r
+       with ESMTP id heQ7byy5Xm9t for <notmuch@notmuchmail.org>;\r
+       Tue, 22 Oct 2013 17:22:20 -0700 (PDT)\r
+Received: from dmz-mailsec-scanner-2.mit.edu (dmz-mailsec-scanner-2.mit.edu\r
+       [18.9.25.13])\r
+       by olra.theworths.org (Postfix) with ESMTP id 57CCC429E27\r
+       for <notmuch@notmuchmail.org>; Tue, 22 Oct 2013 17:22:08 -0700 (PDT)\r
+X-AuditID: 1209190d-b7f528e0000009b4-6f-526716aeed4a\r
+Received: from mailhub-auth-4.mit.edu ( [18.7.62.39])\r
+       by dmz-mailsec-scanner-2.mit.edu (Symantec Messaging Gateway) with SMTP\r
+       id DB.30.02484.EA617625; Tue, 22 Oct 2013 20:22:06 -0400 (EDT)\r
+Received: from outgoing.mit.edu (outgoing-auth-1.mit.edu [18.9.28.11])\r
+       by mailhub-auth-4.mit.edu (8.13.8/8.9.2) with ESMTP id r9N0M4uT017160; \r
+       Tue, 22 Oct 2013 20:22:05 -0400\r
+Received: from drake.dyndns.org\r
+       (216-15-114-40.c3-0.arl-ubr1.sbo-arl.ma.cable.rcn.com\r
+       [216.15.114.40]) (authenticated bits=0)\r
+       (User authenticated as amdragon@ATHENA.MIT.EDU)\r
+       by outgoing.mit.edu (8.13.8/8.12.4) with ESMTP id r9N0M3A6005833\r
+       (version=TLSv1/SSLv3 cipher=AES256-SHA bits=256 verify=NOT);\r
+       Tue, 22 Oct 2013 20:22:04 -0400\r
+Received: from amthrax by drake.dyndns.org with local (Exim 4.77)\r
+       (envelope-from <amdragon@mit.edu>)\r
+       id 1VYmD5-0008KA-EU; Tue, 22 Oct 2013 20:22:03 -0400\r
+From: Austin Clements <amdragon@MIT.EDU>\r
+To: notmuch@notmuchmail.org\r
+Subject: [PATCH v2 0/8] Improve tag change completion\r
+Date: Tue, 22 Oct 2013 20:21:53 -0400\r
+Message-Id: <1382487721-31776-1-git-send-email-amdragon@mit.edu>\r
+X-Mailer: git-send-email 1.8.4.rc3\r
+X-Brightmail-Tracker:\r
+ H4sIAAAAAAAAA+NgFlrIIsWRmVeSWpSXmKPExsUixG6nrrtOLD3IYN9SAYvVc3ksrt+cyezA\r
+       5LFz1l12j2erbjEHMEVx2aSk5mSWpRbp2yVwZZx/fIilYJJwRfOqhawNjH/5uxg5OSQETCRO\r
+       z29mhrDFJC7cW8/WxcjFISSwj1Hiw5bPLF2MHEDORkaJrWYQ8TtMEhd7b7FDOHMZJToPr2AC\r
+       6WYT0JDYtn85I4gtIiAtsfPubFYQm1lAVuLH+T+sIIOEBUwlHhzyAzFZBFQlfhzUAqngFXCQ\r
+       +LnoIhPEDUoSC09tY53AyLuAkWEVo2xKbpVubmJmTnFqsm5xcmJeXmqRrpFebmaJXmpK6SZG\r
+       UEhwSvLuYHx3UOkQowAHoxIPr0V7WpAQa2JZcWXuIUZJDiYlUV51/vQgIb6k/JTKjMTijPii\r
+       0pzU4kOMEhzMSiK8zb5A5bwpiZVVqUX5MClpDhYlcd6bHPZBQgLpiSWp2ampBalFMFkZDg4l\r
+       CV5fUaChgkWp6akVaZk5JQhpJg5OkOE8QMNXgNTwFhck5hZnpkPkTzEqSonz8oMkBEASGaV5\r
+       cL2wmH3FKA70ijDvFxGgKh5gvMN1vwIazAQ0eMoSkKuLSxIRUlINjGlfvu4/5nDq7P3ah41/\r
+       0+xP6e8SYN2rrTJBXvVAleUk3f35zafqsx/saPYXZHslWHTrX8NGTbYNB338J6+acsXvaqhs\r
+       q+XSP7oHXc4zdk1lubt/47Sti5adDGeZupz97nqbnD/HtHkPbz03WcLg0S3dtw3bTH9q1tto\r
+       T/7WtUI2ZfuPS4e9m7KVWIozEg21mIuKEwFaehDbtAIAAA==\r
+X-BeenThere: notmuch@notmuchmail.org\r
+X-Mailman-Version: 2.1.13\r
+Precedence: list\r
+List-Id: "Use and development of the notmuch mail system."\r
+       <notmuch.notmuchmail.org>\r
+List-Unsubscribe: <http://notmuchmail.org/mailman/options/notmuch>,\r
+       <mailto:notmuch-request@notmuchmail.org?subject=unsubscribe>\r
+List-Archive: <http://notmuchmail.org/pipermail/notmuch>\r
+List-Post: <mailto:notmuch@notmuchmail.org>\r
+List-Help: <mailto:notmuch-request@notmuchmail.org?subject=help>\r
+List-Subscribe: <http://notmuchmail.org/mailman/listinfo/notmuch>,\r
+       <mailto:notmuch-request@notmuchmail.org?subject=subscribe>\r
+X-List-Received-Date: Wed, 23 Oct 2013 00:22:26 -0000\r
+\r
+This is v2 of id:1382471457-26056-1-git-send-email-amdragon@mit.edu.\r
+It improves some documentation strings, fixes one bug, and elimintes\r
+some redundant code.  The diff from v1 is below.\r
+\r
+diff --git a/emacs/notmuch-show.el b/emacs/notmuch-show.el\r
+index ef77839..f66d669 100644\r
+--- a/emacs/notmuch-show.el\r
++++ b/emacs/notmuch-show.el\r
+@@ -1800,7 +1800,6 @@ See `notmuch-tag' for information on the format of TAG-CHANGES."\r
+    (list (let (tags)\r
+          (notmuch-show-mapc\r
+           (lambda () (setq tags (append (notmuch-show-get-tags) tags))))\r
+-         (delete-dups tags)\r
+          (notmuch-read-tag-changes tags "Tag thread"))))\r
+   (notmuch-tag (notmuch-show-get-messages-ids-search) tag-changes)\r
+   (notmuch-show-mapc\r
+diff --git a/emacs/notmuch-tag.el b/emacs/notmuch-tag.el\r
+index feee17c..7b21006 100644\r
+--- a/emacs/notmuch-tag.el\r
++++ b/emacs/notmuch-tag.el\r
+@@ -189,6 +189,9 @@ the messages that were tagged"\r
+ `notmuch-read-tag-changes' function.")\r
\r
+ (defun notmuch-tag-completions (&rest search-terms)\r
++  "Return a list of tags for messages matching SEARCH-TERMS.\r
++\r
++Returns all tags if no search terms are given."\r
+   (if (null search-terms)\r
+       (setq search-terms (list "*")))\r
+   (split-string\r
+@@ -199,7 +202,7 @@ the messages that were tagged"\r
+    "\n+" t))\r
\r
+ (defun notmuch-select-tag-with-completion (prompt &rest search-terms)\r
+-  (let ((tag-list (notmuch-tag-completions search-terms)))\r
++  (let ((tag-list (apply #'notmuch-tag-completions search-terms)))\r
+     (completing-read prompt tag-list nil nil nil 'notmuch-select-tag-history)))\r
\r
+ (defun notmuch-read-tag-changes (current-tags &optional prompt initial-input)\r
+diff --git a/emacs/notmuch.el b/emacs/notmuch.el\r
+index 5492e1b..53e9826 100644\r
+--- a/emacs/notmuch.el\r
++++ b/emacs/notmuch.el\r
+@@ -584,7 +584,10 @@ Returns (TAG-CHANGES REGION-BEGIN REGION-END)."\r
+   "Change tags for the currently selected thread or region.\r
\r
+ See `notmuch-tag' for information on the format of TAG-CHANGES.\r
+-If BEG or END are nil, applies to the thread at point."\r
++When called interactively, this uses the region if the region is\r
++active.  When called directly, BEG and END provide the region.\r
++If these are nil or not provided, this applies to the thread at\r
++point."\r
+   (interactive (notmuch-search-interactive-tag-changes))\r
+   (unless (and beg end) (setq beg (point) end (point)))\r
+   (let ((search-string (notmuch-search-find-thread-id-region-search beg end)))\r
+\r
+\r