mirror of
https://git.savannah.gnu.org/git/emacs.git
synced 2025-01-11 16:08:13 +00:00
(rmail-output-as-mbox): Start search from point-min. If constructing a
"From " line, prefer the date header over the current time.
This commit is contained in:
parent
8f8cecb318
commit
050f62bf25
@ -6,6 +6,8 @@
|
|||||||
(rmail-output-as-babyl, rmail-output-to-babyl-buffer): Remove
|
(rmail-output-as-babyl, rmail-output-to-babyl-buffer): Remove
|
||||||
unnecessary use of with-no-warnings.
|
unnecessary use of with-no-warnings.
|
||||||
(rmail-output-as-mbox, rmail-output-as-seen): Doc fix.
|
(rmail-output-as-mbox, rmail-output-as-seen): Doc fix.
|
||||||
|
(rmail-output-as-mbox): Start search from point-min. If constructing a
|
||||||
|
"From " line, prefer the date header over the current time.
|
||||||
|
|
||||||
2009-02-15 Richard M Stallman <rms@gnu.org>
|
2009-02-15 Richard M Stallman <rms@gnu.org>
|
||||||
|
|
||||||
|
@ -307,45 +307,37 @@ It alters the current buffer's text, so call with a temp buffer current.
|
|||||||
If FILE-NAME is visited, output into its buffer instead.
|
If FILE-NAME is visited, output into its buffer instead.
|
||||||
AS-SEEN is non-nil if we are copying the message \"as seen\"."
|
AS-SEEN is non-nil if we are copying the message \"as seen\"."
|
||||||
(let ((case-fold-search t)
|
(let ((case-fold-search t)
|
||||||
mail-from mime-version content-type)
|
from date)
|
||||||
|
(goto-char (point-min))
|
||||||
;; Preserve the Mail-From and MIME-Version fields
|
;; Preserve the Mail-From and MIME-Version fields
|
||||||
;; even if they have been pruned.
|
;; even if they have been pruned.
|
||||||
(search-forward "\n\n" nil 'move)
|
(search-forward "\n\n" nil 'move)
|
||||||
(narrow-to-region (point-min) (point))
|
(narrow-to-region (point-min) (point))
|
||||||
|
|
||||||
(rmail-delete-unwanted-fields
|
(rmail-delete-unwanted-fields
|
||||||
(if rmail-enable-mime "Mail-From"
|
(if rmail-enable-mime "Mail-From"
|
||||||
"Mail-From\\|MIME-Version\\|Content-type"))
|
"Mail-From\\|MIME-Version\\|Content-type"))
|
||||||
|
;; Generate a From line from other header fields if necessary.
|
||||||
|
;; FIXME this duplicates code from unrmail.el.
|
||||||
|
(goto-char (point-min))
|
||||||
|
(unless (looking-at "From ")
|
||||||
|
(setq from (or (mail-fetch-field "from")
|
||||||
|
(mail-fetch-field "really-from")
|
||||||
|
(mail-fetch-field "sender")
|
||||||
|
"unknown")
|
||||||
|
date (mail-fetch-field "date")
|
||||||
|
date (or (and date
|
||||||
|
(ignore-errors
|
||||||
|
(current-time-string (date-to-time date))))
|
||||||
|
(current-time-string)))
|
||||||
|
(insert "From " (mail-strip-quoted-names from) " " date "\n"))
|
||||||
(widen)
|
(widen)
|
||||||
|
|
||||||
;; Make sure message ends with blank line.
|
;; Make sure message ends with blank line.
|
||||||
(goto-char (point-max))
|
(goto-char (point-max))
|
||||||
(unless (bolp)
|
(unless (bolp)
|
||||||
(insert "\n"))
|
(insert "\n"))
|
||||||
(unless (looking-back "\n\n")
|
(unless (looking-back "\n\n")
|
||||||
(insert "\n"))
|
(insert "\n"))
|
||||||
|
|
||||||
;; Generate a From line from other header fields
|
|
||||||
;; if necessary.
|
|
||||||
(goto-char (point-min))
|
(goto-char (point-min))
|
||||||
(unless (looking-at "From ")
|
|
||||||
(insert "From "
|
|
||||||
(mail-strip-quoted-names
|
|
||||||
(save-excursion
|
|
||||||
(save-restriction
|
|
||||||
(goto-char (point-min))
|
|
||||||
(narrow-to-region
|
|
||||||
(point)
|
|
||||||
(or (search-forward "\n\n" nil)
|
|
||||||
(point-max)))
|
|
||||||
(or (mail-fetch-field "from")
|
|
||||||
(mail-fetch-field "really-from")
|
|
||||||
(mail-fetch-field "sender")
|
|
||||||
"unknown"))))
|
|
||||||
" " (current-time-string) "\n"))
|
|
||||||
|
|
||||||
(let ((buf (find-buffer-visiting file-name))
|
(let ((buf (find-buffer-visiting file-name))
|
||||||
(tembuf (current-buffer)))
|
(tembuf (current-buffer)))
|
||||||
(if (null buf)
|
(if (null buf)
|
||||||
|
Loading…
Reference in New Issue
Block a user