The following mhl.format file works fine for only message 31 and no other
messages downloaded. It is located in /home/jude/Mail and was first
copied from /etc/nmh in order to have a correct first version. Once done
I did two edits on /home/jude/Mail/mhl.format.
; default message filter for `show'
> The following mhl.format file works fine for only message 31 and no
> other messages downloaded. It is located in /home/jude/Mail and was
> first copied from /etc/nmh in order to have a correct first version.
> Once done I did two edits on /home/jude/Mail/mhl.format.
I think we need a bit more detail to help. What's the command you're
running that ends up invoking mhl(1)? Is it something like `show all'?
And if you rename your Mail/mhl.format to something else then you see
all the emails that you expect, just not in your preferred format,
but when you put it back then only one email is displayed?
First I ran show 31 and that had correct format. Then I ran just the
command show 470 which at that time was the last message and that had
incorrect format like what nmh does for default formatting. Then I ran
show 32 and that also had incorrect formatting.
I can try editing /etc/mhl.format and make it conform to what's in
/home/jude/Mail to see if that changes anything. I'll try show all and
find out if format suddenly goes correct for email beyond the first
>The following mhl.format file works fine for only message 31 and no other
Quick question ... is it possible that message 31 is not a MIME message,
and every OTHER message in your mailbox is a MIME message? A non-MIME
message might contain a Content-Type header, but it would just have a
Content-Type of text/plain, a charset of US-ASCII, and a
Content-Transfer-Encoding of 7bit or 8bit.
If that's the case, check out the man page for mhshow and look at
And what is going on here? Well, back a million years ago or so, very
few messages were MIME messages, so "show" worked fine. Along the way
when MH became "nmh", the command mhshow was added that could handle
MIME messages better and show was modified to call mhshow when it found
a MIME message. mhshow works very differently than show, and it DOES
use mhl, but just to display the headers. So if you want to change the
way headers are displayed you end up needing to modify mhl.format AND
I'll be the first one to admit this is "less than ideal". Really, what
SHOULD be happening is mhshow should go away and mhl should be able to
handle MIME messages; that fits into the original design of MH much better.
Hopefully I'll be able to tackle that in the Great Mime Rewrite (I don't
know when that will happen, though).