Rewrite Rulesbase/quad-drop

base/quad-drop

Drop quad in math mode and collapse each text-mode quad run to one ordinary space.

Rewrite patterns#

  1. math-quad\quad∅ removed
  2. text-quad-run\quad\quad

Examples#

Each example shows this rule applied in isolation. A complete normalization profile may make additional changes.

Math quad#

Before

A\quad B

After this rule

AB

The rendered result has pixel differences from the input.

Text quad run#

Before

\text{A\quad\quad B}

After this rule

\text{A B}

The rendered result has pixel differences from the input.

Text quad singleton#

Before

\text{A\quad B}

After this rule

\text{A B}

The rendered result has pixel differences from the input.

Upstream rules#

Same family#

Notes#

Owns the shared quad target across base/math and textmacros/text active records. In math mode, remove every quad, including singletons. In text mode, replace each maximal adjacent run of one or more quad commands with one ordinary text space. Authoring-level double-enspace-to-quad may produce quad; this rule eliminates that downstream target in Equiv. Authoring-level double-quad-to-qquad may instead consume quad pairs; qquad-drop owns that downstream target, so both paths reach the same Equiv normal form. Do not cross groups, arguments, scripts, environment cells, slots, modes, or non-Spacer nodes.

Disable this rule#

TransformEngine(profile="corpus", disable_rules=["base/quad-drop"])
new TransformEngine({ profile: 'corpus', disableRules: ['base/quad-drop'] })

Open in Playground