all messages for Emacs-related lists mirrored at yhetil.org
 help / color / mirror / code / Atom feed
* Rmail/mbox new mail/coding system issue
@ 2008-09-24 14:33 Paul Michael Reilly
  2008-09-24 18:31 ` Eli Zaretskii
  0 siblings, 1 reply; 2+ messages in thread
From: Paul Michael Reilly @ 2008-09-24 14:33 UTC (permalink / raw)
  To: emacs-devel

Currently, Rmail (and Pmail) append new mail messages to the current
mail buffer.  With Rmail/mbox the mail buffer is unibyte.  But since
the User can select new mail to come from a non-mbox mail file
(especially a collection of Babyl formatted messages) it is now pretty
clear to me that Rmail/mbox must read the new mail messages into a
temporary buffer (with multibyte enabled) where the collection is
converted, if necessary, to mbox format and then appended to the
Rmail/mbox collection of messages.

The issue is how to handle the per-message encoding that might be
necessary to represent the message in a unibyte buffer.  Off the top
of my head I would be inclined to encode the message as base64 but I
would not be surprised if that is overly simplistic.

First, how can I tell if a message must be encoded?

Second, I confess to not knowing Babyl sufficiently well to know if it
loses information in the process of decoding and storing the messages.
So, is it even possible to re-encode a Babyl message?

Are there any other issues with getting new mail into an Rmail/mbox
buffer that I have not identified?

Thanks,

-pmr




^ permalink raw reply	[flat|nested] 2+ messages in thread

* Re: Rmail/mbox new mail/coding system issue
  2008-09-24 14:33 Rmail/mbox new mail/coding system issue Paul Michael Reilly
@ 2008-09-24 18:31 ` Eli Zaretskii
  0 siblings, 0 replies; 2+ messages in thread
From: Eli Zaretskii @ 2008-09-24 18:31 UTC (permalink / raw)
  To: pmr; +Cc: emacs-devel

> Date: Wed, 24 Sep 2008 10:33:18 -0400
> From: Paul Michael Reilly <pmr@pajato.com>
> 
> Currently, Rmail (and Pmail) append new mail messages to the current
> mail buffer.  With Rmail/mbox the mail buffer is unibyte.  But since
> the User can select new mail to come from a non-mbox mail file
> (especially a collection of Babyl formatted messages) it is now pretty
> clear to me that Rmail/mbox must read the new mail messages into a
> temporary buffer (with multibyte enabled) where the collection is
> converted, if necessary, to mbox format and then appended to the
> Rmail/mbox collection of messages.

That's true, but I'd only do this if you positively detect a Babyl
file, or some other sign that it's not an mbox file.

> The issue is how to handle the per-message encoding that might be
> necessary to represent the message in a unibyte buffer.  Off the top
> of my head I would be inclined to encode the message as base64 but I
> would not be surprised if that is overly simplistic.

Why base64? just encode it according to the X-Coding-System header,
generate a suitable content-transfer-encoding MIME header, and that's
it.

> First, how can I tell if a message must be encoded?

Babyl files need encoding if you want to generate an mbox file from
them.  That's because Emacs reads and writes them with no-conversion.

> Second, I confess to not knowing Babyl sufficiently well to know if it
> loses information in the process of decoding and storing the messages.
> So, is it even possible to re-encode a Babyl message?

In some rare cases, information can be lost, but you don't have any
choice but encode the message body anyway.

In any case, I wouldn't worry at this point about appending Babyl
files.  I suggest to solve first the case of appending an mbox file.
After all, this will be by far the most frequent operation with
Rmail/mbox.





^ permalink raw reply	[flat|nested] 2+ messages in thread

end of thread, other threads:[~2008-09-24 18:31 UTC | newest]

Thread overview: 2+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2008-09-24 14:33 Rmail/mbox new mail/coding system issue Paul Michael Reilly
2008-09-24 18:31 ` Eli Zaretskii

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.