diff options
Diffstat (limited to 'lib/utf8_heavy.pl')
-rw-r--r-- | lib/utf8_heavy.pl | 9 |
1 files changed, 8 insertions, 1 deletions
diff --git a/lib/utf8_heavy.pl b/lib/utf8_heavy.pl index 8649e9e07e..5637d12afa 100644 --- a/lib/utf8_heavy.pl +++ b/lib/utf8_heavy.pl @@ -26,7 +26,14 @@ sub SWASHNEW { while (($caller = caller($i)) eq __PACKAGE__) { $i++ } my $encoding = $enc{$caller} || "unicode"; (my $file = $type) =~ s!::!/!g; - $file =~ s#^(I[sn]|To)([A-Z].*)#$1/$2#; + if ($file =~ /^In(.+)/) { + defined %utf8::In || do "$encoding/In.pl"; + if (exists $utf8::In{$1}) { + $file = "$enconding/In/$utf8::In{$1}"; + } + } else { + $file =~ s#^(Is|To)([A-Z].*)#$1/$2#; + } $list ||= eval { $caller->$type(); } || do "$file.pl" || do "$encoding/$file.pl" |