Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Add calligraphic mathvariant support #271

Open
frankvel opened this issue Feb 28, 2019 · 7 comments
Open

Add calligraphic mathvariant support #271

frankvel opened this issue Feb 28, 2019 · 7 comments

Comments

@frankvel
Copy link

The calligraphic variant are widely supported on many mathematical fonts (e.g. STIX). Calligrahic fonts are not part of the Unicode spec, nor the W3C's MathML 3 spec, so the script variant should be retained as the fallback variant. However, the calligraphic variant would provide better compatability with LaTeX/MathJax, and make styling a little easier.

I hope it's not out of the way to suggest this here. If so, please redirect me to the appropriate page. In either case: Thank you for your contributions.

@fred-wang
Copy link
Contributor

I think this is perfectly valid proposal and I've been thinking about it too. My preference would be that new characters are integrated into Unicode so that the mathvariant attribute can just remap to them. Maybe @davidcarlisle or other former Math WG members can provide more context, but I think in the past the Unicode committee did not find the distinction with script really relevant. I heard STIX people wanted to propose that again, but I don't know the status.

@fred-wang
Copy link
Contributor

See also w3c/mathml#31

@davidcarlisle
Copy link
Collaborator

We should get Murray to comment as he's on the UTC, see for example

https://blogs.msdn.microsoft.com/murrays/2016/02/05/unicode-math-calligraphic-alphabets/

I think given the way current math alphabets are defined we should push to get these added (and non bold greek sans) to have a consistent set see Murray's final comments here

https://blogs.msdn.microsoft.com/murrays/2017/10/31/math-greek-letters/

@MurraySargent
Copy link

As noted in https://blogs.msdn.microsoft.com/murrays/2016/02/05/unicode-math-calligraphic-alphabets/, Cambria Math has calligraphic characters for the "Script" alphabets and STIX has script characters. So as is, those characters have to remain ambiguous as to which one they are. Either four new unambiguous alphabets need to be added or we can use variation selectors to disambiguate the current pair. Since most documents don't distinguish between the two styles, I prefer using variation selectors as described in the post. The two new Greek alphabets are unambiguous and can be added w/o variation selectors. I haven't submitted any proposals to the Unicode Technical Committee yet.

@fred-wang
Copy link
Contributor

Resolution: put this "level 2"

@davidcarlisle
Copy link
Collaborator

Note that Unicode 14 added these characters, not with distinct code points but via Variant selector characters U+FE00 and U+FE01 see

https://w3c.github.io/xml-entities/script.html

Currently in core and full MathML mathvariant=script still maps to the versions without these characters (so it is font-dependent which style you get) There currently isn't a proposal to add new script mathvariant values to map to these (that might anyway be problematic as it would mean mapping one character to two) however this does mean there is now a defined way to get these characters in MathML just usig Unicode character data in an <mi> and that should really be enough.

(It might take a while for available math fonts to support thse variant selector combinations, but that's a separate issue)

@fourpoints
Copy link

I made a JSON mapping of the mathvariant character sets in case someone else needs it: https://github.com/fourpoints/mathvariant

Preview is available here for digits 0-9 and letters a-Z. Latin Modern Math and XITS Math does not appear to support these variant selectors yet (but XITS Math still supports variants through the CSS property font-feature-settings).

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

5 participants