From: Jameson Rollins <jrollins@finestructure.net>
To: Notmuch Mail <notmuch@notmuchmail.org>
Subject: [PATCH] emacs: remove thread archiving from show-advance function
Date: Fri, 12 Nov 2010 10:57:53 -0500 [thread overview]
Message-ID: <87eiaqwmzh.fsf@servo.finestructure.net> (raw)
I believe it's important to have a function to scroll through open
messages in the currently viewed thread, and ' ' is the most logical
keybinding for that. However, the current function is far too
agressive in automatically archiving the thread and moving to the next thread
when getting to the end of the current thread. This patch changes this
function to just stop when it gets to the end of the thread, thereby
giving the user a chance to act on the thread how they wish.
---
emacs/notmuch-show.el | 32 ++++++++++----------------------
1 files changed, 10 insertions(+), 22 deletions(-)
diff --git a/emacs/notmuch-show.el b/emacs/notmuch-show.el
index d8773e6..b89b685 100644
--- a/emacs/notmuch-show.el
+++ b/emacs/notmuch-show.el
@@ -597,7 +597,7 @@ function is used. "
(define-key map "n" 'notmuch-show-next-open-message)
(define-key map "p" 'notmuch-show-previous-open-message)
(define-key map (kbd "DEL") 'notmuch-show-rewind)
- (define-key map " " 'notmuch-show-advance-and-archive)
+ (define-key map " " 'notmuch-show-advance)
(define-key map (kbd "M-RET") 'notmuch-show-open-or-close-all)
(define-key map (kbd "RET") 'notmuch-show-toggle-message)
map)
@@ -617,14 +617,12 @@ pressing RET after positioning the cursor on a hidden part, (for
which \\[notmuch-show-next-button] and \\[notmuch-show-previous-button] are helpful).
Reading the thread sequentially is well-supported by pressing
-\\[notmuch-show-advance-and-archive]. This will scroll the current message (if necessary), advance
-to the next message, or advance to the next thread (if already on
-the last message of a thread).
+\\[notmuch-show-advance]. This will scroll the current message (if necessary), advance
+to the next message.
Other commands are available to read or manipulate the thread
more selectively, (such as '\\[notmuch-show-next-message]' and '\\[notmuch-show-previous-message]' to advance to messages
-without removing any tags, and '\\[notmuch-show-archive-thread]' to archive an entire thread
-without scrolling through with \\[notmuch-show-advance-and-archive]).
+without removing any tags, and '\\[notmuch-show-archive-thread]' to archive an entire thread.
You can add or remove arbitary tags from the current message with
'\\[notmuch-show-add-tag]' or '\\[notmuch-show-remove-tag]'.
@@ -809,8 +807,8 @@ All currently available key bindings:
;; Commands typically bound to keys.
-(defun notmuch-show-advance-and-archive ()
- "Advance through thread and archive.
+(defun notmuch-show-advance ()
+ "Advance through thread.
This command is intended to be one of the simplest ways to
process a thread of email. It does the following:
@@ -819,13 +817,7 @@ If the current message in the thread is not yet fully visible,
scroll by a near screenful to read more of the message.
Otherwise, (the end of the current message is already within the
-current window), advance to the next open message.
-
-Finally, if there is no further message to advance to, and this
-last message is already read, then archive the entire current
-thread, (remove the \"inbox\" tag from each message). Also kill
-this buffer, and display the next thread from the search from
-which this thread was originally shown."
+current window), advance to the next open message."
(interactive)
(let ((end-of-this-message (notmuch-show-message-bottom)))
(cond
@@ -843,14 +835,10 @@ which this thread was originally shown."
((not (= end-of-this-message (point-max)))
;; This is not the last message - move to the next visible one.
- (notmuch-show-next-open-message))
-
- (t
- ;; This is the last message - archive the thread.
- (notmuch-show-archive-thread)))))
+ (notmuch-show-next-open-message)))))
(defun notmuch-show-rewind ()
- "Backup through the thread, (reverse scrolling compared to \\[notmuch-show-advance-and-archive]).
+ "Backup through the thread, (reverse scrolling compared to \\[notmuch-show-advance]).
Specifically, if the beginning of the previous email is fewer
than `window-height' lines from the current point, move to it
@@ -860,7 +848,7 @@ Otherwise, just scroll down a screenful of the current message.
This command does not modify any message tags, (it does not undo
any effects from previous calls to
-`notmuch-show-advance-and-archive'."
+`notmuch-show-advance'."
(interactive)
(let ((start-of-message (notmuch-show-message-top))
(start-of-window (window-start)))
--
1.7.2.3
next reply other threads:[~2010-11-12 16:00 UTC|newest]
Thread overview: 3+ messages / expand[flat|nested] mbox.gz Atom feed top
2010-11-12 15:57 Jameson Rollins [this message]
2010-11-12 17:12 ` [PATCH] emacs: remove thread archiving from show-advance function David Edmondson
2010-11-12 19:52 ` Jameson Rollins
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
List information: https://notmuchmail.org/
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=87eiaqwmzh.fsf@servo.finestructure.net \
--to=jrollins@finestructure.net \
--cc=notmuch@notmuchmail.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
Code repositories for project(s) associated with this public inbox
https://yhetil.org/notmuch.git/
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).