Upgrade to Encode 1.56, from Dan Kogai.
[p5sagit/p5-mst-13.2.git] / ext / Encode / TW / TW.pm
1 package Encode::TW;
2 BEGIN {
3     if (ord("A") == 193) {
4         die "Encode::TW not supported on EBCDIC\n";
5     }
6 }
7 our $VERSION = do { my @r = (q$Revision: 1.24 $ =~ /\d+/g); sprintf "%d."."%02d" x $#r, @r };
8
9 use Encode;
10 use XSLoader;
11 XSLoader::load(__PACKAGE__,$VERSION);
12
13 1;
14 __END__
15
16 =head1 NAME
17
18 Encode::TW - Taiwan-based Chinese Encodings
19
20 =head1 SYNOPSIS
21
22     use Encode qw/encode decode/; 
23     $big5 = encode("big5", $utf8); # loads Encode::TW implicitly
24     $utf8 = decode("big5", $big5); # ditto
25
26 =head1 DESCRIPTION
27
28 This module implements tradition Chinese charset encodings as used
29 in Taiwan and Hong Kong.
30 Encodings supported are as follows.
31
32   Canonical   Alias             Description
33   --------------------------------------------------------------------
34   big5-eten   /\bbig-?5$/i      Big5 encoding (with ETen extensions)
35               /\bbig5-?et(en)?$/i
36   big5-hkscs  /\bbig5-?hk(scs)?$/i
37                                 Big5 + Cantonese characters in Hong Kong
38   MacChineseSimp                Big5 + Apple Vendor Mappings
39   cp950                         Code Page 950 
40                                 = Big5 + Microsoft vendor mappings
41   --------------------------------------------------------------------
42
43 To find out how to use this module in detail, see L<Encode>.
44
45 =head1 NOTES
46
47 Due to size concerns, C<EUC-TW> (Extended Unix Character), C<CCCII>
48 (Chinese Character Code for Information Interchange), C<BIG5PLUS>
49 (CMEX's Big5+) and C<BIG5EXT> (CMEX's Big5e) are distributed separately
50 on CPAN, under the name L<Encode::HanExtra>. That module also contains
51 extra China-based encodings.
52
53 =head1 BUGS
54
55 Since the original C<big5> encoding (1984) is not supported anywhere
56 (glibc and DOS-based systems uses C<big5> to mean C<big5-eten>; Microsoft
57 uses C<big5> to mean C<cp950>), a conscious decision was made to alias
58 C<big5> to C<big5-eten>, which is the de facto superset of the original
59 big5.
60
61 The C<CNS11643> encoding files are not complete. For common C<CNS11643>
62 manipulation, please use C<EUC-TW> in L<Encode::HanExtra>, which contains
63 planes 1-7.
64
65 The ASCII region (0x00-0x7f) is preserved for all encodings, even
66 though this conflicts with mappings by the Unicode Consortium.  See
67
68 L<http://www.debian.or.jp/~kubota/unicode-symbols.html.en>
69
70 to find out why it is implemented that way.
71
72 =head1 SEE ALSO
73
74 L<Encode>
75
76 =cut