Encode::MIME::EncWords(3pm)

Encode::MIME::EncWords3pm

Usage

    use Encode::MIME::EncWords;
    use Encode qw/encode decode/;
    
    # decode header:
    $utf8   = decode('MIME-EncWords', $header);
    
    # encode header with default charset, UTF-8:
    $header = encode('MIME-EncWords', $utf8);
    
    # encode header with another charset:
    Encode::MIME::EncWords->config(Charset => 'GB2312');
    $header = encode('MIME-EncWords', $utf8);

Abstract

This module implements MIME header encoding described in RFC 2047. There are three variant encoding names and one shorthand special to a charset:

  Encoding name              Result of encode()     Comment
  -------------------------------------------------------------------
  MIME-EncWords              (auto-detect B or Q)
  MIME-EncWords-B            =?XXXX?B?...?=         Default is UTF-8.
  MIME-EncWords-Q            =?XXXX?Q?...?=                ,,
  MIME-EncWords-ISO_2022_JP  =?ISO-2022-JP?B?...?=

All encodings generate the same result by decode().

Overview

This module is intended to be an alternative of "MIME-*" encodings provided by Encode::MIME::Header core module. To find out how to use this module in detail, see Encode.

Module specific feature

config(KEY => VALUE, ...);

Class method. Set options by KEY => VALUE pairs. Following options are available.

Charset

[encode] Name of character set by which data elements will be converted. Default is "UTF-8". On "MIME-EncWords-ISO_2022_JP" it is fixed to "ISO-2022-JP".

Detect7bit

[decode/encode] Try to detect 7-bit charset on unencoded portions. Default is "YES".

Field

[encode] Name of the header field which will be considered on the first line of encoded result in its length. Default is "undef".

Mapping

[decode/encode] Specify mappings actually used for charset names. Default is "EXTENDED".

MaxLineLen

[encode] Maximum line length excluding newline. Default is 76.

Minimal

[encode] Whether to do minimal encoding or not. Default is "YES".

For more details about options see MIME::EncWords.

Caveat

•

The encoding modules for MIME header encoding are not the magic porridge pot to cook complex header fields properly.

To decode address header fields (From:, To:, ...), at first parse mailbox-list; then decode each element by encoding module. To encode them, at first encode each element by encoding module; then construct mailbox-list of encoded elements. To construct or parse mailbox-list, some modules such as Mail::Address may be used.

•

Lines are delimited with LF ("\n"). RFC5322 states that lines in Internet messages are delimited with CRLF ("\r\n").

Version

Consult $VERSION variable.

This is experimental release. Features might be changed in the near future.

Development versions of this package may be found at <http://hatuka.nezumi.nu/repos/MIME-EncWords/>.

Releases

7 releases since Debian 7 (Wheezy); the text changed 4 times.

  1. 7
  2. 8
  3. 9–11
  4. 12
  5. 13

Bugs

Please report bugs or buggy behaviors to developer.

CPAN Request Tracker: <http://rt.cpan.org/Public/Dist/Display.html?Name=MIME-EncWords>.

Author

Hatuka*nezumi - IKEDA Soji <hatuka(at)nezumi.nu>

From libmime-encwords-perl 1.015.0-1 in Debian 13 (Trixie). Parsed by carta from the page's man source.