Combining Grapheme Joiner

The combining grapheme joiner (CGJ), U+034F ͏ COMBINING GRAPHEME JOINER (HTML ͏) is a Unicode character that has no visible glyph and is "default ignorable" by applications. Its name is a misnomer and does not describe its function: the character does not join graphemes.[1] Its purpose is to semantically separate characters that should not be considered digraphs as well as to block canonical reordering of combining marks during normalization.

For example, in a Hungarian language context, adjoining letters c and s would normally be considered equivalent to the cs digraph. If they are separated by the CGJ, they will be considered as two separate graphemes. However, in contrast to the zero-width joiner and similar characters, the CGJ does not affect whether the two letters are rendered separately or as a ligature or cursively joined—the default behavior for this is determined by the font.[2]

The CGJ is also needed for complex scripts. For example, in most cases the Hebrew cantillation accent metheg is supposed to appear to the left of the vowel point and by default most display systems will render it like this even if it is typed before the vowel. But in some words in Biblical Hebrew the metheg appears to the right of the vowel, and to tell the display engine to render it properly on the right, CGJ must be typed between the metheg and the vowel. Compare:

heה
pathah (vowel)ַ
methegֽ
he + pathah + methegהַֽ
he + metheg + pathahהַֽ
he + metheg + CGJ + pathahהֽ͏ַ

In the case of several consecutive combining diacritics, an intervening CGJ indicates that they should not be subject to canonical reordering.[2]

In contrast, the "zero-width non-joiner" at U+200C in the General Punctuation range, which prevents two adjacent character from turning into a ligature.

References

This article is issued from Wikipedia. The text is licensed under Creative Commons - Attribution - Sharealike. Additional terms may apply for the media files.