Non-breaking space (source code)

= Non-breaking space
{title2=U+00A0}
{wiki}

A \b[non-breaking space] is a separating character intended to keep adjacent text together during ordinary <line breaking>. The common <Unicode> character is U+00A0 NO-BREAK SPACE. It has line-break class GL; the surrounding rules determine which boundaries are prohibited.<Unicode Line Breaking Algorithm by the Unicode Consortium>[§5.1, GL class; rules LB12 and LB12a]{ref}

For an example, `25\u00a0µm` is a visible spelling of an escape notation for a number, U+00A0, and a <micrometre> symbol. The actual text `25 µm` keeps the number and unit together at that separator. Ordinary `25 µm` instead uses U+0020 SPACE and can provide a wrap opportunity there. Neither choice fixes the physical width of the gap in every <computer font>.

The rule is local. In the sequence `A\u0020\u00a0B`, a break after the ordinary space can still be allowed, leaving the non-breaking space on the following line. Thus inserting U+00A0 does not make an entire <text paragraph> unbreakable.<Unicode Line Breaking Algorithm by the Unicode Consortium>[GL description: SPACE before NO-BREAK SPACE; LB12a exception]{ref}