emacs-mime: rfc2047
4.4 rfc2047
===========
RFC2047 (Message Header Extensions for Non-ASCII Text) specifies how
non-ASCII text in headers are to be encoded. This is actually rather
complicated, so a number of variables are necessary to tweak what this
library does.
The following variables are tweakable:
‘rfc2047-header-encoding-alist’
This is an alist of header / encoding-type pairs. Its main purpose
is to prevent encoding of certain headers.
The keys can either be header regexps, or ‘t’.
The values can be ‘nil’, in which case the header(s) in question
won’t be encoded, ‘mime’, which means that they will be encoded, or
‘address-mime’, which means the header(s) will be encoded carefully
assuming they contain addresses.
‘rfc2047-charset-encoding-alist’
RFC2047 specifies two forms of encoding—‘Q’ (a
Quoted-Printable-like encoding) and ‘B’ (base64). This alist
specifies which charset should use which encoding.
‘rfc2047-encode-function-alist’
This is an alist of encoding / function pairs. The encodings are
‘Q’, ‘B’ and ‘nil’.
‘rfc2047-encoded-word-regexp’
When decoding words, this library looks for matches to this regexp.
‘rfc2047-encoded-word-regexp-loose’
This is a version from which the regexp for the Q encoding pattern
of ‘rfc2047-encoded-word-regexp’ is made loose.
‘rfc2047-encode-encoded-words’
The boolean variable specifies whether encoded words (e.g.,
‘=?us-ascii?q?hello?=’) should be encoded again.
‘rfc2047-encoded-word-regexp’ is used to look for such words.
‘rfc2047-allow-irregular-q-encoded-words’
The boolean variable specifies whether irregular Q encoded words
(e.g., ‘=?us-ascii?q?hello??=’) should be decoded. If it is
non-‘nil’, ‘rfc2047-encoded-word-regexp-loose’ is used instead of
‘rfc2047-encoded-word-regexp’ to look for encoded words.
Those were the variables, and these are this functions:
‘rfc2047-narrow-to-field’
Narrow the buffer to the header on the current line.
‘rfc2047-encode-message-header’
Should be called narrowed to the header of a message. Encodes
according to ‘rfc2047-header-encoding-alist’.
‘rfc2047-encode-region’
Encodes all encodable words in the region specified.
‘rfc2047-encode-string’
Encode a string and return the results.
‘rfc2047-decode-region’
Decode the encoded words in the region.
‘rfc2047-decode-string’
Decode a string and return the results.
‘rfc2047-encode-parameter’
Encode a parameter in the RFC2047-like style. This is a
substitution for the ‘rfc2231-encode-string’ function, that is the
standard but many mailers don’t support it. rfc2231.