In perl.git, the branch blead has been updated <http://perl5.git.perl.org/perl.git/commitdiff/cedc49d5f057bd8ce5f79eabf9e5117987388b01?hp=b1c96fce6c54beaec02dbeee42970beb56299347>
- Log ----------------------------------------------------------------- commit cedc49d5f057bd8ce5f79eabf9e5117987388b01 Author: Chris 'BinGOs' Williams <[email protected]> Date: Sat Dec 8 10:05:12 2012 +0000 Update Unicode-Collate to CPAN version 0.95 [DELTA] 0.95 Sat Dec 8 15:11:09 2012 - U::C::Locale newly supports locales: bs_Cyrl, ee. - updated to CLDR 21: uk. - updated to CLDR 22: th, to. - added loc_bscy.t, loc_ee.t in t. - modified tests: loc_th.t, loc_to.t, loc_uk.t in t. ----------------------------------------------------------------------- Summary of changes: MANIFEST | 3 + Porting/Maintainers.pl | 2 +- cpan/Unicode-Collate/Changes | 7 + cpan/Unicode-Collate/Collate.pm | 4 +- cpan/Unicode-Collate/Collate/Locale.pm | 179 +++++++++++++------------ cpan/Unicode-Collate/Collate/Locale/ee.pl | 36 +++++ cpan/Unicode-Collate/Collate/Locale/th.pl | 11 +- cpan/Unicode-Collate/Collate/Locale/to.pl | 102 +++++++------- cpan/Unicode-Collate/Collate/Locale/uk.pl | 4 +- cpan/Unicode-Collate/README | 2 +- cpan/Unicode-Collate/t/loc_bscy.t | 209 +++++++++++++++++++++++++++++ cpan/Unicode-Collate/t/loc_ee.t | 190 ++++++++++++++++++++++++++ cpan/Unicode-Collate/t/loc_sq.t | 2 +- cpan/Unicode-Collate/t/loc_th.t | 56 ++++++-- cpan/Unicode-Collate/t/loc_to.t | 159 ++++++++++------------ cpan/Unicode-Collate/t/loc_uk.t | 25 ++-- 16 files changed, 731 insertions(+), 260 deletions(-) create mode 100644 cpan/Unicode-Collate/Collate/Locale/ee.pl create mode 100644 cpan/Unicode-Collate/t/loc_bscy.t create mode 100644 cpan/Unicode-Collate/t/loc_ee.t diff --git a/MANIFEST b/MANIFEST index 032b1b6..49eede9 100644 --- a/MANIFEST +++ b/MANIFEST @@ -2727,6 +2727,7 @@ cpan/Unicode-Collate/Collate/Locale/cs.pl Unicode::Collate cpan/Unicode-Collate/Collate/Locale/cy.pl Unicode::Collate cpan/Unicode-Collate/Collate/Locale/da.pl Unicode::Collate cpan/Unicode-Collate/Collate/Locale/de_phone.pl Unicode::Collate +cpan/Unicode-Collate/Collate/Locale/ee.pl cpan/Unicode-Collate/Collate/Locale/eo.pl Unicode::Collate cpan/Unicode-Collate/Collate/Locale/es.pl Unicode::Collate cpan/Unicode-Collate/Collate/Locale/es_trad.pl Unicode::Collate @@ -2830,6 +2831,7 @@ cpan/Unicode-Collate/t/loc_az.t Unicode::Collate cpan/Unicode-Collate/t/loc_be.t Unicode::Collate cpan/Unicode-Collate/t/loc_bg.t Unicode::Collate cpan/Unicode-Collate/t/loc_bn.t Unicode::Collate +cpan/Unicode-Collate/t/loc_bscy.t cpan/Unicode-Collate/t/loc_bs.t Unicode::Collate cpan/Unicode-Collate/t/loc_ca.t Unicode::Collate cpan/Unicode-Collate/t/loc_cjkc.t Unicode::Collate @@ -2840,6 +2842,7 @@ cpan/Unicode-Collate/t/loc_cy.t Unicode::Collate cpan/Unicode-Collate/t/loc_da.t Unicode::Collate cpan/Unicode-Collate/t/loc_deph.t Unicode::Collate cpan/Unicode-Collate/t/loc_de.t Unicode::Collate +cpan/Unicode-Collate/t/loc_ee.t cpan/Unicode-Collate/t/loc_eo.t Unicode::Collate cpan/Unicode-Collate/t/loc_es.t Unicode::Collate cpan/Unicode-Collate/t/loc_estr.t Unicode::Collate diff --git a/Porting/Maintainers.pl b/Porting/Maintainers.pl index 7ca98be..9fffb42 100755 --- a/Porting/Maintainers.pl +++ b/Porting/Maintainers.pl @@ -2011,7 +2011,7 @@ use File::Glob qw(:case); 'Unicode::Collate' => { 'MAINTAINER' => 'sadahiro', - 'DISTRIBUTION' => 'SADAHIRO/Unicode-Collate-0.94.tar.gz', + 'DISTRIBUTION' => 'SADAHIRO/Unicode-Collate-0.95.tar.gz', 'FILES' => q[cpan/Unicode-Collate], 'EXCLUDED' => [ qr{N$}, diff --git a/cpan/Unicode-Collate/Changes b/cpan/Unicode-Collate/Changes index d3ededb..4eef252 100644 --- a/cpan/Unicode-Collate/Changes +++ b/cpan/Unicode-Collate/Changes @@ -1,5 +1,12 @@ Revision history for Perl module Unicode::Collate. +0.95 Sat Dec 8 15:11:09 2012 + - U::C::Locale newly supports locales: bs_Cyrl, ee. + - updated to CLDR 21: uk. + - updated to CLDR 22: th, to. + - added loc_bscy.t, loc_ee.t in t. + - modified tests: loc_th.t, loc_to.t, loc_uk.t in t. + 0.94 Fri Nov 23 18:45:53 2012 - U::C::Locale newly supports locale: zh__zhuyin. - added Unicode::Collate::CJK::Zhuyin for zh__zhuyin. diff --git a/cpan/Unicode-Collate/Collate.pm b/cpan/Unicode-Collate/Collate.pm index 2329f70..f3901ad 100644 --- a/cpan/Unicode-Collate/Collate.pm +++ b/cpan/Unicode-Collate/Collate.pm @@ -14,7 +14,7 @@ use File::Spec; no warnings 'utf8'; -our $VERSION = '0.94'; +our $VERSION = '0.95'; our $PACKAGE = __PACKAGE__; ### begin XS only ### @@ -1074,7 +1074,7 @@ If the revision (previously "tracking version") number of UCA is given, behavior of that revision is emulated on collating. If omitted, the return value of C<UCA_Version()> is used. -The following revisions are supported. The default is 24. +The following revisions are supported. The default is 26. UCA Unicode Standard DUCET (@version) ------------------------------------------------------- diff --git a/cpan/Unicode-Collate/Collate/Locale.pm b/cpan/Unicode-Collate/Collate/Locale.pm index 3b10d28..b7b3528 100644 --- a/cpan/Unicode-Collate/Collate/Locale.pm +++ b/cpan/Unicode-Collate/Collate/Locale.pm @@ -4,12 +4,12 @@ use strict; use Carp; use base qw(Unicode::Collate); -our $VERSION = '0.94'; +our $VERSION = '0.95'; my $PL_EXT = '.pl'; my %LocaleFile = map { ($_, $_) } qw( - af ar as az be bg bn ca cs cy da eo es et fa fi fil fo fr + af ar as az be bg bn ca cs cy da ee eo es et fa fi fil fo fr gu ha haw hi hr hu hy ig is ja kk kl kn ko kok ln lt lv mk ml mr mt nb nn nso om or pa pl ro ru sa se si sk sl sq sr sv ta te th tn to tr uk ur vi wae wo yo zh @@ -17,6 +17,7 @@ my %LocaleFile = map { ($_, $_) } qw( $LocaleFile{'default'} = ''; # aliases $LocaleFile{'bs'} = 'hr'; + $LocaleFile{'bs_Cyrl'} = 'sr'; $LocaleFile{'sr_Latn'} = 'hr'; # short file names $LocaleFile{'de__phonebook'} = 'de_phone'; @@ -122,91 +123,93 @@ __END__ MEMORANDA for developing -locale based CLDR +locale based CLDR ---------------------------------------------------------------------------- -af 2.0 = 1.8.1 -ar 2.0 -as 2.0 = 1.8.1 -az 2.0 = 1.8.1 (type="standard") -be 2.0 -bg 2.0 -bn 2.0.1 (type="standard") -bs 2.0 (alias source="hr") -ca 2.0 = 1.8.1 (alt="proposed" type="standard") -cs 2.0 = 1.8.1 (type="standard") -cy 2.0 = 1.8.1 -da 2.0 = 1.8.1 (type="standard") [modify aA to pass CLDR tests] -de__phonebook 2.0 (type="phonebook") -eo 2.0 = 1.8.1 -es 2.0 (type="standard") -es__traditional 2.0 = 1.8.1 (type="traditional") -et 2.0 = 1.8.1 -fa 2.0 = 1.8.1 -fi 2.0 = 1.8.1 (type="standard" alt="proposed") -fi__phonebook 2.0 = 1.8.1 (type="phonebook") -fil 2.0 (type="standard") = 1.8.1 -fo 2.0 = 1.8.1 (alt="proposed" type="standard") -fr 2.0 (fr_CA, backwards="on") -gu 2.0 (type="standard") -ha 2.0 -haw 2.0 = 1.8.1 -hi 2.0 (type="standard") -hr 2.0 (type="standard") -hu 2.0 = 1.8.1 (alt="proposed" type="standard") -hy 2.0 = 1.8.1 -ig 2.0 = 1.8.1 -is 2.0 = 1.8.1 (type="standard") -ja 22.1 = 2.0 = 1.8.1 (type="standard") -kk 2.0 -kl 2.0 = 1.8.1 (type="standard") -kn 2.0 (type="standard") -ko 22.1 = 2.0 = 1.8.1 (type="standard") -kok 2.0 = 1.8.1 -ln 2.0 (type="standard") = 1.8.1 -lt 2.0 -lv 2.0 (type="standard") = 1.8.1 -mk 2.0 -ml 2.0 -mr 2.0 = 1.8.1 -mt 2.0 -nb 2.0 (type="standard") -nn 2.0 (type="standard") -nso 2.0 = 1.8.1 -om 2.0 = 1.8.1 -or 2.0 -pa 2.0 = 1.8.1 -pl 2.0 = 1.8.1 -ro 2.0 (type="standard") -ru 2.0 -sa 1.8.1 (type="standard" alt="proposed") [currently in /seed] -se 2.0 = 1.8.1 (type="standard") -si 2.0 (type="standard") -si__dictionary 2.0 (type="dictionary") -sk 2.0 (type="standard") -sl 2.0 = 1.8.1 (type="standard" alt="proposed") -sq 2.0 = 1.8.1 (alt="proposed" type="standard") -sr 2.0 (type="standard") -sr_Latn 2.0 = 1.8.1 (alias source="hr") -sv 2.0 (type="standard") -sv__reformed 2.0 = 1.8.1 (type="reformed") -ta 2.0 -te 2.0 -th 2.0 (type="standard") -tn 2.0 = 1.8.1 -to 2.0 = 1.8.1 (type="standard" alt="proposed") -tr 2.0 = 1.8.1 (type="standard") -uk 2.0 -ur 2.0 -vi 2.0 = 1.8.1 -wae 2.0 -wo 1.8.1 [currently in /seed] -yo 2.0 = 1.8.1 -zh 22.1 = 2.0 = 1.8.1 (type="standard") -zh__big5han 22.1 = 2.0 = 1.8.1 (type="big5han") -zh__gb2312han 22.1 = 2.0 = 1.8.1 (type="gb2312han") -zh__pinyin 22.1 = 2.0 (type='pinyin' alt='short') -zh__stroke 22.1 = 2.0 = 1.9.1 (type='stroke' alt='short') -zh__zhuyin 22.1 = 22 (type='zhuyin' alt='short') +af 22.1 = 1.8.1 +ar 22.1 = 1.9.0 +as 22.1 = 1.8.1 +az 22.1 = 1.8.1 (type="standard") +be 22.1 = 1.9.0 +bg 22.1 = 1.9.0 +bn 22.1 = 2.0.1 (type="standard") +bs 22.1 = 1.9.0 (alias source="hr") +bs_Cyrl 22.1 = 22 (alias source="sr") +ca 22.1 = 1.8.1 (alt="proposed" type="standard") +cs 22.1 = 1.8.1 (type="standard") +cy 22.1 = 1.8.1 +da 22.1 = 1.8.1 (type="standard") [mod aA to pass CLDR test] +de__phonebook 22.1 = 2.0 (type="phonebook") +ee 22.1 = 22 +eo 22.1 = 1.8.1 +es 22.1 = 1.9.0 (type="standard") +es__traditional 22.1 = 1.8.1 (type="traditional") +et 22.1 = 1.8.1 +fa 22.1 = 1.8.1 +fi 22.1 = 1.8.1 (type="standard" alt="proposed") +fi__phonebook 22.1 = 1.8.1 (type="phonebook") +fil 22.1 = 1.9.0 (type="standard") = 1.8.1 +fo 22.1 = 1.8.1 (alt="proposed" type="standard") +fr 22.1 = 1.9.0 (fr_CA, backwards="on") +gu 22.1 = 1.9.0 (type="standard") +ha 22.1 = 1.9.0 +haw 22.1 = 1.8.1 +hi 22.1 = 1.9.0 (type="standard") +hr 22.1 = 1.9.0 (type="standard") +hu 22.1 = 1.8.1 (alt="proposed" type="standard") +hy 22.1 = 1.8.1 +ig 22.1 = 1.8.1 +is 22.1 = 1.8.1 (type="standard") +ja 22.1 = 1.8.1 (type="standard") +kk 22.1 = 1.9.0 +kl 22.1 = 1.8.1 (type="standard") +kn 22.1 = 1.9.0 (type="standard") +ko 22.1 = 1.8.1 (type="standard") +kok 22.1 = 1.8.1 +ln 22.1 = 2.0 (type="standard") = 1.8.1 +lt 22.1 = 1.9.0 +lv 22.1 = 1.9.0 (type="standard") = 1.8.1 +mk 22.1 = 1.9.0 +ml 22.1 = 1.9.0 +mr 22.1 = 1.8.1 +mt 22.1 = 1.9.0 +nb 22.1 = 2.0 (type="standard") +nn 22.1 = 2.0 (type="standard") +nso 22.1 = 1.8.1 +om 22.1 = 1.8.1 +or 22.1 = 1.9.0 +pa 22.1 = 1.8.1 +pl 22.1 = 1.8.1 +ro 22.1 = 1.9.0 (type="standard") +ru 22.1 = 1.9.0 +sa 1.9.1 = 1.8.1 (type="standard" alt="proposed") [now /seed] +se 22.1 = 1.8.1 (type="standard") +si 22.1 = 1.9.0 (type="standard") +si__dictionary 22.1 = 1.9.0 (type="dictionary") +sk 22.1 = 1.9.0 (type="standard") +sl 22.1 = 1.8.1 (type="standard" alt="proposed") +sq 22.1 = 1.8.1 (alt="proposed" type="standard") +sr 22.1 = 1.9.0 (type="standard") +sr_Latn 22.1 = 1.8.1 (alias source="hr") +sv 22.1 = 1.9.0 (type="standard") +sv__reformed 22.1 = 1.8.1 (type="reformed") +ta 22.1 = 1.9.0 +te 22.1 = 1.9.0 +th 22.1 = 22 +tn 22.1 = 1.8.1 +to 22.1 = 22 +tr 22.1 = 1.8.1 (type="standard") +uk 22.1 = 21 +ur 22.1 = 1.9.0 +vi 22.1 = 1.8.1 +wae 22.1 = 2.0 +wo 1.9.1 = 1.8.1 [now /seed] +yo 22.1 = 1.8.1 +zh 22.1 = 1.8.1 (type="standard") +zh__big5han 22.1 = 1.8.1 (type="big5han") +zh__gb2312han 22.1 = 1.8.1 (type="gb2312han") +zh__pinyin 22.1 = 2.0 (type='pinyin' alt='short') +zh__stroke 22.1 = 1.9.1 (type='stroke' alt='short') +zh__zhuyin 22.1 = 22 (type='zhuyin' alt='short') ---------------------------------------------------------------------------- =head1 NAME @@ -332,11 +335,13 @@ a combination of return values from C<getlocale> and C<locale_version>. bg Bulgarian bn Bengali bs Bosnian + bs_Cyrl Bosnian in Cyrillic (tailored as Serbian) ca Catalan cs Czech cy Welsh da Danish de__phonebook German (umlaut as 'ae', 'oe', 'ue') + ee Ewe eo Esperanto es Spanish es__traditional Spanish ('ch' and 'll' as a grapheme) @@ -428,7 +433,7 @@ zu (Zulu). B<Note> [1] ja: Ideographs are sorted in JIS X 0208 order. -Fullwidth and halfwidth forms are identical to their normal form. +Fullwidth and halfwidth forms are identical to their regular form. The difference between hiragana and katakana is at the 4th level, the comparison also requires C<(variable =E<gt> 'Non-ignorable')>, and then C<katakana_before_hiragana> has no effect. diff --git a/cpan/Unicode-Collate/Collate/Locale/ee.pl b/cpan/Unicode-Collate/Collate/Locale/ee.pl new file mode 100644 index 0000000..c593a26 --- /dev/null +++ b/cpan/Unicode-Collate/Collate/Locale/ee.pl @@ -0,0 +1,36 @@ ++{ + locale_version => 0.95, +# d-tail, open-e, f-hook, gamma, eng, open-o, v-hook don't require tailoring + entry => <<'ENTRY', # for DUCET v6.2.0 +0302 ; [.0000.0042.0002.0302] # COMBINING CIRCUMFLEX ACCENT +00E2 ; [.15EF.0020.0002.0061][.0000.0042.0002.0302] # LATIN SMALL LETTER A WITH CIRCUMFLEX +00C2 ; [.15EF.0020.0008.0041][.0000.0042.0002.0302] # LATIN CAPITAL LETTER A WITH CIRCUMFLEX +00EA ; [.164C.0020.0002.0065][.0000.0042.0002.0302] # LATIN SMALL LETTER E WITH CIRCUMFLEX +00CA ; [.164C.0020.0008.0045][.0000.0042.0002.0302] # LATIN CAPITAL LETTER E WITH CIRCUMFLEX +00EE ; [.16CD.0020.0002.0069][.0000.0042.0002.0302] # LATIN SMALL LETTER I WITH CIRCUMFLEX +00CE ; [.16CD.0020.0008.0049][.0000.0042.0002.0302] # LATIN CAPITAL LETTER I WITH CIRCUMFLEX +00F4 ; [.1771.0020.0002.006F][.0000.0042.0002.0302] # LATIN SMALL LETTER O WITH CIRCUMFLEX +00D4 ; [.1771.0020.0008.004F][.0000.0042.0002.0302] # LATIN CAPITAL LETTER O WITH CIRCUMFLEX +00FB ; [.1836.0020.0002.0075][.0000.0042.0002.0302] # LATIN SMALL LETTER U WITH CIRCUMFLEX +00DB ; [.1836.0020.0008.0055][.0000.0042.0002.0302] # LATIN CAPITAL LETTER U WITH CIRCUMFLEX +0177 ; [.1880.0020.0002.0079][.0000.0042.0002.0302] # LATIN SMALL LETTER Y WITH CIRCUMFLEX +0176 ; [.1880.0020.0008.0059][.0000.0042.0002.0302] # LATIN CAPITAL LETTER Y WITH CIRCUMFLEX +0064 007A ; [.1632.0020.0002.0064] # <LATIN SMALL LETTER D, LATIN SMALL LETTER Z> +0044 007A ; [.1632.0020.0007.0044] # <LATIN CAPITAL LETTER D, LATIN SMALL LETTER Z> +0044 005A ; [.1632.0020.0008.0044] # <LATIN CAPITAL LETTER D, LATIN CAPITAL LETTER Z> +0067 0062 ; [.1692.0020.0002.0067] # <LATIN SMALL LETTER G, LATIN SMALL LETTER B> +0047 0062 ; [.1692.0020.0007.0047] # <LATIN CAPITAL LETTER G, LATIN SMALL LETTER B> +0047 0042 ; [.1692.0020.0008.0047] # <LATIN CAPITAL LETTER G, LATIN CAPITAL LETTER B> +0078 ; [.16B5.0020.0002.0078] # LATIN SMALL LETTER X +0058 ; [.16B5.0020.0008.0058] # LATIN CAPITAL LETTER X +006B 0070 ; [.1700.0020.0002.006B] # <LATIN SMALL LETTER K, LATIN SMALL LETTER P> +004B 0070 ; [.1700.0020.0007.004B] # <LATIN CAPITAL LETTER K, LATIN SMALL LETTER P> +004B 0050 ; [.1700.0020.0008.004B] # <LATIN CAPITAL LETTER K, LATIN CAPITAL LETTER P> +006E 0079 ; [.1750.0020.0002.006E] # <LATIN SMALL LETTER N, LATIN SMALL LETTER Y> +004E 0079 ; [.1750.0020.0007.004E] # <LATIN CAPITAL LETTER N, LATIN SMALL LETTER Y> +004E 0059 ; [.1750.0020.0008.004E] # <LATIN CAPITAL LETTER N, LATIN CAPITAL LETTER Y> +0074 0073 ; [.1817.0020.0002.0074] # <LATIN SMALL LETTER T, LATIN SMALL LETTER S> +0054 0073 ; [.1817.0020.0007.0054] # <LATIN CAPITAL LETTER T, LATIN SMALL LETTER S> +0054 0053 ; [.1817.0020.0008.0054] # <LATIN CAPITAL LETTER T, LATIN CAPITAL LETTER S> +ENTRY +}; diff --git a/cpan/Unicode-Collate/Collate/Locale/th.pl b/cpan/Unicode-Collate/Collate/Locale/th.pl index 893166b..d83b6f1 100644 --- a/cpan/Unicode-Collate/Collate/Locale/th.pl +++ b/cpan/Unicode-Collate/Collate/Locale/th.pl @@ -1,8 +1,10 @@ +{ - locale_version => 0.93, + locale_version => 0.95, + variable => 'shifted', + alternate => 'shifted', entry => <<'ENTRY', # for DUCET v6.2.0 -0E2F ; [*03BC.0020.0002.0E2F][*FFF1.0000.0000.0000] # THAI CHARACTER PAIYANNOI -0E46 ; [*03BC.0020.0002.0E46][*FFF2.0000.0000.0000] # THAI CHARACTER MAIYAMOK +0E2F ; [*03BD.0020.0002.0E2F][*FFF1.0000.0000.0000] # THAI CHARACTER PAIYANNOI +0E46 ; [*03BF.0020.0002.0E46][*FFF1.0000.0000.0000] # THAI CHARACTER MAIYAMOK 0E4C ; [.0000.00FF.0002.0E4C] # THAI CHARACTER THANTHAKHAT 0E47 ; [.0000.0100.0002.0E47] # THAI CHARACTER MAITAIKHU 0E48 ; [.0000.0101.0002.0E48] # THAI CHARACTER MAI EK @@ -11,6 +13,9 @@ 0E4B ; [.0000.0104.0002.0E4B] # THAI CHARACTER MAI CHATTAWA 0E4D ; [.24B6.0020.0002.0E4D] # THAI CHARACTER NIKHAHIT 0E45 ; [.24B9.0020.0003.0E45] # THAI CHARACTER LAKKHANGYAO +0E4D 0E32 ; [.24B9.0020.0002.0E32][.24B6.0020.0003.0E4D] # THAI CHARACTER SARA AM +0E33 ; [.24B9.0020.0002.0E32][.24B6.0020.0004.0E33] # THAI CHARACTER SARA AM +0E45 0E4D ; [.24B6.0020.0002.0E4D][.24B9.0020.0004.0E45] # <THAI CHARACTER LAKKHANGYAO, THAI CHARACTER NIKHAHIT> 0E3A ; [.24C7.0020.0002.0E3A] # THAI CHARACTER PHINTHU ENTRY }; diff --git a/cpan/Unicode-Collate/Collate/Locale/to.pl b/cpan/Unicode-Collate/Collate/Locale/to.pl index c589544..df42141 100644 --- a/cpan/Unicode-Collate/Collate/Locale/to.pl +++ b/cpan/Unicode-Collate/Collate/Locale/to.pl @@ -1,5 +1,5 @@ +{ - locale_version => 0.93, + locale_version => 0.95, entry => <<'ENTRY', # for DUCET v6.2.0 006E 0067 ; [.1750.0020.0002.006E] # <LATIN SMALL LETTER N, LATIN SMALL LETTER G> 004E 0067 ; [.1750.0020.0007.004E] # <LATIN CAPITAL LETTER N, LATIN SMALL LETTER G> @@ -8,55 +8,55 @@ 014A ; [.1750.0020.001D.014A] # LATIN CAPITAL LETTER ENG 02BB ; [.1896.0020.0002.02BB] # MODIFIER LETTER TURNED COMMA 02BD ; [.1896.0020.0003.02BD] # MODIFIER LETTER REVERSED COMMA -0101 ; [.15EF.0021.0002.0101] # LATIN SMALL LETTER A WITH MACRON -0061 0304 ; [.15EF.0021.0002.0101] # LATIN SMALL LETTER A WITH MACRON -00E1 ; [.15EF.0021.0003.00E1] # LATIN SMALL LETTER A WITH ACUTE -0061 0301 ; [.15EF.0021.0003.00E1] # LATIN SMALL LETTER A WITH ACUTE -0061 0341 ; [.15EF.0021.0003.00E1] # LATIN SMALL LETTER A WITH ACUTE -0100 ; [.15EF.0021.0008.0100] # LATIN CAPITAL LETTER A WITH MACRON -0041 0304 ; [.15EF.0021.0008.0100] # LATIN CAPITAL LETTER A WITH MACRON -00C1 ; [.15EF.0021.0009.00C1] # LATIN CAPITAL LETTER A WITH ACUTE -0041 0301 ; [.15EF.0021.0009.00C1] # LATIN CAPITAL LETTER A WITH ACUTE -0041 0341 ; [.15EF.0021.0009.00C1] # LATIN CAPITAL LETTER A WITH ACUTE -0113 ; [.164C.0021.0002.0113] # LATIN SMALL LETTER E WITH MACRON -0065 0304 ; [.164C.0021.0002.0113] # LATIN SMALL LETTER E WITH MACRON -00E9 ; [.164C.0021.0003.00E9] # LATIN SMALL LETTER E WITH ACUTE -0065 0301 ; [.164C.0021.0003.00E9] # LATIN SMALL LETTER E WITH ACUTE -0065 0341 ; [.164C.0021.0003.00E9] # LATIN SMALL LETTER E WITH ACUTE -0112 ; [.164C.0021.0008.0112] # LATIN CAPITAL LETTER E WITH MACRON -0045 0304 ; [.164C.0021.0008.0112] # LATIN CAPITAL LETTER E WITH MACRON -00C9 ; [.164C.0021.0009.00C9] # LATIN CAPITAL LETTER E WITH ACUTE -0045 0301 ; [.164C.0021.0009.00C9] # LATIN CAPITAL LETTER E WITH ACUTE -0045 0341 ; [.164C.0021.0009.00C9] # LATIN CAPITAL LETTER E WITH ACUTE -012B ; [.16CD.0021.0002.012B] # LATIN SMALL LETTER I WITH MACRON -0069 0304 ; [.16CD.0021.0002.012B] # LATIN SMALL LETTER I WITH MACRON -00ED ; [.16CD.0021.0003.00ED] # LATIN SMALL LETTER I WITH ACUTE -0069 0301 ; [.16CD.0021.0003.00ED] # LATIN SMALL LETTER I WITH ACUTE -0069 0341 ; [.16CD.0021.0003.00ED] # LATIN SMALL LETTER I WITH ACUTE -012A ; [.16CD.0021.0008.012A] # LATIN CAPITAL LETTER I WITH MACRON -0049 0304 ; [.16CD.0021.0008.012A] # LATIN CAPITAL LETTER I WITH MACRON -00CD ; [.16CD.0021.0009.00CD] # LATIN CAPITAL LETTER I WITH ACUTE -0049 0301 ; [.16CD.0021.0009.00CD] # LATIN CAPITAL LETTER I WITH ACUTE -0049 0341 ; [.16CD.0021.0009.00CD] # LATIN CAPITAL LETTER I WITH ACUTE -014D ; [.1771.0021.0002.014D] # LATIN SMALL LETTER O WITH MACRON -006F 0304 ; [.1771.0021.0002.014D] # LATIN SMALL LETTER O WITH MACRON -00F3 ; [.1771.0021.0003.00F3] # LATIN SMALL LETTER O WITH ACUTE -006F 0301 ; [.1771.0021.0003.00F3] # LATIN SMALL LETTER O WITH ACUTE -006F 0341 ; [.1771.0021.0003.00F3] # LATIN SMALL LETTER O WITH ACUTE -014C ; [.1771.0021.0008.014C] # LATIN CAPITAL LETTER O WITH MACRON -004F 0304 ; [.1771.0021.0008.014C] # LATIN CAPITAL LETTER O WITH MACRON -00D3 ; [.1771.0021.0009.00D3] # LATIN CAPITAL LETTER O WITH ACUTE -004F 0301 ; [.1771.0021.0009.00D3] # LATIN CAPITAL LETTER O WITH ACUTE -004F 0341 ; [.1771.0021.0009.00D3] # LATIN CAPITAL LETTER O WITH ACUTE -016B ; [.1836.0021.0002.016B] # LATIN SMALL LETTER U WITH MACRON -0075 0304 ; [.1836.0021.0002.016B] # LATIN SMALL LETTER U WITH MACRON -00FA ; [.1836.0021.0003.00FA] # LATIN SMALL LETTER U WITH ACUTE -0075 0301 ; [.1836.0021.0003.00FA] # LATIN SMALL LETTER U WITH ACUTE -0075 0341 ; [.1836.0021.0003.00FA] # LATIN SMALL LETTER U WITH ACUTE -016A ; [.1836.0021.0008.016A] # LATIN CAPITAL LETTER U WITH MACRON -0055 0304 ; [.1836.0021.0008.016A] # LATIN CAPITAL LETTER U WITH MACRON -00DA ; [.1836.0021.0009.00DA] # LATIN CAPITAL LETTER U WITH ACUTE -0055 0301 ; [.1836.0021.0009.00DA] # LATIN CAPITAL LETTER U WITH ACUTE -0055 0341 ; [.1836.0021.0009.00DA] # LATIN CAPITAL LETTER U WITH ACUTE +00E1 ; [.15EF.0021.0002.00E1] # LATIN SMALL LETTER A WITH ACUTE +0061 0301 ; [.15EF.0021.0002.00E1] # LATIN SMALL LETTER A WITH ACUTE +0061 0341 ; [.15EF.0021.0002.00E1] # LATIN SMALL LETTER A WITH ACUTE +00C1 ; [.15EF.0021.0008.00C1] # LATIN CAPITAL LETTER A WITH ACUTE +0041 0301 ; [.15EF.0021.0008.00C1] # LATIN CAPITAL LETTER A WITH ACUTE +0041 0341 ; [.15EF.0021.0008.00C1] # LATIN CAPITAL LETTER A WITH ACUTE +0101 ; [.15EF.0022.0002.0101] # LATIN SMALL LETTER A WITH MACRON +0061 0304 ; [.15EF.0022.0002.0101] # LATIN SMALL LETTER A WITH MACRON +0100 ; [.15EF.0022.0008.0100] # LATIN CAPITAL LETTER A WITH MACRON +0041 0304 ; [.15EF.0022.0008.0100] # LATIN CAPITAL LETTER A WITH MACRON +00E9 ; [.164C.0021.0002.00E9] # LATIN SMALL LETTER E WITH ACUTE +0065 0301 ; [.164C.0021.0002.00E9] # LATIN SMALL LETTER E WITH ACUTE +0065 0341 ; [.164C.0021.0002.00E9] # LATIN SMALL LETTER E WITH ACUTE +00C9 ; [.164C.0021.0008.00C9] # LATIN CAPITAL LETTER E WITH ACUTE +0045 0301 ; [.164C.0021.0008.00C9] # LATIN CAPITAL LETTER E WITH ACUTE +0045 0341 ; [.164C.0021.0008.00C9] # LATIN CAPITAL LETTER E WITH ACUTE +0113 ; [.164C.0022.0002.0113] # LATIN SMALL LETTER E WITH MACRON +0065 0304 ; [.164C.0022.0002.0113] # LATIN SMALL LETTER E WITH MACRON +0112 ; [.164C.0022.0008.0112] # LATIN CAPITAL LETTER E WITH MACRON +0045 0304 ; [.164C.0022.0008.0112] # LATIN CAPITAL LETTER E WITH MACRON +00ED ; [.16CD.0021.0002.00ED] # LATIN SMALL LETTER I WITH ACUTE +0069 0301 ; [.16CD.0021.0002.00ED] # LATIN SMALL LETTER I WITH ACUTE +0069 0341 ; [.16CD.0021.0002.00ED] # LATIN SMALL LETTER I WITH ACUTE +00CD ; [.16CD.0021.0008.00CD] # LATIN CAPITAL LETTER I WITH ACUTE +0049 0301 ; [.16CD.0021.0008.00CD] # LATIN CAPITAL LETTER I WITH ACUTE +0049 0341 ; [.16CD.0021.0008.00CD] # LATIN CAPITAL LETTER I WITH ACUTE +012B ; [.16CD.0022.0002.012B] # LATIN SMALL LETTER I WITH MACRON +0069 0304 ; [.16CD.0022.0002.012B] # LATIN SMALL LETTER I WITH MACRON +012A ; [.16CD.0022.0008.012A] # LATIN CAPITAL LETTER I WITH MACRON +0049 0304 ; [.16CD.0022.0008.012A] # LATIN CAPITAL LETTER I WITH MACRON +00F3 ; [.1771.0021.0002.00F3] # LATIN SMALL LETTER O WITH ACUTE +006F 0301 ; [.1771.0021.0002.00F3] # LATIN SMALL LETTER O WITH ACUTE +006F 0341 ; [.1771.0021.0002.00F3] # LATIN SMALL LETTER O WITH ACUTE +00D3 ; [.1771.0021.0008.00D3] # LATIN CAPITAL LETTER O WITH ACUTE +004F 0301 ; [.1771.0021.0008.00D3] # LATIN CAPITAL LETTER O WITH ACUTE +004F 0341 ; [.1771.0021.0008.00D3] # LATIN CAPITAL LETTER O WITH ACUTE +014D ; [.1771.0022.0002.014D] # LATIN SMALL LETTER O WITH MACRON +006F 0304 ; [.1771.0022.0002.014D] # LATIN SMALL LETTER O WITH MACRON +014C ; [.1771.0022.0008.014C] # LATIN CAPITAL LETTER O WITH MACRON +004F 0304 ; [.1771.0022.0008.014C] # LATIN CAPITAL LETTER O WITH MACRON +00FA ; [.1836.0021.0002.00FA] # LATIN SMALL LETTER U WITH ACUTE +0075 0301 ; [.1836.0021.0002.00FA] # LATIN SMALL LETTER U WITH ACUTE +0075 0341 ; [.1836.0021.0002.00FA] # LATIN SMALL LETTER U WITH ACUTE +00DA ; [.1836.0021.0008.00DA] # LATIN CAPITAL LETTER U WITH ACUTE +0055 0301 ; [.1836.0021.0008.00DA] # LATIN CAPITAL LETTER U WITH ACUTE +0055 0341 ; [.1836.0021.0008.00DA] # LATIN CAPITAL LETTER U WITH ACUTE +016B ; [.1836.0022.0002.016B] # LATIN SMALL LETTER U WITH MACRON +0075 0304 ; [.1836.0022.0002.016B] # LATIN SMALL LETTER U WITH MACRON +016A ; [.1836.0022.0008.016A] # LATIN CAPITAL LETTER U WITH MACRON +0055 0304 ; [.1836.0022.0008.016A] # LATIN CAPITAL LETTER U WITH MACRON ENTRY }; diff --git a/cpan/Unicode-Collate/Collate/Locale/uk.pl b/cpan/Unicode-Collate/Collate/Locale/uk.pl index 8bb0db1..e3bd16f 100644 --- a/cpan/Unicode-Collate/Collate/Locale/uk.pl +++ b/cpan/Unicode-Collate/Collate/Locale/uk.pl @@ -1,5 +1,5 @@ +{ - locale_version => 0.93, + locale_version => 0.95, suppress => [0x0410, 0x0430, 0x04D8, 0x04D9, 0x0413, 0x0433, 0x0415, 0x0435, 0x0416, 0x0436, 0x0417, 0x0437, 0x041E, 0x043E, 0x04E8, 0x04E9, 0x041A, 0x043A, 0x0423, 0x0443, 0x0427, 0x0447, 0x042B, 0x044B, @@ -7,8 +7,6 @@ entry => <<'ENTRY', # for DUCET v6.2.0 0491 ; [.19B2.0020.0002.0491] # CYRILLIC SMALL LETTER GHE WITH UPTURN 0490 ; [.19B2.0020.0008.0490] # CYRILLIC CAPITAL LETTER GHE WITH UPTURN -044C ; [.1B63.0020.0002.044C] # CYRILLIC SMALL LETTER SOFT SIGN -042C ; [.1B63.0020.0008.042C] # CYRILLIC CAPITAL LETTER SOFT SIGN 04D1 ; [.1991.0020.0002.0430][.0000.0037.0002.0306] # CYRILLIC SMALL LETTER A WITH BREVE 04D0 ; [.1991.0020.0008.0410][.0000.0037.0002.0306] # CYRILLIC CAPITAL LETTER A WITH BREVE 04D3 ; [.1991.0020.0002.0430][.0000.0047.0002.0308] # CYRILLIC SMALL LETTER A WITH DIAERESIS diff --git a/cpan/Unicode-Collate/README b/cpan/Unicode-Collate/README index 7032e5a..5b257a8 100644 --- a/cpan/Unicode-Collate/README +++ b/cpan/Unicode-Collate/README @@ -1,4 +1,4 @@ -Unicode/Collate version 0.94 +Unicode/Collate version 0.95 =============================== NAME diff --git a/cpan/Unicode-Collate/t/loc_bscy.t b/cpan/Unicode-Collate/t/loc_bscy.t new file mode 100644 index 0000000..b2283dd --- /dev/null +++ b/cpan/Unicode-Collate/t/loc_bscy.t @@ -0,0 +1,209 @@ + +BEGIN { + unless ("A" eq pack('U', 0x41)) { + print "1..0 # Unicode::Collate " . + "cannot stringify a Unicode code point\n"; + exit 0; + } + if ($ENV{PERL_CORE}) { + chdir('t') if -d 't'; + @INC = $^O eq 'MacOS' ? qw(::lib) : qw(../lib); + } +} + +use strict; +use warnings; +BEGIN { $| = 1; print "1..210\n"; } +my $count = 0; +sub ok ($;$) { + my $p = my $r = shift; + if (@_) { + my $x = shift; + $p = !defined $x ? !defined $r : !defined $r ? 0 : $r eq $x; + } + print $p ? "ok" : "not ok", ' ', ++$count, "\n"; +} + +use Unicode::Collate::Locale; + +ok(1); + +######################### + +my $objBsCyrl = Unicode::Collate::Locale-> + new(locale => 'BS-CYRL', normalization => undef); + +ok($objBsCyrl->getlocale, 'bs_Cyrl'); + +$objBsCyrl->change(level => 1); + +ok($objBsCyrl->eq("\x{4D1}", "\x{430}")); +ok($objBsCyrl->eq("\x{4D0}", "\x{410}")); +ok($objBsCyrl->eq("\x{4D3}", "\x{430}")); +ok($objBsCyrl->eq("\x{4D2}", "\x{410}")); +ok($objBsCyrl->eq("\x{4DB}", "\x{4D9}")); +ok($objBsCyrl->eq("\x{4DA}", "\x{4D8}")); +ok($objBsCyrl->eq("\x{453}", "\x{433}")); +ok($objBsCyrl->eq("\x{403}", "\x{413}")); +ok($objBsCyrl->eq("\x{450}", "\x{435}")); # not contraction +ok($objBsCyrl->eq("\x{400}", "\x{415}")); # not contraction +ok($objBsCyrl->eq("\x{451}", "\x{435}")); # not contraction +ok($objBsCyrl->eq("\x{401}", "\x{415}")); # not contraction +ok($objBsCyrl->eq("\x{4D7}", "\x{435}")); +ok($objBsCyrl->eq("\x{4D6}", "\x{415}")); +ok($objBsCyrl->eq("\x{4C2}", "\x{436}")); # not contraction +ok($objBsCyrl->eq("\x{4C1}", "\x{416}")); # not contraction +ok($objBsCyrl->eq("\x{4DD}", "\x{436}")); +ok($objBsCyrl->eq("\x{4DC}", "\x{416}")); +ok($objBsCyrl->eq("\x{4DF}", "\x{437}")); +ok($objBsCyrl->eq("\x{4DE}", "\x{417}")); +ok($objBsCyrl->eq("\x{45D}", "\x{438}")); # not contraction +ok($objBsCyrl->eq("\x{40D}", "\x{418}")); # not contraction +ok($objBsCyrl->eq("\x{4E3}", "\x{438}")); # not contraction +ok($objBsCyrl->eq("\x{4E2}", "\x{418}")); # not contraction +ok($objBsCyrl->eq("\x{4E5}", "\x{438}")); +ok($objBsCyrl->eq("\x{4E4}", "\x{418}")); +ok($objBsCyrl->eq("\x{457}", "\x{456}")); +ok($objBsCyrl->eq("\x{407}", "\x{406}")); +ok($objBsCyrl->eq("\x{439}", "\x{438}")); +ok($objBsCyrl->eq("\x{419}", "\x{418}")); +ok($objBsCyrl->eq("\x{4E7}", "\x{43E}")); +ok($objBsCyrl->eq("\x{4E6}", "\x{41E}")); +ok($objBsCyrl->eq("\x{4EB}", "\x{4E9}")); +ok($objBsCyrl->eq("\x{4EA}", "\x{4E8}")); +ok($objBsCyrl->eq("\x{45C}", "\x{43A}")); +ok($objBsCyrl->eq("\x{40C}", "\x{41A}")); +ok($objBsCyrl->eq("\x{4EF}", "\x{443}")); # not contraction +ok($objBsCyrl->eq("\x{4EE}", "\x{423}")); # not contraction +ok($objBsCyrl->eq("\x{45E}", "\x{443}")); +ok($objBsCyrl->eq("\x{40E}", "\x{423}")); +ok($objBsCyrl->eq("\x{4F1}", "\x{443}")); +ok($objBsCyrl->eq("\x{4F0}", "\x{423}")); +ok($objBsCyrl->eq("\x{4F3}", "\x{443}")); +ok($objBsCyrl->eq("\x{4F2}", "\x{423}")); +ok($objBsCyrl->eq("\x{4F5}", "\x{447}")); +ok($objBsCyrl->eq("\x{4F4}", "\x{427}")); +ok($objBsCyrl->eq("\x{4F9}", "\x{44B}")); +ok($objBsCyrl->eq("\x{4F8}", "\x{42B}")); +ok($objBsCyrl->eq("\x{4ED}", "\x{44D}")); +ok($objBsCyrl->eq("\x{4EC}", "\x{42D}")); +ok($objBsCyrl->eq("\x{477}", "\x{475}")); +ok($objBsCyrl->eq("\x{476}", "\x{474}")); + +# 54 + +$objBsCyrl->change(level => 2); + +ok($objBsCyrl->gt("\x{4D1}", "\x{430}")); +ok($objBsCyrl->gt("\x{4D0}", "\x{410}")); +ok($objBsCyrl->gt("\x{4D3}", "\x{430}")); +ok($objBsCyrl->gt("\x{4D2}", "\x{410}")); +ok($objBsCyrl->gt("\x{4DB}", "\x{4D9}")); +ok($objBsCyrl->gt("\x{4DA}", "\x{4D8}")); +ok($objBsCyrl->gt("\x{453}", "\x{433}")); +ok($objBsCyrl->gt("\x{403}", "\x{413}")); +ok($objBsCyrl->gt("\x{450}", "\x{435}")); # not contraction +ok($objBsCyrl->gt("\x{400}", "\x{415}")); # not contraction +ok($objBsCyrl->gt("\x{451}", "\x{435}")); # not contraction +ok($objBsCyrl->gt("\x{401}", "\x{415}")); # not contraction +ok($objBsCyrl->gt("\x{4D7}", "\x{435}")); +ok($objBsCyrl->gt("\x{4D6}", "\x{415}")); +ok($objBsCyrl->gt("\x{4C2}", "\x{436}")); # not contraction +ok($objBsCyrl->gt("\x{4C1}", "\x{416}")); # not contraction +ok($objBsCyrl->gt("\x{4DD}", "\x{436}")); +ok($objBsCyrl->gt("\x{4DC}", "\x{416}")); +ok($objBsCyrl->gt("\x{4DF}", "\x{437}")); +ok($objBsCyrl->gt("\x{4DE}", "\x{417}")); +ok($objBsCyrl->gt("\x{45D}", "\x{438}")); # not contraction +ok($objBsCyrl->gt("\x{40D}", "\x{418}")); # not contraction +ok($objBsCyrl->gt("\x{4E3}", "\x{438}")); # not contraction +ok($objBsCyrl->gt("\x{4E2}", "\x{418}")); # not contraction +ok($objBsCyrl->gt("\x{4E5}", "\x{438}")); +ok($objBsCyrl->gt("\x{4E4}", "\x{418}")); +ok($objBsCyrl->gt("\x{457}", "\x{456}")); +ok($objBsCyrl->gt("\x{407}", "\x{406}")); +ok($objBsCyrl->gt("\x{439}", "\x{438}")); +ok($objBsCyrl->gt("\x{419}", "\x{418}")); +ok($objBsCyrl->gt("\x{4E7}", "\x{43E}")); +ok($objBsCyrl->gt("\x{4E6}", "\x{41E}")); +ok($objBsCyrl->gt("\x{4EB}", "\x{4E9}")); +ok($objBsCyrl->gt("\x{4EA}", "\x{4E8}")); +ok($objBsCyrl->gt("\x{45C}", "\x{43A}")); +ok($objBsCyrl->gt("\x{40C}", "\x{41A}")); +ok($objBsCyrl->gt("\x{4EF}", "\x{443}")); # not contraction +ok($objBsCyrl->gt("\x{4EE}", "\x{423}")); # not contraction +ok($objBsCyrl->gt("\x{45E}", "\x{443}")); +ok($objBsCyrl->gt("\x{40E}", "\x{423}")); +ok($objBsCyrl->gt("\x{4F1}", "\x{443}")); +ok($objBsCyrl->gt("\x{4F0}", "\x{423}")); +ok($objBsCyrl->gt("\x{4F3}", "\x{443}")); +ok($objBsCyrl->gt("\x{4F2}", "\x{423}")); +ok($objBsCyrl->gt("\x{4F5}", "\x{447}")); +ok($objBsCyrl->gt("\x{4F4}", "\x{427}")); +ok($objBsCyrl->gt("\x{4F9}", "\x{44B}")); +ok($objBsCyrl->gt("\x{4F8}", "\x{42B}")); +ok($objBsCyrl->gt("\x{4ED}", "\x{44D}")); +ok($objBsCyrl->gt("\x{4EC}", "\x{42D}")); +ok($objBsCyrl->gt("\x{477}", "\x{475}")); +ok($objBsCyrl->gt("\x{476}", "\x{474}")); + +# 106 + +$objBsCyrl->change(level => 3); + +for my $i ("", "\0") { + ok($objBsCyrl->eq("\x{4D1}", "\x{430}$i\x{306}")); + ok($objBsCyrl->eq("\x{4D0}", "\x{410}$i\x{306}")); + ok($objBsCyrl->eq("\x{4D3}", "\x{430}$i\x{308}")); + ok($objBsCyrl->eq("\x{4D2}", "\x{410}$i\x{308}")); + ok($objBsCyrl->eq("\x{4DB}", "\x{4D9}$i\x{308}")); + ok($objBsCyrl->eq("\x{4DA}", "\x{4D8}$i\x{308}")); + ok($objBsCyrl->eq("\x{453}", "\x{433}$i\x{301}")); + ok($objBsCyrl->eq("\x{403}", "\x{413}$i\x{301}")); + ok($objBsCyrl->eq("\x{450}", "\x{435}$i\x{300}")); # not contraction + ok($objBsCyrl->eq("\x{400}", "\x{415}$i\x{300}")); # not contraction + ok($objBsCyrl->eq("\x{451}", "\x{435}$i\x{308}")); # not contraction + ok($objBsCyrl->eq("\x{401}", "\x{415}$i\x{308}")); # not contraction + ok($objBsCyrl->eq("\x{4D7}", "\x{435}$i\x{306}")); + ok($objBsCyrl->eq("\x{4D6}", "\x{415}$i\x{306}")); + ok($objBsCyrl->eq("\x{4C2}", "\x{436}$i\x{306}")); # not contraction + ok($objBsCyrl->eq("\x{4C1}", "\x{416}$i\x{306}")); # not contraction + ok($objBsCyrl->eq("\x{4DD}", "\x{436}$i\x{308}")); + ok($objBsCyrl->eq("\x{4DC}", "\x{416}$i\x{308}")); + ok($objBsCyrl->eq("\x{4DF}", "\x{437}$i\x{308}")); + ok($objBsCyrl->eq("\x{4DE}", "\x{417}$i\x{308}")); + ok($objBsCyrl->eq("\x{45D}", "\x{438}$i\x{300}")); # not contraction + ok($objBsCyrl->eq("\x{40D}", "\x{418}$i\x{300}")); # not contraction + ok($objBsCyrl->eq("\x{4E3}", "\x{438}$i\x{304}")); # not contraction + ok($objBsCyrl->eq("\x{4E2}", "\x{418}$i\x{304}")); # not contraction + ok($objBsCyrl->eq("\x{4E5}", "\x{438}$i\x{308}")); + ok($objBsCyrl->eq("\x{4E4}", "\x{418}$i\x{308}")); + ok($objBsCyrl->eq("\x{457}", "\x{456}$i\x{308}")); + ok($objBsCyrl->eq("\x{407}", "\x{406}$i\x{308}")); + ok($objBsCyrl->eq("\x{439}", "\x{438}$i\x{306}")); + ok($objBsCyrl->eq("\x{419}", "\x{418}$i\x{306}")); + ok($objBsCyrl->eq("\x{4E7}", "\x{43E}$i\x{308}")); + ok($objBsCyrl->eq("\x{4E6}", "\x{41E}$i\x{308}")); + ok($objBsCyrl->eq("\x{4EB}", "\x{4E9}$i\x{308}")); + ok($objBsCyrl->eq("\x{4EA}", "\x{4E8}$i\x{308}")); + ok($objBsCyrl->eq("\x{45C}", "\x{43A}$i\x{301}")); + ok($objBsCyrl->eq("\x{40C}", "\x{41A}$i\x{301}")); + ok($objBsCyrl->eq("\x{4EF}", "\x{443}$i\x{304}")); # not contraction + ok($objBsCyrl->eq("\x{4EE}", "\x{423}$i\x{304}")); # not contraction + ok($objBsCyrl->eq("\x{45E}", "\x{443}$i\x{306}")); + ok($objBsCyrl->eq("\x{40E}", "\x{423}$i\x{306}")); + ok($objBsCyrl->eq("\x{4F1}", "\x{443}$i\x{308}")); + ok($objBsCyrl->eq("\x{4F0}", "\x{423}$i\x{308}")); + ok($objBsCyrl->eq("\x{4F3}", "\x{443}$i\x{30B}")); + ok($objBsCyrl->eq("\x{4F2}", "\x{423}$i\x{30B}")); + ok($objBsCyrl->eq("\x{4F5}", "\x{447}$i\x{308}")); + ok($objBsCyrl->eq("\x{4F4}", "\x{427}$i\x{308}")); + ok($objBsCyrl->eq("\x{4F9}", "\x{44B}$i\x{308}")); + ok($objBsCyrl->eq("\x{4F8}", "\x{42B}$i\x{308}")); + ok($objBsCyrl->eq("\x{4ED}", "\x{44D}$i\x{308}")); + ok($objBsCyrl->eq("\x{4EC}", "\x{42D}$i\x{308}")); + ok($objBsCyrl->eq("\x{477}", "\x{475}$i\x{30F}")); + ok($objBsCyrl->eq("\x{476}", "\x{474}$i\x{30F}")); +} + +# 210 diff --git a/cpan/Unicode-Collate/t/loc_ee.t b/cpan/Unicode-Collate/t/loc_ee.t new file mode 100644 index 0000000..3b0ea27 --- /dev/null +++ b/cpan/Unicode-Collate/t/loc_ee.t @@ -0,0 +1,190 @@ + +BEGIN { + unless ("A" eq pack('U', 0x41)) { + print "1..0 # Unicode::Collate " . + "cannot stringify a Unicode code point\n"; + exit 0; + } + if ($ENV{PERL_CORE}) { + chdir('t') if -d 't'; + @INC = $^O eq 'MacOS' ? qw(::lib) : qw(../lib); + } +} + +use strict; +use warnings; +BEGIN { $| = 1; print "1..120\n"; } +my $count = 0; +sub ok ($;$) { + my $p = my $r = shift; + if (@_) { + my $x = shift; + $p = !defined $x ? !defined $r : !defined $r ? 0 : $r eq $x; + } + print $p ? "ok" : "not ok", ' ', ++$count, "\n"; +} + +use Unicode::Collate::Locale; + +ok(1); + +######################### + +my $objEe = Unicode::Collate::Locale-> + new(locale => 'EE', normalization => undef); + +ok($objEe->getlocale, 'ee'); + +# 2 + +$objEe->change(level => 1); + +ok($objEe->lt("d", "d\x{292}")); +ok($objEe->gt("dz","d\x{292}")); +ok($objEe->lt("dz","\x{256}")); +ok($objEe->gt("e", "\x{256}")); +ok($objEe->lt("e", "\x{25B}")); +ok($objEe->gt("f", "\x{25B}")); +ok($objEe->lt("f", "\x{192}")); +ok($objEe->gt("g", "\x{192}")); + +ok($objEe->lt("gz","gb")); +ok($objEe->lt("gb","\x{263}")); +ok($objEe->gt("h", "\x{263}")); +ok($objEe->lt("h", "hz")); +ok($objEe->lt("hz","x")); +ok($objEe->lt("x", "i")); + +# 16 + +ok($objEe->lt("kz","kp")); +ok($objEe->lt("kp","l")); +ok($objEe->lt("nz","ny")); +ok($objEe->lt("ny","\x{14B}")); +ok($objEe->gt("o", "\x{14B}")); +ok($objEe->lt("o", "\x{254}")); +ok($objEe->gt("p", "\x{254}")); + +ok($objEe->lt("tz","ts")); +ok($objEe->lt("ts","u")); +ok($objEe->lt("u", "v")); +ok($objEe->lt("v", "\x{28B}")); +ok($objEe->gt("w", "\x{28B}")); + +# 28 + +ok($objEe->eq("\x{302}", "\x{30C}")); +ok($objEe->eq("a\x{302}", "a\x{30C}")); +ok($objEe->eq("A\x{302}", "A\x{30C}")); +ok($objEe->eq("e\x{302}", "e\x{30C}")); +ok($objEe->eq("E\x{302}", "E\x{30C}")); +ok($objEe->eq("i\x{302}", "i\x{30C}")); +ok($objEe->eq("I\x{302}", "I\x{30C}")); +ok($objEe->eq("o\x{302}", "o\x{30C}")); +ok($objEe->eq("O\x{302}", "O\x{30C}")); +ok($objEe->eq("u\x{302}", "u\x{30C}")); +ok($objEe->eq("U\x{302}", "U\x{30C}")); +ok($objEe->eq("y\x{302}", "y\x{30C}")); +ok($objEe->eq("Y\x{302}", "Y\x{30C}")); + +# 41 + +$objEe->change(level => 2); + +ok($objEe->gt("\x{302}", "\x{30C}")); +ok($objEe->gt("a\x{302}", "a\x{30C}")); +ok($objEe->gt("A\x{302}", "A\x{30C}")); +ok($objEe->gt("e\x{302}", "e\x{30C}")); +ok($objEe->gt("E\x{302}", "E\x{30C}")); +ok($objEe->gt("i\x{302}", "i\x{30C}")); +ok($objEe->gt("I\x{302}", "I\x{30C}")); +ok($objEe->gt("o\x{302}", "o\x{30C}")); +ok($objEe->gt("O\x{302}", "O\x{30C}")); +ok($objEe->gt("u\x{302}", "u\x{30C}")); +ok($objEe->gt("U\x{302}", "U\x{30C}")); +ok($objEe->gt("y\x{302}", "y\x{30C}")); +ok($objEe->gt("Y\x{302}", "Y\x{30C}")); + +# 54 + +ok($objEe->eq("dz", "Dz")); +ok($objEe->eq("Dz", "DZ")); +ok($objEe->eq("\x{256}", "\x{189}")); +ok($objEe->eq("\x{25B}", "\x{190}")); +ok($objEe->eq("\x{192}", "\x{191}")); +ok($objEe->eq("gb", "Gb")); +ok($objEe->eq("Gb", "GB")); +ok($objEe->eq("\x{263}", "\x{194}")); +ok($objEe->eq("x", "X")); +ok($objEe->eq("kp", "Kp")); +ok($objEe->eq("Kp", "KP")); +ok($objEe->eq("ny", "Ny")); +ok($objEe->eq("Ny", "NY")); +ok($objEe->eq("\x{14B}", "\x{14A}")); +ok($objEe->eq("\x{254}", "\x{186}")); +ok($objEe->eq("ts", "Ts")); +ok($objEe->eq("Ts", "TS")); +ok($objEe->eq("\x{28B}", "\x{1B2}")); + +# 72 + +$objEe->change(level => 3); + +ok($objEe->lt("dz", "Dz")); +ok($objEe->lt("Dz", "DZ")); +ok($objEe->lt("\x{256}", "\x{189}")); +ok($objEe->lt("\x{25B}", "\x{190}")); +ok($objEe->lt("\x{192}", "\x{191}")); +ok($objEe->lt("gb", "Gb")); +ok($objEe->lt("Gb", "GB")); +ok($objEe->lt("\x{263}", "\x{194}")); +ok($objEe->lt("x", "X")); +ok($objEe->lt("kp", "Kp")); +ok($objEe->lt("Kp", "KP")); +ok($objEe->lt("ny", "Ny")); +ok($objEe->lt("Ny", "NY")); +ok($objEe->lt("\x{14B}", "\x{14A}")); +ok($objEe->lt("\x{254}", "\x{186}")); +ok($objEe->lt("ts", "Ts")); +ok($objEe->lt("Ts", "TS")); +ok($objEe->lt("\x{28B}", "\x{1B2}")); + +# 90 + +ok($objEe->eq("a\x{302}", pack('U', 0xE2))); +ok($objEe->eq("A\x{302}", pack('U', 0xC2))); +ok($objEe->eq("e\x{302}", pack('U', 0xEA))); +ok($objEe->eq("E\x{302}", pack('U', 0xCA))); +ok($objEe->eq("i\x{302}", pack('U', 0xEE))); +ok($objEe->eq("I\x{302}", pack('U', 0xCE))); +ok($objEe->eq("o\x{302}", pack('U', 0xF4))); +ok($objEe->eq("O\x{302}", pack('U', 0xD4))); +ok($objEe->eq("u\x{302}", pack('U', 0xFB))); +ok($objEe->eq("U\x{302}", pack('U', 0xDB))); +ok($objEe->eq("y\x{302}", "\x{177}")); +ok($objEe->eq("Y\x{302}", "\x{176}")); + +# 102 + +$objEe->change(upper_before_lower => 1); + +ok($objEe->gt("dz", "Dz")); +ok($objEe->gt("Dz", "DZ")); +ok($objEe->gt("\x{256}", "\x{189}")); +ok($objEe->gt("\x{25B}", "\x{190}")); +ok($objEe->gt("\x{192}", "\x{191}")); +ok($objEe->gt("gb", "Gb")); +ok($objEe->gt("Gb", "GB")); +ok($objEe->gt("\x{263}", "\x{194}")); +ok($objEe->gt("x", "X")); +ok($objEe->gt("kp", "Kp")); +ok($objEe->gt("Kp", "KP")); +ok($objEe->gt("ny", "Ny")); +ok($objEe->gt("Ny", "NY")); +ok($objEe->gt("\x{14B}", "\x{14A}")); +ok($objEe->gt("\x{254}", "\x{186}")); +ok($objEe->gt("ts", "Ts")); +ok($objEe->gt("Ts", "TS")); +ok($objEe->gt("\x{28B}", "\x{1B2}")); + +# 120 diff --git a/cpan/Unicode-Collate/t/loc_sq.t b/cpan/Unicode-Collate/t/loc_sq.t index 6f29c4f..3582d3e 100644 --- a/cpan/Unicode-Collate/t/loc_sq.t +++ b/cpan/Unicode-Collate/t/loc_sq.t @@ -69,7 +69,7 @@ ok($objSq->lt("xz","xh")); ok($objSq->gt("y", "xh")); ok($objSq->lt("z", "zh")); ok($objSq->lt("zz","zh")); -ok($objSq->lt("zh", "\x{1B7}")); +ok($objSq->lt("zh","\x{1B7}")); # 35 diff --git a/cpan/Unicode-Collate/t/loc_th.t b/cpan/Unicode-Collate/t/loc_th.t index 0c992f6..2dd3994 100644 --- a/cpan/Unicode-Collate/t/loc_th.t +++ b/cpan/Unicode-Collate/t/loc_th.t @@ -13,7 +13,7 @@ BEGIN { use strict; use warnings; -BEGIN { $| = 1; print "1..25\n"; } +BEGIN { $| = 1; print "1..47\n"; } my $count = 0; sub ok ($;$) { my $p = my $r = shift; @@ -43,13 +43,10 @@ $objTh->change(level => 1); ok($objTh->eq("\x{E2F}", "")); ok($objTh->eq("\x{E46}", "")); ok($objTh->eq("\x{E4F}", "")); +ok($objTh->eq("\x{E5A}", "")); +ok($objTh->eq("\x{E5B}", "")); -# 5 - -$objTh->change(variable => "non-ignorable"); - -ok($objTh->lt("\x{E2F}", "\x{E46}")); -ok($objTh->lt("\x{E46}", "\x{E4F}")); +# 7 ok($objTh->lt("\x{E2E}", "\x{E4D}")); ok($objTh->lt("\x{E4D}", "\x{E30}")); @@ -64,8 +61,9 @@ ok($objTh->eq("\x{E47}", "")); ok($objTh->eq("\x{E48}", "")); ok($objTh->eq("\x{E49}", "")); ok($objTh->eq("\x{E4A}", "")); +ok($objTh->eq("\x{E4B}", "")); -# 16 +# 17 $objTh->change(level => 2); @@ -77,13 +75,49 @@ ok($objTh->lt("\x{E49}", "\x{E4A}")); ok($objTh->lt("\x{E4A}", "\x{E4B}")); ok($objTh->eq("\x{E32}", "\x{E45}")); +ok($objTh->eq("\x{E32}\x{E4D}", "\x{E4D}\x{E32}")); +ok($objTh->eq("\x{E4D}\x{E32}", "\x{E33}")); +ok($objTh->eq("\x{E4D}\x{E45}", "\x{E45}\x{E4D}")); -# 23 +# 27 $objTh->change(level => 3); ok($objTh->lt("\x{E32}", "\x{E45}")); +ok($objTh->lt("\x{E32}\x{E4D}", "\x{E4D}\x{E32}")); +ok($objTh->lt("\x{E4D}\x{E32}", "\x{E33}")); +ok($objTh->lt("\x{E4D}\x{E45}", "\x{E45}\x{E4D}")); + +ok($objTh->eq("\x{E4F}", "\x{E2F}")); +ok($objTh->eq("\x{E2F}", "\x{E5A}")); +ok($objTh->eq("\x{E5A}", "\x{E5B}")); +ok($objTh->eq("\x{E5B}", "\x{E46}")); + +# 35 + +$objTh->change(level => 4); + +ok($objTh->lt("\x{E4F}", "\x{E2F}")); +ok($objTh->lt("\x{E2F}", "\x{E5A}")); +ok($objTh->lt("\x{E5A}", "\x{E5B}")); +ok($objTh->lt("\x{E5B}", "\x{E46}")); + +# 39 + +$objTh->change(level => 1); + +ok($objTh->eq("\x{E4F}", "\x{E2F}")); +ok($objTh->eq("\x{E2F}", "\x{E5A}")); +ok($objTh->eq("\x{E5A}", "\x{E5B}")); +ok($objTh->eq("\x{E5B}", "\x{E46}")); + +# 43 + +$objTh->change(variable => "non-ignorable"); -ok($objTh->eq("\x{E33}", "\x{E4D}\x{E32}")); +ok($objTh->lt("\x{E4F}", "\x{E2F}")); +ok($objTh->lt("\x{E2F}", "\x{E5A}")); +ok($objTh->lt("\x{E5A}", "\x{E5B}")); +ok($objTh->lt("\x{E5B}", "\x{E46}")); -# 25 +# 47 diff --git a/cpan/Unicode-Collate/t/loc_to.t b/cpan/Unicode-Collate/t/loc_to.t index 55aadde..8fddb91 100644 --- a/cpan/Unicode-Collate/t/loc_to.t +++ b/cpan/Unicode-Collate/t/loc_to.t @@ -13,7 +13,7 @@ BEGIN { use strict; use warnings; -BEGIN { $| = 1; print "1..132\n"; } +BEGIN { $| = 1; print "1..122\n"; } my $count = 0; sub ok ($;$) { my $p = my $r = shift; @@ -45,33 +45,55 @@ ok($objTo->lt("z", "\x{2BD}")); # 7 -ok($objTo->eq("a", "a\x{304}")); -ok($objTo->eq("A", "A\x{304}")); -ok($objTo->eq("e", "e\x{304}")); -ok($objTo->eq("E", "E\x{304}")); -ok($objTo->eq("i", "i\x{304}")); -ok($objTo->eq("I", "I\x{304}")); -ok($objTo->eq("o", "o\x{304}")); -ok($objTo->eq("O", "O\x{304}")); -ok($objTo->eq("u", "u\x{304}")); -ok($objTo->eq("U", "U\x{304}")); +ok($objTo->eq("a", "a\x{301}")); +ok($objTo->eq("A", "A\x{301}")); +ok($objTo->eq("e", "e\x{301}")); +ok($objTo->eq("E", "E\x{301}")); +ok($objTo->eq("i", "i\x{301}")); +ok($objTo->eq("I", "I\x{301}")); +ok($objTo->eq("o", "o\x{301}")); +ok($objTo->eq("O", "O\x{301}")); +ok($objTo->eq("u", "u\x{301}")); +ok($objTo->eq("U", "U\x{301}")); + +ok($objTo->eq("a\x{301}", "a\x{304}")); +ok($objTo->eq("A\x{301}", "A\x{304}")); +ok($objTo->eq("e\x{301}", "e\x{304}")); +ok($objTo->eq("E\x{301}", "E\x{304}")); +ok($objTo->eq("i\x{301}", "i\x{304}")); +ok($objTo->eq("I\x{301}", "I\x{304}")); +ok($objTo->eq("o\x{301}", "o\x{304}")); +ok($objTo->eq("O\x{301}", "O\x{304}")); +ok($objTo->eq("u\x{301}", "u\x{304}")); +ok($objTo->eq("U\x{301}", "U\x{304}")); -# 17 +# 27 $objTo->change(level => 2); -ok($objTo->lt("a", "a\x{304}")); -ok($objTo->lt("A", "A\x{304}")); -ok($objTo->lt("e", "e\x{304}")); -ok($objTo->lt("E", "E\x{304}")); -ok($objTo->lt("i", "i\x{304}")); -ok($objTo->lt("I", "I\x{304}")); -ok($objTo->lt("o", "o\x{304}")); -ok($objTo->lt("O", "O\x{304}")); -ok($objTo->lt("u", "u\x{304}")); -ok($objTo->lt("U", "U\x{304}")); - -# 27 +ok($objTo->lt("a", "a\x{301}")); +ok($objTo->lt("A", "A\x{301}")); +ok($objTo->lt("e", "e\x{301}")); +ok($objTo->lt("E", "E\x{301}")); +ok($objTo->lt("i", "i\x{301}")); +ok($objTo->lt("I", "I\x{301}")); +ok($objTo->lt("o", "o\x{301}")); +ok($objTo->lt("O", "O\x{301}")); +ok($objTo->lt("u", "u\x{301}")); +ok($objTo->lt("U", "U\x{301}")); + +ok($objTo->lt("a\x{301}", "a\x{304}")); +ok($objTo->lt("A\x{301}", "A\x{304}")); +ok($objTo->lt("e\x{301}", "e\x{304}")); +ok($objTo->lt("E\x{301}", "E\x{304}")); +ok($objTo->lt("i\x{301}", "i\x{304}")); +ok($objTo->lt("I\x{301}", "I\x{304}")); +ok($objTo->lt("o\x{301}", "o\x{304}")); +ok($objTo->lt("O\x{301}", "O\x{304}")); +ok($objTo->lt("u\x{301}", "u\x{304}")); +ok($objTo->lt("U\x{301}", "U\x{304}")); + +# 47 ok($objTo->eq("ng", "Ng")); ok($objTo->eq("Ng", "NG")); @@ -79,29 +101,18 @@ ok($objTo->eq("NG", "\x{14B}")); ok($objTo->eq("\x{14B}", "\x{14A}")); ok($objTo->eq("\x{2BB}", "\x{2BD}")); -ok($objTo->eq("a\x{304}", "A\x{304}")); ok($objTo->eq("a\x{301}", "A\x{301}")); -ok($objTo->eq("e\x{304}", "E\x{304}")); +ok($objTo->eq("a\x{304}", "A\x{304}")); ok($objTo->eq("e\x{301}", "E\x{301}")); -ok($objTo->eq("i\x{304}", "I\x{304}")); +ok($objTo->eq("e\x{304}", "E\x{304}")); ok($objTo->eq("i\x{301}", "I\x{301}")); -ok($objTo->eq("o\x{304}", "O\x{304}")); +ok($objTo->eq("i\x{304}", "I\x{304}")); ok($objTo->eq("o\x{301}", "O\x{301}")); -ok($objTo->eq("u\x{304}", "U\x{304}")); +ok($objTo->eq("o\x{304}", "O\x{304}")); ok($objTo->eq("u\x{301}", "U\x{301}")); +ok($objTo->eq("u\x{304}", "U\x{304}")); -ok($objTo->eq("a\x{304}", "a\x{301}")); -ok($objTo->eq("A\x{304}", "A\x{301}")); -ok($objTo->eq("e\x{304}", "e\x{301}")); -ok($objTo->eq("E\x{304}", "E\x{301}")); -ok($objTo->eq("i\x{304}", "i\x{301}")); -ok($objTo->eq("I\x{304}", "I\x{301}")); -ok($objTo->eq("o\x{304}", "o\x{301}")); -ok($objTo->eq("O\x{304}", "O\x{301}")); -ok($objTo->eq("u\x{304}", "u\x{301}")); -ok($objTo->eq("U\x{304}", "U\x{301}")); - -# 52 +# 62 $objTo->change(level => 3); @@ -111,41 +122,19 @@ ok($objTo->lt("NG", "\x{14B}")); ok($objTo->lt("\x{14B}", "\x{14A}")); ok($objTo->lt("\x{2BB}", "\x{2BD}")); -ok($objTo->lt("a\x{304}", "A\x{304}")); ok($objTo->lt("a\x{301}", "A\x{301}")); -ok($objTo->lt("e\x{304}", "E\x{304}")); +ok($objTo->lt("a\x{304}", "A\x{304}")); ok($objTo->lt("e\x{301}", "E\x{301}")); -ok($objTo->lt("i\x{304}", "I\x{304}")); +ok($objTo->lt("e\x{304}", "E\x{304}")); ok($objTo->lt("i\x{301}", "I\x{301}")); -ok($objTo->lt("o\x{304}", "O\x{304}")); +ok($objTo->lt("i\x{304}", "I\x{304}")); ok($objTo->lt("o\x{301}", "O\x{301}")); -ok($objTo->lt("u\x{304}", "U\x{304}")); +ok($objTo->lt("o\x{304}", "O\x{304}")); ok($objTo->lt("u\x{301}", "U\x{301}")); - -ok($objTo->lt("a\x{304}", "a\x{301}")); -ok($objTo->lt("A\x{304}", "A\x{301}")); -ok($objTo->lt("e\x{304}", "e\x{301}")); -ok($objTo->lt("E\x{304}", "E\x{301}")); -ok($objTo->lt("i\x{304}", "i\x{301}")); -ok($objTo->lt("I\x{304}", "I\x{301}")); -ok($objTo->lt("o\x{304}", "o\x{301}")); -ok($objTo->lt("O\x{304}", "O\x{301}")); -ok($objTo->lt("u\x{304}", "u\x{301}")); -ok($objTo->lt("U\x{304}", "U\x{301}")); +ok($objTo->lt("u\x{304}", "U\x{304}")); # 77 -ok($objTo->eq("a\x{304}", "\x{101}")); -ok($objTo->eq("A\x{304}", "\x{100}")); -ok($objTo->eq("e\x{304}", "\x{113}")); -ok($objTo->eq("E\x{304}", "\x{112}")); -ok($objTo->eq("i\x{304}", "\x{12B}")); -ok($objTo->eq("I\x{304}", "\x{12A}")); -ok($objTo->eq("o\x{304}", "\x{14D}")); -ok($objTo->eq("O\x{304}", "\x{14C}")); -ok($objTo->eq("u\x{304}", "\x{16B}")); -ok($objTo->eq("U\x{304}", "\x{16A}")); - ok($objTo->eq("a\x{301}", pack('U', 0xE1))); ok($objTo->eq("a\x{341}", pack('U', 0xE1))); ok($objTo->eq("A\x{301}", pack('U', 0xC1))); @@ -167,6 +156,17 @@ ok($objTo->eq("u\x{341}", pack('U', 0xFA))); ok($objTo->eq("U\x{301}", pack('U', 0xDA))); ok($objTo->eq("U\x{341}", pack('U', 0xDA))); +ok($objTo->eq("a\x{304}", "\x{101}")); +ok($objTo->eq("A\x{304}", "\x{100}")); +ok($objTo->eq("e\x{304}", "\x{113}")); +ok($objTo->eq("E\x{304}", "\x{112}")); +ok($objTo->eq("i\x{304}", "\x{12B}")); +ok($objTo->eq("I\x{304}", "\x{12A}")); +ok($objTo->eq("o\x{304}", "\x{14D}")); +ok($objTo->eq("O\x{304}", "\x{14C}")); +ok($objTo->eq("u\x{304}", "\x{16B}")); +ok($objTo->eq("U\x{304}", "\x{16A}")); + # 107 $objTo->change(upper_before_lower => 1); @@ -177,26 +177,15 @@ ok($objTo->lt("NG", "\x{14B}")); ok($objTo->gt("\x{14B}", "\x{14A}")); ok($objTo->lt("\x{2BB}", "\x{2BD}")); -ok($objTo->gt("a\x{304}", "A\x{304}")); ok($objTo->gt("a\x{301}", "A\x{301}")); -ok($objTo->gt("e\x{304}", "E\x{304}")); +ok($objTo->gt("a\x{304}", "A\x{304}")); ok($objTo->gt("e\x{301}", "E\x{301}")); -ok($objTo->gt("i\x{304}", "I\x{304}")); +ok($objTo->gt("e\x{304}", "E\x{304}")); ok($objTo->gt("i\x{301}", "I\x{301}")); -ok($objTo->gt("o\x{304}", "O\x{304}")); +ok($objTo->gt("i\x{304}", "I\x{304}")); ok($objTo->gt("o\x{301}", "O\x{301}")); -ok($objTo->gt("u\x{304}", "U\x{304}")); +ok($objTo->gt("o\x{304}", "O\x{304}")); ok($objTo->gt("u\x{301}", "U\x{301}")); +ok($objTo->gt("u\x{304}", "U\x{304}")); -ok($objTo->lt("a\x{304}", "a\x{301}")); -ok($objTo->lt("A\x{304}", "A\x{301}")); -ok($objTo->lt("e\x{304}", "e\x{301}")); -ok($objTo->lt("E\x{304}", "E\x{301}")); -ok($objTo->lt("i\x{304}", "i\x{301}")); -ok($objTo->lt("I\x{304}", "I\x{301}")); -ok($objTo->lt("o\x{304}", "o\x{301}")); -ok($objTo->lt("O\x{304}", "O\x{301}")); -ok($objTo->lt("u\x{304}", "u\x{301}")); -ok($objTo->lt("U\x{304}", "U\x{301}")); - -# 132 +# 122 diff --git a/cpan/Unicode-Collate/t/loc_uk.t b/cpan/Unicode-Collate/t/loc_uk.t index df3a6e7..9867049 100644 --- a/cpan/Unicode-Collate/t/loc_uk.t +++ b/cpan/Unicode-Collate/t/loc_uk.t @@ -13,7 +13,7 @@ BEGIN { use strict; use warnings; -BEGIN { $| = 1; print "1..208\n"; } +BEGIN { $| = 1; print "1..203\n"; } my $count = 0; sub ok ($;$) { my $p = my $r = shift; @@ -39,10 +39,8 @@ $objUk->change(level => 1); ok($objUk->gt("\x{491}", "\x{433}")); ok($objUk->lt("\x{491}", "\x{434}")); -ok($objUk->gt("\x{44C}", "\x{44F}")); -ok($objUk->lt("\x{44C}", "\x{519}")); -# 6 +# 4 ok($objUk->gt("\x{4E5}", "\x{438}")); # not suppressed ok($objUk->gt("\x{4E4}", "\x{418}")); # not suppressed @@ -51,7 +49,7 @@ ok($objUk->gt("\x{407}", "\x{406}")); # not suppressed ok($objUk->gt("\x{439}", "\x{438}")); # not suppressed ok($objUk->gt("\x{419}", "\x{418}")); # not suppressed -# 12 +# 10 ok($objUk->eq("\x{4D1}", "\x{430}")); ok($objUk->eq("\x{4D0}", "\x{410}")); @@ -100,14 +98,13 @@ ok($objUk->eq("\x{4EC}", "\x{42D}")); ok($objUk->eq("\x{477}", "\x{475}")); ok($objUk->eq("\x{476}", "\x{474}")); -# 58 +# 56 $objUk->change(level => 2); ok($objUk->eq("\x{491}", "\x{490}")); -ok($objUk->eq("\x{44C}", "\x{42C}")); -# 60 +# 57 ok($objUk->gt("\x{4D1}", "\x{430}")); ok($objUk->gt("\x{4D0}", "\x{410}")); @@ -156,14 +153,13 @@ ok($objUk->gt("\x{4EC}", "\x{42D}")); ok($objUk->gt("\x{477}", "\x{475}")); ok($objUk->gt("\x{476}", "\x{474}")); -# 106 +# 103 $objUk->change(level => 3); ok($objUk->lt("\x{491}", "\x{490}")); -ok($objUk->lt("\x{44C}", "\x{42C}")); -# 108 +# 104 ok($objUk->eq("\x{4E5}", "\x{438}\x{308}")); # not suppressed ok($objUk->eq("\x{4E4}", "\x{418}\x{308}")); # not suppressed @@ -172,7 +168,7 @@ ok($objUk->eq("\x{407}", "\x{406}\x{308}")); # not suppressed ok($objUk->eq("\x{439}", "\x{438}\x{306}")); # not suppressed ok($objUk->eq("\x{419}", "\x{418}\x{306}")); # not suppressed -# 114 +# 110 for my $i ("", "\0") { ok($objUk->eq("\x{4D1}", "\x{430}$i\x{306}")); @@ -223,11 +219,10 @@ for my $i ("", "\0") { ok($objUk->eq("\x{476}", "\x{474}$i\x{30F}")); } -# 206 +# 202 $objUk->change(upper_before_lower => 1); ok($objUk->gt("\x{491}", "\x{490}")); -ok($objUk->gt("\x{44C}", "\x{42C}")); -# 208 +# 203 -- Perl5 Master Repository
