This is a live mirror of the Perl 5 development currently hosted at https://github.com/perl/perl5
Update Unicode-Collate to CPAN version 0.67
[perl5.git] / cpan / Unicode-Collate / README
1 Unicode/Collate version 0.67
2 ===============================
3
4 NAME
5
6   Unicode::Collate - Unicode Collation Algorithm
7
8 SYNOPSIS
9
10   use Unicode::Collate;
11
12   #construct
13   $Collator = Unicode::Collate->new(%tailoring);
14
15   #sort
16   @sorted = $Collator->sort(@not_sorted);
17
18   #compare
19   $result = $Collator->cmp($a, $b); # returns 1, 0, or -1.
20   $result = $Collator->eq($a, $b);  # returns true/false
21     (similarly ->ne, ->lt, ->le, ->gt, ->ge)
22
23 Note: Strings in @not_sorted, $a and $b are interpreted
24 according to Perl's Unicode support. See perlunicode,
25 perluniintro, perlunitut, perlunifaq, utf8.
26 Otherwise you can use "preprocess" or should decode them before.
27
28 INSTALL
29
30   Perl 5.6.1 or later is required.
31   Perl 5.8.1 or later is recommended.
32
33   Though this distribution contains a subset of an old DUCET, named
34   "keys.txt", this one is intended only for doing a test of this module
35   and practically useless for any other purpose.
36
37   Installation of Unicode::Collate::Locale requires Collate/Locale.pm,
38   Collate/Locale/*.pm, Collate/CJK/*.pm and Collate/allkeys.txt.
39   On building, Unicode::Collate::Locale doesn't require any of data/*.txt,
40   gendata/*, and mklocale.
41   Tests for Unicode::Collate::Locale are named t/loc_*.t.
42
43 To install this module type the following:
44
45    perl Makefile.PL
46    make
47    make test
48    make install
49
50 If you have a C compiler and want to use XSUB edition,
51 type the following (!! "enableXS" must run before "Makefile.PL" !!):
52
53    perl enableXS
54    perl Makefile.PL
55    make
56    make test
57    make install
58
59 If you decide to install pure Perl (i.e. non-XS) edition after trying
60 to build XSUB, type the following:
61
62    make clean
63    perl disableXS
64    perl Makefile.PL
65    make
66    make test
67    make install
68
69 DEPENDENCIES
70
71   The conformant collation requires Unicode::Normalize (v 0.10 or later)
72   although Unicode::Collate can be used without Unicode::Normalize.
73
74 ABOUT DUCET
75
76   Though this module can be used without any C<table> file,
77   to use this module easily, it is recommended to install a table file
78   in the UCA format, by copying it under the directory
79   <a place in @INC>/Unicode/Collate.
80
81   You can install such a table file by adding it to "Collate" directory
82   (where "keys.txt" is placed) in this distribution before executing
83   Makefile.PL.
84
85   The most preferable one is "The Default Unicode Collation Element Table"
86   (aka DUCET), available from the Unicode Consortium's website:
87
88    http://www.unicode.org/Public/UCA/
89
90    http://www.unicode.org/Public/UCA/latest/allkeys.txt (latest version)
91
92   If DUCET is not installed, it is recommended to copy the file
93   from http://www.unicode.org/Public/UCA/latest/allkeys.txt
94   to <a place in @INC>/Unicode/Collate/allkeys.txt manually.
95
96 HOW TO CHANGE DUCET (NOT WARRANTED)
97
98   0. rewriting UCA_Version and Base_Unicode_Version in Collate.pm
99      and t/version.t is preferred.
100   1. replace Collate/allkeys.txt with a new DUCET.
101   2. run mklocale to generate new Locale/*.pl and Korean.pm.
102   3. replace Collate/Locale/*.pl with the new Locale/*.pl,
103      and Collate/CJK/Korean.pm with the new Korean.pm.
104   4. make test.
105      IF FAIL, it may require more changes, not be easy.
106
107 AUTHOR, COPYRIGHT AND LICENSE
108
109 The Unicode::Collate module for perl was written by SADAHIRO Tomoyuki,
110 <SADAHIRO@cpan.org>. This module is Copyright(C) 2001-2010,
111 SADAHIRO Tomoyuki. Japan. All rights reserved.
112
113 This module is free software; you can redistribute it and/or
114 modify it under the same terms as Perl itself.
115
116 The file Unicode/Collate/allkeys.txt was copied verbatim
117 from http://www.unicode.org/Public/UCA/5.2.0/allkeys.txt
118 This file is Copyright (c) 1991-2009 Unicode, Inc. All rights reserved.
119 Distributed under the Terms of Use in http://www.unicode.org/copyright.html