summaryrefslogtreecommitdiff
path: root/lisp/mail
diff options
context:
space:
mode:
authorEli Zaretskii <eliz@gnu.org>2005-08-12 10:28:48 +0000
committerEli Zaretskii <eliz@gnu.org>2005-08-12 10:28:48 +0000
commit234d828a0611bef3b356c0c98d3cd130bb89773f (patch)
treeb6c39e7fd2b9fe164acb961ed42eeaab2edfd412 /lisp/mail
parent3deac4a169c603e81a31b60c4164ab5a152302ec (diff)
downloademacs-234d828a0611bef3b356c0c98d3cd130bb89773f.tar.gz
(rmail-summary-end-of-message): New command to go to the bottom of the mail
message. Added to `rmail-summary-mode-map' with key "/". (rmail-summary-show-message): New (internal) function for use by both `rmail-summary-beginning/end-of-message'. (rmail-summary-beginning-of-message): Changed to use rmail-summary-show-message.
Diffstat (limited to 'lisp/mail')
-rw-r--r--lisp/mail/rmailsum.el21
1 files changed, 19 insertions, 2 deletions
diff --git a/lisp/mail/rmailsum.el b/lisp/mail/rmailsum.el
index 84db530c6fc..129f3f48528 100644
--- a/lisp/mail/rmailsum.el
+++ b/lisp/mail/rmailsum.el
@@ -898,6 +898,7 @@ Search, the `unseen' attribute is restored.")
(define-key rmail-summary-mode-map "x" 'rmail-summary-expunge)
(define-key rmail-summary-mode-map "w" 'rmail-summary-output-body)
(define-key rmail-summary-mode-map "." 'rmail-summary-beginning-of-message)
+ (define-key rmail-summary-mode-map "/" 'rmail-summary-end-of-message)
(define-key rmail-summary-mode-map "<" 'rmail-summary-first-message)
(define-key rmail-summary-mode-map ">" 'rmail-summary-last-message)
(define-key rmail-summary-mode-map " " 'rmail-summary-scroll-msg-up)
@@ -1185,6 +1186,16 @@ move to the previous message."
(defun rmail-summary-beginning-of-message ()
"Show current message from the beginning."
(interactive)
+ (rmail-summary-show-message 'BEG))
+
+(defun rmail-summary-end-of-message ()
+ "Show bottom of current message."
+ (interactive)
+ (rmail-summary-show-message 'END))
+
+(defun rmail-summary-show-message (where)
+ "Show current mail message.
+Position it according to WHERE which can be BEG or END"
(if (and (one-window-p) (not pop-up-frames))
;; If there is just one window, put the summary on the top.
(let ((buffer rmail-view-buffer))
@@ -1196,8 +1207,14 @@ move to the previous message."
(or (eq buffer (window-buffer (next-window (frame-first-window))))
(delete-other-windows)))
(pop-to-buffer rmail-view-buffer))
- (with-no-warnings
- (beginning-of-buffer))
+ (cond
+ ((eq where 'BEG)
+ (goto-char (point-min))
+ (search-forward "\n\n"))
+ ((eq where 'END)
+ (goto-char (point-max))
+ (recenter (1- (window-height))))
+ )
(pop-to-buffer rmail-summary-buffer))
(defun rmail-summary-bury ()