From: Chong Yidong <cyd@gnu.org>
To: mark.lillibridge@hp.com
Cc: emacs-devel@gnu.org
Subject: Re: documentation of Rmail 23 mailbox format?
Date: Sun, 06 Nov 2011 14:43:43 +0800 [thread overview]
Message-ID: <87mxc9oin4.fsf@gnu.org> (raw)
In-Reply-To: <qmhmxcat2x7.fsf@hp.com> (Mark Lillibridge's message of "Sat, 05 Nov 2011 19:12:04 -0700")
Mark Lillibridge <mark.lillibridge@hp.com> writes:
> I've found at least one bug (get messages destroys all white space at
> the end of the last message already in the mailbox) in Rmail 23
I think that's coming from this code in rmail-get-new-mail:
;; In case of brain damage caused by require-final-newline.
(goto-char (point-max))
(skip-chars-backward " \t\n")
(delete-region (point) (point-max))
Could you try removing these lines and seeing if the problem persists?
The require-final-newline variable is set to nil in rmail mode anyway so
this should not be necessary.
> Unless told otherwise, I'm going to assume that Rmail 23 is supposed
> be using the mboxo/mboxrd mailbox format (see
> http://homepage.ntlworld.com./jonathan.deboynepollard/FGA/mail-mbox-formats.html).
IIRC, it is supposed to use the mboxrd format. For instance, the
unquoting of From lines for message display is handled by this code in
rmail-show-message-1:
;; Unquote quoted From lines
(while (re-search-forward "^>+From " nil t)
(beginning-of-line)
(delete-char 1)
(forward-line))
> In particular, this means that:
>
> Each message is preceded by a From_ line and followed by a blank
> line. A From_ line is a line that begins with the five characters
> 'F', 'r', 'o', 'm', and ' '.
>
> Rmail 23 does not comply correctly with this. For example, it fails
> to add a blank line after the last message.
I think that's the purpose of this code from rmail-insert-inbox-text:
<after inserting the contents of the inbox>
;; Determine if a pair of newline message separators need
;; to be added to the new collection of messages. This is
;; the case for all new message collections added to a
;; non-empty mail file.
(unless (zerop size)
(save-restriction
(let ((start (point-min)))
(widen)
(unless (eq start (point-min))
(goto-char start)
(insert "\n\n")
(setq size (+ 2 size))))))
(goto-char (point-max))
(or (= (preceding-char) ?\n)
(zerop size)
(insert ?\n))
Maybe it's not doing the right thing in some circumstances?
next prev parent reply other threads:[~2011-11-06 6:43 UTC|newest]
Thread overview: 3+ messages / expand[flat|nested] mbox.gz Atom feed top
2011-11-06 2:12 documentation of Rmail 23 mailbox format? Mark Lillibridge
2011-11-06 6:43 ` Chong Yidong [this message]
2011-11-06 17:36 ` Mark Lillibridge
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=87mxc9oin4.fsf@gnu.org \
--to=cyd@gnu.org \
--cc=emacs-devel@gnu.org \
--cc=mark.lillibridge@hp.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
Code repositories for project(s) associated with this external index
https://git.savannah.gnu.org/cgit/emacs.git
https://git.savannah.gnu.org/cgit/emacs/org-mode.git
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.