Open wspr opened 6 years ago
I don't see them as backward compatibility but they should perhaps be documented as font changes as opposed to \symxx which are symbol (character selectors).
At work, where much of the maths is describing program flow rather than traditional mathematics almost all the identifiers are multi-letter so you need \mathrm{..} \mathit{..} \mathbf{...} not just as a legacy feature, but to get a font with text kerning and ligatures. I'm not convinced that they should be \textxx{..} and pay the price of being boxed four times and being slower and in some cases poorer script positioning,
On 25 January 2018 at 05:13, Will Robertson notifications@github.com wrote:
I'm not sure if I'll ever phase out the \mathXX synonyms entirely, but they definitely seem to cause confusion. (E.g., https://tex.stackexchange.com/questions/411995/unicode-math- changing-it-and-bfup-font-ranges)
I now think it would be best to introduce all the new commands as \symXX, and only later introduce the synonyms. The synonyms are really only there for backwards compatibility...
— You are receiving this because you are subscribed to this thread. Reply to this email directly, view it on GitHub https://github.com/wspr/unicode-math/issues/446, or mute the thread https://github.com/notifications/unsubscribe-auth/ABNcAvu8GN2g2bsKifV5-uQ0pAAFu4gAks5tOA1cgaJpZM4RsVyN .
Oops sorry, I should have explained myself better. I meant that the legacy \mathrm commands should be promoted as what they are, and new UM commands \symup, etc, not given “synonyms” with \math.. prefix just because that’s what people are used to writing.
To be a little more clear, the synonyms I was referring to are listed below. The first are "legitimate" synonyms for compatibility:
\cs{symbb} & \cs{mathbb} \\
\cs{symcal} & \cs{mathcal} \\
\cs{symscr} & \cs{mathscr} \\
\cs{symfrak} & \cs{mathfrak} \\
But the rest are less clear:
\cs{symbbit} & \cs{mathbbit} \\
\cs{symsfup} & \cs{mathsfup} \\
\cs{symsfit} & \cs{mathsfit} \\
\cs{symbfit} & \cs{mathbfit} \\
\cs{symbfcal} & \cs{mathbfcal} \\
\cs{symbfscr} & \cs{mathbfscr} \\
\cs{symbffrak} & \cs{mathbffrak} \\
\cs{symbfsfup} & \cs{mathbfsfup} \\
\cs{symbfsfit} & \cs{mathbfsfit} \\
I haven't fully sorted how this can be fixed up to avoid continued confusion, but I think I need to do a re-think.
I really think that \mathbfit
should not be an alias of \symbfit
as that breaks the promise made in the unicode-math
manual about the fact that "The legacy \math..
commands switch to text fonts that are set up to behave correctly in mathematics, and should be used for multi-letter identifiers.".
As unicode-math
is now, \mathbf
and \mathit
preserve ligatures actually giving you a "text math alphabet" that is actually suitable for multi-letter identifiers, but \mathbfit
is inconsistent with them, typesetting a multi-letter identifier as if it was a product between single letter identifiers.
Incidentally, what is the correct way to force a multi-letter identifier to be typeset in bold italics?
Incidentally, what is the correct way to force a multi-letter identifier to be typeset in bold italics?
Use \setmathfontface to define your own \mathbfit command.
I agree that unicode-math should drop the synonyms like \mathbfit entirely.
Is there a way to turn certain synonyms off? For instance, UM redefines mathbb
(when amssymb
is also in use), but I would like mathbb
to refer to the AMSb
font, while symbb
does the UM thing. Similar considerations apply to mathcal
and mathscr
.
@joukewitteveen
You can redeclare \mathbb
yourself:
\documentclass{article}
\usepackage{amsmath,amssymb}
\usepackage{unicode-math}
\setmathfont{STIX Two Math} % has a very distinctive Blackboard Bold font
\AtBeginDocument{\DeclareMathAlphabet{\mathbb}{U}{msb}{m}{n}}
\begin{document}
$\mathbb{A}\ne\symbb{A}$
\end{document}
I'm not sure if I'll ever phase out the
\mathXX
synonyms entirely, but they definitely seem to cause confusion. (E.g., https://tex.stackexchange.com/questions/411995/unicode-math-changing-it-and-bfup-font-ranges)I now think it would be best to introduce all the new commands as
\symXX
, and only later introduce the synonyms. The synonyms are really only there for backwards compatibility...