1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
|
GNU LIBUNISTRING - Unicode string library
This library provides functions for manipulating Unicode strings and
for manipulating C strings according to the Unicode standard.
It consists of the following parts:
unistr.h elementary string functions
uniconv.h conversion from/to legacy encodings
unistdio.h formatted output to strings
uniname.h character names
unictype.h character classification and properties
uniwidth.h string width when using nonproportional fonts
unigbrk.h grapheme cluster breaks
uniwbrk.h word breaks
unilbrk.h line breaking algorithm
uninorm.h normalization (composition and decomposition)
unicase.h case folding
uniregex.h regular expressions (not yet implemented)
libunistring is for you if your application involves non-trivial text
processing, such as upper/lower case conversions, line breaking, operations
on words, or more advanced analysis of text. Text provided by the user can,
in general, contain characters of all kinds of scripts. The text processing
functions provided by this library handle all scripts and all languages.
libunistring is for you if your application already uses the ISO C / POSIX
<ctype.h>, <wctype.h> functions and the text it operates on is provided by
the user and can be in any language.
libunistring is also for you if your application uses Unicode strings as
internal in-memory representation.
Installation
------------
As usual for GNU packages:
$ ./configure --prefix=[[PREFIX]] where [[PREFIX]] is e.g. $HOME/local
$ make
$ make install
Copyright
---------
The libunistring library and its header files are dual-licensed under
"the GNU LGPLv3+ or the GNU GPLv2+". This means, you can use it under either
- the terms of the GNU Lesser General Public License (LGPL) version 3 or
(at your option) any later version, or
- the terms of the GNU General Public License (GPL) version 2 or
(at your option) any later version, or
- the same dual license "the GNU LGPLv3+ or the GNU GPLv2+".
You find the GNU LGPL version 3 in the file COPYING.LIB. This license is
based on the GNU GPL version 3, see file COPYING.
You can find the GNU GPL version 2 at
<https://www.gnu.org/licenses/old-licenses/gpl-2.0.html>.
Note: This dual license makes it possible for the libunistring library
to be used by packages under GPLv2 or GPLv2+ licenses, in particular. See
the table in <https://www.gnu.org/licenses/gpl-faq.html#AllCompatibility>.
The documentation is under another license; see in the documentation.
Download
--------
https://ftp.gnu.org/gnu/libunistring/libunistring-1.2.tar.gz
Homepage
--------
https://www.gnu.org/software/libunistring/
Bug reports
-----------
Report bugs
- in the bug tracker at <https://savannah.gnu.org/projects/libunistring>
- or by email to <bug-libunistring@gnu.org>.
Join the GNU project
--------------------
See file JOIN-GNU.
Bruno Haible <bruno@clisp.org>
|