/[suikacvs]/perl/lib/Encode/ISO2022/RFC1345.pm
Suika

Contents of /perl/lib/Encode/ISO2022/RFC1345.pm

Parent Directory Parent Directory | Revision Log Revision Log


Revision 1.4 - (hide annotations) (download)
Sat Oct 12 07:27:01 2002 UTC (22 years, 1 month ago) by wakaba
Branch: MAIN
CVS Tags: HEAD
Changes since 1.3: +7 -2 lines
2002-10-12  Nanashi-san

	* SJIS.pm: New module.
	* SJIS/: New directory.
	(Commited by Wakaba <w@suika.fam.cx>)

1 wakaba 1.1 =head1 NAME
2    
3     Encode::ISO2022::RFC1345 --- Encode and decode of ISO/IEC 2022
4     based encodings described in IETF RFC 1345 (and not defined by
5 wakaba 1.3 any other standards)
6 wakaba 1.1
7     =head1 ENCODINGS
8    
9     =over 4
10    
11     =cut
12    
13     require 5.7.3;
14     use strict;
15     package Encode::ISO2022::RFC1345;
16     use vars qw($VERSION);
17 wakaba 1.4 $VERSION=do{my @r=(q$Revision: 1.3 $=~/\d+/g);sprintf "%d."."%02d" x $#r,@r};
18 wakaba 1.1 use base qw(Encode::Encoding);
19     require Encode::ISO2022;
20    
21     sub encode ($$;$) {
22     my ($obj, $str, $chk) = @_;
23     $_[1] = '' if $chk;
24     $str = &Encode::ISO2022::internal_to_iso2022 ($str, $obj->__2022_encode);
25     return $str;
26     }
27    
28     sub decode ($$;$) {
29     my ($obj, $str, $chk) = @_;
30     $_[1] = '' if $chk;
31     return &Encode::ISO2022::iso2022_to_internal ($str, $obj->__2022_decode);
32     }
33    
34     sub __2022__common ($) {
35     my $C = Encode::ISO2022->new_object;
36     $C->{option}->{designate_to}->{C0}->{default} = -1;
37     $C->{option}->{designate_to}->{C1}->{default} = -1;
38     $C->{option}->{designate_to}->{G94}->{default} = -1;
39     $C->{option}->{designate_to}->{G94}->{B} = -1;
40     $C->{option}->{designate_to}->{G94n}->{default} = -1;
41     $C->{option}->{designate_to}->{G96}->{default} = -1;
42     $C->{option}->{designate_to}->{G96n}->{default} = -1;
43     $C->{G1} = $Encode::ISO2022::CHARSET{G94}->{"\x7E"}; ## empty
44     $C->{option}->{reset}->{Gdesignation} = 0;
45     $C->{option}->{reset}->{Ginvoke} = 0;
46     $C;
47     }
48     sub __2022_encode ($) {
49     my $C = shift->__2022__common;
50     $C->{GR} = undef;
51     $C;
52     }
53     sub __2022_decode ($) {
54     my $C = shift->__2022__common;
55     $C;
56     }
57    
58 wakaba 1.4 sub __clone ($) {
59     my $self = shift;
60     bless {%$self}, ref $self;
61     };
62    
63 wakaba 1.1 package Encode::ISO2022::RFC1345::NATSSEFI;
64     use vars qw/@ISA/;
65     push @ISA, 'Encode::ISO2022::RFC1345';
66     __PACKAGE__->Define (qw/NATS-SEFI iso-ir-8-1 csNATSSEFI/);
67    
68     =item NATS-SEFI
69    
70     NATS-SEFI (Alias: iso-ir-8-1, csNATSSEFI (IANA))
71    
72     =cut
73    
74     sub __2022__common ($) {
75     my $C = shift->SUPER::__2022__common;
76     $C->{bit} = 7;
77     $C->{G0} = $Encode::ISO2022::CHARSET{G94}->{"\x43"};
78     $C->{G1} = $C->{G0}; $C->{G2} = $C->{G1}; $C->{G3} = $C->{G1};
79     $C->{option}->{undef_char} = ["\x3F", {type => 'G94', charset => "\x43"}];
80     $C;
81     }
82    
83     package Encode::ISO2022::RFC1345::NATSSEFIADD;
84     use vars qw/@ISA/;
85     push @ISA, 'Encode::ISO2022::RFC1345';
86     __PACKAGE__->Define (qw/NATS-SEFI-ADD iso-ir-8-2 csNATSSEFIADD/);
87    
88     =item NATS-SEFI-ADD
89    
90     NATS-SEFI-ADD (Alias: iso-ir-8-2, csNATSSEFIADD (IANA))
91    
92     =cut
93    
94     sub __2022__common ($) {
95     my $C = shift->SUPER::__2022__common;
96     $C->{bit} = 7;
97     $C->{C0} = $Encode::ISO2022::CHARSET{C0}->{"\x7E"}; ## empty
98     # 0x20, 0x7E = undef
99     $C->{G0} = $Encode::ISO2022::CHARSET{G94}->{"\x44"};
100     $C->{G1} = $C->{G0}; $C->{G2} = $C->{G1}; $C->{G3} = $C->{G1};
101     # no replacement character available
102     $C;
103     }
104    
105     package Encode::ISO2022::RFC1345::NATSDANO;
106     use vars qw/@ISA/;
107     push @ISA, 'Encode::ISO2022::RFC1345';
108     __PACKAGE__->Define (qw/NATS-DANO iso-ir-9-1 csNATSDANO/);
109    
110     =item NATS-DANO
111    
112     NATS-DANO (Alias: iso-ir-9-1, csNATSDANO (IANA))
113    
114     =cut
115    
116     sub __2022__common ($) {
117     my $C = shift->SUPER::__2022__common;
118     $C->{bit} = 7;
119     $C->{G0} = $Encode::ISO2022::CHARSET{G94}->{"\x45"};
120     $C->{G1} = $C->{G0}; $C->{G2} = $C->{G1}; $C->{G3} = $C->{G1};
121     $C->{option}->{undef_char} = ["\x3F", {type => 'G94', charset => "\x45"}];
122     $C;
123     }
124    
125     package Encode::ISO2022::RFC1345::NATSDANOADD;
126     use vars qw/@ISA/;
127     push @ISA, 'Encode::ISO2022::RFC1345';
128     __PACKAGE__->Define (qw/NATS-DANO-ADD iso-ir-9-2 csNATSDANOADD/);
129    
130     =item NATS-DANO-ADD
131    
132     NATS-DANO-ADD (Alias: iso-ir-9-2, csNATSDANOADD (IANA))
133    
134     =cut
135    
136     sub __2022__common ($) {
137     my $C = shift->SUPER::__2022__common;
138     $C->{bit} = 7;
139     $C->{C0} = $Encode::ISO2022::CHARSET{C0}->{"\x7E"}; ## empty
140     # 0x20, 0x7E = undef
141     $C->{G0} = $Encode::ISO2022::CHARSET{G94}->{"\x46"};
142     $C->{G1} = $C->{G0}; $C->{G2} = $C->{G1}; $C->{G3} = $C->{G1};
143     # no replacement character available
144     $C;
145     }
146    
147     package Encode::ISO2022::RFC1345::csISO18Greek7Old;
148     use vars qw/@ISA/;
149     push @ISA, 'Encode::ISO2022::RFC1345';
150     __PACKAGE__->Define (qw/greek7-old iso-ir-18 csISO18Greek7Old/);
151    
152     =item greek7-old
153    
154     greek7-old (Alias: iso-ir-18, csISO18Greek7Old (IANA))
155    
156     =cut
157    
158     sub __2022__common ($) {
159     my $C = shift->SUPER::__2022__common;
160     $C->{bit} = 7;
161     $C->{G0} = $Encode::ISO2022::CHARSET{G94}->{"\x5B"};
162     $C->{G1} = $C->{G0}; $C->{G2} = $C->{G1}; $C->{G3} = $C->{G1};
163     $C->{option}->{undef_char} = ["\x3F", {type => 'G94', charset => "\x5B"}];
164     $C;
165     }
166    
167     package Encode::ISO2022::RFC1345::csISO19LatinGreek;
168     use vars qw/@ISA/;
169     push @ISA, 'Encode::ISO2022::RFC1345';
170     __PACKAGE__->Define (qw/latin-greek iso-ir-19 csISO19LatinGreek/);
171    
172     =item latin-greek
173    
174     latin-greek (Alias: iso-ir-19, csISO19LatinGreek (IANA))
175    
176     =cut
177    
178     sub __2022__common ($) {
179     my $C = shift->SUPER::__2022__common;
180     $C->{bit} = 7;
181     $C->{G0} = $Encode::ISO2022::CHARSET{G94}->{"\x5C"};
182     $C->{G1} = $C->{G0}; $C->{G2} = $C->{G1}; $C->{G3} = $C->{G1};
183     $C->{option}->{undef_char} = ["\x3F", {type => 'G94', charset => "\x5C"}];
184     $C;
185     }
186    
187     package Encode::ISO2022::RFC1345::csISO27LatinGreek1;
188     use vars qw/@ISA/;
189     push @ISA, 'Encode::ISO2022::RFC1345';
190     __PACKAGE__->Define (qw/Latin-greek-1 iso-ir-27 csISO27LatinGreek1/);
191    
192     =item Latin-greek-1
193    
194     Latin-greek-1 (Alias: iso-ir-27, csISO27LatinGreek1 (IANA))
195    
196     =cut
197    
198     sub __2022__common ($) {
199     my $C = shift->SUPER::__2022__common;
200     $C->{bit} = 7;
201     $C->{G0} = $Encode::ISO2022::CHARSET{G94}->{"\x55"};
202     $C->{G1} = $C->{G0}; $C->{G2} = $C->{G1}; $C->{G3} = $C->{G1};
203     $C->{option}->{undef_char} = ["\x20"];
204     $C;
205     }
206    
207     package Encode::ISO2022::RFC1345::ISO_5427;
208     use vars qw/@ISA/;
209     push @ISA, 'Encode::ISO2022::RFC1345';
210     __PACKAGE__->Define (qw/ISO_5427 iso-ir-37 csISO5427Cyrillic/);
211    
212     =item ISO_5427
213    
214     ISO_5427 (Alias: iso-ir-37, csISO5427Cyrillic (IANA))
215    
216     =cut
217    
218     sub __2022__common ($) {
219     my $C = shift->SUPER::__2022__common;
220     $C->{bit} = 7;
221     $C->{G0} = $Encode::ISO2022::CHARSET{G94}->{"\x4E"};
222     $C->{G1} = $C->{G0}; $C->{G2} = $C->{G1}; $C->{G3} = $C->{G1};
223     $C->{option}->{undef_char} = ["\x3F", {type => 'G94', charset => "\x4E"}];
224     $C;
225     }
226    
227     package Encode::ISO2022::RFC1345::BS_viewdata;
228     use vars qw/@ISA/;
229     push @ISA, 'Encode::ISO2022::RFC1345';
230     __PACKAGE__->Define (qw/BS_viewdata iso-ir-47 csISO47BSViewdata/);
231    
232     =item BS_viewdata
233    
234     BS_viewdata (Alias: iso-ir-47, csISO47BSViewdata (IANA))
235    
236     =cut
237    
238     sub __2022__common ($) {
239     my $C = shift->SUPER::__2022__common;
240     $C->{bit} = 7;
241     $C->{G0} = $Encode::ISO2022::CHARSET{G94}->{"\x56"};
242     $C->{G1} = $C->{G0}; $C->{G2} = $C->{G1}; $C->{G3} = $C->{G1};
243     $C->{option}->{undef_char} = ["\x3F", {type => 'G94', charset => "\x56"}];
244     $C;
245     }
246    
247     package Encode::ISO2022::RFC1345::INIS;
248     use vars qw/@ISA/;
249     push @ISA, 'Encode::ISO2022::RFC1345';
250     __PACKAGE__->Define (qw/INIS iso-ir-49 csISO49INIS/);
251    
252     =item INIS
253    
254     INIS (Alias: iso-ir-49, csISO49INIS (IANA))
255    
256     =cut
257    
258     sub __2022__common ($) {
259     my $C = shift->SUPER::__2022__common;
260     $C->{bit} = 7;
261     $C->{G0} = $Encode::ISO2022::CHARSET{G94}->{"\x57"};
262     $C->{G1} = $C->{G0}; $C->{G2} = $C->{G1}; $C->{G3} = $C->{G1};
263     $C->{option}->{undef_char} = ["\x20"];
264     $C;
265     }
266    
267     package Encode::ISO2022::RFC1345::csISO50INIS8;
268     use vars qw/@ISA/;
269     push @ISA, 'Encode::ISO2022::RFC1345';
270     __PACKAGE__->Define (qw/INIS-8 iso-ir-50 csISO50INIS8/);
271    
272     =item INIS-8
273    
274     INIS-8 (Alias: iso-ir-50, csISO50INIS8 (IANA))
275    
276     =cut
277    
278     sub __2022__common ($) {
279     my $C = shift->SUPER::__2022__common;
280     $C->{bit} = 7;
281     $C->{G0} = $Encode::ISO2022::CHARSET{G94}->{"\x5D"};
282     $C->{G1} = $C->{G0}; $C->{G2} = $C->{G1}; $C->{G3} = $C->{G1};
283     $C->{option}->{undef_char} = ["\x20"];
284     $C;
285     }
286    
287     package Encode::ISO2022::RFC1345::csISO51INISCyrillic;
288     use vars qw/@ISA/;
289     push @ISA, 'Encode::ISO2022::RFC1345';
290     __PACKAGE__->Define (qw/INIS-cyrillic iso-ir-51 csISO51INISCyrillic/);
291    
292     =item INIS-cyrillic
293    
294     INIS-cyrillic (Alias: iso-ir-51, csISO51INISCyrillic (IANA))
295    
296     =cut
297    
298     sub __2022__common ($) {
299     my $C = shift->SUPER::__2022__common;
300     $C->{bit} = 7;
301     $C->{G0} = $Encode::ISO2022::CHARSET{G94}->{"\x5E"};
302     $C->{G1} = $C->{G0}; $C->{G2} = $C->{G1}; $C->{G3} = $C->{G1};
303     $C->{option}->{undef_char} = ["\x20"];
304     $C;
305     }
306    
307     package Encode::ISO2022::RFC1345::ISO5427Cyrillic1981;
308     use vars qw/@ISA/;
309     push @ISA, 'Encode::ISO2022::RFC1345';
310     __PACKAGE__->Define (qw/ISO_5427:1981 iso-ir-54 ISO5427Cyrillic1981/);
311    
312     =item ISO_5427:1981
313    
314     ISO_5427:1981 (Alias: iso-ir-54, ISO5427Cyrillic1981 (IANA))
315    
316     =cut
317    
318     sub __2022__common ($) {
319     my $C = shift->SUPER::__2022__common;
320     $C->{bit} = 7;
321     $C->{G0} = $Encode::ISO2022::CHARSET{G94}->{"\x51"};
322     $C->{G1} = $C->{G0}; $C->{G2} = $C->{G1}; $C->{G3} = $C->{G1};
323     $C->{option}->{undef_char} = ["\x20"];
324     $C;
325     }
326    
327     package Encode::ISO2022::RFC1345::csISO5428Greek;
328     use vars qw/@ISA/;
329     push @ISA, 'Encode::ISO2022::RFC1345';
330     __PACKAGE__->Define (qw/ISO_5428:1980 iso-ir-55 csISO5428Greek/);
331    
332     =item ISO_5428:1980
333    
334     ISO_5428:1980 (Alias: iso-ir-55, csISO5428Greek (IANA))
335    
336     =cut
337    
338     sub __2022__common ($) {
339     my $C = shift->SUPER::__2022__common;
340     $C->{bit} = 7;
341     $C->{G0} = $Encode::ISO2022::CHARSET{G94}->{"\x53"};
342     $C->{G1} = $C->{G0}; $C->{G2} = $C->{G1}; $C->{G3} = $C->{G1};
343     $C->{option}->{undef_char} = ["\x20"];
344     $C;
345     }
346    
347 wakaba 1.2 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 wakaba 1.1
946     package Encode::ISO2022::RFC1345::csISO42JISC62261978;
947     use vars qw/@ISA/;
948     push @ISA, 'Encode::ISO2022::RFC1345';
949     __PACKAGE__->Define (qw/JIS_C6226-1978 iso-ir-42 csISO42JISC62261978/);
950    
951     =item JIS_C6226-1978
952    
953     JIS_C6226-1978 (Alias: iso-ir-42, csISO42JISC62261978 (IANA))
954    
955     =cut
956    
957     sub __2022__common ($) {
958     my $C = shift->SUPER::__2022__common;
959     $C->{bit} = 7;
960     # 0x20, 0x7F = undef
961     $C->{C0} = $Encode::ISO2022::CHARSET{C0}->{"\x7E"};
962     $C->{G0} = $Encode::ISO2022::CHARSET{G94n}->{"\x40"};
963     $C->{G1} = $C->{G0}; $C->{G2} = $C->{G1}; $C->{G3} = $C->{G1};
964     $C->{option}->{undef_char} = ["\x22\x2E", {type => 'G94n', charset => "\x40"}];
965     $C;
966     }
967    
968     package Encode::ISO2022::RFC1345::GB_2312;
969     use vars qw/@ISA/;
970     push @ISA, 'Encode::ISO2022::RFC1345';
971     __PACKAGE__->Define (qw/GB_2312-80 iso-ir-58 chinese csISO58GB231280/);
972    
973     =item GB_2312-80
974    
975     GB_2312-80 (Alias: iso-ir-58, chinese, csISO58GB231280 (IANA))
976    
977     =cut
978    
979     sub __2022__common ($) {
980     my $C = shift->SUPER::__2022__common;
981     $C->{bit} = 7;
982     # 0x20, 0x7F = undef
983     $C->{C0} = $Encode::ISO2022::CHARSET{C0}->{"\x7E"};
984     $C->{G0} = $Encode::ISO2022::CHARSET{G94n}->{"\x41"};
985     $C->{G1} = $C->{G0}; $C->{G2} = $C->{G1}; $C->{G3} = $C->{G1};
986     $C->{option}->{undef_char} = ["\x21\x7E", {type => 'G94n', charset => "\x41"}];
987     $C;
988     }
989    
990 wakaba 1.2 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 wakaba 1.1 1;
1067     __END__
1068    
1069     =back
1070    
1071 wakaba 1.3 =head1 AUTHORS
1072    
1073     Nanashi-san
1074    
1075     Wakaba <w@suika.fam.cx>
1076    
1077 wakaba 1.1 =head1 LICENSE
1078    
1079 wakaba 1.3 Copyright 2002 Authors
1080 wakaba 1.1
1081     This library is free software; you can redistribute it
1082     and/or modify it under the same terms as Perl itself.
1083    
1084     =cut
1085    
1086 wakaba 1.4 # $Date: 2002/09/23 10:36:03 $
1087 wakaba 1.2 ### RFC1345.pm ends here

admin@suikawiki.org
ViewVC Help
Powered by ViewVC 1.1.24