U+2000..U+200A
FIXED-WIDTH SPACE

Fixed-width typographic space from the U+2000 block.

Codepoint
U+2000..U+200A
Short
SP
Group
space-variant
Class
context-dependent
Default
replaced
Replaced by
U+0020
Codepoints
11

What it is

Spaces that are not the ordinary space: some prevent a line break at that point, some have a fixed width regardless of the font, some do both. They are visible as whitespace but indistinguishable by eye from a normal space.

Where it comes from

From typography done properly — and from web pages and word processors doing it automatically, whether or not it was wanted. Copying a price, a date or a unit out of a rendered page very often brings one along.

When it belongs

Often. A non-breaking space between a number and its unit is correct typography in German, French and English alike, and keeping a value and its unit on one line is the whole point of it.

That is why TraceFree replaces these characters with an ordinary space rather than deleting them. Deleting merges words: a price would lose the gap between the number and the currency symbol. Replacing keeps the text readable and makes the spacing predictable.

What TraceFree does with it

PresetAction
conservativeasked about
defaultreplaced
report-onlyasked about
strictreplaced

Context guards can only ever make a cleanup gentler, never sharper. A rule saying “always remove” does not override them.

How to remove it

In TraceFree, turn on the clipboard watcher and copy the text — the finding appears with a before-and-after comparison of the affected lines. For files, a watched folder does the same, keeping a backup copy alongside.

How to write it

This page never prints the character itself, only ways of writing it. A page about invisible characters that contained invisible characters would be unreviewable — and that is the problem the program exists to solve.

NotationValue
UnicodeU+2000
Rust\u{2000}
JavaScript, Python\u2000
HTML   
Regex (PCRE, Rust)\x{2000}

Related characters