# HG changeset patch # User Alex Schroeder # Date 1136733465 0 # Node ID 9b341a563aea21450cd2ebf8c23971392e11f4b3 # Parent ea1d1e880b26d1f37113efe819d40c58c3532af8 (rmail-summary-by-topic): Use rmail-current-subject and rmail-current-subject-regexp. (rmail-summary-next-same-subject): Ditto. diff -r ea1d1e880b26 -r 9b341a563aea lisp/mail/rmailsum.el --- 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