Encode::MIME::EncWords -- MIME 'B' and 'Q' header encoding (alternative)
Contents
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().
Bugs
Please report bugs or buggy behaviors to developer.
CPAN Request Tracker: <http://rt.cpan.org/Public/Dist/Display.html?Name=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").
Copyright
Copyright (C) 2011 Hatuka*nezumi - IKEDA Soji.
This program is free software; you can redistribute it and/or modify it under the same terms as Perl
itself.
perl v5.38.2 2024-02-14 Encode::MIME::EncWords(3pm)
Description
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.
Modulespecificfeature
config(KEY => VALUE, ...);
Classmethod. 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.
Name
Encode::MIME::EncWords -- MIME 'B' and 'Q' header encoding (alternative)
See Also
Encode, Encode::MIME::Header, MIME::EncWords.
RFC 2047 MIME(MultipurposeInternetMailExtensions)PartThree:MessageHeaderExtensionsforNon-ASCIIText.
Synopsis
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);
Version
Consult $VERSION variable.
Thisisexperimentalrelease. Features might be changed in the near future.
Development versions of this package may be found at <http://hatuka.nezumi.nu/repos/MIME-EncWords/>.
