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

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

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

revision 1.1 by wakaba, Sun Sep 22 11:08:23 2002 UTC revision 1.4 by wakaba, Sat Oct 12 07:27:01 2002 UTC
# Line 2  Line 2 
2    
3  Encode::ISO2022::RFC1345 --- Encode and decode of ISO/IEC 2022  Encode::ISO2022::RFC1345 --- Encode and decode of ISO/IEC 2022
4  based encodings described in IETF RFC 1345 (and not defined by  based encodings described in IETF RFC 1345 (and not defined by
5  other standards)  any other standards)
6    
7  =head1 ENCODINGS  =head1 ENCODINGS
8    
# Line 55  sub __2022_decode ($) { Line 55  sub __2022_decode ($) {
55    $C;    $C;
56  }  }
57    
58    sub __clone ($) {
59      my $self = shift;
60      bless {%$self}, ref $self;
61    };
62    
63  package Encode::ISO2022::RFC1345::NATSSEFI;  package Encode::ISO2022::RFC1345::NATSSEFI;
64  use vars qw/@ISA/;  use vars qw/@ISA/;
65  push @ISA, 'Encode::ISO2022::RFC1345';  push @ISA, 'Encode::ISO2022::RFC1345';
# Line 339  sub __2022__common ($) { Line 344  sub __2022__common ($) {
344    $C;    $C;
345  }  }
346    
347    package Encode::ISO2022::RFC1345::greek7;
348    use vars qw/@ISA/;
349    push @ISA, 'Encode::ISO2022::RFC1345';
350    __PACKAGE__->Define (qw/greek7 iso-ir-88 csISO88Greek7/);
351    
352    =item greek7
353    
354    greek7 (Alias: iso-ir-88, csISO88Greek7 (IANA))
355    
356    =cut
357    
358    sub __2022__common ($) {
359      my $C = shift->SUPER::__2022__common;
360      $C->{bit} = 7;
361      $C->{G0} = $Encode::ISO2022::CHARSET{G94}->{"\x6A"};
362      $C->{G1} = $C->{G0}; $C->{G2} = $C->{G1}; $C->{G3} = $C->{G1};
363      $C->{option}->{undef_char} = ["\x3F", {type => 'G94', charset => "\x6A"}];
364      $C;
365    }
366    
367    package Encode::ISO2022::RFC1345::ASMO_449;
368    use vars qw/@ISA/;
369    push @ISA, 'Encode::ISO2022::RFC1345';
370    __PACKAGE__->Define (qw/ASMO_449 ISO_9036 arabic7 iso-ir-89 csISO89ASMO449/);
371    
372    =item ASMO_449
373    
374    ASMO_449 (Alias: ISO_9036, arabic7, iso-ir-89, csISO89ASMO449 (IANA))
375    
376    =cut
377    
378    sub __2022__common ($) {
379      my $C = shift->SUPER::__2022__common;
380      $C->{bit} = 7;
381      $C->{G0} = $Encode::ISO2022::CHARSET{G94}->{"\x6B"};
382      $C->{G1} = $C->{G0}; $C->{G2} = $C->{G1}; $C->{G3} = $C->{G1};
383      $C->{option}->{undef_char} = ["\x3F", {type => 'G94', charset => "\x6B"}];
384      $C;
385    }
386    
387    package Encode::ISO2022::RFC1345::csISO91JISC62291984a;
388    use vars qw/@ISA/;
389    push @ISA, 'Encode::ISO2022::RFC1345';
390    __PACKAGE__->Define (qw/JIS_C6229-1984-a iso-ir-91 jp-ocr-a csISO91JISC62291984a/);
391    
392    =item JIS_C6229-1984-a
393    
394    JIS_C6229-1984-a (Alias: iso-ir-91, jp-ocr-a, csISO91JISC62291984a (IANA))
395    
396    =cut
397    
398    sub __2022__common ($) {
399      my $C = shift->SUPER::__2022__common;
400      $C->{bit} = 7;
401      $C->{G0} = $Encode::ISO2022::CHARSET{G94}->{"\x6D"};
402      $C->{G1} = $C->{G0}; $C->{G2} = $C->{G1}; $C->{G3} = $C->{G1};
403      $C->{option}->{undef_char} = ["\x3F", {type => 'G94', charset => "\x6D"}];
404      $C;
405    }
406    
407    package Encode::ISO2022::RFC1345::csISO92JISC62991984b;
408    use vars qw/@ISA/;
409    push @ISA, 'Encode::ISO2022::RFC1345';
410    __PACKAGE__->Define (qw/JIS_C6229-1984-b iso-ir-92 ISO646-JP-OCR-B jp-ocr-b
411     csISO92JISC62991984b/);
412    
413    =item JIS_C6229-1984-b
414    
415    JIS_C6229-1984-b (Alias: iso-ir-92, ISO646-JP-OCR-B, jp-ocr-b,
416    csISO92JISC62991984b (IANA))
417    
418    =cut
419    
420    sub __2022__common ($) {
421      my $C = shift->SUPER::__2022__common;
422      $C->{bit} = 7;
423      $C->{G0} = $Encode::ISO2022::CHARSET{G94}->{"\x6E"};
424      $C->{G1} = $C->{G0}; $C->{G2} = $C->{G1}; $C->{G3} = $C->{G1};
425      $C->{option}->{undef_char} = ["\x3F", {type => 'G94', charset => "\x6E"}];
426      $C;
427    }
428    
429    package Encode::ISO2022::RFC1345::csISO93JIS62291984badd;
430    use vars qw/@ISA/;
431    push @ISA, 'Encode::ISO2022::RFC1345';
432    __PACKAGE__->Define (qw/JIS_C6229-1984-b-add iso-ir-93 jp-ocr-b-add
433     csISO93JIS62291984badd/);
434    
435    =item JIS_C6229-1984-b-add
436    
437    JIS_C6229-1984-b-add (Alias: iso-ir-93, jp-ocr-b-add,
438    csISO93JIS62291984badd (IANA))
439    
440    =cut
441    
442    sub __2022__common ($) {
443      my $C = shift->SUPER::__2022__common;
444      $C->{bit} = 7;
445      $C->{G0} = $Encode::ISO2022::CHARSET{G94}->{"\x6F"};
446      $C->{G1} = $C->{G0}; $C->{G2} = $C->{G1}; $C->{G3} = $C->{G1};
447      $C->{option}->{undef_char} = ["\x20"];
448      $C;
449    }
450    
451    package Encode::ISO2022::RFC1345::csISO94JIS62291984hand;
452    use vars qw/@ISA/;
453    push @ISA, 'Encode::ISO2022::RFC1345';
454    __PACKAGE__->Define (qw/JIS_C6229-1984-hand iso-ir-94 jp-ocr-hand
455     csISO94JIS62291984hand/);
456    
457    =item JIS_C6229-1984-hand
458    
459    JIS_C6229-1984-hand (Alias: iso-ir-94, jp-ocr-hand,
460    csISO94JIS62291984hand (IANA))
461    
462    =cut
463    
464    sub __2022__common ($) {
465      my $C = shift->SUPER::__2022__common;
466      $C->{bit} = 7;
467      $C->{G0} = $Encode::ISO2022::CHARSET{G94}->{"\x70"};
468      $C->{G1} = $C->{G0}; $C->{G2} = $C->{G1}; $C->{G3} = $C->{G1};
469      $C->{option}->{undef_char} = ["\x3F", {type => 'G94', charset => "\x70"}];
470      $C;
471    }
472    
473    package Encode::ISO2022::RFC1345::csISO93JIS62291984badd;
474    use vars qw/@ISA/;
475    push @ISA, 'Encode::ISO2022::RFC1345';
476    __PACKAGE__->Define (qw/JIS_C6229-1984-hand-add iso-ir-95 jp-ocr-hand-add
477     csISO93JIS62291984badd/);
478    
479    =item JIS_C6229-1984-hand-add
480    
481    JIS_C6229-1984-hand-add (Alias: iso-ir-95, jp-ocr-hand-add,
482    csISO93JIS62291984badd (IANA))
483    
484    =cut
485    
486    sub __2022__common ($) {
487      my $C = shift->SUPER::__2022__common;
488      $C->{bit} = 7;
489      $C->{G0} = $Encode::ISO2022::CHARSET{G94}->{"\x71"};
490      $C->{G1} = $C->{G0}; $C->{G2} = $C->{G1}; $C->{G3} = $C->{G1};
491      $C->{option}->{undef_char} = ["\x20"];
492      $C;
493    }
494    
495    package Encode::ISO2022::RFC1345::csISO96JISC62291984kana;
496    use vars qw/@ISA/;
497    push @ISA, 'Encode::ISO2022::RFC1345';
498    __PACKAGE__->Define (qw/JIS_C6229-1984-kana iso-ir-96
499     csISO96JISC62291984kana/);
500    
501    =item JIS_C6229-1984-kana
502    
503    JIS_C6229-1984-kana (Alias: iso-ir-96,
504    csISO96JISC62291984kana (IANA))
505    
506    =cut
507    
508    sub __2022__common ($) {
509      my $C = shift->SUPER::__2022__common;
510      $C->{bit} = 7;
511      $C->{G0} = $Encode::ISO2022::CHARSET{G94}->{"\x72"};
512      $C->{G1} = $C->{G0}; $C->{G2} = $C->{G1}; $C->{G3} = $C->{G1};
513      $C->{option}->{undef_char} = ["\x20"];
514      $C;
515    }
516    
517    package Encode::ISO2022::RFC1345::csISO2033;
518    use vars qw/@ISA/;
519    push @ISA, 'Encode::ISO2022::RFC1345';
520    __PACKAGE__->Define (qw/ISO_2033-1983 iso-ir-98 e13b
521     csISO2033/);
522    
523    =item ISO_2033-1983
524    
525    ISO_2033-1983 (Alias: iso-ir-98, e13b,
526    csISO2033 (IANA))
527    
528    =cut
529    
530    sub __2022__common ($) {
531      my $C = shift->SUPER::__2022__common;
532      $C->{bit} = 7;
533      $C->{G0} = $Encode::ISO2022::CHARSET{G94}->{"\x73"};
534      $C->{G1} = $C->{G0}; $C->{G2} = $C->{G1}; $C->{G3} = $C->{G1};
535      $C->{option}->{undef_char} = ["\x20"];
536      $C;
537    }
538    
539    package Encode::ISO2022::RFC1345::csISO102T617bit;
540    use vars qw/@ISA/;
541    push @ISA, 'Encode::ISO2022::RFC1345';
542    __PACKAGE__->Define (qw/T.61-7bit iso-ir-102 csISO102T617bit/);
543    
544    =item T.61-7bit
545    
546    T.61-7bit (Alias: iso-ir-102, csISO102T617bit (IANA))
547    
548    =cut
549    
550    sub __2022__common ($) {
551      my $C = shift->SUPER::__2022__common;
552      $C->{bit} = 7;
553      $C->{G0} = $Encode::ISO2022::CHARSET{G94}->{"\x75"};
554      $C->{G1} = $C->{G0}; $C->{G2} = $C->{G1}; $C->{G3} = $C->{G1};
555      $C->{option}->{undef_char} = ["\x3F", {type => 'G94', charset => "\x75"}];
556      $C;
557    }
558    
559    
560    package Encode::ISO2022::RFC1345::csISO146Serbian;
561    use vars qw/@ISA/;
562    push @ISA, 'Encode::ISO2022::RFC1345';
563    __PACKAGE__->Define (qw/JUS_I.B1.003-serb iso-ir-146 serbian csISO146Serbian/);
564    
565    =item JUS_I.B1.003-serb
566    
567    JUS_I.B1.003-serb (Alias: iso-ir-146, serbian, csISO146Serbian (IANA))
568    
569    =cut
570    
571    sub __2022__common ($) {
572      my $C = shift->SUPER::__2022__common;
573      $C->{bit} = 7;
574      $C->{G0} = $Encode::ISO2022::CHARSET{G94}->{"\x7B"};
575      $C->{G1} = $C->{G0}; $C->{G2} = $C->{G1}; $C->{G3} = $C->{G1};
576      $C->{option}->{undef_char} = ["\x3F", {type => 'G94', charset => "\x7B"}];
577      $C;
578    }
579    
580    package Encode::ISO2022::RFC1345::csISO147Macedonian;
581    use vars qw/@ISA/;
582    push @ISA, 'Encode::ISO2022::RFC1345';
583    __PACKAGE__->Define (qw/JUS_I.B1.003-mac macedonian iso-ir-147
584     csISO147Macedonian/);
585    
586    =item JUS_I.B1.003-mac
587    
588    JUS_I.B1.003-mac (Alias: macedonian, iso-ir-147, csISO147Macedonian (IANA))
589    
590    =cut
591    
592    sub __2022__common ($) {
593      my $C = shift->SUPER::__2022__common;
594      $C->{bit} = 7;
595      $C->{G0} = $Encode::ISO2022::CHARSET{G94}->{"\x7D"};
596      $C->{G1} = $C->{G0}; $C->{G2} = $C->{G1}; $C->{G3} = $C->{G1};
597      $C->{option}->{undef_char} = ["\x3F", {type => 'G94', charset => "\x7D"}];
598      $C;
599    }
600    
601    package Encode::ISO2022::RFC1345::csISO150GreekCCITT;
602    use vars qw/@ISA/;
603    push @ISA, 'Encode::ISO2022::RFC1345';
604    __PACKAGE__->Define (qw/greek-ccitt iso-ir-150 csISO150
605     csISO150GreekCCITT/);
606    
607    =item greek-ccitt
608    
609    greek-ccitt (Alias: iso-ir-150, csISO150 (IANA), csISO150GreekCCITT (IANA))
610    
611    =cut
612    
613    sub __2022__common ($) {
614      my $C = shift->SUPER::__2022__common;
615      $C->{bit} = 7;
616      $C->{G0} = $Encode::ISO2022::CHARSET{G94}->{"\x21\x40"};
617      $C->{G1} = $C->{G0}; $C->{G2} = $C->{G1}; $C->{G3} = $C->{G1};
618      $C->{option}->{undef_char} = ["\x3F", {type => 'G94', charset => "\x21\x40"}];
619      $C;
620    }
621    
622    
623    
624    
625    package Encode::ISO2022::RFC1345::csISO70VideotexSupp1;
626    use vars qw/@ISA/;
627    push @ISA, 'Encode::ISO2022::RFC1345';
628    __PACKAGE__->Define (qw/videotex-suppl iso-ir-70 csISO70VideotexSupp1/);
629    
630    =item videotex-suppl
631    
632    videotex-suppl (Alias: iso-ir-70, csISO70VideotexSupp1 (IANA))
633    
634    =cut
635    
636    sub __2022__common ($) {
637      my $C = shift->SUPER::__2022__common;
638      $C->{bit} = 8;
639      $C->{G0} = $Encode::ISO2022::CHARSET{G94}->{"\x74"};
640      $C->{G1} = $Encode::ISO2022::CHARSET{G94}->{"\x62"};
641      $C->{G2} = $C->{G1}; $C->{G3} = $C->{G1};
642      $C->{option}->{undef_char} = ["\x3F", {type => 'G94', charset => "\x74"}];
643      $C;
644    }
645    
646    package Encode::ISO2022::RFC1345::csISO90;
647    use vars qw/@ISA/;
648    push @ISA, 'Encode::ISO2022::RFC1345';
649    __PACKAGE__->Define (qw/iso-ir-90 csISO90/);
650    
651    =item iso-ir-90
652    
653    iso-ir-90 (Alias: csISO90 (IANA))
654    
655    =cut
656    
657    sub __2022__common ($) {
658      my $C = shift->SUPER::__2022__common;
659      $C->{bit} = 8;
660      $C->{G0} = $Encode::ISO2022::CHARSET{G94}->{"\x42"};
661      $C->{G1} = $Encode::ISO2022::CHARSET{G94}->{"\x6C"};
662      $C->{G2} = $C->{G1}; $C->{G3} = $C->{G1};
663      $C->{option}->{undef_char} = ["\x3F", {type => 'G94', charset => "\x6C"}];
664      $C;
665    }
666    
667    package Encode::ISO2022::RFC1345::csISO2033;
668    use vars qw/@ISA/;
669    push @ISA, 'Encode::ISO2022::RFC1345';
670    __PACKAGE__->Define (qw/ANSI_X3.110-1983 iso-ir-99 CSA_T500-1983 NAPLPS
671     csISO99NAPLPS
672     T.101-G2 iso-ir-128 csISO128T101G2/);
673    
674    =item ANSI_X3.110-1983
675    
676    ANSI_X3.110-1983 (Alias: iso-ir-99, CSA_T500-1983, NAPLPS,
677    csISO99NAPLPS (IANA), T.101-G2, iso-ir-128, csISO128T101G2 (IANA))
678    
679    Note that C<ANSI_X3.110-1983> and C<T.101-G2> is defined as
680    different charset in RFC 1345 and IANAREG although they have
681    same definition.
682    
683    =cut
684    
685    sub __2022__common ($) {
686      my $C = shift->SUPER::__2022__common;
687      $C->{bit} = 8;
688      $C->{G0} = $Encode::ISO2022::CHARSET{G94}->{"\x74"};
689      $C->{G1} = $Encode::ISO2022::CHARSET{G94}->{"\x7C"};
690      $C->{G2} = $C->{G1}; $C->{G3} = $C->{G1};
691      $C->{option}->{undef_char} = ["\x3F", {type => 'G94', charset => "\x74"}];
692      $C;
693    }
694    
695    ## ISO_8859-1:1987 iso-ir-100 ISO_8859-1 ISO-8859-1 latin1 l1 IBM819 CP819
696    ##      csISOLatin1 (IANA)
697    ## ISO_8859-2:1987 iso-ir-101 ISO_8859-2 ISO-8859-2 latin2 l2 csISOLatin2 (IANA)
698    
699    package Encode::ISO2022::RFC1345::csISO103T618bit;
700    use vars qw/@ISA/;
701    push @ISA, 'Encode::ISO2022::RFC1345';
702    __PACKAGE__->Define (qw/T.61-8bit T.61 iso-ir-103 csISO103T618bit/);
703    
704    =item T.61-8bit
705    
706    T.61-8bit (Alias: T.61, iso-ir-103, csISO103T618bit (IANA))
707    
708    =cut
709    
710    sub __2022__common ($) {
711      my $C = shift->SUPER::__2022__common;
712      $C->{bit} = 8;
713      $C->{G0} = $Encode::ISO2022::CHARSET{G94}->{"\x7E"};
714            ## TODO: GL is subset of ISO-IR 102
715      $C->{G1} = $Encode::ISO2022::CHARSET{G96}->{"\x76"};
716      $C->{G2} = $C->{G1}; $C->{G3} = $C->{G1};
717      $C->{option}->{undef_char} = ["\x3F", {type => 'G94', charset => "\x7E"}];
718      $C;
719    }
720    
721    # ISO_8859-3:1988 iso-ir-109 ISO_8859-3 ISO-8859-3 latin3 l3 csISOLatin3 (IANA)
722    # ISO_8859-4:1988 iso-ir-110 ISO_8859-4 ISO-8859-4 latin4 l4 csISOLatin4 (IANA)
723    
724    package Encode::ISO2022::RFC1345::csISO111ECMACyrillic;
725    use vars qw/@ISA/;
726    push @ISA, 'Encode::ISO2022::RFC1345';
727    __PACKAGE__->Define (qw/ECMA-cyrillic iso-ir-111 csISO111ECMACyrillic/);
728    
729    =item ECMA-cyrillic
730    
731    ECMA-cyrillic (Alias: iso-ir-111, csISO111ECMACyrillic (IANA))
732    
733    =cut
734    
735    sub __2022__common ($) {
736      my $C = shift->SUPER::__2022__common;
737      $C->{bit} = 8;
738      $C->{G0} = $Encode::ISO2022::CHARSET{G94}->{"\x42"};
739      $C->{G1} = $Encode::ISO2022::CHARSET{G96}->{"\x40"};
740      $C->{G2} = $C->{G1}; $C->{G3} = $C->{G1};
741      $C->{option}->{undef_char} = ["\x3F", {type => 'G94', charset => "\x42"}];
742      $C;
743    }
744    
745    package Encode::ISO2022::RFC1345::csISO123CSAZ24341985gr;
746    use vars qw/@ISA/;
747    push @ISA, 'Encode::ISO2022::RFC1345';
748    __PACKAGE__->Define (qw/CSA_Z243.4-1985-gr iso-ir-123 csISO123CSAZ24341985gr/);
749    
750    =item CSA_Z243.4-1985-gr
751    
752    CSA_Z243.4-1985-gr (Alias: iso-ir-123, csISO123CSAZ24341985gr (IANA))
753    
754    =cut
755    
756    sub __2022__common ($) {
757      my $C = shift->SUPER::__2022__common;
758      $C->{bit} = 8;
759      $C->{G0} = $Encode::ISO2022::CHARSET{G94}->{"\x42"};
760      $C->{G1} = $Encode::ISO2022::CHARSET{G96}->{"\x45"};
761      $C->{G2} = $C->{G1}; $C->{G3} = $C->{G1};
762      $C->{option}->{undef_char} = ["\x3F", {type => 'G94', charset => "\x42"}];
763      $C;
764    }
765    
766    # ISO_8859-7:1987 iso-ir-126 ISO_8859-7 ISO-8859-7 ELOT_928 ECMA-118
767    #       greek greek8 csISOLatinGreek (IANA)
768    # ISO_8859-6:1987 iso-ir-127 ISO_8859-6 ISO-8859-6 ECMA-114 ASMO-708
769    #       arabic csISOLatinArabic (IANA)
770    # ISO_8859-8:1988 iso-ir-138 ISO_8859-8 ISO-8859-8 hebrew csISOLatinHebrew (IANA)
771    
772    package Encode::ISO2022::RFC1345::CSN_369103;
773    use vars qw/@ISA/;
774    push @ISA, 'Encode::ISO2022::RFC1345';
775    __PACKAGE__->Define (qw/CSN_369103 iso-ir-139 csISO139CSN369103/);
776    
777    =item CSN_369103
778    
779    CSN_369103 (Alias: iso-ir-139, csISO139CSN369103 (IANA))
780    
781    =cut
782    
783    sub __2022__common ($) {
784      my $C = shift->SUPER::__2022__common;
785      $C->{bit} = 8;
786      $C->{G0} = $Encode::ISO2022::CHARSET{G94}->{"\x42"};
787      $C->{G1} = $Encode::ISO2022::CHARSET{G96}->{"\x49"};
788      $C->{G2} = $C->{G1}; $C->{G3} = $C->{G1};
789      $C->{option}->{undef_char} = ["\x3F", {type => 'G94', charset => "\x42"}];
790      $C;
791    }
792    
793    package Encode::ISO2022::RFC1345::csISOTextComm;
794    use vars qw/@ISA/;
795    push @ISA, 'Encode::ISO2022::RFC1345';
796    __PACKAGE__->Define (qw/ISO_6937-2-add iso-ir-142 csISOTextComm/);
797    
798    =item ISO_6937-2-add
799    
800    ISO_6937-2-add (Alias: iso-ir-142, csISOTextComm (IANA))
801    
802    =cut
803    
804    sub __2022__common ($) {
805      my $C = shift->SUPER::__2022__common;
806      $C->{bit} = 8;
807      $C->{G0} = $Encode::ISO2022::CHARSET{G94}->{"\x42"};
808      $C->{G1} = $Encode::ISO2022::CHARSET{G96}->{"\x4A"};
809      $C->{G2} = $C->{G1}; $C->{G3} = $C->{G1};
810      $C->{option}->{undef_char} = ["\x3F", {type => 'G94', charset => "\x42"}];
811      $C;
812    }
813    
814    package Encode::ISO2022::RFC1345::csISO143IECP271;
815    use vars qw/@ISA/;
816    push @ISA, 'Encode::ISO2022::RFC1345';
817    __PACKAGE__->Define (qw/IEC_P27-1 iso-ir-143 csISO143IECP271/);
818    
819    =item IEC_P27-1
820    
821    IEC_P27-1 (Alias: iso-ir-143, csISO143IECP271 (IANA))
822    
823    =cut
824    
825    sub __2022__common ($) {
826      my $C = shift->SUPER::__2022__common;
827      $C->{bit} = 8;
828      $C->{G0} = $Encode::ISO2022::CHARSET{G94}->{"\x42"};
829      $C->{G1} = $Encode::ISO2022::CHARSET{G96}->{"\x4B"};
830      $C->{G2} = $C->{G1}; $C->{G3} = $C->{G1};
831      $C->{option}->{undef_char} = ["\x3F", {type => 'G94', charset => "\x42"}];
832      $C;
833    }
834    
835    # ISO_8859-5:1988 iso-ir-144 ISO_8859-5 ISO-8859-5 cyrillic csISOLatinCyrillic (IANA)
836    # ISO_8859-9:1989 iso-ir-148 ISO_8859-9 ISO-8859-9 latin5 l5 csISOLatin5 (IANA)
837    
838    package Encode::ISO2022::RFC1345::csISO6937Add;
839    use vars qw/@ISA/;
840    push @ISA, 'Encode::ISO2022::RFC1345';
841    __PACKAGE__->Define (qw/ISO_6937-2-25 iso-ir-152 csISO6937Add/);
842    
843    =item ISO_6937-2-25
844    
845    ISO_6937-2-25 (Alias: iso-ir-152, csISO6937Add (IANA))
846    
847    =cut
848    
849    sub __2022__common ($) {
850      my $C = shift->SUPER::__2022__common;
851      $C->{bit} = 8;
852      $C->{G0} = $Encode::ISO2022::CHARSET{G94}->{"\x42"};
853      $C->{G1} = $Encode::ISO2022::CHARSET{G96}->{"\x4E"};
854      $C->{G2} = $C->{G1}; $C->{G3} = $C->{G1};
855      $C->{option}->{undef_char} = ["\x3F", {type => 'G94', charset => "\x42"}];
856      $C;
857    }
858    
859    package Encode::ISO2022::RFC1345::csISO153GOST1976874;
860    use vars qw/@ISA/;
861    push @ISA, 'Encode::ISO2022::RFC1345';
862    __PACKAGE__->Define (qw/GOST_19768-74 ST_SEV_358-88 iso-ir-153 csISO153GOST1976874/);
863    
864    =item GOST_19768-74
865    
866    GOST_19768-74 (Alias: ST_SEV_358-88, iso-ir-153, csISO153GOST1976874 (IANA))
867    
868    =cut
869    
870    sub __2022__common ($) {
871      my $C = shift->SUPER::__2022__common;
872      $C->{bit} = 8;
873      $C->{G0} = $Encode::ISO2022::CHARSET{G94}->{"\x42"};
874      $C->{G1} = $Encode::ISO2022::CHARSET{G96}->{"\x4F"};
875      $C->{G2} = $C->{G1}; $C->{G3} = $C->{G1};
876      $C->{option}->{undef_char} = ["\x3F", {type => 'G94', charset => "\x42"}];
877      $C;
878    }
879    
880    package Encode::ISO2022::RFC1345::csISO8859Supp;
881    use vars qw/@ISA/;
882    push @ISA, 'Encode::ISO2022::RFC1345';
883    __PACKAGE__->Define (qw/ISO_8859-supp iso-ir-154 latin1-2-5 csISO8859Supp/);
884    
885    =item ISO_8859-supp
886    
887    ISO_8859-supp (Alias: iso-ir-154, latin1-2-5, csISO8859Supp (IANA))
888    
889    =cut
890    
891    sub __2022__common ($) {
892      my $C = shift->SUPER::__2022__common;
893      $C->{bit} = 8;
894      $C->{G0} = $Encode::ISO2022::CHARSET{G94}->{"\x42"};
895      $C->{G1} = $Encode::ISO2022::CHARSET{G96}->{"\x50"};
896      $C->{G2} = $C->{G1}; $C->{G3} = $C->{G1};
897      $C->{option}->{undef_char} = ["\x3F", {type => 'G94', charset => "\x42"}];
898      $C;
899    }
900    
901    package Encode::ISO2022::RFC1345::csISO10367Box;
902    use vars qw/@ISA/;
903    push @ISA, 'Encode::ISO2022::RFC1345';
904    __PACKAGE__->Define (qw/ISO_10367-box iso-ir-155 csISO10367Box/);
905    
906    =item ISO_10367-box
907    
908    ISO_10367-box (Alias: iso-ir-155, csISO10367Box (IANA))
909    
910    =cut
911    
912    sub __2022__common ($) {
913      my $C = shift->SUPER::__2022__common;
914      $C->{bit} = 8;
915      $C->{G0} = $Encode::ISO2022::CHARSET{G94}->{"\x42"};
916      $C->{G1} = $Encode::ISO2022::CHARSET{G96}->{"\x51"};
917      $C->{G2} = $C->{G1}; $C->{G3} = $C->{G1};
918      $C->{option}->{undef_char} = ["\x3F", {type => 'G94', charset => "\x42"}];
919      $C;
920    }
921    
922    # latin6 iso-ir-157 l6 ISO-8859-10 (IANA) ISO_8859-10:1992 (IANA) csISOLatin6 (IANA)
923    
924    package Encode::ISO2022::RFC1345::csISO158Lap;
925    use vars qw/@ISA/;
926    push @ISA, 'Encode::ISO2022::RFC1345';
927    __PACKAGE__->Define (qw/latin-lap lap iso-ir-158 csISO158Lap/);
928    
929    =item latin-lap
930    
931    latin-lap (Alias: lap, iso-ir-158, csISO158Lap (IANA))
932    
933    =cut
934    
935    sub __2022__common ($) {
936      my $C = shift->SUPER::__2022__common;
937      $C->{bit} = 8;
938      $C->{G0} = $Encode::ISO2022::CHARSET{G94}->{"\x42"};
939      $C->{G1} = $Encode::ISO2022::CHARSET{G96}->{"\x58"};
940      $C->{G2} = $C->{G1}; $C->{G3} = $C->{G1};
941      $C->{option}->{undef_char} = ["\x3F", {type => 'G94', charset => "\x42"}];
942      $C;
943    }
944    
945    
946  package Encode::ISO2022::RFC1345::csISO42JISC62261978;  package Encode::ISO2022::RFC1345::csISO42JISC62261978;
947  use vars qw/@ISA/;  use vars qw/@ISA/;
# Line 384  sub __2022__common ($) { Line 987  sub __2022__common ($) {
987    $C;    $C;
988  }  }
989    
990    package Encode::ISO2022::RFC1345::csISO87JISX0208;
991    use vars qw/@ISA/;
992    push @ISA, 'Encode::ISO2022::RFC1345';
993    __PACKAGE__->Define (qw/JIS_C6226-1983 iso-ir-87 x0208
994     JIS_X0208-1983 csISO87JISX0208 JIS0208/);
995    
996    =item JIS_C6226-1983
997    
998    JIS_C6226-1978 (Alias: iso-ir-87, x0208, JIS_X0208-1983, csISO87JISX0208 (IANA),
999    JIS0208 (Not in RFC 1345))
1000    
1001    =cut
1002    
1003    sub __2022__common ($) {
1004      my $C = shift->SUPER::__2022__common;
1005      $C->{bit} = 7;
1006      # 0x20, 0x7F = undef
1007      $C->{C0} = $Encode::ISO2022::CHARSET{C0}->{"\x7E"};
1008      $C->{G0} = $Encode::ISO2022::CHARSET{G94n}->{"\x42"};
1009      $C->{G1} = $C->{G0}; $C->{G2} = $C->{G1}; $C->{G3} = $C->{G1};
1010      $C->{option}->{undef_char} = ["\x22\x2E", {type => 'G94n', charset => "\x42"}];
1011      $C;
1012    }
1013    
1014    package Encode::ISO2022::RFC1345::csKSC56011987;
1015    use vars qw/@ISA/;
1016    push @ISA, 'Encode::ISO2022::RFC1345';
1017    __PACKAGE__->Define (qw/KS_C_5601-1987 iso-ir-149 KS_C_5601-1989 KSC_5601
1018     korean csKSC56011987 KSC5601 KS_C_5601 KSC5601_1992 KSX1001 KS_X_1001:1992/);
1019    
1020    =item KS_C_5601-1987
1021    
1022    KS_C_5601-1987 (Alias: iso-ir-149, KS_C_5601-1989, KSC_5601, korean,
1023    csKSC56011987 (IANA), KSC5601 (Not in RFC 1345), KS_C_5601 (Not in RFC 1345),
1024    KSC5601_1992 (Not in RFC 1345), KSX1001 (Not in RFC 1345),
1025    KS_X_1001:1992 (Not in RFC 1345))
1026    
1027    Some implementions use this name to label UHC (Unified Hangul
1028    Code).  It is a serious bug.
1029    
1030    =cut
1031    
1032    sub __2022__common ($) {
1033      my $C = shift->SUPER::__2022__common;
1034      $C->{bit} = 7;
1035      # 0x20, 0x7F = undef
1036      $C->{C0} = $Encode::ISO2022::CHARSET{C0}->{"\x7E"};
1037      $C->{G0} = $Encode::ISO2022::CHARSET{G94n}->{"\x4C"};
1038      $C->{G1} = $C->{G0}; $C->{G2} = $C->{G1}; $C->{G3} = $C->{G1};
1039      $C->{option}->{undef_char} = ["\x21\x6B", {type => 'G94n', charset => "\x4C"}];
1040      $C;
1041    }
1042    
1043    package Encode::ISO2022::RFC1345::csISO159JISX02121990;
1044    use vars qw/@ISA/;
1045    push @ISA, 'Encode::ISO2022::RFC1345';
1046    __PACKAGE__->Define (qw/JIS_X0212-1990 x0212 iso-ir-159 csISO159JISX02121990/);
1047    
1048    =item JIS_X0212-1990
1049    
1050    JIS_X0212-1990 (Alias: x0212, iso-ir-159, csISO159JISX02121990 (IANA))
1051    
1052    =cut
1053    
1054    sub __2022__common ($) {
1055      my $C = shift->SUPER::__2022__common;
1056      $C->{bit} = 7;
1057      # 0x20, 0x7F = undef
1058      $C->{C0} = $Encode::ISO2022::CHARSET{C0}->{"\x7E"};
1059      $C->{G0} = $Encode::ISO2022::CHARSET{G94n}->{"\x44"};
1060      $C->{G1} = $C->{G0}; $C->{G2} = $C->{G1}; $C->{G3} = $C->{G1};
1061      $C->{option}->{undef_char} = ["\x22\x44", {type => 'G94n', charset => "\x44"}];
1062            ## INVERTED QUESTION MARK
1063      $C;
1064    }
1065    
1066  1;  1;
1067  __END__  __END__
1068    
1069  =back  =back
1070    
1071  Note that although other JISes such as JIS X 0212 and JIS X 9010  =head1 AUTHORS
1072  define ISO/IEC 2022-comfprming coded character sets,  
1073  these standards do not define complete coding system (but define  Nanashi-san
1074  as used on ISO/IEC 2022 environment), so this module  
1075  does not include those coded character sets.  (IETF RFC 1345  Wakaba <w@suika.fam.cx>
 and IANAREG give charset name to coded character sets  
 consist of such standards.  But those are defined by RFC 1345,  
 not by JIS.  Such coded character sets should be implemented  
 in Encode::ISO2022::RFC1345.)  
1076    
1077  =head1 LICENSE  =head1 LICENSE
1078    
1079  Copyright 2002 Wakaba <w@suika.fam.cx>  Copyright 2002 Authors
1080    
1081  This library is free software; you can redistribute it  This library is free software; you can redistribute it
1082  and/or modify it under the same terms as Perl itself.  and/or modify it under the same terms as Perl itself.
# Line 409  and/or modify it under the same terms as Line 1084  and/or modify it under the same terms as
1084  =cut  =cut
1085    
1086  # $Date$  # $Date$
1087  ### JIS.pm ends here  ### RFC1345.pm ends here

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

admin@suikawiki.org
ViewVC Help
Powered by ViewVC 1.1.24