Re: [Evolution-hackers] Re: [Evolution] evolution 0.3 mbox config bug



Gee, here's another reason to drop the ridiculous policy of mangling
the subject to include the list name:

        Subject: Re: [Evolution-hackers] Re: [Evolution] ...

Yay. Our first 0.3 bug: If you configure an mbox mail source in either
the config druid or the config dialog box, you need to start the path
with two slashes rather than one. (Eg, "//var/spool/mail/danw", which
will result in a URL of mbox:///var/spool/mail/danw.)

Sigh, "mbox" instead of "mailbox"?

Unless there's some good reason to do otherwise, and I sincerely doubt
that there is, you should do mailbox URLs compatibly with Netscape 3.

The mailbox: URL is a way of referring to local mail folders, and to
messages within them.  

In 2.0 and 3.0:

  mailbox:pathname              refers to the folder itself.
  mailbox:pathname?id=xxx       refers to a message by ID.
  mailbox:pathname?number=n     refers to a message by number (the
                                first message in the folder is 0,
                                the second message is 1, etc.)
  mailbox:pathname?id=xxx&number=n    is the same as the "number=n"
                                form if and only if message N has the
                                ID xxx; else it is the same as the
                                "id=xxx" form.  (This is for
                                distinguishing between two messages
                                with the same id.)

4.0 broke this, making both the "id" and "number" parameters manditory;
changing the "number" parameter from a *message number* to *byte
offset*; and making it impossible to refer to arbitrary files as
mailboxes (you can only refer to files that are under your mail
directory, because of their pathetic database usage.)

To those URLs, you can append some other parameters that override
the various display options on the View menu:

  &headers=all                  show all headers
  &headers=some                 show interesting headers
  &headers=micro                show the one-line header display

  &part=n.m                     display a specific sub-part of a MIME
                                message.  The numbers indicate the
                                index in the tree.

  &rot13=true                   rotate the characters in the text parts

  &inline=true                  try and display attachments inline
  &inline=false                 don't display attachments inline

Note that the mailbox: url doesn't talk about attachments at all.
It *only* lets you index messages in mbox folders.

Modulo the way 4.x screwed things up, mailbox: was identical to the
file: URL, with the exception that A: it was presented differently,
and B: you could use ?id= and/or ?number= to reference messages in
the (mbox) file by message-id or positional index (or both, with
error-checking.)

I lied a little bit above: all the attachment stuff (part=1.2.3 and so
on) is actually a part of libmime -- those parameters are parsed by *the
thing that displays messages*, not by *the thing that extracts messages
from folders*.  That's why ?part= works with news: urls too -- that's
not built into the URL handler for news: (or mailbox:) but into the
content-type handler for message/*.

Likewise, if you have a HTTP server (or a local file extension) that
returns documents of type message/rfc822, those will be displayed by
libmime, and URLs like http://foo/bar.msg?part=1.2&inline=false will
just magically work.

-- 
Jamie Zawinski
jwz jwz org             http://www.jwz.org/
jwz dnalounge com       http://www.dnalounge.com/




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