Return-Path: X-Original-To: notmuch@notmuchmail.org Delivered-To: notmuch@notmuchmail.org Received: from localhost (localhost [127.0.0.1]) by olra.theworths.org (Postfix) with ESMTP id 4BFC5431FBD; Mon, 30 Nov 2009 23:28:02 -0800 (PST) X-Virus-Scanned: Debian amavisd-new at olra.theworths.org Received: from olra.theworths.org ([127.0.0.1]) by localhost (olra.theworths.org [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id qwzOv9JypcO8; Mon, 30 Nov 2009 23:28:01 -0800 (PST) Received: from yoom.home.cworth.org (localhost [127.0.0.1]) by olra.theworths.org (Postfix) with ESMTP id 3FBAE431FAE; Mon, 30 Nov 2009 23:28:01 -0800 (PST) Received: by yoom.home.cworth.org (Postfix, from userid 1000) id 63E51254419; Mon, 30 Nov 2009 23:27:43 -0800 (PST) From: Carl Worth To: Keith Packard , notmuch@notmuchmail.org In-Reply-To: References: <1258493565-13508-1-git-send-email-keithp@keithp.com> <87d43axi4e.fsf@yoom.home.cworth.org> <87zl6eeydr.fsf@yoom.home.cworth.org> <873a4521nb.fsf@yoom.home.cworth.org> Date: Mon, 30 Nov 2009 23:27:43 -0800 Message-ID: <87tywb9ms0.fsf@yoom.home.cworth.org> MIME-Version: 1.0 Content-Type: multipart/signed; boundary="=-=-="; micalg=pgp-sha1; protocol="application/pgp-signature" Subject: Re: [notmuch] [PATCH] Make notmuch-show 'X' (and 'x') commands remove inbox (and unread) tags X-BeenThere: notmuch@notmuchmail.org X-Mailman-Version: 2.1.12 Precedence: list List-Id: "Use and development of the notmuch mail system." List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 01 Dec 2009 07:28:02 -0000 --=-=-= Content-Transfer-Encoding: quoted-printable On Sun, 22 Nov 2009 23:20:58 -0800, Keith Packard wrote: > So we need to do the 'mark all that have been seen read' change, then we > can do the rest of this switch. Not sure how to make that work, as we > need to know what has been displayed, and you can display bits of the > window in lots of different ways (even using the mouse!) Yeah, we're not yet very friendly to reading with the mouse scroll wheel, (in that doing so won't clear the "unread" tag from messages as they go by). Meanwhile, I actually like being able to peek ahead in a thread with 'n' and 'p' and know that those commands don't touch my "unread" tag. So I think what I'd like is for 'a' and 'x' to simply remove the unread tag from any message whose final line is currently visible. But that's also really orthogonal to making 'x' and 'X' remove the "inbox" tag from the messages in the current thread. So I've just committed that change (see below). =2DCarl commit 55559ea409ad8df367f13752430244b7087dcd23 Author: Carl Worth Date: Mon Nov 30 23:21:04 2009 -0800 notmuch.el: Make 'x' and 'X' in show-mode archive the current thread. =20=20=20=20 This makes these keys different than 'q' in this mode, (where 'x' and 'q' are identical in all of the other modes currently). =20=20=20=20 The idea here is to make it easier to do non-linear reading of messages, (such as when poking in to read just one or two threads from a search result that returned many threads). diff --git a/notmuch.el b/notmuch.el index e605d9d..2509651 100644 =2D-- a/notmuch.el +++ b/notmuch.el @@ -55,7 +55,6 @@ (let ((map (make-sparse-keymap))) (define-key map "?" 'notmuch-help) (define-key map "q" 'kill-this-buffer) =2D (define-key map "x" 'kill-this-buffer) (define-key map (kbd "C-p") 'notmuch-show-previous-line) (define-key map (kbd "C-n") 'notmuch-show-next-line) (define-key map (kbd "M-TAB") 'notmuch-show-previous-button) @@ -70,6 +69,8 @@ (define-key map "v" 'notmuch-show-view-all-mime-parts) (define-key map "-" 'notmuch-show-remove-tag) (define-key map "+" 'notmuch-show-add-tag) + (define-key map "X" 'notmuch-show-mark-read-then-archive-then-exit) + (define-key map "x" 'notmuch-show-archive-thread-then-exit) (define-key map "A" 'notmuch-show-mark-read-then-archive-thread) (define-key map "a" 'notmuch-show-archive-thread) (define-key map "p" 'notmuch-show-previous-message) @@ -273,6 +274,18 @@ buffer." (interactive) (notmuch-show-archive-thread-maybe-mark-read nil)) =20 +(defun notmuch-show-archive-thread-then-exit () + "Archive each message in thread, then exit back to search results." + (interactive) + (notmuch-show-archive-thread) + (kill-this-buffer)) + +(defun notmuch-show-mark-read-then-archive-then-exit () + "Remove unread tags from thread, then archive and exit to search results= ." + (interactive) + (notmuch-show-mark-read-then-archive-thread) + (kill-this-buffer)) + (defun notmuch-show-view-raw-message () "View the raw email of the current message." (interactive) --=-=-= Content-Type: application/pgp-signature -----BEGIN PGP SIGNATURE----- Version: GnuPG v1.4.10 (GNU/Linux) iD8DBQFLFMVv6JDdNq8qSWgRAl8WAKCjf1JKUfzxaSgcWWcKG3sCrtu9YQCcCkQz FQVDLRTLeTzjoahQEBt+KbU= =mRG0 -----END PGP SIGNATURE----- --=-=-=--