X-Git-Url: http://git.chise.org/gitweb/?a=blobdiff_plain;f=add_adobecid.pl;h=ccecc9a2a473d0196981392913fdf3ff94f17023;hb=a2b5dcb28e4eeca6ef3d33ce817a18d78a5bea0a;hp=38f9546d564e46b02e2cc2f8771670dcf1938921;hpb=abc71447b51817e45069dacb6b1c1aee0fc606e4;p=chise%2Fomega.git diff --git a/add_adobecid.pl b/add_adobecid.pl index 38f9546..ccecc9a 100644 --- a/add_adobecid.pl +++ b/add_adobecid.pl @@ -1,36 +1,17 @@ #!/usr/bin/perl -w use strict; -use vars qw($perl56 $perl58 - $cmapfile $db_home $encoding +use vars qw($cmapfile $db_home $encoding %cs_var $ucs $cid $last $ciddb_filename $ciddb ); use BerkeleyDB; use Chise_utils ':all'; +require 5.008; my $debug=0; -if($^V and $^V ge v5.8){ - $perl58=1; -}elsif($^V and $^V ge v5.6){ - $perl56=1; -}else{ - print STDERR "This version is not supported."; -} -if($perl58){ - eval "use Encode"; - binmode(STDIN, ':encoding(utf8)'); - binmode(STDOUT, ':encoding(utf8)'); -} - -# if working on Mac OS. -if($^O=~/darwin/){ - print STDERR "Using ^M as delimiter.\n"; - $/=" "; -} - my $usage=< UniJIS-UTF16-H etc. available in Adobe Reader Directory. @@ -66,6 +47,12 @@ unless(defined($cmapfile) and -f $cmapfile exit 1; } +# if working on Mac OS. +if($^O=~/darwin/){ + print STDERR "Using ^M as delimiter.\n"; + $/=" "; +} + $cs_var{'=ucs@cns'}=['=cns11643-1','=cns11643-2', '=cns11643-3','=cns11643-4', '=cns11643-5','=cns11643-6', @@ -165,8 +152,6 @@ sub replace_char_id{ my($char); if(($char)=&get_chars_matching($encoding,$ucs)){ - $char=decode('utf8', $char) if($perl58); - $char=~s/^\?//; return unpack("U",$char); }else{ return undef; @@ -190,8 +175,7 @@ sub get_char_id_unified{ my($chars); if($chars=&get_char_attribute(pack("U",$char_id),'->ucs-unified')){ $chars=~s/^\((.*)\)$/$1/; - $chars=~s/\?//g; - return map {unpack("U",$_)} (split(/\s+/,$chars)); + return map {unpack("U",$_)} (split(/\s*\?/,$chars)); }else{ return (); }