ViewVC Help
View File | Revision Log | Show Annotations | Download File
/cvs/staticperl/perl/ext/Encode/JP/JP.pm
Revision: 1.1
Committed: Thu Jun 30 14:26:47 2005 UTC (21 years, 4 months ago) by root
Branch: MAIN
CVS Tags: HEAD
Branch point for: PERL
Log Message:
*** empty log message ***

File Contents

# User Rev Content
1 root 1.1 package Encode::JP;
2     BEGIN {
3     if (ord("A") == 193) {
4     die "Encode::JP not supported on EBCDIC\n";
5     }
6     }
7     use Encode;
8     our $VERSION = do { my @r = (q$Revision: 2.1 $ =~ /\d+/g); sprintf "%d."."%02d" x $#r, @r };
9    
10     use XSLoader;
11     XSLoader::load(__PACKAGE__,$VERSION);
12    
13     use Encode::JP::JIS7;
14    
15     1;
16     __END__
17    
18     =head1 NAME
19    
20     Encode::JP - Japanese Encodings
21    
22     =head1 SYNOPSIS
23    
24     use Encode qw/encode decode/;
25     $euc_jp = encode("euc-jp", $utf8); # loads Encode::JP implicitly
26     $utf8 = decode("euc-jp", $euc_jp); # ditto
27    
28     =head1 ABSTRACT
29    
30     This module implements Japanese charset encodings. Encodings
31     supported are as follows.
32    
33     Canonical Alias Description
34     --------------------------------------------------------------------
35     euc-jp /\beuc.*jp$/i EUC (Extended Unix Character)
36     /\bjp.*euc/i
37     /\bujis$/i
38     shiftjis /\bshift.*jis$/i Shift JIS (aka MS Kanji)
39     /\bsjis$/i
40     7bit-jis /\bjis$/i 7bit JIS
41     iso-2022-jp ISO-2022-JP [RFC1468]
42     = 7bit JIS with all Halfwidth Kana
43     converted to Fullwidth
44     iso-2022-jp-1 ISO-2022-JP-1 [RFC2237]
45     = ISO-2022-JP with JIS X 0212-1990
46     support. See below
47     MacJapanese Shift JIS + Apple vendor mappings
48     cp932 /\bwindows-31j$/i Code Page 932
49     = Shift JIS + MS/IBM vendor mappings
50     jis0201-raw JIS0201, raw format
51     jis0208-raw JIS0201, raw format
52     jis0212-raw JIS0201, raw format
53     --------------------------------------------------------------------
54    
55     =head1 DESCRIPTION
56    
57     To find out how to use this module in detail, see L<Encode>.
58    
59     =head1 Note on ISO-2022-JP(-1)?
60    
61     ISO-2022-JP-1 (RFC2237) is a superset of ISO-2022-JP (RFC1468) which
62     adds support for JIS X 0212-1990. That means you can use the same
63     code to decode to utf8 but not vice versa.
64    
65     $utf8 = decode('iso-2022-jp-1', $stream);
66    
67     and
68    
69     $utf8 = decode('iso-2022-jp', $stream);
70    
71     yield the same result but
72    
73     $with_0212 = encode('iso-2022-jp-1', $utf8);
74    
75     is now different from
76    
77     $without_0212 = encode('iso-2022-jp', $utf8 );
78    
79     In the latter case, characters that map to 0212 are first converted
80     to U+3013 (0xA2AE in EUC-JP; a white square also known as 'Tofu' or
81     'geta mark') then fed to the decoding engine. U+FFFD is not used,
82     in order to preserve text layout as much as possible.
83    
84     =head1 BUGS
85    
86     The ASCII region (0x00-0x7f) is preserved for all encodings, even
87     though this conflicts with mappings by the Unicode Consortium. See
88    
89     L<http://www.debian.or.jp/~kubota/unicode-symbols.html.en>
90    
91     to find out why it is implemented that way.
92    
93     =head1 SEE ALSO
94    
95     L<Encode>
96    
97     =cut