Word joiner, U+2060

An invisible character that forbids a line break at its position, without adding any width. It replaced the older use of U+FEFF for the same job.

How it works

The word joiner, e2 81 a0, carries a single line-breaking property: it forbids a break at its position. It replaced U+FEFF for this purpose when U+FEFF was reserved for the byte order mark, and it has zero advance width, so unlike a no-break space it adds no visible gap. Layout engines consult the Unicode line breaking algorithm, which assigns each character a break class; the word joiner's class prohibits a break either side. Everything else about it behaves like any other character in the string, which is the problem: it is invisible, it counts toward length, and it defeats a comparison between two strings that look identical.

What it is legitimately for

Keeping things together across a line break where a no-break space would add unwanted width, such as between a number and its unit.

What it breaks

  • It is invisible, so it breaks search, comparison and deduplication exactly as a zero-width space does.
  • In a URL slug or an identifier it produces a value that looks right and is not.

How to find it yourself

Look for e2 81 a0 in a hex dump.

What Clipboard Sanitizer does

Removed everywhere.