/[suikacvs]/perl/lib/Encode/SJIS.pm
Suika

Diff of /perl/lib/Encode/SJIS.pm

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

revision 1.2 by wakaba, Sat Oct 12 11:03:00 2002 UTC revision 1.4 by wakaba, Thu Dec 12 08:17:16 2002 UTC
# Line 109  sub internal_to_sjis ($\%) { Line 109  sub internal_to_sjis ($\%) {
109      if ($cc <= 0x1F) {      if ($cc <= 0x1F) {
110        $t = $c if $C->{ $C->{CL} } eq $Encode::Charset::CHARSET{C0}->{"\x40"};        $t = $c if $C->{ $C->{CL} } eq $Encode::Charset::CHARSET{C0}->{"\x40"};
111      } elsif ($cc == 0x20 || $cc == 0x7F) {      } elsif ($cc == 0x20 || $cc == 0x7F) {
112          Encode::_utf8_off ($c);
113        $t = $c;        $t = $c;
114      } elsif ($cc < 0x7F) {      } elsif ($cc < 0x7F) {
115          Encode::_utf8_off ($c);
116        $t = $c if $C->{ $C->{GL} } eq $Encode::Charset::CHARSET{G94}->{"\x42"};        $t = $c if $C->{ $C->{GL} } eq $Encode::Charset::CHARSET{G94}->{"\x42"};
117      } elsif ($C->{option}->{C1invoke_to_right} && $cc == 0x80) {      } elsif ($C->{option}->{C1invoke_to_right} && $cc == 0x80) {
118        $t = $c if $C->{ $C->{CR} } eq $Encode::Charset::CHARSET{C1}->{'64291991C1'};        $t = "\x80"
119            if $C->{ $C->{CR} } eq $Encode::Charset::CHARSET{C1}->{'64291991C1'};
120      } elsif ($cc <= 0x9F) {      } elsif ($cc <= 0x9F) {
121        $t = "\x1B".chr ($cc - 0x40)        $t = "\x1B".pack 'C', ($cc - 0x40)
122          if $C->{ $C->{ESC_Fe} } eq $Encode::Charset::CHARSET{C1}->{'64291991C1'};          if $C->{ $C->{ESC_Fe} } eq $Encode::Charset::CHARSET{C1}->{'64291991C1'};
123            
124      } elsif (0xE9F6C0 <= $cc && $cc <= 0xF06F80) {      } elsif (0xE9F6C0 <= $cc && $cc <= 0xF06F80) {
# Line 146  sub internal_to_sjis ($\%) { Line 149  sub internal_to_sjis ($\%) {
149      } elsif (0xE90940 <= $cc && $cc <= 0xE92641) {      } elsif (0xE90940 <= $cc && $cc <= 0xE92641) {
150        my $c = $cc - 0xE90940;  my $F = chr (($c / 94)+0x30);        my $c = $cc - 0xE90940;  my $F = chr (($c / 94)+0x30);
151        if ($C->{ $C->{GL} } eq $Encode::Charset::CHARSET{G94}->{ $F }) {        if ($C->{ $C->{GL} } eq $Encode::Charset::CHARSET{G94}->{ $F }) {
152          $t = chr (($c % 94) + 0x21);          $t = pack 'C', (($c % 94) + 0x21);
153        } elsif ($C->{ $C->{GR} } eq $Encode::Charset::CHARSET{G94}->{ $F }) {        } elsif ($C->{ $C->{GR} } eq $Encode::Charset::CHARSET{G94}->{ $F }) {
154          $t = chr (($c % 94) + 0xA1) if ($c % 94) < 0x3F;          $t = pack 'C', (($c % 94) + 0xA1) if ($c % 94) < 0x3F;
155        }        }
156      } elsif (0x70420000 <= $cc && $cc <= 0x7046F19B) {      } elsif (0x70420000 <= $cc && $cc <= 0x7046F19B) {
157        my $c = $cc % 0x10000;        my $c = $cc % 0x10000;
# Line 185  sub __clone ($) { Line 188  sub __clone ($) {
188  };  };
189    
190  __PACKAGE__->Define (qw!shift_jisx0213 japanese-shift-jisx0213  __PACKAGE__->Define (qw!shift_jisx0213 japanese-shift-jisx0213
191  shift-jisx0213 x-shift_jisx0213 shift-jis-3 shift-jis-2000  shift-jisx0213 x-shift_jisx0213 shift-jis-3 shift-jis-2000 sjisx0213
192  sjis shift-jis x-sjis x_sjis x-sjis-jp shiftjis x-shiftjis  sjis s-jis shift-jis x-sjis x_sjis x-sjis-jp shiftjis x-shiftjis
193  x-shift-jis shift.jis!);  x-shift-jis shift.jis!);
194    
195  =item sjis  =item sjis
196    
197  "Shift JIS" coding system.  (Alias: shift-jis, shiftjis,  "Shift JIS" coding system.  (Alias: shift-jis, shiftjis,
198  shift.jis, x-shiftjis, x-shift-jis, x-sjis, x_sjis,  shift.jis, x-shiftjis, x-shift-jis, s-jis, x-sjis, x_sjis,
199  x-sjis-jp)  x-sjis-jp)
200    
201  Since this name is ambiguous (it can now refer all or any  Since this name is ambiguous (it can now refer all or any
# Line 211  it to a shift JIS defined by JIS X 0208: Line 214  it to a shift JIS defined by JIS X 0208:
214  Shift_JISX0213 coded representation, defined by  Shift_JISX0213 coded representation, defined by
215  JIS X 0213:2000 Appendix 1 (implemention level 4).  JIS X 0213:2000 Appendix 1 (implemention level 4).
216  (Alias: shift-jisx0213, x-shift_jisx0213, japanese-shift-jisx0213 (emacsen),  (Alias: shift-jisx0213, x-shift_jisx0213, japanese-shift-jisx0213 (emacsen),
217  shift-jis-3 (Yudit), shift-jis-2000)  shift-jis-3 (Yudit), shift-jis-2000, sjisx0213)
218    
219  =cut  =cut
220    

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

admin@suikawiki.org
ViewVC Help
Powered by ViewVC 1.1.24