From: Alex Schroeder Date: Sun, 8 Jan 2006 15:17:45 +0000 (+0000) Subject: (rmail-summary-by-topic): Use X-Git-Tag: emacs-pretest-22.0.90~4837 X-Git-Url: http://git.eshelyaron.com/gitweb/?a=commitdiff_plain;h=7d89781816ec3a653d5a14c93b6703dcf5d270f1;p=emacs.git (rmail-summary-by-topic): Use rmail-current-subject and rmail-current-subject-regexp. (rmail-summary-next-same-subject): Ditto. --- diff --git a/lisp/mail/rmailsum.el b/lisp/mail/rmailsum.el index 497f2f75301..e9ddb83baf3 100644 --- a/lisp/mail/rmailsum.el +++ b/lisp/mail/rmailsum.el @@ -132,7 +132,15 @@ Normally checks the Subject field of headers; 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 moves backward N messages with these labels." 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