lib-misc-utils · crate

kinogaki-unicode

Libraryenvironment

Unicode text segmentation and character properties for Kinogaki's text editing and layout, from the Unicode Character Database (version UNICODE_VERSION):

Repository
lib-misc-utils (kinogaki/lib-misc-utils)
Folder
libs/lib-misc-utils/crates/unicode
Source
4 files, 3,547 lines
Tests
2 files, 208 lines
depends onused by tests alonedependencies for tests alone are listed below, not drawn

What it is

Unicode text segmentation and character properties for Kinogaki's text editing and layout, from the Unicode Character Database (version UNICODE_VERSION):

  • graphemes / grapheme_indices: extended grapheme clusters, the user-perceived characters a text cursor steps over (UAX #29 §3);
  • word_bound_indices: the text split at every word boundary, words and the runs between them (UAX #29 §4);
  • is_mark: combining marks (General_Category Mn, Mc or Me).

The property tables (src/tables.rs) are generated by tools/generate.py from the UCD files in ucd/; tests/tables.rs checks every code point against those files and tests/conformance.rs runs the UCD's own break tests.

Depends on

None.

Third-party

None.

Used by

CrateRepositoryAsWhat it is
kinogaki-uilib-uinormalKinogaki UI: the immediate-mode UI framework Kinogaki applications are built on.

Modules

Public types and traits

At the crate root

Structs GraphemeIndicesGraphemesWordBoundIndices

By module: 3 public types and traits in 2 modules

grapheme GraphemeIndicesGraphemes

word WordBoundIndices

Besides these, 1 public function at module level.