diff options
author | Jarkko Hietaniemi <jhi@iki.fi> | 2001-04-28 17:18:26 +0000 |
---|---|---|
committer | Jarkko Hietaniemi <jhi@iki.fi> | 2001-04-28 17:18:26 +0000 |
commit | 9fdf68be0731526d7d18a86c19f0b68d4946728d (patch) | |
tree | 7721dfaffe4f678bff14354d99040e1636d5e49c /lib/utf8_heavy.pl | |
parent | 78be1e1a8879b539ff74d40f43ada67390ef7d6d (diff) | |
download | perl-9fdf68be0731526d7d18a86c19f0b68d4946728d.tar.gz |
Add a level of indirection to the implementation of \p{InFoo}
so that we don't have to have long filenames. (Nothing changes
in the user interface.) The indirection is defined in
the file lib/unicode/In.pl and it is handled in lib/utf8_heavy.pl.
Also rename some the character classes by removing '-' from
the classnames, and finally renamed Block.pl as Blocks.pl.
p4raw-id: //depot/perl@9897
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" |