mathvariant → Unicode math alphanumerics

Serve the repo root over HTTP (for example python -m http.server 8080) and open http://localhost:8080/mathvariant/index.html so ES modules load.

The Before column is outside the transform scope; the After column runs mathvariant/mathvariant.js via _MathTransforms.transform. Supported elements match the selector *[mathvariant]; each row uses mi or mn as noted. The polyfill replaces text with styled code points and removes mathvariant when every character mapped.

(falls back to your browser's default math/serif font if the selection isn't installed)
All mathvariant values handled by this polyfill
Markup Before After
<mi mathvariant="normal">πx</mi> (no-op) πx πx
<mi mathvariant="bold">ABαβ012</mi> ABαβ012 ABαβ012
<mi mathvariant="italic">ABCabch</mi> (maps h to U+210E) ABCabch ABCabch
<mi mathvariant="bold-italic">ABΓγ</mi> ABΓγ ABΓγ
<mi mathvariant="double-struck">CHNRZ</mi> + <mn mathvariant="double-struck">012</mn> CHNRZ012 CHNRZ012
<mi mathvariant="bold-fraktur">Abcz</mi> Abcz Abcz
<mi mathvariant="script">BEFeg</mi> BEFeg BEFeg
<mi mathvariant="bold-script">Abcz</mi> Abcz Abcz
<mi mathvariant="fraktur">CHIRZabc</mi> CHIRZabc CHIRZabc
<mi mathvariant="sans-serif">Abz012</mi> Abz012 Abz012
<mi mathvariant="bold-sans-serif">AbzΓγ789</mi> AbzΓγ789 AbzΓγ789
<mi mathvariant="sans-serif-italic">Abcz</mi> Abcz Abcz
<mi mathvariant="sans-serif-bold-italic">ΑΒΓαβγ</mi> ΑΒΓαβγ ΑΒΓαβγ
<mi mathvariant="monospace">Abcz012</mi> Abcz012 Abcz012
<mi mathvariant="isolated">بتثج</mi> (Arabic math) بتثج بتثج
<mi mathvariant="initial">بتثج</mi> بتثج بتثج
<mi mathvariant="tailed">جحخس</mi> جحخس جحخس
<mi mathvariant="looped">بتثج</mi> بتثج بتثج
<mi mathvariant="stretched">بتثج</mi> بتثج بتثج
<mi mathvariant="chancery">ABCHWxyz</mi> (script) ABCHWxyz ABCHWxyz
<mi mathvariant="roundhand">ABCHWxyz</mi> (script + VS) ABCHWxyz ABCHWxyz