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

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

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

revision 1.1 by wakaba, Sun Sep 15 04:15:11 2002 UTC revision 1.3 by wakaba, Mon Sep 16 02:17:48 2002 UTC
# Line 15  package Encode::ISO2022::SevenBit; Line 15  package Encode::ISO2022::SevenBit;
15  use vars qw($VERSION);  use vars qw($VERSION);
16  $VERSION=do{my @r=(q$Revision$=~/\d+/g);sprintf "%d."."%02d" x $#r,@r};  $VERSION=do{my @r=(q$Revision$=~/\d+/g);sprintf "%d."."%02d" x $#r,@r};
17  use base qw(Encode::Encoding);  use base qw(Encode::Encoding);
18  __PACKAGE__->Define (qw/iso-2022-7bit jis junet/);  __PACKAGE__->Define (qw/iso-2022-7bit iso-2022-7 jis junet jis7/);
19  require Encode::ISO2022;  require Encode::ISO2022;
20    
21  sub encode ($$;$) {  sub encode ($$;$) {
# Line 34  sub decode ($$;$) { Line 34  sub decode ($$;$) {
34  =item iso-2022-7bit  =item iso-2022-7bit
35    
36  ISO/IEC 2022 based 7-bit encoding using only G0  ISO/IEC 2022 based 7-bit encoding using only G0
37  (Alias: junet, jis)  (Alias: junet, jis, jis7, iso-2022-7)
38    
39  =cut  =cut
40    
# Line 59  sub __2022_decode ($) { Line 59  sub __2022_decode ($) {
59  package Encode::ISO2022::SevenBit::JP;  package Encode::ISO2022::SevenBit::JP;
60  use vars qw/@ISA/;  use vars qw/@ISA/;
61  push @ISA, 'Encode::ISO2022::SevenBit';  push @ISA, 'Encode::ISO2022::SevenBit';
62  __PACKAGE__->Define (qw/iso-2022-jp junet-code japanese-iso-7bit/);  __PACKAGE__->Define (qw/iso-2022-jp junet-code japanese-iso-7bit csiso2022jp
63     cp50220 iso2022jp/);
64    
65  =item iso-2022-jp  =item iso-2022-jp
66    
67  ISO/IEC 2022 based 7-bit encoding for Japanese.  ISO/IEC 2022 based 7-bit encoding for Japanese.
68  Defined by Junet no tebiki, RFC 1468 and JIS X 0208:1997 Appendix 2.  Defined by Junet no tebiki, RFC 1468 and JIS X 0208:1997 Appendix 2.
69  (Alias: junet-code, japanese-iso-7bit (emacsen))  (Alias: junet-code, japanese-iso-7bit (emacsen), csISO2022JP (IANA),
70    CP50220 (M$))
71    
72  =cut  =cut
73    
# Line 96  sub __2022_encode ($) { Line 98  sub __2022_encode ($) {
98  package Encode::ISO2022::SevenBit::JP1978IRV;  package Encode::ISO2022::SevenBit::JP1978IRV;
99  use vars qw/@ISA/;  use vars qw/@ISA/;
100  push @ISA, 'Encode::ISO2022::SevenBit::JP';  push @ISA, 'Encode::ISO2022::SevenBit::JP';
101  __PACKAGE__->Define (qw/iso-2022-jp-1978-irv japanese-iso-7bit-1978-irv old-jis/);  __PACKAGE__->Define (qw/iso-2022-jp-1978-irv japanese-iso-7bit-1978-irv old-jis
102      x-obsoleted-iso-2022-jp/);
103    
104  =item iso-2022-jp-1978-irv  =item iso-2022-jp-1978-irv
105    
# Line 186  sub __2022__common ($) { Line 189  sub __2022__common ($) {
189  package Encode::ISO2022::SevenBit::SS2;  package Encode::ISO2022::SevenBit::SS2;
190  use vars qw/@ISA/;  use vars qw/@ISA/;
191  push @ISA, 'Encode::ISO2022::SevenBit';  push @ISA, 'Encode::ISO2022::SevenBit';
192  __PACKAGE__->Define (qw/iso-2022-7bit-ss2 x-iso-2022-jp-2/);  __PACKAGE__->Define (qw/iso-2022-7bit-ss2 x-iso-2022-jp-2 iso-2022-ss2-7
193       jis_encoding csjisencoding/);
194    
195  =item iso-2022-7bit-ss2  =item iso-2022-7bit-ss2
196    
197  ISO/IEC 2022 based 7-bit encoding using SS2 for 96-charset  ISO/IEC 2022 based 7-bit encoding using SS2 for 96-charset
198  (Alias: x-iso-2022-jp-2)  (Alias: x-iso-2022-jp-2, iso-2022-ss2-7 (emacsen))
199    
200  =cut  =cut
201    
# Line 206  sub __2022__common ($) { Line 210  sub __2022__common ($) {
210  package Encode::ISO2022::SevenBit::JP2;  package Encode::ISO2022::SevenBit::JP2;
211  use vars qw/@ISA/;  use vars qw/@ISA/;
212  push @ISA, 'Encode::ISO2022::SevenBit::SS2';  push @ISA, 'Encode::ISO2022::SevenBit::SS2';
213  __PACKAGE__->Define (qw/iso-2022-jp-2/);  __PACKAGE__->Define (qw/iso-2022-jp-2 csiso2022jp2/);
214    
215  =item iso-2022-jp-2  =item iso-2022-jp-2
216    
217  ISO/IEC 2022 based 7-bit multilingual encoding, defined by  ISO/IEC 2022 based 7-bit multilingual encoding, defined by
218  RFC 1554.  A subset of iso-2022-7bit-ss2.  RFC 1554.  A subset of iso-2022-7bit-ss2.  (Alias: csISO2022JP2 (IANA))
219    
220  =cut  =cut
221    
# Line 260  sub __2022__common ($) { Line 264  sub __2022__common ($) {
264    $C;    $C;
265  }  }
266    
267    package Encode::ISO2022::SevenBit::INT;
268    use vars qw/@ISA/;
269    push @ISA, 'Encode::ISO2022::SevenBit';
270    __PACKAGE__->Define (qw/iso-2022-int iso-2022-int-*  iso-2022-int-2/);
271    
272    =item iso-2022-int
273    
274    ISO/IEC 2022 based 7-bit encoding using G1 and locking-shift for
275    KS X 1001 and 96-charset.  See draft-ohta-text-encoding.
276    (Alias: iso-2022-int-*)
277    
278    =cut
279    
280    sub __2022__common ($) {
281      my $C = shift->SUPER::__2022__common;
282      $C->{option}->{designate_to}->{G96}->{default} = 1;
283      $C->{option}->{designate_to}->{G96n}->{default} = 1;
284      $C->{option}->{designate_to}->{G94n}->{"\x43"} = 1;   ## KS X 1001
285      $C;
286    }
287    sub __2022_encode ($) {
288      my $C = shift->__2022__common;
289      $C->{C1} = $Encode::ISO2022::CHARSET{C1}->{"\x7E"};   ## empty set
290      $C->{G1} = $Encode::ISO2022::CHARSET{G96}->{"\x7E"};  ## empty set
291      $C;
292    }
293    sub __2022_decode ($) {
294      my $C = shift->__2022__common;
295      $C->{G1} = $Encode::ISO2022::CHARSET{G94n}->{"\x43"}; ## KS X 1001
296      $C;
297    }
298    
299  package Encode::ISO2022::SevenBit::KR;  package Encode::ISO2022::SevenBit::KR;
300  use vars qw/@ISA/;  use vars qw/@ISA/;
301  push @ISA, 'Encode::ISO2022::SevenBit';  push @ISA, 'Encode::ISO2022::SevenBit';
302  __PACKAGE__->Define (qw/iso-2022-kr korean-iso-7bit/);  __PACKAGE__->Define (qw/iso-2022-kr korean-iso-7bit csiso2022kr cp50225 kr2022/);
303    
304  =item iso-2022-kr  =item iso-2022-kr
305    
306  An ISO/IEC 2022 based 7-bit encoding for Korean,  An ISO/IEC 2022 based 7-bit encoding for Korean,
307  defined by RFC 1557 (Alias: korean-iso-7bit (emacsen))  defined by RFC 1557 (Alias: korean-iso-7bit (emacsen),
308    csISO2022KR (IANA), CP50225 (M$), KR2022)
309    
310  =cut  =cut
311    
# Line 365  sub __2022__common ($) { Line 402  sub __2022__common ($) {
402    $C->{option}->{designate_to}->{G94n}->{"\x4B"} = 3;   ## CNS 11643 plane 5    $C->{option}->{designate_to}->{G94n}->{"\x4B"} = 3;   ## CNS 11643 plane 5
403    $C->{option}->{designate_to}->{G94n}->{"\x4C"} = 3;   ## CNS 11643 plane 6    $C->{option}->{designate_to}->{G94n}->{"\x4C"} = 3;   ## CNS 11643 plane 6
404    $C->{option}->{designate_to}->{G94n}->{"\x4D"} = 3;   ## CNS 11643 plane 7    $C->{option}->{designate_to}->{G94n}->{"\x4D"} = 3;   ## CNS 11643 plane 7
405      $C->{option}->{designate_to}->{G94n}->{P0_0} = 1;     ## GB 12345
406      $C->{option}->{designate_to}->{G94n}->{P0_1} = 2;     ## GB 7589
407      $C->{option}->{designate_to}->{G94n}->{P0_2} = 2;     ## GB 13131
408      $C->{option}->{designate_to}->{G94n}->{P0_3} = 3;     ## GB 7590
409      $C->{option}->{designate_to}->{G94n}->{P0_4} = 3;     ## GB 13132
410    $C;    $C;
411  }  }
412  sub __2022_decode ($) {  sub __2022_decode ($) {
# Line 376  sub __2022_decode ($) { Line 418  sub __2022_decode ($) {
418  package Encode::ISO2022::SevenBit::CN;  package Encode::ISO2022::SevenBit::CN;
419  use vars qw/@ISA/;  use vars qw/@ISA/;
420  push @ISA, 'Encode::ISO2022::SevenBit';  push @ISA, 'Encode::ISO2022::SevenBit';
421  __PACKAGE__->Define (qw/iso-2022-cn chinese-iso-7bit/);  __PACKAGE__->Define (qw/iso-2022-cn chinese-iso-7bit  iso2022cn-cns iso2022cn-gb/);
422    
423  =item iso-2022-cn  =item iso-2022-cn
424    
# Line 426  sub __2022__common ($) { Line 468  sub __2022__common ($) {
468    $C->{option}->{designate_to}->{G94n}->{"\x4B"} = 3;   ## CNS 11643 plane 5    $C->{option}->{designate_to}->{G94n}->{"\x4B"} = 3;   ## CNS 11643 plane 5
469    $C->{option}->{designate_to}->{G94n}->{"\x4C"} = 3;   ## CNS 11643 plane 6    $C->{option}->{designate_to}->{G94n}->{"\x4C"} = 3;   ## CNS 11643 plane 6
470    $C->{option}->{designate_to}->{G94n}->{"\x4D"} = 3;   ## CNS 11643 plane 7    $C->{option}->{designate_to}->{G94n}->{"\x4D"} = 3;   ## CNS 11643 plane 7
471      $C->{option}->{designate_to}->{G94n}->{P0_0} = 1;     ## GB 12345
472      $C->{option}->{designate_to}->{G94n}->{P0_1} = 2;     ## GB 7589
473      $C->{option}->{designate_to}->{G94n}->{P0_2} = 2;     ## GB 13131
474      $C->{option}->{designate_to}->{G94n}->{P0_3} = 3;     ## GB 7590
475      $C->{option}->{designate_to}->{G94n}->{P0_4} = 3;     ## GB 13132
476      $C->{option}->{designate_to}->{G94n}->{P1_0} = 3;     ## CNS 11643 plane 8
477      $C->{option}->{designate_to}->{G94n}->{P1_1} = 3;     ## CNS 11643 plane 9
478      $C->{option}->{designate_to}->{G94n}->{P1_2} = 3;     ## CNS 11643 plane 10
479      $C->{option}->{designate_to}->{G94n}->{P1_3} = 3;     ## CNS 11643 plane 11
480      $C->{option}->{designate_to}->{G94n}->{P1_4} = 3;     ## CNS 11643 plane 12
481      $C->{option}->{designate_to}->{G94n}->{P1_5} = 3;     ## CNS 11643 plane 13
482      $C->{option}->{designate_to}->{G94n}->{P1_6} = 3;     ## CNS 11643 plane 14
483      $C->{option}->{designate_to}->{G94n}->{P2_0} = 3;     ## CNS 11643 plane 15
484      $C->{option}->{designate_to}->{G94n}->{P2_1} = 3;     ## CNS 11643 plane 16
485    $C;    $C;
486  }  }
487    

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

admin@suikawiki.org
ViewVC Help
Powered by ViewVC 1.1.24