{{ message }}

# LaTeXML should set explicit spacing for operators outside the MathML dictionary #789

Closed
opened this issue Jul 17, 2016 · 2 comments
Closed

# LaTeXML should set explicit spacing for operators outside the MathML dictionary#789

opened this issue Jul 17, 2016 · 2 comments
Labels
Milestone

### fred-wang commented Jul 17, 2016

 Simple testcase: $\int dr$ This will generate 𝑑r[/itex]  But MATHEMATICAL ITALIC SMALL D is not an operator in the Operator Dictionary (https://www.w3.org/TR/MathML3/appendixc.html) so rendering engines are likely to use the default value thickmathspace for lspace/rspace (https://www.w3.org/TR/MathML3/chapter3.html#presm.mo). This leads to too much spacing compared to what e.g. XeLaTeX does. I guess this may happen for more cases of operators outside the Operator Dictionary. The text was updated successfully, but these errors were encountered:
added this to the LaTeXML-0.8.3 milestone Jul 17, 2016

### brucemiller commented Sep 14, 2016

 I've been meaning to hunt down a machine readable operator dictionary for other purposes; And, I'd like to have access to a good set of font metrics covering all of Unicode, but... what would you suggest using for the default spacing for otherwise unknown symbols?

### brucemiller commented May 6, 2018

 Actually, Knuth recommends writing \int \,dr, other than that TeX has no idea that "d" is an operator. On the more general issue, the MathML spec seems to imply an equivalence between simple codepoints with mathvariants, and secondary plane characters, but doesn't seem explicit about whether it's the spec writer's responsibility to include the plane 1 codepoints in the operator dictionary or the implementer's responsibility to do the reverse lookup! :> And in any case, it's not clear that all the spec writers would agree that "d" is an operator in the mo sense!! At any rate, I've tuned the spacing for diffop, which makes it look more right. For the more general case, I'd need some help in figuring out what spacing TeX would have wanted. That could be carried through & compared to the std operator dictionary and include the right spacing if it is different. But this fixes the most egregious case; Thanks for the report!
closed this May 6, 2018