+ (setq this-command 'mail-hist-input-access)
+ ;; Special case: when flipping through message bodies, it's
+ ;; usually most useful for point to stay at the top. This
+ ;; is because the unique part of a message in a thread is
+ ;; more likely to be at the top than the bottom, as the
+ ;; bottom is often just the same quoted history for every
+ ;; message in the thread, differing only in indentation
+ ;; level.
+ (if (string-equal header "body")
+ (goto-char start)))
+ ))))
+
+
+(defun mail-hist-previous-input (header)
+ "Insert the previous contents of this mail header or message body.
+Moves back through the history of sent mail messages. Each header has
+its own independent history, as does the body of the message.
+
+The history only contains the contents of outgoing messages, not
+received mail."
+ (interactive (list (or (mail-hist-current-header-name) "body")))
+ (mail-hist-retrieve-and-insert header 'ring-plus1))
+