Mercurial > emacs
changeset 68090:9b341a563aea
(rmail-summary-by-topic): Use
rmail-current-subject and rmail-current-subject-regexp.
(rmail-summary-next-same-subject): Ditto.
author | Alex Schroeder <alex@gnu.org> |
---|---|
date | Sun, 08 Jan 2006 15:17:45 +0000 |
parents | ea1d1e880b26 |
children | 17b9be3ce6af |
files | lisp/mail/rmailsum.el |
diffstat | 1 files changed, 14 insertions(+), 12 deletions(-) [+] |
line wrap: on
line diff
--- a/lisp/mail/rmailsum.el Sun Jan 08 13:02:36 2006 +0000 +++ b/lisp/mail/rmailsum.el Sun Jan 08 15:17:45 2006 +0000 @@ -132,7 +132,15 @@ but if WHOLE-MESSAGE is non-nil (prefix arg given), look in the whole message. SUBJECT is a string of regexps separated by commas." - (interactive "sTopics to summarize by: \nP") + (interactive + (let* ((subject (with-current-buffer rmail-buffer + (rmail-current-subject))) + (subject-re (with-current-buffer rmail-buffer + (rmail-current-subject-regexp))) + (prompt (concat "Topics to summarize by (regexp" + (if subject ", default current subject" "") + "): "))) + (list (read-string prompt nil nil subject) current-prefix-arg))) (rmail-new-summary (concat "about " subject) (list 'rmail-summary-by-topic subject whole-message) @@ -568,17 +576,11 @@ With prefix argument N, do this N times. If N is negative, go backwards." (interactive "p") - (let (subject search-regexp i found - (forward (> n 0))) - (save-excursion - (set-buffer rmail-buffer) - (setq subject (mail-fetch-field "Subject")) - (setq i rmail-current-message)) - (if (string-match "Re:[ \t]*" subject) - (setq subject (substring subject (match-end 0)))) - (setq search-regexp (concat "^Subject: *\\(Re: *\\)?" - (regexp-quote subject) - "\n")) + (let ((forward (> n 0)) + search-regexp i found) + (with-current-buffer rmail-buffer + (setq search-regexp (rmail-current-subject-regexp) + i rmail-current-message)) (save-excursion (while (and (/= n 0) (if forward