emacs-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: RMAIL, MIME-related bug


From: Kevin Rodgers
Subject: Re: RMAIL, MIME-related bug
Date: Thu, 23 Oct 2003 12:24:44 -0600
User-agent: Mozilla/5.0 (X11; U; SunOS i86pc; en-US; rv:0.9.4.1) Gecko/20020406 Netscape6/6.2.2

Juri Linkov wrote:

Kevin Rodgers <address@hidden> writes:
I did a little work on this issue about 2 1/2 years ago.  My approach
was to define a bookmark as a URL whose protocol is "mailmessage", so
that I could use Emacs' url.el library to parse it and ange-ftp.el to
access remote //address@hidden folders.  However, I wrote it as an add-on
to VM, so the code that actually views the folder and selects the
message would have to be converted to Rmail.  And it would have to be
extended to handle IMAP folders (cf. file folders).

Using URL for references to messages is a good solution, but instead
of inventing ad hoc protocol name, it's better to use standard name
"mid" defined by http://www.ietf.org/rfc/rfc2392.txt.


Thanks for the pointer, but I find that document somewhat disappointing.

For one thing, I was confused by this:

        A "cid" URL is converted to the corresponding Content-ID message
        header [MIME] by removing the "cid:" prefix, converting the % encoded
        character to their equivalent US-ASCII characters, and enclosing the
        remaining parts with an angle bracket pair, "<" and ">".  For example,
        "cid:foo4%25foo1@bar.net" corresponds to

            Content-ID: <address@hidden>

        Reversing the process and converting URL special characters to their
        % encodings produces the original cid.

        A "mid" URL is converted to a Message-ID or Message-ID/Content-ID
        pair in a similar fashion.

Shouldn't "%25" have been converted to "%":

        Content-ID: <address@hidden>

But more importantly, the mid and cid URLs do not actually specify a
LOCATION: that makes them more like a URN than a URL.


Then, for example, opening the link <mid:address@hidden>
should start a mail reader, find corresponding message by its
Message-ID, prepare article buffer and switch to it (e.g. in case of
Gnus to call the function `gnus-summary-goto-article'; other mail
readers should have a similar function).


Shouldn't the cid and mid schemes specify a location via the Common
Internet Scheme Syntax defined in RFC 1738?  That way, you could specify
a folder file, or a POP or IMAP server (and user and password).


I'm not sure yet, where this could be implemented: url.el is not part
of Emacs (BTW: Why?); thingatpt.el mentions this protocol name, but
that's all; perhaps this should be done partially in ffap.el.

As long as it respects the read-mail-command variable.  To do that
correctly, I think we would need to define an interface like compose-mail
that would accept all the arguments that might be necessary to specify a
message (folder file and format; or server, protocol, user, and password;
plus message id); then a new utility define-read-mail-command (analogous to
define-mail-user-agent) that would associate each read-mail-command to a
function that supports that interface.


Otherwise, how would Emacs know where to search for the Message-Id?

--
Kevin Rodgers






reply via email to

[Prev in Thread] Current Thread [Next in Thread]