diff options
author | Chris 'BinGOs' Williams <chris@bingosnet.co.uk> | 2010-08-23 17:07:51 +0100 |
---|---|---|
committer | Chris 'BinGOs' Williams <chris@bingosnet.co.uk> | 2010-08-23 17:08:30 +0100 |
commit | 64dc7822f60bee2c3c7ba145a3ed170e6ec9ab34 (patch) | |
tree | b8d4febea0b0028705f0bc224c06a863eade806e /cpan | |
parent | 829cd18aa7f45221b0c0a3d4893cb4377bef2063 (diff) | |
download | perl-64dc7822f60bee2c3c7ba145a3ed170e6ec9ab34.tar.gz |
Update Unicode-Collate to CPAN version 0.57
[DELTA]
0.57 Sun Aug 22 22:39:58 2010
- Unicode::Collate::Locale newly supports locales: ca, et, fi, lv, sk, sl.
Diffstat (limited to 'cpan')
-rw-r--r-- | cpan/Unicode-Collate/Changes | 3 | ||||
-rw-r--r-- | cpan/Unicode-Collate/Collate.pm | 2 | ||||
-rw-r--r-- | cpan/Unicode-Collate/Collate/Locale.pm | 38 | ||||
-rw-r--r-- | cpan/Unicode-Collate/Collate/Locale/ca.pl | 17 | ||||
-rw-r--r-- | cpan/Unicode-Collate/Collate/Locale/et.pl | 32 | ||||
-rw-r--r-- | cpan/Unicode-Collate/Collate/Locale/fi.pl | 51 | ||||
-rw-r--r-- | cpan/Unicode-Collate/Collate/Locale/lv.pl | 37 | ||||
-rw-r--r-- | cpan/Unicode-Collate/Collate/Locale/sk.pl | 28 | ||||
-rw-r--r-- | cpan/Unicode-Collate/Collate/Locale/sl.pl | 17 | ||||
-rw-r--r-- | cpan/Unicode-Collate/README | 2 | ||||
-rw-r--r-- | cpan/Unicode-Collate/t/loc_ca.t | 72 | ||||
-rw-r--r-- | cpan/Unicode-Collate/t/loc_es.t | 14 | ||||
-rw-r--r-- | cpan/Unicode-Collate/t/loc_estr.t | 14 | ||||
-rw-r--r-- | cpan/Unicode-Collate/t/loc_et.t | 70 | ||||
-rw-r--r-- | cpan/Unicode-Collate/t/loc_fi.t | 118 | ||||
-rw-r--r-- | cpan/Unicode-Collate/t/loc_lv.t | 79 | ||||
-rw-r--r-- | cpan/Unicode-Collate/t/loc_sk.t | 69 | ||||
-rw-r--r-- | cpan/Unicode-Collate/t/loc_sl.t | 49 |
18 files changed, 691 insertions, 21 deletions
diff --git a/cpan/Unicode-Collate/Changes b/cpan/Unicode-Collate/Changes index 6028db66b3..62fa837977 100644 --- a/cpan/Unicode-Collate/Changes +++ b/cpan/Unicode-Collate/Changes @@ -1,5 +1,8 @@ Revision history for Perl module Unicode::Collate. +0.57 Sun Aug 22 22:39:58 2010 + - Unicode::Collate::Locale newly supports locales: ca, et, fi, lv, sk, sl. + 0.56 Sun Aug 8 20:24:03 2010 - Unicode::Collate::Locale newly supports locales: eo, nb, ro, sv. ! renamed t/locale_{xy}.t to t/loc_{xy}.t (for safer 8.3 names) diff --git a/cpan/Unicode-Collate/Collate.pm b/cpan/Unicode-Collate/Collate.pm index 80f1850194..a1da1c9568 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.56'; +our $VERSION = '0.57'; our $PACKAGE = __PACKAGE__; my @Path = qw(Unicode Collate); diff --git a/cpan/Unicode-Collate/Collate/Locale.pm b/cpan/Unicode-Collate/Collate/Locale.pm index 955c81a6ac..204b8c3b17 100644 --- a/cpan/Unicode-Collate/Collate/Locale.pm +++ b/cpan/Unicode-Collate/Collate/Locale.pm @@ -4,7 +4,7 @@ use strict; use Carp; use base qw(Unicode::Collate); -our $VERSION = '0.56'; +our $VERSION = '0.57'; use File::Spec; @@ -12,7 +12,9 @@ use File::Spec; my $KeyPath = File::Spec->catfile('allkeys.txt'); my $PL_EXT = '.pl'; -my %LocaleFile = map { ($_, $_) } qw(cs eo es fr nn pl ro sv); +my %LocaleFile = map { ($_, $_) } qw( + ca cs eo es et fi fr lv nn pl ro sk sl sv +); $LocaleFile{'default'} = ''; $LocaleFile{'es__traditional'} = 'es_trad'; $LocaleFile{'nb'} = 'nn'; @@ -48,6 +50,10 @@ sub new { my $filepath = File::Spec->catfile($ModPath, $file.$PL_EXT); $href = do $filepath; } + + if (exists $hash{table}) { + croak "your table can't be used with Unicode::Collate::Locale"; + } $href->{table} = $KeyPath; while (my($k,$v) = each %$href) { @@ -98,11 +104,11 @@ C<es_ES_traditional> for Spanish in Spain (Traditional), If C<$localename> is not defined, fallback is selected in the following order: - 1. language_territory_variant - 2. language_territory - 3. language__variant - 4. language - 5. default + 1. language_territory_variant + 2. language_territory + 3. language__variant + 4. language + 5. default Tailoring tags provided by C<Unicode::Collate> are allowed as long as they are not used for C<'locale'> support. @@ -113,10 +119,10 @@ E.g. a collator for French, which ignores diacritics and case difference (i.e. level 1), with reversed case ordering and no normalization. Unicode::Collate::Locale->new( - level => 1, - locale => 'fr', - upper_before_lower => 1, - normalization => undef + level => 1, + locale => 'fr', + upper_before_lower => 1, + normalization => undef ) =head2 Methods @@ -139,17 +145,23 @@ this method returns a string C<'default'> meaning no special tailoring. =head2 A list of tailorable locales - locale name description - + locale name description + ---------------------------------------------------------- + ca Catalan cs Czech eo Esperanto es Spanish es__traditional Spanish ('ch' and 'll' as a grapheme) + et Estonian + fi Finnish fr French + lv Latvian nb Norwegian Bokmal nn Norwegian Nynorsk pl Polish ro Romanian + sk Slovak + sl Slovenian sv Swedish =head1 AUTHOR diff --git a/cpan/Unicode-Collate/Collate/Locale/ca.pl b/cpan/Unicode-Collate/Collate/Locale/ca.pl new file mode 100644 index 0000000000..692ec50ea6 --- /dev/null +++ b/cpan/Unicode-Collate/Collate/Locale/ca.pl @@ -0,0 +1,17 @@ ++{ + backwards => 2, + entry => <<'ENTRY', # for DUCET v5.2.0 +0063 0068 ; [.123E.0020.0002.0063] # <LATIN SMALL LETTER C, LATIN SMALL LETTER H> +0063 0048 ; [.123E.0020.0007.0063][.0.0.2.0] # <LATIN SMALL LETTER C, LATIN CAPITAL LETTER H> +0043 0068 ; [.123E.0020.0007.0043][.0.0.8.0] # <LATIN CAPITAL LETTER C, LATIN SMALL LETTER H> +0043 0048 ; [.123E.0020.0008.0043] # <LATIN CAPITAL LETTER C, LATIN CAPITAL LETTER H> +006C 006C ; [.1331.0020.0002.006C][.0.0.1.0] # <LATIN SMALL LETTER L, LATIN SMALL LETTER L> +006C 00B7 006C ; [.1331.0020.0002.006C][.0.0.7.0] # <LATIN SMALL LETTER L, MIDDLE DOT, LATIN SMALL LETTER L> +006C 004C ; [.1331.0020.0007.006C][.0.0.2.0][.0.0.1.0] # <LATIN SMALL LETTER L, LATIN CAPITAL LETTER L> +006C 00B7 004C ; [.1331.0020.0007.006C][.0.0.2.0][.0.0.7.0] # <LATIN SMALL LETTER L, MIDDLE DOT, LATIN CAPITAL LETTER L> +004C 006C ; [.1331.0020.0007.004C][.0.0.8.0][.0.0.1.0] # <LATIN CAPITAL LETTER L, LATIN SMALL LETTER L> +004C 00B7 006C ; [.1331.0020.0007.004C][.0.0.8.0][.0.0.7.0] # <LATIN CAPITAL LETTER L, MIDDLE DOT, LATIN SMALL LETTER L> +004C 004C ; [.1331.0020.0008.004C][.0.0.1.0] # <LATIN CAPITAL LETTER L, LATIN CAPITAL LETTER L> +004C 00B7 004C ; [.1331.0020.0008.004C][.0.0.7.0] # <LATIN CAPITAL LETTER L, MIDDLE DOT, LATIN CAPITAL LETTER L> +ENTRY +}; diff --git a/cpan/Unicode-Collate/Collate/Locale/et.pl b/cpan/Unicode-Collate/Collate/Locale/et.pl new file mode 100644 index 0000000000..15a24198d0 --- /dev/null +++ b/cpan/Unicode-Collate/Collate/Locale/et.pl @@ -0,0 +1,32 @@ ++{ + entry => <<'ENTRY', # for DUCET v5.2.0 +0161 ; [.1430.0020.0002.0161] # LATIN SMALL LETTER S WITH CARON +0073 030C ; [.1430.0020.0002.0161] # LATIN SMALL LETTER S WITH CARON +0160 ; [.1430.0020.0008.0160] # LATIN CAPITAL LETTER S WITH CARON +0053 030C ; [.1430.0020.0008.0160] # LATIN CAPITAL LETTER S WITH CARON +007A ; [.1431.0020.0002.007A] # LATIN SMALL LETTER Z +005A ; [.1431.0020.0008.005A] # LATIN CAPITAL LETTER Z +017E ; [.1432.0020.0002.017E] # LATIN SMALL LETTER Z WITH CARON +007A 030C ; [.1432.0020.0002.017E] # LATIN SMALL LETTER Z WITH CARON +017D ; [.1432.0020.0008.017D] # LATIN CAPITAL LETTER Z WITH CARON +005A 030C ; [.1432.0020.0008.017D] # LATIN CAPITAL LETTER Z WITH CARON +0077 ; [.147B.0021.0002.0077] # LATIN SMALL LETTER W +0057 ; [.147B.0021.0008.0057] # LATIN CAPITAL LETTER W +00F5 ; [.1493.0020.0002.00F5] # LATIN SMALL LETTER O WITH TILDE +006F 0303 ; [.1493.0020.0002.00F5] # LATIN SMALL LETTER O WITH TILDE +00D5 ; [.1493.0020.0008.00D5] # LATIN CAPITAL LETTER O WITH TILDE +004F 0303 ; [.1493.0020.0008.00D5] # LATIN CAPITAL LETTER O WITH TILDE +00E4 ; [.1494.0020.0002.00E4] # LATIN SMALL LETTER A WITH DIAERESIS +0061 0308 ; [.1494.0020.0002.00E4] # LATIN SMALL LETTER A WITH DIAERESIS +00C4 ; [.1494.0020.0008.00C4] # LATIN CAPITAL LETTER A WITH DIAERESIS +0041 0308 ; [.1494.0020.0008.00C4] # LATIN CAPITAL LETTER A WITH DIAERESIS +00F6 ; [.1495.0020.0002.00F6] # LATIN SMALL LETTER O WITH DIAERESIS +006F 0308 ; [.1495.0020.0002.00F6] # LATIN SMALL LETTER O WITH DIAERESIS +00D6 ; [.1495.0020.0008.00D6] # LATIN CAPITAL LETTER O WITH DIAERESIS +004F 0308 ; [.1495.0020.0008.00D6] # LATIN CAPITAL LETTER O WITH DIAERESIS +00FC ; [.1496.0020.0002.00FC] # LATIN SMALL LETTER U WITH DIAERESIS +0075 0308 ; [.1496.0020.0002.00FC] # LATIN SMALL LETTER U WITH DIAERESIS +00DC ; [.1496.0020.0008.00DC] # LATIN CAPITAL LETTER U WITH DIAERESIS +0055 0308 ; [.1496.0020.0008.00DC] # LATIN CAPITAL LETTER U WITH DIAERESIS +ENTRY +}; diff --git a/cpan/Unicode-Collate/Collate/Locale/fi.pl b/cpan/Unicode-Collate/Collate/Locale/fi.pl new file mode 100644 index 0000000000..96e3491db1 --- /dev/null +++ b/cpan/Unicode-Collate/Collate/Locale/fi.pl @@ -0,0 +1,51 @@ ++{ +# in cldr test/fi.xml why x{110}x < xdx though xd < x{110} ? + entry => <<'ENTRY', # for DUCET v5.2.0 +0111 ; [.1250.0021.0002.0111][.0000.007D.0002.0335] # LATIN SMALL LETTER D WITH STROKE +0110 ; [.1250.0021.0008.0110][.0000.007D.0002.0335] # LATIN CAPITAL LETTER D WITH STROKE +01E5 ; [.12B0.0021.0002.01E5][.0000.007D.0002.0335] # LATIN SMALL LETTER G WITH STROKE +01E4 ; [.12B0.0021.0008.01E4][.0000.007D.0002.0335] # LATIN CAPITAL LETTER G WITH STROKE +014B ; [.136D.0021.0002.014B][.0000.007D.0002.0335] # LATIN SMALL LETTER ENG +014A ; [.136D.0021.0008.014A][.0000.007D.0002.0335] # LATIN CAPITAL LETTER ENG +0167 ; [.1433.0021.0002.0167][.0000.007D.0002.0335] # LATIN SMALL LETTER T WITH STROKE +0166 ; [.1433.0021.0008.0166][.0000.007D.0002.0335] # LATIN CAPITAL LETTER T WITH STROKE +0077 ; [.147B.0021.0002.0077] # LATIN SMALL LETTER W +0057 ; [.147B.0021.0008.0057] # LATIN CAPITAL LETTER W +00FC ; [.149C.0021.0002.00FC] # LATIN SMALL LETTER U WITH DIAERESIS +0075 0308 ; [.149C.0021.0002.00FC] # LATIN SMALL LETTER U WITH DIAERESIS +00DC ; [.149C.0021.0008.00DC] # LATIN CAPITAL LETTER U WITH DIAERESIS +0055 0308 ; [.149C.0021.0008.00DC] # LATIN CAPITAL LETTER U WITH DIAERESIS +0292 ; [.14AD.0021.0002.0292][.0000.007D.0002.0335] # LATIN SMALL LETTER EZH +01B7 ; [.14AD.0021.0008.01B7][.0000.007D.0002.0335] # LATIN CAPITAL LETTER EZH +01EF ; [.14AD.0021.0002.0292][.0000.007D.0002.0335][.0000.0041.0002.030C] # LATIN SMALL LETTER EZH WITH CARON +01EE ; [.14AD.0021.0008.01B7][.0000.007D.0002.0335][.0000.0041.0002.030C] # LATIN CAPITAL LETTER EZH WITH CARON +00E5 ; [.14AE.0020.0002.00E5] # LATIN SMALL LETTER A WITH RING ABOVE +0061 030A ; [.14AE.0020.0002.00E5] # LATIN SMALL LETTER A WITH RING ABOVE +00C5 ; [.14AE.0020.0008.00C5] # LATIN CAPITAL LETTER A WITH RING ABOVE +0041 030A ; [.14AE.0020.0008.00C5] # LATIN CAPITAL LETTER A WITH RING ABOVE +212B ; [.14AE.0020.0008.00C5] # ANGSTROM SIGN +01FB ; [.14AE.0020.0002.00E5][.0000.0032.0002.0301] # LATIN SMALL LETTER A WITH RING ABOVE AND ACUTE +01FA ; [.14AE.0020.0008.00C5][.0000.0032.0002.0301] # LATIN CAPITAL LETTER A WITH RING ABOVE AND ACUTE +00E4 ; [.14AF.0020.0002.00E4] # LATIN SMALL LETTER A WITH DIAERESIS +0061 0308 ; [.14AF.0020.0002.00E4] # LATIN SMALL LETTER A WITH DIAERESIS +00C4 ; [.14AF.0020.0008.00C4] # LATIN CAPITAL LETTER A WITH DIAERESIS +0041 0308 ; [.14AF.0020.0008.00C4] # LATIN CAPITAL LETTER A WITH DIAERESIS +00E6 ; [.14AF.0021.0002.00E6] # LATIN SMALL LETTER AE +00C6 ; [.14AF.0021.0008.00C6] # LATIN CAPITAL LETTER AE +1D2D ; [.14AF.0021.0014.1D2D] # MODIFIER LETTER CAPITAL AE +01FD ; [.14AF.0021.0002.00E6][.0000.0032.0002.0301] # LATIN SMALL LETTER AE WITH ACUTE +01FC ; [.14AF.0021.0008.00C6][.0000.0032.0002.0301] # LATIN CAPITAL LETTER AE WITH ACUTE +01E3 ; [.14AF.0021.0002.00E6][.0000.005B.0002.0304] # LATIN SMALL LETTER AE WITH MACRON +01E2 ; [.14AF.0021.0008.00C6][.0000.005B.0002.0304] # LATIN CAPITAL LETTER AE WITH MACRON +00F6 ; [.14B0.0020.0002.00F6] # LATIN SMALL LETTER O WITH DIAERESIS +006F 0308 ; [.14B0.0020.0002.00F6] # LATIN SMALL LETTER O WITH DIAERESIS +00D6 ; [.14B0.0020.0008.00D6] # LATIN CAPITAL LETTER O WITH DIAERESIS +004F 0308 ; [.14B0.0020.0008.00D6] # LATIN CAPITAL LETTER O WITH DIAERESIS +00F8 ; [.14B0.0021.0002.00F8] # LATIN SMALL LETTER O WITH STROKE +006F 0338 ; [.14B0.0021.0002.00F8] # LATIN SMALL LETTER O WITH STROKE +00D8 ; [.14B0.0021.0008.00D8] # LATIN CAPITAL LETTER O WITH STROKE +004F 0338 ; [.14B0.0021.0008.00D8] # LATIN CAPITAL LETTER O WITH STROKE +01FF ; [.14B0.0021.0002.00F8][.0000.0032.0002.0301] # LATIN SMALL LETTER O WITH STROKE AND ACUTE +01FE ; [.14B0.0021.0008.00D8][.0000.0032.0002.0301] # LATIN CAPITAL LETTER O WITH STROKE AND ACUTE +ENTRY +}; diff --git a/cpan/Unicode-Collate/Collate/Locale/lv.pl b/cpan/Unicode-Collate/Collate/Locale/lv.pl new file mode 100644 index 0000000000..15ab6e91b6 --- /dev/null +++ b/cpan/Unicode-Collate/Collate/Locale/lv.pl @@ -0,0 +1,37 @@ ++{ +# ignored: Y < J + entry => <<'ENTRY', # for DUCET v5.2.0 +010D ; [.124F.0020.0002.010D] # LATIN SMALL LETTER C WITH CARON +0063 030C ; [.124F.0020.0002.010D] # LATIN SMALL LETTER C WITH CARON +010C ; [.124F.0020.0008.010C] # LATIN CAPITAL LETTER C WITH CARON +0043 030C ; [.124F.0020.0008.010C] # LATIN CAPITAL LETTER C WITH CARON +0123 ; [.12D2.0020.0002.0123] # LATIN SMALL LETTER G WITH CEDILLA +0067 0327 ; [.12D2.0020.0002.0123] # LATIN SMALL LETTER G WITH CEDILLA +0122 ; [.12D2.0020.0008.0122] # LATIN CAPITAL LETTER G WITH CEDILLA +0047 0327 ; [.12D2.0020.0008.0122] # LATIN CAPITAL LETTER G WITH CEDILLA +0137 ; [.132F.0020.0002.0137] # LATIN SMALL LETTER K WITH CEDILLA +006B 0327 ; [.132F.0020.0002.0137] # LATIN SMALL LETTER K WITH CEDILLA +0136 ; [.132F.0020.0008.0136] # LATIN CAPITAL LETTER K WITH CEDILLA +004B 0327 ; [.132F.0020.0008.0136] # LATIN CAPITAL LETTER K WITH CEDILLA +013C ; [.135E.0020.0002.013C] # LATIN SMALL LETTER L WITH CEDILLA +006C 0327 ; [.135E.0020.0002.013C] # LATIN SMALL LETTER L WITH CEDILLA +013B ; [.135E.0020.0008.013B] # LATIN CAPITAL LETTER L WITH CEDILLA +004C 0327 ; [.135E.0020.0008.013B] # LATIN CAPITAL LETTER L WITH CEDILLA +0146 ; [.138D.0020.0002.0146] # LATIN SMALL LETTER N WITH CEDILLA +006E 0327 ; [.138D.0020.0002.0146] # LATIN SMALL LETTER N WITH CEDILLA +0145 ; [.138D.0020.0008.0145] # LATIN CAPITAL LETTER N WITH CEDILLA +004E 0327 ; [.138D.0020.0008.0145] # LATIN CAPITAL LETTER N WITH CEDILLA +0157 ; [.140F.0020.0002.0157] # LATIN SMALL LETTER R WITH CEDILLA +0072 0327 ; [.140F.0020.0002.0157] # LATIN SMALL LETTER R WITH CEDILLA +0156 ; [.140F.0020.0008.0156] # LATIN CAPITAL LETTER R WITH CEDILLA +0052 0327 ; [.140F.0020.0008.0156] # LATIN CAPITAL LETTER R WITH CEDILLA +0161 ; [.1432.0020.0002.0161] # LATIN SMALL LETTER S WITH CARON +0073 030C ; [.1432.0020.0002.0161] # LATIN SMALL LETTER S WITH CARON +0160 ; [.1432.0020.0008.0160] # LATIN CAPITAL LETTER S WITH CARON +0053 030C ; [.1432.0020.0008.0160] # LATIN CAPITAL LETTER S WITH CARON +017E ; [.14C9.0020.0002.017E] # LATIN SMALL LETTER Z WITH CARON +007A 030C ; [.14C9.0020.0002.017E] # LATIN SMALL LETTER Z WITH CARON +017D ; [.14C9.0020.0008.017D] # LATIN CAPITAL LETTER Z WITH CARON +005A 030C ; [.14C9.0020.0008.017D] # LATIN CAPITAL LETTER Z WITH CARON +ENTRY +}; diff --git a/cpan/Unicode-Collate/Collate/Locale/sk.pl b/cpan/Unicode-Collate/Collate/Locale/sk.pl new file mode 100644 index 0000000000..f248d1b20c --- /dev/null +++ b/cpan/Unicode-Collate/Collate/Locale/sk.pl @@ -0,0 +1,28 @@ ++{ + entry => <<'ENTRY', # for DUCET v5.2.0 +00E4 ; [.1210.0020.0002.00E4] # LATIN SMALL LETTER A WITH DIAERESIS +0061 0308 ; [.1210.0020.0002.00E4] # LATIN SMALL LETTER A WITH DIAERESIS +00C4 ; [.1210.0020.0008.00C4] # LATIN CAPITAL LETTER A WITH DIAERESIS +0041 0308 ; [.1210.0020.0008.00C4] # LATIN CAPITAL LETTER A WITH DIAERESIS +010D ; [.123E.0020.0002.010D] # LATIN SMALL LETTER C WITH CARON +0063 030C ; [.123E.0020.0002.010D] # LATIN SMALL LETTER C WITH CARON +010C ; [.123E.0020.0008.010C] # LATIN CAPITAL LETTER C WITH CARON +0043 030C ; [.123E.0020.0008.010C] # LATIN CAPITAL LETTER C WITH CARON +0063 0068 ; [.12D4.0020.0002.0063] # <LATIN SMALL LETTER C, LATIN SMALL LETTER H> +0063 0048 ; [.12D4.0020.0007.0063][.0.0.2.0] # <LATIN SMALL LETTER C, LATIN CAPITAL LETTER H> +0043 0068 ; [.12D4.0020.0007.0043][.0.0.8.0] # <LATIN CAPITAL LETTER C, LATIN SMALL LETTER H> +0043 0048 ; [.12D4.0020.0008.0043] # <LATIN CAPITAL LETTER C, LATIN CAPITAL LETTER H> +00F4 ; [.138F.0020.0002.00F4] # LATIN SMALL LETTER O WITH CIRCUMFLEX +006F 0302 ; [.138F.0020.0002.00F4] # LATIN SMALL LETTER O WITH CIRCUMFLEX +00D4 ; [.138F.0020.0008.00D4] # LATIN CAPITAL LETTER O WITH CIRCUMFLEX +004F 0302 ; [.138F.0020.0008.00D4] # LATIN CAPITAL LETTER O WITH CIRCUMFLEX +0161 ; [.1411.0020.0002.0161] # LATIN SMALL LETTER S WITH CARON +0073 030C ; [.1411.0020.0002.0161] # LATIN SMALL LETTER S WITH CARON +0160 ; [.1411.0020.0008.0160] # LATIN CAPITAL LETTER S WITH CARON +0053 030C ; [.1411.0020.0008.0160] # LATIN CAPITAL LETTER S WITH CARON +017E ; [.14AE.0020.0002.017E] # LATIN SMALL LETTER Z WITH CARON +007A 030C ; [.14AE.0020.0002.017E] # LATIN SMALL LETTER Z WITH CARON +017D ; [.14AE.0020.0008.017D] # LATIN CAPITAL LETTER Z WITH CARON +005A 030C ; [.14AE.0020.0008.017D] # LATIN CAPITAL LETTER Z WITH CARON +ENTRY +}; diff --git a/cpan/Unicode-Collate/Collate/Locale/sl.pl b/cpan/Unicode-Collate/Collate/Locale/sl.pl new file mode 100644 index 0000000000..37d891d4c9 --- /dev/null +++ b/cpan/Unicode-Collate/Collate/Locale/sl.pl @@ -0,0 +1,17 @@ ++{ +# c-acute not included + entry => <<'ENTRY', # for DUCET v5.2.0 +010D ; [.123E.0020.0002.010D] # LATIN SMALL LETTER C WITH CARON +0063 030C ; [.123E.0020.0002.010D] # LATIN SMALL LETTER C WITH CARON +010C ; [.123E.0020.0008.010C] # LATIN CAPITAL LETTER C WITH CARON +0043 030C ; [.123E.0020.0008.010C] # LATIN CAPITAL LETTER C WITH CARON +0161 ; [.1411.0020.0002.0161] # LATIN SMALL LETTER S WITH CARON +0073 030C ; [.1411.0020.0002.0161] # LATIN SMALL LETTER S WITH CARON +0160 ; [.1411.0020.0008.0160] # LATIN CAPITAL LETTER S WITH CARON +0053 030C ; [.1411.0020.0008.0160] # LATIN CAPITAL LETTER S WITH CARON +017E ; [.14AE.0020.0002.017E] # LATIN SMALL LETTER Z WITH CARON +007A 030C ; [.14AE.0020.0002.017E] # LATIN SMALL LETTER Z WITH CARON +017D ; [.14AE.0020.0008.017D] # LATIN CAPITAL LETTER Z WITH CARON +005A 030C ; [.14AE.0020.0008.017D] # LATIN CAPITAL LETTER Z WITH CARON +ENTRY +}; diff --git a/cpan/Unicode-Collate/README b/cpan/Unicode-Collate/README index 06f6d003e7..4d8f05e359 100644 --- a/cpan/Unicode-Collate/README +++ b/cpan/Unicode-Collate/README @@ -1,4 +1,4 @@ -Unicode/Collate version 0.56 +Unicode/Collate version 0.57 =============================== NAME diff --git a/cpan/Unicode-Collate/t/loc_ca.t b/cpan/Unicode-Collate/t/loc_ca.t new file mode 100644 index 0000000000..2149194b34 --- /dev/null +++ b/cpan/Unicode-Collate/t/loc_ca.t @@ -0,0 +1,72 @@ +#!perl +use strict; +use warnings; +use Unicode::Collate::Locale; + +use Test; +plan tests => 38; + +my $dot = pack 'U', 0xB7; + +my $objCa = Unicode::Collate::Locale-> + new(locale => 'CA', normalization => undef); + +ok(1); +ok($objCa->getlocale, 'ca'); + +$objCa->change(level => 1); + +ok($objCa->lt("c", "ch")); +ok($objCa->lt("cz", "ch")); +ok($objCa->gt("d", "ch")); +ok($objCa->lt("l", "ll")); +ok($objCa->lt("lz", "ll")); +ok($objCa->gt("m", "ll")); + +# 8 + +ok($objCa->eq("a\x{300}a", "aa\x{300}")); + +$objCa->change(level => 2); + +ok($objCa->lt("a\x{300}a", "aa\x{300}")); +ok($objCa->gt("Ca\x{300}ca\x{302}", "ca\x{302}ca\x{300}")); +ok($objCa->gt("ca\x{300}ca\x{302}", "Ca\x{302}ca\x{300}")); + +# 12 + +ok($objCa->eq("ch", "cH")); +ok($objCa->eq("cH", "Ch")); +ok($objCa->eq("Ch", "CH")); + +ok($objCa->eq("ll", "lL")); +ok($objCa->eq("lL", "Ll")); +ok($objCa->eq("Ll", "LL")); +ok($objCa->eq("l${dot}l", "lL")); +ok($objCa->eq("l${dot}L", "Ll")); +ok($objCa->eq("L${dot}l", "LL")); +ok($objCa->eq("ll","l${dot}l")); +ok($objCa->eq("lL","l${dot}L")); +ok($objCa->eq("Ll","L${dot}l")); +ok($objCa->eq("LL","L${dot}L")); + +# 25 + +$objCa->change(level => 3); + +ok($objCa->lt("ch", "cH")); +ok($objCa->lt("cH", "Ch")); +ok($objCa->lt("Ch", "CH")); + +ok($objCa->lt("ll", "lL")); +ok($objCa->lt("lL", "Ll")); +ok($objCa->lt("Ll", "LL")); +ok($objCa->lt("l${dot}l", "lL")); +ok($objCa->lt("l${dot}L", "Ll")); +ok($objCa->lt("L${dot}l", "LL")); +ok($objCa->lt("ll","l${dot}l")); +ok($objCa->lt("lL","l${dot}L")); +ok($objCa->lt("Ll","L${dot}l")); +ok($objCa->lt("LL","L${dot}L")); + +# 38 diff --git a/cpan/Unicode-Collate/t/loc_es.t b/cpan/Unicode-Collate/t/loc_es.t index 228a58cbda..54ac671350 100644 --- a/cpan/Unicode-Collate/t/loc_es.t +++ b/cpan/Unicode-Collate/t/loc_es.t @@ -4,7 +4,7 @@ use warnings; use Unicode::Collate::Locale; use Test; -plan tests => 22; +plan tests => 26; my $objEs = Unicode::Collate::Locale-> new(locale => 'ES', normalization => undef); @@ -25,15 +25,23 @@ ok($objEs->gt("o", "n\x{303}")); # 10 +ok($objEs->eq("a\x{300}a", "aa\x{300}")); + $objEs->change(level => 2); +ok($objEs->gt("a\x{300}a", "aa\x{300}")); +ok($objEs->lt("Ca\x{300}ca\x{302}", "ca\x{302}ca\x{300}")); +ok($objEs->lt("ca\x{300}ca\x{302}", "Ca\x{302}ca\x{300}")); + +# 14 + ok($objEs->eq("ch", "Ch")); ok($objEs->eq("Ch", "CH")); ok($objEs->eq("ll", "Ll")); ok($objEs->eq("Ll", "LL")); ok($objEs->eq("n\x{303}", "N\x{303}")); -# 15 +# 19 $objEs->change(level => 3); @@ -45,4 +53,4 @@ ok($objEs->lt("n\x{303}", "N\x{303}")); ok($objEs->eq("n\x{303}", pack('U', 0xF1))); ok($objEs->eq("N\x{303}", pack('U', 0xD1))); -# 22 +# 26 diff --git a/cpan/Unicode-Collate/t/loc_estr.t b/cpan/Unicode-Collate/t/loc_estr.t index b938b49fe5..963c3569d5 100644 --- a/cpan/Unicode-Collate/t/loc_estr.t +++ b/cpan/Unicode-Collate/t/loc_estr.t @@ -4,7 +4,7 @@ use warnings; use Unicode::Collate::Locale; use Test; -plan tests => 22; +plan tests => 26; my $objEsTrad = Unicode::Collate::Locale-> new(locale => 'ES-trad', normalization => undef); @@ -25,15 +25,23 @@ ok($objEsTrad->gt("o", "n\x{303}")); # 10 +ok($objEsTrad->eq("a\x{300}a", "aa\x{300}")); + $objEsTrad->change(level => 2); +ok($objEsTrad->gt("a\x{300}a", "aa\x{300}")); +ok($objEsTrad->lt("Ca\x{300}ca\x{302}", "ca\x{302}ca\x{300}")); +ok($objEsTrad->lt("ca\x{300}ca\x{302}", "Ca\x{302}ca\x{300}")); + +# 14 + ok($objEsTrad->eq("ch", "Ch")); ok($objEsTrad->eq("Ch", "CH")); ok($objEsTrad->eq("ll", "Ll")); ok($objEsTrad->eq("Ll", "LL")); ok($objEsTrad->eq("n\x{303}", "N\x{303}")); -# 15 +# 19 $objEsTrad->change(level => 3); @@ -45,4 +53,4 @@ ok($objEsTrad->lt("n\x{303}", "N\x{303}")); ok($objEsTrad->eq("n\x{303}", pack('U', 0xF1))); ok($objEsTrad->eq("N\x{303}", pack('U', 0xD1))); -# 22 +# 26 diff --git a/cpan/Unicode-Collate/t/loc_et.t b/cpan/Unicode-Collate/t/loc_et.t new file mode 100644 index 0000000000..d1526bfb1c --- /dev/null +++ b/cpan/Unicode-Collate/t/loc_et.t @@ -0,0 +1,70 @@ +#!perl +use strict; +use warnings; +use Unicode::Collate::Locale; + +use Test; +plan tests => 41; + +my $objEt = Unicode::Collate::Locale-> + new(locale => 'ET', normalization => undef); + +ok(1); +ok($objEt->getlocale, 'et'); + +$objEt->change(level => 1); + +ok($objEt->lt("s", "s\x{30C}")); +ok($objEt->gt("z", "s\x{30C}")); +ok($objEt->lt("z", "z\x{30C}")); +ok($objEt->gt("t", "z\x{30C}")); +ok($objEt->eq("v", "w")); +ok($objEt->lt("w", "o\x{303}")); +ok($objEt->lt("o\x{303}", "a\x{308}")); +ok($objEt->lt("a\x{308}", "o\x{308}")); +ok($objEt->lt("o\x{308}", "u\x{308}")); +ok($objEt->lt("u\x{308}", "x")); + +# 12 + +$objEt->change(level => 2); + +ok($objEt->lt("v", "w")); +ok($objEt->eq("s\x{30C}", "S\x{30C}")); +ok($objEt->eq("z", "Z")); +ok($objEt->eq("z\x{30C}", "Z\x{30C}")); +ok($objEt->eq("w", "W")); +ok($objEt->eq("o\x{303}", "O\x{303}")); +ok($objEt->eq("a\x{308}", "A\x{308}")); +ok($objEt->eq("o\x{308}", "O\x{308}")); +ok($objEt->eq("u\x{308}", "U\x{308}")); + +# 21 + +$objEt->change(level => 3); + +ok($objEt->lt("s\x{30C}", "S\x{30C}")); +ok($objEt->lt("z", "Z")); +ok($objEt->lt("z\x{30C}", "Z\x{30C}")); +ok($objEt->lt("w", "W")); +ok($objEt->lt("o\x{303}", "O\x{303}")); +ok($objEt->lt("a\x{308}", "A\x{308}")); +ok($objEt->lt("o\x{308}", "O\x{308}")); +ok($objEt->lt("u\x{308}", "U\x{308}")); + +# 29 + +ok($objEt->eq("s\x{30C}", "\x{161}")); +ok($objEt->eq("S\x{30C}", "\x{160}")); +ok($objEt->eq("z\x{30C}", "\x{17E}")); +ok($objEt->eq("Z\x{30C}", "\x{17D}")); +ok($objEt->eq("o\x{303}", pack('U', 0xF5))); +ok($objEt->eq("O\x{303}", pack('U', 0xD5))); +ok($objEt->eq("a\x{308}", pack('U', 0xE4))); +ok($objEt->eq("A\x{308}", pack('U', 0xC4))); +ok($objEt->eq("o\x{308}", pack('U', 0xF6))); +ok($objEt->eq("O\x{308}", pack('U', 0xD6))); +ok($objEt->eq("u\x{308}", pack('U', 0xFC))); +ok($objEt->eq("U\x{308}", pack('U', 0xDC))); + +# 41 diff --git a/cpan/Unicode-Collate/t/loc_fi.t b/cpan/Unicode-Collate/t/loc_fi.t new file mode 100644 index 0000000000..bbddc08c02 --- /dev/null +++ b/cpan/Unicode-Collate/t/loc_fi.t @@ -0,0 +1,118 @@ +#!perl +use strict; +use warnings; +use Unicode::Collate::Locale; + +use Test; +plan tests => 70; + +my $uuml = pack 'U', 0xFC; +my $Uuml = pack 'U', 0xDC; +my $arng = pack 'U', 0xE5; +my $Arng = pack 'U', 0xC5; +my $auml = pack 'U', 0xE4; +my $Auml = pack 'U', 0xC4; +my $ae = pack 'U', 0xE6; +my $AE = pack 'U', 0xC6; +my $ouml = pack 'U', 0xF6; +my $Ouml = pack 'U', 0xD6; +my $ostk = pack 'U', 0xF8; +my $Ostk = pack 'U', 0xD8; + +my $objFi = Unicode::Collate::Locale-> + new(locale => 'FI', normalization => undef); + +ok(1); +ok($objFi->getlocale, 'fi'); + +$objFi->change(level => 1); + +ok($objFi->lt('z', $arng)); +ok($objFi->lt($arng, $auml)); +ok($objFi->lt($auml, $ouml)); + +# 5 + +ok($objFi->eq("d\x{335}", "\x{111}")); +ok($objFi->eq("g\x{335}", "\x{1E5}")); +ok($objFi->eq("n\x{335}", "\x{14B}")); +ok($objFi->eq("t\x{335}", "\x{167}")); +ok($objFi->eq("z\x{335}", "\x{292}")); +ok($objFi->eq('v', 'w')); +ok($objFi->eq('y', $uuml)); +ok($objFi->eq($auml, $ae)); +ok($objFi->eq($ouml, $ostk)); + +# 14 + +$objFi->change(level => 2); + +ok($objFi->lt("d\x{335}", "\x{111}")); +ok($objFi->lt("g\x{335}", "\x{1E5}")); +ok($objFi->lt("n\x{335}", "\x{14B}")); +ok($objFi->lt("t\x{335}", "\x{167}")); +ok($objFi->lt("z\x{335}", "\x{292}")); +ok($objFi->lt('v', 'w')); +ok($objFi->lt('y', $uuml)); +ok($objFi->lt($auml, $ae)); +ok($objFi->lt($ouml, $ostk)); + +# 23 + +ok($objFi->eq("\x{111}", "\x{110}")); +ok($objFi->eq("\x{1E5}", "\x{1E4}")); +ok($objFi->eq("\x{14B}", "\x{14A}")); +ok($objFi->eq("\x{167}", "\x{166}")); +ok($objFi->eq("\x{292}", "\x{1B7}")); +ok($objFi->eq('w', 'W')); +ok($objFi->eq($uuml, $Uuml)); +ok($objFi->eq($arng, $Arng)); +ok($objFi->eq($auml, $Auml)); +ok($objFi->eq($ae, $AE)); +ok($objFi->eq($AE, "\x{1D2D}")); +ok($objFi->eq($ouml, $Ouml)); +ok($objFi->eq($ostk, $Ostk)); + +# 36 + +$objFi->change(level => 3); + +ok($objFi->lt("\x{111}", "\x{110}")); +ok($objFi->lt("\x{1E5}", "\x{1E4}")); +ok($objFi->lt("\x{14B}", "\x{14A}")); +ok($objFi->lt("\x{167}", "\x{166}")); +ok($objFi->lt("\x{292}", "\x{1B7}")); +ok($objFi->lt('w', 'W')); +ok($objFi->lt($uuml, $Uuml)); +ok($objFi->lt($arng, $Arng)); +ok($objFi->lt($auml, $Auml)); +ok($objFi->lt($ae, $AE)); +ok($objFi->lt($AE, "\x{1D2D}")); +ok($objFi->lt($ouml, $Ouml)); +ok($objFi->lt($ostk, $Ostk)); + +# 49 + +ok($objFi->eq("u\x{308}", $uuml)); +ok($objFi->eq("U\x{308}", $Uuml)); +ok($objFi->eq("\x{1EF}", "\x{292}\x{30C}")); +ok($objFi->eq("\x{1EE}", "\x{1B7}\x{30C}")); +ok($objFi->eq("a\x{30A}", $arng)); +ok($objFi->eq("A\x{30A}", $Arng)); +ok($objFi->eq("A\x{30A}", "\x{212B}")); +ok($objFi->eq("a\x{30A}\x{301}", "\x{1FB}")); +ok($objFi->eq("A\x{30A}\x{301}", "\x{1FA}")); +ok($objFi->eq("a\x{308}", $auml)); +ok($objFi->eq("A\x{308}", $Auml)); +ok($objFi->eq("\x{1FD}", "$ae\x{301}")); +ok($objFi->eq("\x{1FC}", "$AE\x{301}")); +ok($objFi->eq("\x{1E3}", "$ae\x{304}")); +ok($objFi->eq("\x{1E2}", "$AE\x{304}")); +ok($objFi->eq("o\x{308}", $ouml)); +ok($objFi->eq("O\x{308}", $Ouml)); +ok($objFi->eq("o\x{338}", $ostk)); +ok($objFi->eq("O\x{338}", $Ostk)); +ok($objFi->eq("o\x{338}\x{301}", "\x{1FF}")); +ok($objFi->eq("O\x{338}\x{301}", "\x{1FE}")); + +# 70 diff --git a/cpan/Unicode-Collate/t/loc_lv.t b/cpan/Unicode-Collate/t/loc_lv.t new file mode 100644 index 0000000000..6f411663fb --- /dev/null +++ b/cpan/Unicode-Collate/t/loc_lv.t @@ -0,0 +1,79 @@ +#!perl +use strict; +use warnings; +use Unicode::Collate::Locale; + +use Test; +plan tests => 50; + +my $objLv = Unicode::Collate::Locale-> + new(locale => 'LV', normalization => undef); + +ok(1); +ok($objLv->getlocale, 'lv'); + +$objLv->change(level => 1); + +ok($objLv->lt("c", "c\x{30C}")); +ok($objLv->gt("d", "c\x{30C}")); +ok($objLv->lt("g", "g\x{327}")); +ok($objLv->gt("h", "g\x{327}")); +ok($objLv->lt("k", "k\x{327}")); +ok($objLv->gt("l", "k\x{327}")); +ok($objLv->lt("l", "l\x{327}")); +ok($objLv->gt("m", "l\x{327}")); +ok($objLv->lt("n", "n\x{327}")); +ok($objLv->gt("o", "n\x{327}")); +ok($objLv->lt("r", "r\x{327}")); +ok($objLv->gt("s", "r\x{327}")); +ok($objLv->lt("s", "s\x{30C}")); +ok($objLv->gt("t", "s\x{30C}")); +ok($objLv->lt("z", "z\x{30C}")); +ok($objLv->lt("z\x{30C}", "\x{292}")); + +# 18 + +$objLv->change(level => 2); + +ok($objLv->eq("c\x{30C}", "C\x{30C}")); +ok($objLv->eq("g\x{327}", "G\x{327}")); +ok($objLv->eq("k\x{327}", "K\x{327}")); +ok($objLv->eq("l\x{327}", "L\x{327}")); +ok($objLv->eq("n\x{327}", "N\x{327}")); +ok($objLv->eq("r\x{327}", "R\x{327}")); +ok($objLv->eq("s\x{30C}", "S\x{30C}")); +ok($objLv->eq("z\x{30C}", "Z\x{30C}")); + +# 26 + +$objLv->change(level => 3); + +ok($objLv->lt("c\x{30C}", "C\x{30C}")); +ok($objLv->lt("g\x{327}", "G\x{327}")); +ok($objLv->lt("k\x{327}", "K\x{327}")); +ok($objLv->lt("l\x{327}", "L\x{327}")); +ok($objLv->lt("n\x{327}", "N\x{327}")); +ok($objLv->lt("r\x{327}", "R\x{327}")); +ok($objLv->lt("s\x{30C}", "S\x{30C}")); +ok($objLv->lt("z\x{30C}", "Z\x{30C}")); + +# 34 + +ok($objLv->eq("c\x{30C}", "\x{10D}")); +ok($objLv->eq("C\x{30C}", "\x{10C}")); +ok($objLv->eq("g\x{327}", "\x{123}")); +ok($objLv->eq("G\x{327}", "\x{122}")); +ok($objLv->eq("k\x{327}", "\x{137}")); +ok($objLv->eq("K\x{327}", "\x{136}")); +ok($objLv->eq("l\x{327}", "\x{13C}")); +ok($objLv->eq("L\x{327}", "\x{13B}")); +ok($objLv->eq("n\x{327}", "\x{146}")); +ok($objLv->eq("N\x{327}", "\x{145}")); +ok($objLv->eq("r\x{327}", "\x{157}")); +ok($objLv->eq("R\x{327}", "\x{156}")); +ok($objLv->eq("s\x{30C}", "\x{161}")); +ok($objLv->eq("S\x{30C}", "\x{160}")); +ok($objLv->eq("z\x{30C}", "\x{17E}")); +ok($objLv->eq("Z\x{30C}", "\x{17D}")); + +# 50 diff --git a/cpan/Unicode-Collate/t/loc_sk.t b/cpan/Unicode-Collate/t/loc_sk.t new file mode 100644 index 0000000000..cf762f7bce --- /dev/null +++ b/cpan/Unicode-Collate/t/loc_sk.t @@ -0,0 +1,69 @@ +#!perl +use strict; +use warnings; +use Unicode::Collate::Locale; + +use Test; +plan tests => 40; + +my $objSk = Unicode::Collate::Locale-> + new(locale => 'SK', normalization => undef); + +ok(1); +ok($objSk->getlocale, 'sk'); + +$objSk->change(level => 1); + +ok($objSk->lt("a", "a\x{308}")); +ok($objSk->gt("b", "a\x{308}")); +ok($objSk->lt("c", "c\x{30C}")); +ok($objSk->gt("d", "c\x{30C}")); +ok($objSk->lt("h", "ch")); +ok($objSk->gt("i", "ch")); +ok($objSk->lt("o", "o\x{302}")); +ok($objSk->gt("p", "o\x{302}")); +ok($objSk->lt("s", "s\x{30C}")); +ok($objSk->gt("t", "s\x{30C}")); +ok($objSk->lt("z", "z\x{30C}")); +ok($objSk->lt("z\x{30C}", "\x{292}")); # U+0292 EZH + +# 14 + +$objSk->change(level => 2); + +ok($objSk->eq("a\x{308}", "A\x{308}")); +ok($objSk->eq("c\x{30C}", "C\x{30C}")); +ok($objSk->eq("o\x{302}", "O\x{302}")); +ok($objSk->eq("s\x{30C}", "S\x{30C}")); +ok($objSk->eq("z\x{30C}", "Z\x{30C}")); +ok($objSk->eq("ch", "cH")); +ok($objSk->eq("cH", "Ch")); +ok($objSk->eq("Ch", "CH")); + +# 22 + +$objSk->change(level => 3); + +ok($objSk->lt("a\x{308}", "A\x{308}")); +ok($objSk->lt("c\x{30C}", "C\x{30C}")); +ok($objSk->lt("o\x{302}", "O\x{302}")); +ok($objSk->lt("s\x{30C}", "S\x{30C}")); +ok($objSk->lt("z\x{30C}", "Z\x{30C}")); +ok($objSk->lt("ch", "cH")); +ok($objSk->lt("cH", "Ch")); +ok($objSk->lt("Ch", "CH")); + +# 30 + +ok($objSk->eq("a\x{308}", pack('U', 0xE4))); +ok($objSk->eq("A\x{308}", pack('U', 0xC4))); +ok($objSk->eq("c\x{30C}", "\x{10D}")); +ok($objSk->eq("C\x{30C}", "\x{10C}")); +ok($objSk->eq("o\x{302}", pack('U', 0xF4))); +ok($objSk->eq("O\x{302}", pack('U', 0xD4))); +ok($objSk->eq("s\x{30C}", "\x{161}")); +ok($objSk->eq("S\x{30C}", "\x{160}")); +ok($objSk->eq("z\x{30C}", "\x{17E}")); +ok($objSk->eq("Z\x{30C}", "\x{17D}")); + +# 40 diff --git a/cpan/Unicode-Collate/t/loc_sl.t b/cpan/Unicode-Collate/t/loc_sl.t new file mode 100644 index 0000000000..0c5ddbbec5 --- /dev/null +++ b/cpan/Unicode-Collate/t/loc_sl.t @@ -0,0 +1,49 @@ +#!perl +use strict; +use warnings; +use Unicode::Collate::Locale; + +use Test; +plan tests => 20; + +my $objSl = Unicode::Collate::Locale-> + new(locale => 'SL', normalization => undef); + +ok(1); +ok($objSl->getlocale, 'sl'); + +$objSl->change(level => 1); + +ok($objSl->lt("c", "c\x{30C}")); +ok($objSl->gt("d", "c\x{30C}")); +ok($objSl->lt("s", "s\x{30C}")); +ok($objSl->gt("t", "s\x{30C}")); +ok($objSl->lt("z", "z\x{30C}")); +ok($objSl->lt("z\x{30C}", "\x{292}")); # U+0292 EZH + +# 8 + +$objSl->change(level => 2); + +ok($objSl->eq("c\x{30C}", "C\x{30C}")); +ok($objSl->eq("s\x{30C}", "S\x{30C}")); +ok($objSl->eq("z\x{30C}", "Z\x{30C}")); + +# 11 + +$objSl->change(level => 3); + +ok($objSl->lt("c\x{30C}", "C\x{30C}")); +ok($objSl->lt("s\x{30C}", "S\x{30C}")); +ok($objSl->lt("z\x{30C}", "Z\x{30C}")); + +# 14 + +ok($objSl->eq("c\x{30C}", "\x{10D}")); +ok($objSl->eq("C\x{30C}", "\x{10C}")); +ok($objSl->eq("s\x{30C}", "\x{161}")); +ok($objSl->eq("S\x{30C}", "\x{160}")); +ok($objSl->eq("z\x{30C}", "\x{17E}")); +ok($objSl->eq("Z\x{30C}", "\x{17D}")); + +# 20 |