libutf

UTF-8 library
git clone git://git.suckless.org/libutf
Log | Files | Refs | README | LICENSE

commit 8092d6ff91a1f46f5cc409ed26489462baca7ec8
parent 64146c5d02b07cff6ca69df5e6cf75cb21391352
Author: Connor Lane Smith <cls@lubutu.com>
Date:   Sun, 15 Apr 2012 13:15:40 +0100

add README
Diffstat:
README | 22++++++++++++++++++++++
1 file changed, 22 insertions(+), 0 deletions(-)

diff --git a/README b/README @@ -0,0 +1,22 @@ +libutf +------ + +This is a C89 UTF-8 library, with an API compatible with that of Plan 9's +libutf, but with a number of improvements: + + * Support for runes beyond the Basic Multilingual Plane. + * utflen and utfnlen cannot overflow on 32- or 64-bit machines. + * chartorune treats all invalid codepoints (as per RFC 3629) as though U+FFFD. + * fullrune, utfecpy, and utfnlen do not overestimate the length of malformed + runes. + * An extra function, charntorune(p,s,n), equivalent to + fullrune(s,n)?chartorune(p,s):0. + +Differences to be aware of: + + * UTFmax is 6, though runetochar will never write more than 4 bytes. Plan 9's + UTFmax is 3. + * chartorune may consume multiple bytes for each illegal rune; Plan 9 always + consumes 1. + * runelen and runetochar return 0 if the rune is too large; Plan 9 erroneously + returns UTFmax.