Sadahiro Tomoyuki wrote:
<snip>
I write Unicode::Collate::Locale (tentatively) for linguistic tailoring
of UCA. To use it, Unicode::Collate should search allkeys.txt
from any directories in @iNC (at present it searchs table files
only under the directory where it locates.)
So Unicode::Collate::Locale should require Unicode::Collate 0.40 or later,
which is not released yet, but a prerelease is available as shown below.
[tarball]
http://homepage1.nifty.com/nomenclator/perl/Unicode-Collate-Locale-0.01.tar.gz
[doc]
http://homepage1.nifty.com/nomenclator/perl/Unicode-Collate-Locale.html
Sorry, now tailoring of only few languages are implemented.
It may be enhanced sooner or later...
[prerelease] This will be released *after* Perl 5.8.4 (or its RC) will be
[out.
http://homepage1.nifty.com/nomenclator/perl/Unicode-Collate-0.40.tar.gz
Thank you and Jarkko for your replies.
I now realise that some per-language tailoring would be needed for sensible
results. Unicode::Collate::Locale seems like the kind of think I was
looking for, and any tailoring is better than none :)
Using the multi-lingual server scenario I was initially discussing, would
one of the following usages be correct (yes, it's just pseudocode and
exists in a world where no errors ever occur!):
1)
my %collators;
for ( $server_loop )
{
my $lang_tag = Server->requested_lang_tag;
my $collator = $collators{$lang_tag}
||= Unicode::Collate::Locale->new(locale => $lang_tag);
...
}
2)
my $prev_lang;
my $collator;
for ( $server_loop )
{
my $lang_tag = Server->requested_lang_tag;
unless ( $lang_tag eq $prev_lang )
{
$prev_lang = $lang;
$collator = Unicode::Collator::Locale->new(locale => $lang_tag);
}
...
}
Which would be the preferred way of handling this (or are both wrong)?
Again, thanks for your replies.
--
Rich
scriptyrich(_at_)yahoo(_dot_)co(_dot_)uk