Grapheme is a LICENSE licensed [[Unicode Standard]] string library written in [[3. Reference/Software/Programming Languages/C|C]]99. - [Website](https://libs.suckless.org/libgrapheme/) - [Source](https://git.suckless.org/libgrapheme/) - [Documentation](https://libs.suckless.org/libgrapheme/man/) > libgrapheme is an extremely simple freestanding C99 library providing utilities for properly handling strings according to the latest Unicode standard 15.0.0. # Notability # Philosophy ## Political Developed by [[Suckless]], primarily by [[FRIGN]], who is also a member of [[Bitreich]], and [[2f30]]. ## Technology In the desperate effort to avoid using an external resource, FRIGN saw fit to include "over a million" standardized conformance tests, adding massive blobs directly into the repo. The test data files take up more than 99% of the repo and the tarball for the repo is nearly a megabyte as a result. # Platform Support # Features It offers fully Unicode compliant: - **grapheme cluster** (i.e. user-perceived character) **segmentation** - **word segmentation** - **sentence segmentation** - detection of permissible **line break opportunities** - **case detection** (lower-, upper- and title-case) - **case conversion** (to lower-, upper- and title-case) > on UTF-8 strings and codepoint arrays, which both can also be null-terminated. # Tips # References