Version: 0.65v1 By: Brandon Long (blong@uiuc.edu) MIME MUA take 1 Experimental Features Patch ============================================ This patch is designed to make mutt more of a MIME MUA by allowing one to compose and deal with MIME attachments with more options. This adds a file attach.c which contains routines for dealing with attachments from both the attachment menu and the compose menu. These routines allow you to edit/print/pipe/view attachments, using the rfc1524 commands to find appropriate commands for dealing with them as necessary. This patch also allows you to tag attachments in the attachment menu to include in a reply. This patch includes the MIME autoview patch, and also adds support for the nametemplate part of rfc1524, where you can specify what the tempfile name should be like for a mailcap entry. For instance, lynx will only decode html if the file has a .html extension, so one can have the entry: text/html; lynx %s; nametemplate=%s.html and mutt will make sure the file ends in .html (it will attempt to fill in the %s with the filename given with the attachment, or a filename like muttXXX, and if the given filename does match the nametemplate, it should leave it as is) During sending, mutt will now treat the main body of a message as an attachment, allowing you to edit it the same as any other attachment. You can also rename file names and toggle whether mutt will delete the file on exit. You can run an attachment through a filter as well. Mutt will update the content-encoding of an attachment after it is modified. There is the start of the ability to respond to a message "in kind," ie, if you are sent a message in text/html, you could respond to it in text/html. This doesn't work quite yet, as mutt will translate the message to text/plain first. This is experimental. Things are known to be broken, but I'm releasing this for feedback and suggestions, and the inclusion of some of this in the main code will make further modifications easier. In particular, I know that if you forward a message as MIME, you won't be able to do anything with the attachment that corresponds to it because that attachment doesn't exist yet (its just a pointer that mutt translates at send time). The way to fix this would probably be to translate it before entering the compose menu. Give it a try and tell me what you like and don't like. Brandon Take 2 I had a couple of hours, so I added a couple things to this version of the MIME MUA experimental features patch. In addition to the features you've come to expect, I've added two items. With this patch, mutt will postpone messages as full MIME documents, including any attachments. This allows you to not have to worry about keeping files around that you intend to send, since they are saved with the rest of the mail message. In addition, this patch handles mime_fwd more cleanly by actually creating files to hold the messages you forward, instead of creating pointers to them. This also removes the need for Liviu's mime_fwd patch, as this works with the postpone feature above to include the message in the postponed message. These patches are experimental, I have played with them somewhat to attempt to find the bugs, but no doubt there will be more of them. As always, let me know what you think, or any problems you have. Also, any additions you think might be useful, I'll add them to my todo list. Versions ------------- 0.63.1v1 - First Version 0.65v1 - First Release of Take 1 0.69v1 - First Release of Take 2 - Support for making mime_fwd actual files instead of pointers - Postponed mail is now saved as MIME with all includes 0.69v2 - fix support for message/rfc822 includes in postponed messages 0.69v3 - Forgot to call mutt_update_encoding() in several places where the user modifies the main body 0.69v4 - Fix coredump on tagged replies - Fix problem where the main body is removed on pgp sign/encrypt error recovery 0.69v5 - Typo, & should be &&