Rewrite Rulesbase/not-right-arrow-to-nrightarrow

base/not-right-arrow-to-nrightarrow

Rewrite not followed by a U+2192 right arrow to the canonical AMS nrightarrow character.

Rewrite patterns#

  1. to-command\not\to\nrightarrow
  2. rightarrow-command\not\rightarrow\nrightarrow
  3. literal\not→\nrightarrow

Examples#

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

to command#

Before

a\not\to b

After this rule

a\nrightarrow b

Rendering verified with the declared packages.

rightarrow command#

Before

a\not\rightarrow b

After this rule

a\nrightarrow b

Rendering verified with the declared packages.

Literal#

Before

a\not→ b

After this rule

a\nrightarrow b

Rendering verified with the declared packages.

Same family#

Notes#

Uses the exact MathJax not_remap entry U+2192 -> U+219B. Accept a bare U+2192 Char or a zero-argument known character command backed by either to or rightarrow. The source owner remains base because not is a base command; AMS is required only for the produced character target, whose availability must guard the rule. Both atoms must occupy the same Root or Group child slot. Scripted, arguments, unknown nodes, Error, Environment, and cross-slot content fail closed. Consume not and its sibling atomically. Every Applied result removes the matched cmd:not node and its right-arrow sibling; all other shapes return Skipped, so the number of eligible cmd:not nodes strictly decreases.

Disable this rule#

TransformEngine(profile="corpus", disable_rules=["base/not-right-arrow-to-nrightarrow"])
new TransformEngine({ profile: 'corpus', disableRules: ['base/not-right-arrow-to-nrightarrow'] })

Open in Playground