Updated: libunistring 0.9.5-1

Erwin Waterlander waterlan@xs4all.nl
Fri Apr 10 07:31:00 GMT 2015

libunistring (source package)
libunistring2 (runtime library)
libunistring-devel (development library and include files)
libunistring-doc (documentation)


New in 0.9.5:
* The data tables and line breaking algorithm have been updated to
   Unicode version 7.0.0.
* In the include file uniname.h, the function unicode_name_character
   has been extended to look for name aliases.



Text files are nowadays usually encoded in Unicode, and may consist of 
very different scripts – from Latin letters to Chinese Hanzi –, with 
many kinds of special characters – accents, right-to-left writing marks, 
hyphens, Roman numbers, and much more. But the POSIX platform APIs for 
text do not contain adequate functions for dealing with particular 
properties of many Unicode characters. In fact, the POSIX APIs for text 
have several assumptions at their base which don't hold for Unicode text.

This library provides functions for manipulating Unicode strings and for 
manipulating C strings according to the Unicode standard.

homepage: http://www.gnu.org/s/libunistring/
license: LGPL


This library 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
<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)
<unigbrk.h> grapheme cluster breaking

Who needs libunistring?

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

Erwin Waterlander

More information about the Cygwin-announce mailing list