Re: [feature request] emacs: use `notmuch insert` for FCC
[notmuch-archives.git] / 36 / b82092061c2f04cbfd5233aeedb4914d3b137b
1 Return-Path: <jrollins@finestructure.net>\r
2 X-Original-To: notmuch@notmuchmail.org\r
3 Delivered-To: notmuch@notmuchmail.org\r
4 Received: from localhost (localhost [127.0.0.1])\r
5         by olra.theworths.org (Postfix) with ESMTP id 65B6C4196F0\r
6         for <notmuch@notmuchmail.org>; Wed,  9 Jun 2010 07:59:13 -0700 (PDT)\r
7 X-Virus-Scanned: Debian amavisd-new at olra.theworths.org\r
8 X-Spam-Flag: NO\r
9 X-Spam-Score: -2.02\r
10 X-Spam-Level: \r
11 X-Spam-Status: No, score=-2.02 tagged_above=-999 required=5\r
12         tests=[BAYES_05=-0.5, RCVD_IN_DNSWL_MED=-2.3, RCVD_IN_SORBS_WEB=0.77,\r
13         T_MIME_NO_TEXT=0.01] autolearn=ham\r
14 Received: from olra.theworths.org ([127.0.0.1])\r
15         by localhost (olra.theworths.org [127.0.0.1]) (amavisd-new, port 10024)\r
16         with ESMTP id jGWZNNdiw3zh for <notmuch@notmuchmail.org>;\r
17         Wed,  9 Jun 2010 07:59:01 -0700 (PDT)\r
18 Received: from brinza.cc.columbia.edu (brinza.cc.columbia.edu [128.59.29.8])\r
19         by olra.theworths.org (Postfix) with ESMTP id B7840431FC1\r
20         for <notmuch@notmuchmail.org>; Wed,  9 Jun 2010 07:59:01 -0700 (PDT)\r
21 Received: from servo.finestructure.net (NYUFGA-GUESTS-01.NATPOOL.NYU.EDU\r
22         [192.76.177.124])\r
23         (user=jgr2110 author=jrollins@finestructure.net mech=PLAIN bits=0)\r
24         by brinza.cc.columbia.edu (8.14.3/8.14.3) with ESMTP id o59EwxZg001720\r
25         (version=TLSv1/SSLv3 cipher=AES256-SHA bits=256 verify=NOT)\r
26         for <notmuch@notmuchmail.org>; Wed, 9 Jun 2010 10:59:00 -0400 (EDT)\r
27 Received: from jrollins by servo.finestructure.net with local (Exim 4.71)\r
28         (envelope-from <jrollins@finestructure.net>) id 1OMMk7-0006nL-C5\r
29         for notmuch@notmuchmail.org; Wed, 09 Jun 2010 10:58:59 -0400\r
30 From: Jameson Rollins <jrollins@finestructure.net>\r
31 To: Notmuch Mail <notmuch@notmuchmail.org>\r
32 Subject: [PATCH] remove message archiving from show-advance-and-archive\r
33 Date: Wed, 9 Jun 2010 10:49:43 -0400\r
34 Message-ID: <87zkz4xnf4.fsf@servo.finestructure.net>\r
35 MIME-Version: 1.0\r
36 Content-Type: multipart/signed; boundary="=-=-=";\r
37         micalg=pgp-sha256; protocol="application/pgp-signature"\r
38 X-No-Spam-Score: Local\r
39 X-Scanned-By: MIMEDefang 2.68 on 128.59.29.8\r
40 X-BeenThere: notmuch@notmuchmail.org\r
41 X-Mailman-Version: 2.1.13\r
42 Precedence: list\r
43 List-Id: "Use and development of the notmuch mail system."\r
44         <notmuch.notmuchmail.org>\r
45 List-Unsubscribe: <http://notmuchmail.org/mailman/options/notmuch>,\r
46         <mailto:notmuch-request@notmuchmail.org?subject=unsubscribe>\r
47 List-Archive: <http://notmuchmail.org/pipermail/notmuch>\r
48 List-Post: <mailto:notmuch@notmuchmail.org>\r
49 List-Help: <mailto:notmuch-request@notmuchmail.org?subject=help>\r
50 List-Subscribe: <http://notmuchmail.org/mailman/listinfo/notmuch>,\r
51         <mailto:notmuch-request@notmuchmail.org?subject=subscribe>\r
52 X-List-Received-Date: Wed, 09 Jun 2010 14:59:13 -0000\r
53 \r
54 --=-=-=\r
55 Content-Transfer-Encoding: quoted-printable\r
56 \r
57 The function to advance through threads with the space bar is useful.\r
58 However, the current implementation also archives messages.  The idea\r
59 of archiving a message should not be intertwined with the processes of\r
60 advancing through messages to read them.  Archiving in general should\r
61 be a separate operation that one does explicitly.  This patch just\r
62 renames the advance function "notmuch-show-advance", and removes the\r
63 archiving of a thread when the end of the thread is reached.\r
64 =2D--\r
65  emacs/notmuch-show.el |   27 +++++++++++----------------\r
66  1 files changed, 11 insertions(+), 16 deletions(-)\r
67 \r
68 diff --git a/emacs/notmuch-show.el b/emacs/notmuch-show.el\r
69 index f872cdf..b0c1f63 100644\r
70 =2D-- a/emacs/notmuch-show.el\r
71 +++ b/emacs/notmuch-show.el\r
72 @@ -579,7 +579,7 @@ function is used. "\r
73         (define-key map "n" 'notmuch-show-next-open-message)\r
74         (define-key map "p" 'notmuch-show-previous-open-message)\r
75         (define-key map (kbd "DEL") 'notmuch-show-rewind)\r
76 =2D     (define-key map " " 'notmuch-show-advance-and-archive)\r
77 +       (define-key map " " 'notmuch-show-advance)\r
78         (define-key map (kbd "M-RET") 'notmuch-show-open-or-close-all)\r
79         (define-key map (kbd "RET") 'notmuch-show-toggle-message)\r
80         map)\r
81 @@ -601,7 +601,7 @@ which \\[notmuch-show-next-button] and\r
82  \\[notmuch-show-previous-button] are helpful).\r
83 =20\r
84  Reading the thread sequentially is well-supported by pressing\r
85 =2D\\[notmuch-show-advance-and-archive]. This will scroll the\r
86 +\\[notmuch-show-advance]. This will scroll the\r
87  current message (if necessary), advance to the next message, or\r
88  advance to the next thread (if already on the last message of a\r
89  thread).\r
90 @@ -611,7 +611,7 @@ more selectively, (such as '\\[notmuch-show-next-messag=\r
91 e]' and\r
92  '\\[notmuch-show-previous-message]' to advance to messages\r
93  without removing any tags, and '\\[notmuch-show-archive-thread]'\r
94  to archive an entire thread without scrolling through with\r
95 =2D\\[notmuch-show-advance-and-archive]).\r
96 +\\[notmuch-show-advance]).\r
97 =20\r
98  You can add or remove arbitary tags from the current message with\r
99  '\\[notmuch-show-add-tag]' or '\\[notmuch-show-remove-tag]'.\r
100 @@ -780,8 +780,8 @@ All currently available key bindings:\r
101 =20\r
102  ;; Commands typically bound to keys.\r
103 =20\r
104 =2D(defun notmuch-show-advance-and-archive ()\r
105 =2D  "Advance through thread and archive.\r
106 +(defun notmuch-show-advance ()\r
107 +  "Advance through threads.\r
108 =20\r
109  This command is intended to be one of the simplest ways to\r
110  process a thread of email. It does the following:\r
111 @@ -793,10 +793,9 @@ Otherwise, (the end of the current message is already =\r
112 within the\r
113  current window), advance to the next open message.\r
114 =20\r
115  Finally, if there is no further message to advance to, and this\r
116 =2Dlast message is already read, then archive the entire current\r
117 =2Dthread, (remove the \"inbox\" tag from each message). Also kill\r
118 =2Dthis buffer, and display the next thread from the search from\r
119 =2Dwhich this thread was originally shown."\r
120 +last message is already read. Also kill this buffer, and display\r
121 +the next thread from the search from which this thread was\r
122 +originally shown."\r
123    (interactive)\r
124    (let ((end-of-this-message (notmuch-show-message-bottom)))\r
125      (cond\r
126 @@ -814,14 +813,10 @@ which this thread was originally shown."\r
127 =20\r
128       ((not (=3D end-of-this-message (point-max)))\r
129        ;; This is not the last message - move to the next visible one.\r
130 =2D      (notmuch-show-next-open-message))\r
131 =2D\r
132 =2D     (t\r
133 =2D      ;; This is the last message - archive the thread.\r
134 =2D      (notmuch-show-archive-thread)))))\r
135 +      (notmuch-show-next-open-message)))))\r
136 =20\r
137  (defun notmuch-show-rewind ()\r
138 =2D  "Backup through the thread, (reverse scrolling compared to \\[notmuch-=\r
139 show-advance-and-archive]).\r
140 +  "Backup through the thread, (reverse scrolling compared to \\[notmuch-sh=\r
141 ow-advance]).\r
142 =20\r
143  Specifically, if the beginning of the previous email is fewer\r
144  than `window-height' lines from the current point, move to it\r
145 @@ -831,7 +826,7 @@ Otherwise, just scroll down a screenful of the current =\r
146 message.\r
147 =20\r
148  This command does not modify any message tags, (it does not undo\r
149  any effects from previous calls to\r
150 =2D`notmuch-show-advance-and-archive'."\r
151 +`notmuch-show-advance'."\r
152    (interactive)\r
153    (let ((start-of-message (notmuch-show-message-top))\r
154         (start-of-window (window-start)))\r
155 =2D-=20\r
156 1.7.1\r
157 \r
158 --=-=-=\r
159 Content-Type: application/pgp-signature\r
160 \r
161 -----BEGIN PGP SIGNATURE-----\r
162 Version: GnuPG v1.4.10 (GNU/Linux)\r
163 \r
164 iQIcBAEBCAAGBQJMD6wwAAoJEO00zqvie6q8HVcP/0eBMxSezr3cKXzhl96U78rB\r
165 DW8FBE5sVrQ6JhijHcNJqi2IO8/vn0OKQvmnUm43rXEC2CfoNF6pzi6EeJBPouII\r
166 eZ+3GuTazxlmFdYCN4hNBn0HDd/oflhNQHAX7zhXv7FqfeabTa5EawZeJct7hj6a\r
167 lst8Ekmirz/ixisQBuT1BdmssDbS3JwlQeRyW63osddY6nKDa+65CsrLQ2Q+wJFq\r
168 RbQG416Ljmm4E1ZlSg/Wn9rhUbUEyhPU8s4cl/gTYcD3O+fDUvFxrlitDZG/UGqP\r
169 2TNnuSlSiHfXmm7Gld/wUCCR2oQUT9tqphapyLakyDyquAr1sJ0GWMlJj88AIdMe\r
170 hnjj2L49iAjlwmtCrVdFK7y+EuH8Zuy4CYVZbDBlHeo4vyAkBZ62Dwm9j3x3dgPW\r
171 K0XdNRvdIf3bFclwaUD/h7jVT+C+Mso/FEVWZ+g4oZN/yq9C10XasfrBcvGl3Z/e\r
172 1wM6W+mgXK1wgPTxjdSL200vndx86uLua70vEk0PTHwvM1/uiwDTu9LTfch+Uc2i\r
173 ZPnO1vaJV74yvZGr3UCrvRVvuwU7BWH2ura6SgJEdnIP9T/KPJMYOhjiVpp6IO/6\r
174 lFcMoYLsWNjvWejNfDN2/2LcIgPH0f1LmIv6+zVPoFbkgqfb0u3kaBZAeZ5v7ubt\r
175 j/lY90f6oxVoNgdv+mz+\r
176 =6w/s\r
177 -----END PGP SIGNATURE-----\r
178 --=-=-=--\r