From 81b5bd6324b4b2aa56bdd05253051d0c0ac30a19 Mon Sep 17 00:00:00 2001
From: "@aphillips" Invisible Unicode Characters
text. Because many of these characters are invisible or do not have keyboard equivalents, users are not always aware
of their presence or absence. As a result, these characters can interfere with string matching when they are part of the encoded
character sequence but the expected matching text does not also include them. Some examples of these characters include:
The Unicode control characters U+200D Zero Width Joiner (also known + +
The Unicode control characters U+200D Zero Width Joiner (also known as ZWJ) and U+200C Zero Width Non-Joiner (also known as ZWNJ). While these characters can be used to control ligature formation—either preventing the formation of undesirable ligatures or encouraging the formation of desirable ones—their primary use is to control the joining and shape selection in complex scripts such as the Arabic or various of the Indic scripts. - For example, ZWJ and ZWNJ are used in some Indic scripts to allow - authors to control the shape that certain conjuncts take. See the + Some Indic scripts use the ZWJ and ZWNJ characters to allow authors to control the shape that certain conjuncts take. See the discussion in Chapter 12 of [[!Unicode]].
- +The ZWJ character is also used in forming certain emoji sequences, which is discussed in more detail below.