package Encode::CN;
-our $VERSION = do { my @r = (q$Revision: 0.95 $ =~ /\d+/g); sprintf "%d."."%02d" x $#r, @r };
+BEGIN {
+ if (ord("A") == 193) {
+ die "Encode::CN not supported on EBCDIC\n";
+ }
+}
+our $VERSION = do { my @r = (q$Revision: 1.23 $ =~ /\d+/g); sprintf "%d."."%02d" x $#r, @r };
use Encode;
-use Encode::CN::HZ;
use XSLoader;
-XSLoader::load('Encode::CN',$VERSION);
-
-Encode::define_alias( qr/euc.*cn$/i => '"euc-cn"' );
-Encode::define_alias( qr/cn.*euc/i => '"euc-cn"' );
+XSLoader::load(__PACKAGE__,$VERSION);
# Relocated from Encode.pm
-# CP936 doesn't have vendor-addon for GBK, so they're identical.
-Encode::define_alias( qr/^gbk$/i => '"cp936"');
+
+use Encode::CN::HZ;
+# use Encode::CN::2022_CN;
1;
__END__
+
=head1 NAME
Encode::CN - China-based Chinese Encodings
Canonical Alias Description
--------------------------------------------------------------------
- euc-cn /euc.*cn$/i EUC (Extended Unix Character)
- /cn.*euc$/i
- gb2312 The raw (low-bit) GB2312 character map
- gb12345 Traditional chinese counterpart to
+ euc-cn /\beuc.*cn$/i EUC (Extended Unix Character)
+ /\bcn.*euc$/i
+ /\bGB[-_ ]?2312(?:\D.*$|$)/i (see below)
+ gb2312-raw The raw (low-bit) GB2312 character map
+ gb12345-raw Traditional chinese counterpart to
GB2312 (raw)
iso-ir-165 GB2312 + GB6345 + GB8565 + additions
+ MacChineseSimp GB2312 + Apple Additions
cp936 Code Page 936, also known as GBK
(Extended GuoBiao)
hz 7-bit escaped GB2312 encoding
+ --------------------------------------------------------------------
To find how to use this module in detail, see L<Encode>.
=head1 BUGS
+When you see C<charset=gb2312> on mails and web pages, they really
+mean C<euc-cn> encodings. To fix that, C<gb2312> is aliased to C<euc-cn>.
+Use C<gb2312-raw> when you really mean it.
+
ASCII part (0x00-0x7f) is preserved for all encodings, even though it
conflicts with mappings by the Unicode Consortium. See
-F<http://www.debian.or.jp/~kubota/unicode-symbols.html.en>
+L<http://www.debian.or.jp/~kubota/unicode-symbols.html.en>
to find why it is implemented that way.