1 2:mod:`mimify` --- MIME processing of mail messages 3================================================== 4 5.. module:: mimify 6 :synopsis: Mimification and unmimification of mail messages. 7 :deprecated: 8 9 10.. deprecated:: 2.3 11 The :mod:`email` package should be used in preference to the :mod:`mimify` 12 module. This module is present only to maintain backward compatibility. 13 14The :mod:`mimify` module defines two functions to convert mail messages to and 15from MIME format. The mail message can be either a simple message or a 16so-called multipart message. Each part is treated separately. Mimifying (a part 17of) a message entails encoding the message as quoted-printable if it contains 18any characters that cannot be represented using 7-bit ASCII. Unmimifying (a 19part of) a message entails undoing the quoted-printable encoding. Mimify and 20unmimify are especially useful when a message has to be edited before being 21sent. Typical use would be:: 22 23 unmimify message 24 edit message 25 mimify message 26 send message 27 28The modules defines the following user-callable functions and user-settable 29variables: 30 31 32.. function:: mimify(infile, outfile) 33 34 Copy the message in *infile* to *outfile*, converting parts to quoted-printable 35 and adding MIME mail headers when necessary. *infile* and *outfile* can be file 36 objects (actually, any object that has a :meth:`readline` method (for *infile*) 37 or a :meth:`write` method (for *outfile*)) or strings naming the files. If 38 *infile* and *outfile* are both strings, they may have the same value. 39 40 41.. function:: unmimify(infile, outfile[, decode_base64]) 42 43 Copy the message in *infile* to *outfile*, decoding all quoted-printable parts. 44 *infile* and *outfile* can be file objects (actually, any object that has a 45 :meth:`readline` method (for *infile*) or a :meth:`write` method (for 46 *outfile*)) or strings naming the files. If *infile* and *outfile* are both 47 strings, they may have the same value. If the *decode_base64* argument is 48 provided and tests true, any parts that are coded in the base64 encoding are 49 decoded as well. 50 51 52.. function:: mime_decode_header(line) 53 54 Return a decoded version of the encoded header line in *line*. This only 55 supports the ISO 8859-1 charset (Latin-1). 56 57 58.. function:: mime_encode_header(line) 59 60 Return a MIME-encoded version of the header line in *line*. 61 62 63.. data:: MAXLEN 64 65 By default, a part will be encoded as quoted-printable when it contains any 66 non-ASCII characters (characters with the 8th bit set), or if there are any 67 lines longer than :const:`MAXLEN` characters (default value 200). 68 69 70.. data:: CHARSET 71 72 When not specified in the mail headers, a character set must be filled in. The 73 string used is stored in :const:`CHARSET`, and the default value is ISO-8859-1 74 (also known as Latin1 (latin-one)). 75 76This module can also be used from the command line. Usage is as follows:: 77 78 mimify.py -e [-l length] [infile [outfile]] 79 mimify.py -d [-b] [infile [outfile]] 80 81to encode (mimify) and decode (unmimify) respectively. *infile* defaults to 82standard input, *outfile* defaults to standard output. The same file can be 83specified for input and output. 84 85If the **-l** option is given when encoding, if there are any lines longer than 86the specified *length*, the containing part will be encoded. 87 88If the **-b** option is given when decoding, any base64 parts will be decoded as 89well. 90 91 92.. seealso:: 93 94 Module :mod:`quopri` 95 Encode and decode MIME quoted-printable files. 96 97