[luatex] Wrong placement using \displaylimits and unicode-math

Frank Mittelbach frank.mittelbach at latex-project.org
Thu Dec 9 10:19:33 CET 2021


Am 08.12.21 um 21:33 schrieb Jakub Kaczor:
> They seem to work fine for me, but I
> spotted some weird behavior using `\displaylimits`*in in-line math*. In my
> opinion, the limits of integration are placed way too much on the
> right. The expected behavior is to have the same placement as with
> `\nolimits` in in-line math, and as with `\limits` in display math. The
> problem doesn't occur with XeLaTeX and it seems to be independent of a
> font.


looks like an engine bug to me but it happens only if unicode-math is 
used. But I don't think it is a problem of the package rather than a 
problem of using OTF fonts.

A slightly simplified/altered example:

\documentclass{article}

\usepackage{unicode-math}

\showoutput

\begin{document}

$\int\nolimits_a^b \showlists$
$\int\displaylimits_a^b \showlists$

\end{document}

This shows, that the resulting math lists from TeX's point of view are 
identical:

\mathop
.\fam0 ∫
^\fam0 𝑏
_\fam0 𝑎

in both lines. But the generated symbolic page output shows

.\TU/latinmodern-math.otf(1)/m/n/10 ∫
\kern-3.32 (font)
\vbox(15.46805+0.07)x7.39395, shifted 5.05505, direction TLT

for the formula with \nolimits but no  \kern-3.32 (font)
for the second formula

I may be wrong (and it is late) but I think this  negative value of 
italic correction of ∫ which seems to get added when \nolimits are 
explicitly used but not if the default is no limits or if \displaylimits 
is used but we aren't in a display:

\documentclass{article}

\usepackage{unicode-math}

\showoutput

\begin{document}

$\mathop{f}\nolimits_a^b$
$\mathop{f}\displaylimits_a^b$
$\mathop{f}\nolimits\displaylimits_a^b$  % this overwrite the nolimits
\end{document}

here "b" hits the "f" in the first line

frank

frank


More information about the luatex mailing list.