# ams/nobreakspace-to-tilde

Collapse nobreakspace to the canonical nonbreaking space token.

https://texform.dev/rules/ams/nobreakspace-to-tilde

## Metadata

| Field | Value |
| --- | --- |
| Key | ams/nobreakspace-to-tilde |
| Level | authoring |
| Fidelity | render |
| Enabled by packages | ams |
| Profiles | Authoring, Faithful, Corpus, Equiv |

## Rewrite patterns

From:

```latex
\nobreakspace
```

To:

```latex
~
```

## Examples

Examples show the rule in isolation, not a complete normalization profile.

### nobreakspace between symbols

Before:

```latex
A\nobreakspace B
```

After this rule:

```latex
A~B
```

Packages: ams.

Rendering verified with the declared packages.

## Triggers

- [\\nobreakspace](https://texform.dev/latex/commands/nobreakspace)

## Eliminates

- [\\nobreakspace](https://texform.dev/latex/commands/nobreakspace)

## Same family

- [base/break-to-linebreak](https://texform.dev/rules/base/break-to-linebreak): Collapse break to the explicit linebreak command.
- [base/newline-to-linebreak](https://texform.dev/rules/base/newline-to-linebreak): Collapse newline to the explicit linebreak command.
- [base/control-space-to-tilde](https://texform.dev/rules/base/control-space-to-tilde): Rewrite math-mode control space to the canonical active space token.
- [base/gt-space-to-colon-space](https://texform.dev/rules/base/gt-space-to-colon-space): Collapse \> to the canonical medium math space command \:
- [base/hfil-to-hfill](https://texform.dev/rules/base/hfil-to-hfill): Collapse hfil to the canonical hfill command under MathJax spacing semantics.
- [base/hfilll-to-hfill](https://texform.dev/rules/base/hfilll-to-hfill): Collapse hfilll to the canonical hfill command.
- [base/hskip-to-hspace](https://texform.dev/rules/base/hskip-to-hspace): Collapse hskip to the explicit hspace command.
- [base/negthinspace-to-neg-comma-space](https://texform.dev/rules/base/negthinspace-to-neg-comma-space): Collapse negthinspace to the explicit negative thin math space command.
- [base/space-to-tilde](https://texform.dev/rules/base/space-to-tilde): Collapse space to the explicit nonbreaking space token.
- [base/thinspace-to-comma-space](https://texform.dev/rules/base/thinspace-to-comma-space): Collapse thinspace to the explicit thin math space command.
- [base/double-enspace-to-quad](https://texform.dev/rules/base/double-enspace-to-quad): Rewrite two adjacent enspaces to one exact-width quad.
- [base/double-quad-to-qquad](https://texform.dev/rules/base/double-quad-to-qquad): Merge two adjacent quads into one qquad for authoring normalization.
- [base/small-spacer-merge-to-enspace](https://texform.dev/rules/base/small-spacer-merge-to-enspace): Merge exact half-em small-spacer chunks into enspace in one pass.
- [base/allowbreak-drop](https://texform.dev/rules/base/allowbreak-drop): Drop allowbreak as a pure linebreak hint during cleanup-oriented normalization.
- [base/badbreak-drop](https://texform.dev/rules/base/badbreak-drop): Drop badbreak as a pure linebreak hint during cleanup-oriented normalization.
- [base/goodbreak-drop](https://texform.dev/rules/base/goodbreak-drop): Drop goodbreak as a pure linebreak hint during cleanup-oriented normalization.
- [base/mathstrut-drop](https://texform.dev/rules/base/mathstrut-drop): Drop the invisible mathstrut layout helper in cleanup-oriented normalization.
- [base/nobreak-drop](https://texform.dev/rules/base/nobreak-drop): Drop nobreak as a pure linebreak hint during cleanup-oriented normalization.
- [base/strut-drop](https://texform.dev/rules/base/strut-drop): Drop the fixed empty strut node in cleanup-oriented normalization.
- [base/enspace-drop](https://texform.dev/rules/base/enspace-drop): Drop enspace in math mode and collapse each text-mode enspace run to one ordinary space.
- [base/qquad-drop](https://texform.dev/rules/base/qquad-drop): Drop qquad in math mode and collapse each text-mode qquad run to one ordinary space.
- [base/quad-drop](https://texform.dev/rules/base/quad-drop): Drop quad in math mode and collapse each text-mode quad run to one ordinary space.
- [base/mkern-to-mspace](https://texform.dev/rules/base/mkern-to-mspace): Collapse mkern to the explicit mspace command.
- [base/mskip-to-mspace](https://texform.dev/rules/base/mskip-to-mspace): Collapse mskip to the explicit mspace command.

## Notes

The command is defined only by ams and follows MathJax's Tilde method. Produces is empty because ~ is a special token rather than a knowledge command, environment, or character target.

## Disable this rule

```python
TransformEngine(profile="corpus", disable_rules=["ams/nobreakspace-to-tilde"])
```

```javascript
new TransformEngine({ profile: 'corpus', disableRules: ['ams/nobreakspace-to-tilde'] })
```

[Open in Playground](https://play.texform.dev/?input=A%5Cnobreakspace+B)
