I am fucking annoyed.
Somone forwarded a message ostensibly containing something cute to a mailing list. The forwarded message was in fugly HTML that pretty completely obscured the allegedly cute bit, so I wrote back pointing that out and asking whether his MUA was so broken that he had no way of knowing it was HTML before forwarding it. The answer was "yes, it's that broken", followed a few minutes later by, "Oh, there is a way to tell, but it's really not obvious". In between those two messages, I figured I'd have a peek myself. The MUA in question is Pine.
In the version of Pine I've got, an HTML-only message does not show any indication -- when reading, replying, or forwarding -- that it's in HTML. This is severely broken, because it makes it so difficult for users to Do The Right Thing, but that's not what I'm screaming about.
When I finished, my mail was fucking gone. Oh, I did eventually find it in $HOME/mbox, appended to a pile of already-dealt-with stuff that's supposed to be in $HOME/mbox, but dammit, I did not ask Pine to actually save any changes to my mailbox! The other MUAs I use can be exited with or without saving changes; one makes this obvious by which command one uses to exit, the other prompts on exit, asking whether to move read messages to an "already read" folder or not, and whether to delete messages marked for deletion or not.
Now I've got to go figure out where stuff-supposed-to-be-in-mbox leaves off and stick the rest back into /var/spool/mail/dglenn, and in the meantime I've lost status information. Usually I've got four categories of messages:
- Marked "New" in my system mailbox: recent, since the last time I really Dealt With My Mail, still "New" to remind me to go through them again Soon.
- Marked "Unread" in my system mailbox: messages still on my urgent "to do" list.
- Marked "read" in my system mailbox: not urgent, but I'm not finished with them either -- I might want to file the information someplace other than my mail archive, or extract quotable bits, or file addresses in my .mailrc.
- In $HOME/mbox: read, responded to, dealt with, ready to archive.
This is not only wrong, this is unconscionably wrong. Always leave the user a way to get out without having made any goddamned changes!
I knew Pine had a broken user interface when I started, but I thought it was just the fact that it had annoying-as-sin menus and played the "make it easy to learn by making it annoying or impossible to do anything but the obvious" game, but I didn't expect "you can't even open this program without making changes to your mail file". Whoever wrote Pine owes me a couple hours wages for my time putting this right again. *grumble*
Stay away from Pine, folks. Laugh at my own choice of MUA (/bin/mail under Linux, /usr/bin/mailx under SunOS) if you must, but use Elm or Mutt or some Windows or Mac MUA, not Pine. Pine is eeevil. And I am quite angry.
All because I tried to figure out how to tell someone not to accidentally send HTML messages to a mailing list where HTML isn't apropriate. "No good deed," and all that.