Hans has replied off-list, saying that this is basically expected behaviour and that checking for ligatures by means of \lastnodetype is inherently unreliable in luatex. In that case I would suggest to change the wording in the manual, which quite unequivocally claims the opposite: | The \lastnodetype primitive is 𝜀-TEX compliant. The valid range is | still [−1, 15] and glyph nodes (formerly known as char nodes) have | number 0 while ligature nodes are mapped to 7. That way macro packages | can use the same symbolic names as in traditional 𝜀-TEX. (p.123) Best, -- Robert On 17.08.21 02:53, Robert wrote:
Hi,
while the last problem with \lastnodetype (cf. https://mailman.ntg.nl/pipermail/dev-luatex/2020-April/006414.html) has been fixed, there are still incompatibilities if it is preceded by \relax.
The following outputs 7,0,8,7,7,7 with pdftex and etex, but 7,0,0,0,0,0 with luatex:
%\input luaotfload.sty %\font\x=[lmroman12-regular.otf]:script=latn;+trep;+tlig;%mode=base; %\x % no difference \setbox0\hbox{--} \unhbox0 \the\lastnodetype % OK
--\the\lastnodetype % OK
--\relax\the\lastnodetype
\setbox0\hbox{--\relax\the\lastnodetype} \unhbox0
\toks0={--} \setbox0\hbox{\the\toks0\relax \the\lastnodetype} \unhbox0
\setbox0\vbox{\hbox{--\relax\the\lastnodetype}} \unvbox0 \bye
Best, -- Robert _______________________________________________ dev-luatex mailing list dev-luatex@ntg.nl https://mailman.ntg.nl/mailman/listinfo/dev-luatex