/[pub]/test/oldencodeutils/lib/Encode/ISO2022/JIS.pm
Suika

Diff of /test/oldencodeutils/lib/Encode/ISO2022/JIS.pm

Parent Directory Parent Directory | Revision Log Revision Log | View Patch Patch

revision 1.1 by wakaba, Mon Sep 16 06:34:35 2002 UTC revision 1.6 by wakaba, Wed Nov 6 09:29:16 2002 UTC
# Line 57  sub __2022_decode ($) { Line 57  sub __2022_decode ($) {
57    $C;    $C;
58  }  }
59    
60  package Encode::ISO2022::EightBit::JISX0201Latin7;  sub __clone ($) {
61      my $self = shift;
62      bless {%$self}, ref $self;
63    };
64    
65    package Encode::ISO2022::JIS::JISX0201Latin7;
66  use vars qw/@ISA/;  use vars qw/@ISA/;
67  push @ISA, 'Encode::ISO2022::JIS';  push @ISA, 'Encode::ISO2022::JIS';
68  __PACKAGE__->Define (qw/jisx0201-1997-latin-7bit JIS_C6220-1969-ro  __PACKAGE__->Define (qw/jisx0201-1997-latin-7bit JIS_C6220-1969-ro
69   iso-ir-14 jp ISO646-JP csISO14JISC6220ro/);   iso-ir-14 ir14 jp ISO646-JP 646-jp csISO14JISC6220ro/);
70    
71  =item jisx0201-1997-latin-7bit  =item jisx0201-1997-latin-7bit
72    
73  JIS X 0201:1997 6.1 7-bit code for Latin.  JIS X 0201:1997 6.1 7-bit code for Latin.
74  (Alias: C<JIS_C6220-1969-ro> (RFC 1345), C<iso-ir-14> (RFC 1345),  (Alias: C<JIS_C6220-1969-ro> (RFC 1345), C<iso-ir-14> (RFC 1345),
75  C<jp> (RFC 1345), C<ISO646-JP> (RFC 1345), C<csISO14JISC6220ro> (IANA))  C<ir14>, C<jp> (RFC 1345), C<ISO646-JP> (RFC 1345), C<646-jp>,
76    C<csISO14JISC6220ro> (IANA))
77    
78  =cut  =cut
79    
# Line 75  sub __2022__common ($) { Line 81  sub __2022__common ($) {
81    my $C = shift->SUPER::__2022__common;    my $C = shift->SUPER::__2022__common;
82    $C->{bit} = 7;    $C->{bit} = 7;
83    $C->{G0} = $Encode::ISO2022::CHARSET{G94}->{J};       ## JIS X 0201:1997 Latin set    $C->{G0} = $Encode::ISO2022::CHARSET{G94}->{J};       ## JIS X 0201:1997 Latin set
84      $C->{G1} = $C->{G0}; $C->{G2} = $C->{G1};     ## RFC 1345 (not in JIS)
85      $C->{G3} = $C->{G1};
86    $C->{option}->{undef_char} = ["\x3F", {type => 'G94', charset => 'J'}];    $C->{option}->{undef_char} = ["\x3F", {type => 'G94', charset => 'J'}];
87    $C;    $C;
88  }  }
89    
90  package Encode::ISO2022::EightBit::JISX0201Katakana7;  package Encode::ISO2022::JIS::JISX0201Katakana7;
91  use vars qw/@ISA/;  use vars qw/@ISA/;
92  push @ISA, 'Encode::ISO2022::JIS';  push @ISA, 'Encode::ISO2022::JIS';
93  __PACKAGE__->Define (qw/jisx0201-1997-katakana-7bit JIS_C6220-1969-jp JIS_C6220-1969  __PACKAGE__->Define (qw/jisx0201-1997-katakana-7bit JIS_C6220-1969-jp JIS_C6220-1969
94   iso-ir-13 katakana x0201-7 csISO13JISC6220jp/);   iso-ir-13 ir13 katakana x0201-7 csISO13JISC6220jp/);
95    
96  =item jisx0201-1997-katakana-7bit  =item jisx0201-1997-katakana-7bit
97    
98  JIS X 0201:1997 6.2 7-bit code for Katakana  JIS X 0201:1997 6.2 7-bit code for Katakana
99  (Alias: JIS_C6220-1969-jp (RFC 1345), JIS_C6220-1969 (RFC 1345),  (Alias: JIS_C6220-1969-jp (RFC 1345), JIS_C6220-1969 (RFC 1345),
100  iso-ir-13 (RFC 1345), katakana (RFC 1345), x0201-7 (RFC 1345),  iso-ir-13 (RFC 1345), ir13, katakana (RFC 1345), x0201-7 (RFC 1345),
101  csISO13JISC6220jp (IANA))  csISO13JISC6220jp (IANA))
102    
103  =cut  =cut
# Line 98  sub __2022__common ($) { Line 106  sub __2022__common ($) {
106    my $C = shift->SUPER::__2022__common;    my $C = shift->SUPER::__2022__common;
107    $C->{bit} = 7;    $C->{bit} = 7;
108    $C->{G0} = $Encode::ISO2022::CHARSET{G94}->{I};       ## JIS X 0201:1997 Katakana set    $C->{G0} = $Encode::ISO2022::CHARSET{G94}->{I};       ## JIS X 0201:1997 Katakana set
109      $C->{G1} = $C->{G0}; $C->{G2} = $C->{G1};     ## RFC 1345 (not in JIS)
110      $C->{G3} = $C->{G1};
111    $C->{option}->{undef_char} = ["\x25", {type => 'G94', charset => 'I'}];    $C->{option}->{undef_char} = ["\x25", {type => 'G94', charset => 'I'}];
112    $C;    $C;
113  }  }
114    
115  package Encode::ISO2022::EightBit::JISX0201LatinKatakana7;  package Encode::ISO2022::JIS::JISX0201LatinKatakana7;
116  use vars qw/@ISA/;  use vars qw/@ISA/;
117  push @ISA, 'Encode::ISO2022::JIS';  push @ISA, 'Encode::ISO2022::JIS';
118  __PACKAGE__->Define (qw/jisx0201-1997-latin-katakana-7bit  __PACKAGE__->Define (qw/jisx0201-1997-latin-katakana-7bit
# Line 132  sub __2022_encode ($) { Line 142  sub __2022_encode ($) {
142    $C;    $C;
143  }  }
144    
145  package Encode::ISO2022::EightBit::JISX0201LatinKatakana8;  package Encode::ISO2022::JIS::JISX0201LatinKatakana8;
146  use vars qw/@ISA/;  use vars qw/@ISA/;
147  push @ISA, 'Encode::ISO2022::JIS';  push @ISA, 'Encode::ISO2022::JIS';
148  __PACKAGE__->Define (qw/jisx0201-1997-latin-latin-8bit/);  __PACKAGE__->Define (qw/jisx0201-1997-latin-latin-8bit kana8/);
149    
150  =item jisx0201-1997-latin-katakana-8bit  =item jisx0201-1997-latin-katakana-8bit
151    
# Line 149  sub __2022__common ($) { Line 159  sub __2022__common ($) {
159    $C->{G0} = $Encode::ISO2022::CHARSET{G94}->{J};       ## JIS X 0201:1997 Latin set    $C->{G0} = $Encode::ISO2022::CHARSET{G94}->{J};       ## JIS X 0201:1997 Latin set
160    $C->{G1} = $Encode::ISO2022::CHARSET{G94}->{I};       ## JIS X 0201:1997 Katakana set    $C->{G1} = $Encode::ISO2022::CHARSET{G94}->{I};       ## JIS X 0201:1997 Katakana set
161    $C->{option}->{undef_char} = ["\x3F", {type => 'G94', charset => 'J'}];    $C->{option}->{undef_char} = ["\x3F", {type => 'G94', charset => 'J'}];
162      $C->{option}->{C1invoke_to_right} = 1;
163    $C;    $C;
164  }  }
165    
166  package Encode::ISO2022::EightBit::JISX0208Kanji7;  package Encode::ISO2022::JIS::JISX0208Kanji7;
167  use vars qw/@ISA/;  use vars qw/@ISA/;
168  push @ISA, 'Encode::ISO2022::JIS';  push @ISA, 'Encode::ISO2022::JIS';
169  __PACKAGE__->Define (qw/jisx0208-1997-kanji-7bit/);  __PACKAGE__->Define (qw/jisx0208-1997-kanji-7bit/);
# Line 170  sub __2022__common ($) { Line 181  sub __2022__common ($) {
181    $C;    $C;
182  }  }
183    
184  package Encode::ISO2022::EightBit::JISX0208Kanji8;  package Encode::ISO2022::JIS::JISX0208Kanji8;
185  use vars qw/@ISA/;  use vars qw/@ISA/;
186  push @ISA, 'Encode::ISO2022::JIS';  push @ISA, 'Encode::ISO2022::JIS';
187  __PACKAGE__->Define (qw/jisx0208-1997-kanji-8bit/);  __PACKAGE__->Define (qw/jisx0208-1997-kanji-8bit/);
# Line 190  sub __2022__common ($) { Line 201  sub __2022__common ($) {
201    $C;    $C;
202  }  }
203    
204  package Encode::ISO2022::EightBit::JISX0208IRVKanji7;  package Encode::ISO2022::JIS::JISX0208IRVKanji7;
205  use vars qw/@ISA/;  use vars qw/@ISA/;
206  push @ISA, 'Encode::ISO2022::JIS';  push @ISA, 'Encode::ISO2022::JIS';
207  __PACKAGE__->Define (qw/jisx0208-1997-irv-kanji-7bit/);  __PACKAGE__->Define (qw/jisx0208-1997-irv-kanji-7bit/);
# Line 217  sub __2022_encode ($) { Line 228  sub __2022_encode ($) {
228    $C;    $C;
229  }  }
230    
231  package Encode::ISO2022::EightBit::JISX0208IRVKanji8;  package Encode::ISO2022::JIS::JISX0208IRVKanji8;
232  use vars qw/@ISA/;  use vars qw/@ISA/;
233  push @ISA, 'Encode::ISO2022::JIS';  push @ISA, 'Encode::ISO2022::JIS';
234  __PACKAGE__->Define (qw/jisx0208-1997-irv-kanji-8bit/);  __PACKAGE__->Define (qw/jisx0208-1997-irv-kanji-8bit/);
# Line 234  sub __2022__common ($) { Line 245  sub __2022__common ($) {
245    $C->{bit} = 8;    $C->{bit} = 8;
246    $C->{G0} = $Encode::ISO2022::CHARSET{G94}->{B};       ## ISO/IEC 646 IRV    $C->{G0} = $Encode::ISO2022::CHARSET{G94}->{B};       ## ISO/IEC 646 IRV
247    $C->{G1} = $Encode::ISO2022::CHARSET{G94n}->{'B@'};   ## JIS X 0208:1997    $C->{G1} = $Encode::ISO2022::CHARSET{G94n}->{'B@'};   ## JIS X 0208:1997
248      $C->{option}->{C1invoke_to_right} = 1;
249    $C;    $C;
250  }  }
251    
252  package Encode::ISO2022::EightBit::JISX0208LatinKanji7;  package Encode::ISO2022::JIS::JISX0208LatinKanji7;
253  use vars qw/@ISA/;  use vars qw/@ISA/;
254  push @ISA, 'Encode::ISO2022::JIS';  push @ISA, 'Encode::ISO2022::JIS';
255  __PACKAGE__->Define (qw/jisx0208-1997-latin-kanji-7bit/);  __PACKAGE__->Define (qw/jisx0208-1997-latin-kanji-7bit/);
# Line 264  sub __2022_encode ($) { Line 276  sub __2022_encode ($) {
276    $C;    $C;
277  }  }
278    
279  package Encode::ISO2022::EightBit::JISX0208LatinKanji8;  package Encode::ISO2022::JIS::JISX0208LatinKanji8;
280  use vars qw/@ISA/;  use vars qw/@ISA/;
281  push @ISA, 'Encode::ISO2022::JIS';  push @ISA, 'Encode::ISO2022::JIS';
282  __PACKAGE__->Define (qw/jisx0208-1997-latin-kanji-8bit/);  __PACKAGE__->Define (qw/jisx0208-1997-latin-kanji-8bit/);
# Line 280  sub __2022__common ($) { Line 292  sub __2022__common ($) {
292    $C->{bit} = 8;    $C->{bit} = 8;
293    $C->{G0} = $Encode::ISO2022::CHARSET{G94}->{J};       ## JIS X 0201:1997 Latin set    $C->{G0} = $Encode::ISO2022::CHARSET{G94}->{J};       ## JIS X 0201:1997 Latin set
294    $C->{G1} = $Encode::ISO2022::CHARSET{G94n}->{'B@'};   ## JIS X 0208:1997    $C->{G1} = $Encode::ISO2022::CHARSET{G94n}->{'B@'};   ## JIS X 0208:1997
295      $C->{option}->{C1invoke_to_right} = 1;
296    $C;    $C;
297  }  }
298    
299  package Encode::ISO2022::EightBit::JISX0213Kanji7;  package Encode::ISO2022::JIS::JISX0213Kanji7;
300  use vars qw/@ISA/;  use vars qw/@ISA/;
301  push @ISA, 'Encode::ISO2022::JIS';  push @ISA, 'Encode::ISO2022::JIS';
302  __PACKAGE__->Define (qw/jisx0213-2000-kanji-7bit/);  __PACKAGE__->Define (qw/jisx0213-2000-kanji-7bit/);
# Line 311  sub __2022_encode ($) { Line 324  sub __2022_encode ($) {
324    $C;    $C;
325  }  }
326    
327  package Encode::ISO2022::EightBit::JISX0213Kanji8;  package Encode::ISO2022::JIS::JISX0213Kanji8;
328  use vars qw/@ISA/;  use vars qw/@ISA/;
329  push @ISA, 'Encode::ISO2022::JIS';  push @ISA, 'Encode::ISO2022::JIS';
330  __PACKAGE__->Define (qw/jisx0213-2000-kanji-8bit/);  __PACKAGE__->Define (qw/jisx0213-2000-kanji-8bit/);
# Line 328  sub __2022__common ($) { Line 341  sub __2022__common ($) {
341    $C->{G0} = $Encode::ISO2022::CHARSET{G94n}->{O};      ## plane 1    $C->{G0} = $Encode::ISO2022::CHARSET{G94n}->{O};      ## plane 1
342    $C->{G1} = $Encode::ISO2022::CHARSET{G94n}->{P};      ## plane 2    $C->{G1} = $Encode::ISO2022::CHARSET{G94n}->{P};      ## plane 2
343    $C->{option}->{undef_char} = ["\x22\x2E", {type => 'G94n', charset => 'O'}];    $C->{option}->{undef_char} = ["\x22\x2E", {type => 'G94n', charset => 'O'}];
344      $C->{option}->{C1invoke_to_right} = 1;
345    $C;    $C;
346  }  }
347    
348  package Encode::ISO2022::EightBit::JISX0213IRVKanji7;  package Encode::ISO2022::JIS::JISX0213IRVKanji7;
349  use vars qw/@ISA/;  use vars qw/@ISA/;
350  push @ISA, 'Encode::ISO2022::JIS';  push @ISA, 'Encode::ISO2022::JIS';
351  __PACKAGE__->Define (qw/jisx0213-2000-irv-kanji-7bit/);  __PACKAGE__->Define (qw/jisx0213-2000-irv-kanji-7bit/);
# Line 361  sub __2022_encode ($) { Line 375  sub __2022_encode ($) {
375    $C;    $C;
376  }  }
377    
378  package Encode::ISO2022::EightBit::JISX0213IRVKanji8;  package Encode::ISO2022::JIS::JISX0213IRVKanji8;
379  use vars qw/@ISA/;  use vars qw/@ISA/;
380  push @ISA, 'Encode::ISO2022::JIS';  push @ISA, 'Encode::ISO2022::JIS';
381  __PACKAGE__->Define (qw/jisx0213-2000-irv-kanji-8bit/);  __PACKAGE__->Define (qw/jisx0213-2000-irv-kanji-8bit/);
# Line 382  sub __2022__common ($) { Line 396  sub __2022__common ($) {
396    $C->{option}->{Ginvoke_by_single_shift}->[3] = 1;    $C->{option}->{Ginvoke_by_single_shift}->[3] = 1;
397    $C->{option}->{Ginvoke_to_left} = [1,0,0,0];    $C->{option}->{Ginvoke_to_left} = [1,0,0,0];
398    $C->{option}->{undef_char} = ["\x22\x2E", {type => 'G94n', charset => 'O'}];    $C->{option}->{undef_char} = ["\x22\x2E", {type => 'G94n', charset => 'O'}];
399      $C->{option}->{C1invoke_to_right} = 1;
400    $C;    $C;
401  }  }
402    
403  package Encode::ISO2022::EightBit::JISX0213LatinKanji7;  package Encode::ISO2022::JIS::JISX0213LatinKanji7;
404  use vars qw/@ISA/;  use vars qw/@ISA/;
405  push @ISA, 'Encode::ISO2022::JIS';  push @ISA, 'Encode::ISO2022::JIS';
406  __PACKAGE__->Define (qw/jisx0213-2000-latin-kanji-7bit/);  __PACKAGE__->Define (qw/jisx0213-2000-latin-kanji-7bit/);
# Line 415  sub __2022_encode ($) { Line 430  sub __2022_encode ($) {
430    $C;    $C;
431  }  }
432    
433  package Encode::ISO2022::EightBit::JISX0213LatinKanji8;  package Encode::ISO2022::JIS::JISX0213LatinKanji8;
434  use vars qw/@ISA/;  use vars qw/@ISA/;
435  push @ISA, 'Encode::ISO2022::JIS';  push @ISA, 'Encode::ISO2022::JIS';
436  __PACKAGE__->Define (qw/jisx0213-2000-latin-kanji-8bit/);  __PACKAGE__->Define (qw/jisx0213-2000-latin-kanji-8bit/);
# Line 435  sub __2022__common ($) { Line 450  sub __2022__common ($) {
450    $C->{option}->{Ginvoke_by_single_shift}->[3] = 1;    $C->{option}->{Ginvoke_by_single_shift}->[3] = 1;
451    $C->{option}->{Ginvoke_to_left} = [1,0,0,0];    $C->{option}->{Ginvoke_to_left} = [1,0,0,0];
452    $C->{option}->{undef_char} = ["\x22\x2E", {type => 'G94n', charset => 'O'}];    $C->{option}->{undef_char} = ["\x22\x2E", {type => 'G94n', charset => 'O'}];
453      $C->{option}->{C1invoke_to_right} = 1;
454      $C;
455    }
456    
457    package Encode::ISO2022::JIS::JISX4001Text7;
458    use vars qw/@ISA/;
459    push @ISA, 'Encode::ISO2022::JIS';
460    __PACKAGE__->Define (qw/jisx4001-text-7bit/);
461    
462    =item jisx4001-text-7bit
463    
464    JIS X 4001-1989 text (7-bit code)
465    
466    =cut
467    
468    sub __2022__common ($) {
469      my $C = shift->SUPER::__2022__common;
470      $C->{bit} = 7;
471      $C->{G0} = $Encode::ISO2022::CHARSET{G94n}->{B};      ## JIS X 0208-1983
472      $C->{option}->{designate_to}->{G94}->{J} = 0; ## JIS X 0201 Roman
473      $C->{option}->{designate_to}->{G94n}->{B} = 0;        ## JIS X 0208-1983
474      $C;
475    }
476    
477    package Encode::ISO2022::JIS::JISX4001Text8;
478    use vars qw/@ISA/;
479    push @ISA, 'Encode::ISO2022::JIS::JISX4001Text7';
480    __PACKAGE__->Define (qw/jisx4001-text-8bit/);
481    
482    =item jisx4001-text-8bit
483    
484    JIS X 4001-1989 text (8-bit code)
485    
486    =cut
487    
488    sub __2022__common ($) {
489      my $C = shift->SUPER::__2022__common;
490      $C->{bit} = 7;
491      $C->{option}->{C1invoke_to_right} = 1;
492    $C;    $C;
493  }  }
494    
# Line 455  in Encode::ISO2022::RFC1345.) Line 509  in Encode::ISO2022::RFC1345.)
509    
510  =head1 LICENSE  =head1 LICENSE
511    
512  Copyright 2002 wakaba <w@suika.fam.cx>  Copyright 2002 Wakaba <w@suika.fam.cx>
513    
514  This library is free software; you can redistribute it  This library is free software; you can redistribute it
515  and/or modify it under the same terms as Perl itself.  and/or modify it under the same terms as Perl itself.

Legend:
Removed from v.1.1  
changed lines
  Added in v.1.6

admin@suikawiki.org
ViewVC Help
Powered by ViewVC 1.1.24