X-Git-Url: http://git.rot13.org/?a=blobdiff_plain;f=mtoolkit%2Futf8-fix.pl;h=0ab25f52cfa520c65bb6ed985181f26cc79cc8ea;hb=a6a003722de3d089e8c7717028e0fa82cc5d888b;hp=5054189c042d85980aa45f7f7369e8d9ff391767;hpb=f8cf0c7e8ce2535598762fc1079d1be7cd09a0f6;p=eprints3-migration.git diff --git a/mtoolkit/utf8-fix.pl b/mtoolkit/utf8-fix.pl index 5054189..0ab25f5 100755 --- a/mtoolkit/utf8-fix.pl +++ b/mtoolkit/utf8-fix.pl @@ -7,7 +7,7 @@ use Data::Dump qw(dump); use Encode; use bytes; -my $junk = '[\xC0-\xC4][\x80-\xC4]+(\xC2\x80|\xC3\x82)'; +my $junk = '[\xC0-\xC4][\x80-\xC4]+'; my $file = shift @ARGV; my $stat; @@ -32,34 +32,54 @@ s/\xC3\x83\xC2\x83\xC3\xA2\xC2\x80\xC2\x99/V/gs && $stat->{'V fake'}++; # njemački s/\xC3\x83\xC2\x83\xC3\x85\xC2\xB8/ß/gs && $stat->{'ss'}++; -s/$junk\xC2\x8D/č/gs && $stat->{'č'}++; -s/$junk\xC2\xA1/ć/gs && $stat->{'ć'}++; -s/$junk\xC2\xA1/š/gs && $stat->{'š'}++; -s/$junk\xC4\xA1/š/gs && $stat->{'š C4'}++; -s/$junk\xC2\xBE/ž/gs && $stat->{'ž'}++; -s/$junk\xC4\xBE/ž/gs && $stat->{'ž C4'}++; +s/$junk\xC3\x82\xC2\x8D/č/gs && $stat->{'cv'}++; +s/\xC3\x84\xC2\x8D/č/gs && $stat->{'cv 84'}++; -s/$junk\xC2\x98/đ/gs && $stat->{'đ'}++; -s/$junk\xC2\x90/Đ/gs && $stat->{'Đ'}++; +s/$junk\xC2\x80\xC2\xA1/ć/gs && $stat->{"c"}++; +# #Buri\xC3\x84\xC2\x87.pdf +s/\xC3\x84\xC2\x87/ć/gs && $stat->{'c C384C287'}++; -s/$junk\xC2\x92/Č/gs && $stat->{'Č'}++; -s/$junk\xC2\xBD/Ž/gs && $stat->{'Ž'}++; -s/$junk\xC2\xA0/Š/gs && $stat->{'Š'}++; +s/$junk\xC3\x82\xC2\xA1/š/gs && $stat->{'s'}++; +#Ma\xC3\x85\xC2\xA1a +s/\xC3\x85\xC2\xA1/š/gs && $stat->{'s C385C2'}++; +s/$junk\xC2\x80\xC4\xA1/š/gs && $stat->{'s C4'}++; -s/$junk\xC2\xAB/"/gs && $stat->{'" open ?'}++; +s/$junk\xC3\x82\xC2\xBE/ž/gs && $stat->{'z'}++; -s/$junk\xC2\xBE/"/gs && $stat->{'" open'}++; -s/$junk\xC2\x93/"/gs && $stat->{'" close'}++; +s/$junk\xC2\x80\xC2\x98/đ/gs && $stat->{'d'}++; +s/$junk\xC3\x82\xC2\x90/Đ/gs && $stat->{'D'}++; -s/$junk\xC2\xA2/'/gs && $stat->{"'"}++; +s/$junk\xC2\x80\xC2\x92/Č/gs && $stat->{'Cv'}++; +s/$junk\xC3\x85\xC2\x92/Č/gs && $stat->{'Cv C385'}++; +s/$junk\xC2\x80\xC2\xA0/Ć/gs && $stat->{'C'}++; +s/$junk\xC3\x82\xC2\xBD/Ž/gs && $stat->{'Z'}++; +s/\xC3\x85\xC2\xBD/Ž/gs && $stat->{'Z'}++; +s/$junk\xC3\x82\xC2\xA0/Š/gs && $stat->{'S'}++; +s/$junk\xC3\x82\xC2\xA6/Š/gs && $stat->{'S C2A6'}++; +s/\xC3\x85\xC2\xA0/Š/gs && $stat->{'S C385C2A0'}++; + +s/$junk\xC2\xAB/"/gs && $stat->{'" open'}++; +s/$junk\xC2\xBB/"/gs && $stat->{'" close'}++; + +s/$junk\xC2\xBE/"/gs && $stat->{'"'}++; +s/$junk\xC2\x93/"/gs && $stat->{'"'}++; + +s/$junk\xC3\x82\xC2\xB2/"/gs && $stat->{'" C2B2'}++; + +s/$junk\xC2\x84\xC2\xA2/'/gs && $stat->{"'"}++; +s/$junk\xC3\x82\xC2\xB4/'/gs && $stat->{"' C2B4"}++; +s/$junk\xC3\x8B\xC2\x9C/'/gs && $stat->{"' C29C"}++; s/$junk\xC2\xAD/-/gs && $stat->{'-'}++; -s/$junk\xC2\x9C/-/gs && $stat->{'--'}++; +s/$junk\xC2\x80\xC2\x9C/-/gs && $stat->{'--'}++; s/$junk\xC2\x9D/-/gs && $stat->{'-- ?'}++; +s/$junk\xC3\x82\xC2\xA2/- /gs && $stat->{'dot'}++; + + my $e = $_; - if ( $e =~ m/([\xC0-\xC4][\x80-\xff]{4,8})/s ) { + if ( $e =~ m/([\xC0-\xC4][\x80-\xff]{3,99})/s ) { warn "XXX ", dump($e), "\n$e\n"; } print $e;