In HTML, any series of ordinary space characters produces the same layout gap as a single space.
To keep documents compact, and help you avoid the temptation to needlessly fuss over whitespace, TypeMetal automatically condenses spaces as you type and edit. If you press the spacebar twice in succession, for example, TypeMetal silently absorbs the second space, leaving only a single space at the insertion point. The same happens for text that you paste or drag-and-drop from another app.
Most of the time, this is what you want. When you want to leave a wider gap between words, however, you can use non-breaking spaces, as described below.
A non-breaking space, represented in HTML by the
entity or Unicode character U+00A0, provides a way to leave a gap between words that can’t be broken by line-wrapping. When it performs text layout, a Web browser keeps words that are separated by a non-breaking space together. This can be useful when you want ensure that a phrase like “Mac OS X” doesn’t get split across lines.
Runs of non-breaking spaces also don't collapse during layout the way that ordinary spaces do. You can therefore use successive non-breaking spaces to produce wider gaps between words, when desired.
Inserting a Non-Breaking Space
To insert a non-breaking space, hold down the Option key and press the spacebar. Or, choose Edit → Insert Non-Breaking Space from the menu.
Changing Between Ordinary and Non-Breaking Spaces
To convert spaces in some selected text to non-breaking, or to ordinary spaces, use the commands provided in TypeMetal’s Edit menu: Convert to Non-Breaking Spaces and Convert to Ordinary Spaces.
TypeMetal Makes Non-Breaking Spaces Visible
To help you see and work with non-breaking spaces, TypeMetal shows each non-breaking space character as a visible character. TypeMetal has a few preferred substitute characters that it uses to stand in for non-breaking spaces. If one of those substitute characters is already in use in a given document, TypeMetal will choose a different substitute character. They are, in descending order of preference:
|Glyph||Unicode Character Code
When Non-Breaking Spaces Can’t Be Shown
In rare cases where all of TypeMetal’s preferred substitute characters are used in a document, showing of non-breaking spaces as visible characters will be disabled for that editing session, and TypeMetal notifies you with a sheet that looks like this:
TypeMetal re-assesses as you type, paste, and drop new content into a document, and either switches to a different non-breaking space substitute character or disables showing of non-breaking spaces, if necessary. A similar notification sheet appears when TypeMetal runs out of suitable substitute characters during editing:
TypeMetal’s substitute characters are fairly obscure, so it will be rare for all of them to appear in a given document. When they do, the document can be safely opened, edited, and saved as usual — TypeMetal will simply be unable to make non-breaking spaces in the document visible during your editing session for that document. TypeMetal’s ability to show an accurate insertion point will be impaired too: You will find that a space you type at the end of some text, for example, doesn’t appear until you type a non-space character after it. Fortunately, the vast majority of documents won’t suffer from this problem.