mimedecode.py WHAT IS IT Mail users, especially in non-English countries, often find that mail messages arrived in different formats, with different content types, in different encodings and charsets. Usually this is good because it allows us to use appropriate format/encoding/whatever. Sometimes, though, some unification is desirable. For example, one may want to put mail messages into an archive, make HTML indices, run search indexer, etc. In such situations converting messages to text in one character set and skipping some binary attachments is much desirable. Here is the solution - mimedecode.py. This is a program to decode MIME messages. The program expects one input file (either on command line or on stdin) which is treated as an RFC822 message, and decodes to stdout or an output file. If the file is not an RFC822 message it is just copied to the output one-to-one. If the file is a simple RFC822 message it is decoded as one part. If it is a MIME message with multiple parts ("attachments") all parts are decoded. Decoding can be controlled by command-line options. WHAT'S NEW in version 2.5.0 (2014-03-??) Add option --set-header=header:value to set header's value (only at the top level). Add option --set-param=header:param=value to set header parameter's value (only at the top level). The header must exist. Add option -B to skip content-transfer-decoding binary attachments. Add option -O to set the destination directory. Fix a minor bug: if a multipart message (or a subpart) lacks any textual content - avoid putting an excessive newline. WHAT'S NEW in version 2.4.0 (2014-03-08) Change option -d to accept a comma-separated list of headers: -d h1,h2,h3,... Change option -d to decode all headers and accept a list of exceptions: -d *,-h1,-h2,... Change option -p to accept lists of headers and parameters: -p h1,h2,h3,..:p1,p2,p3,.. Allow * and exceptions for -p in the headers and parameters lists: -p *,-h1,-h2,-h3:p1,p2,p3 -p h1,h2,h3:*,-p1,-p2,-p3 -p *,-h1,-h2,-h3:*,-p1,-p2,-p3 Change option -r to accept a list of headers: -r h1,h2,h3,... Change option -r to remove all headers and accept a list of exceptions: -r *,-h1,-h2,... Change option -R to accept lists of headers and parameters: -R h1,h2,h3:p1,p2,p3 -R h1,h2,h3:*,-p1,-p2,-p3 -R *,-h1,-h2,-h3:p1,p2,p3 -R *,-h1,-h2,-h3:*,-p1,-p2,-p3 Publish docs in html format. Add ChangeLog. WHAT'S NEW in version 2.3.7 (2014-02-23) Add option -r to remove headers and option -R to remove headers parameters. WHERE TO GET Home page: http://phdru.name/Software/Python/#mimedecode git clone http://git.phdru.name/mimedecode.git git clone git://git.phdru.name/mimedecode.git Requires: Python 2.2.2+, m_lib 2.0+. Recommends: configured mailcap database. Documentation: http://phdru.name/Software/Python/mimedecode.html (also included in the package in html, man and txt formats). AUTHOR Oleg Broytman COPYRIGHT Copyright (C) 2001-2014 PhiloSoft Design. LICENSE GPL