Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

ICU: What does NFD and NFC mean?

I found a snippet which reads

Any-Latin; NFD; [:Nonspacing Mark:] Remove; NFC; [:Punctuation:] Remove; Lower();

...and is supposed to make arbitrary string well fitting into a URL.

So, I guess the things between the semicolons are something like "commands" which are to be executed, but what particularly does NDF and NFC stand for? I really did find nothing even in the official documentation...

like image 999
Adrian Föder Avatar asked May 14 '16 12:05

Adrian Föder


1 Answers

See ICU transliterators and the linked page on TR15 normalization forms for complete examples.

Normalization Form D (NFD) Canonical Decomposition

Normalization Form C (NFC) Canonical Decomposition, followed by Canonical Composition

Normalization Form KD (NFKD) Compatibility Decomposition

Normalization Form KC (NFKC) Compatibility Decomposition, followed by Canonical Composition

like image 55
Steven R. Loomis Avatar answered Sep 30 '22 17:09

Steven R. Loomis