On Fri, Nov 01, 2024 at 06:55:56AM +0000, Werner LEMBERG wrote:
> 
> Consider this input file (the second line uses U+2019).
> 
> ```
> \input texinfo
> 
> c''''
> 
> c’’’’
> 
> @bye
> ```
> 
> If processed with pdftex (or xetex), everything's fine.  In the first
> line, '''' gets resolved into two closing double quotes via TeX's
> input ligature mechanism, as expected.  In the second line, the four
> U+2019 characters stay as-is.
> 
> However, if I say
> 
> ```
> PDFTEX=luatex texi2pdf ...
> ```
> 
> I get incorrect output – as can be seen in the attached image, U+2019
> is mapped to ' and TeX's input ligature mechanism unexpectedly kicks
> in.  I think this is because luatex is a 'better' TeX than TeX itself:
> it completely handles input manipulation before converting stuff to
> glyphs.

I found the following in the LuaTeX manual:

  See chapter 5 for many small changes related to paragraph building,
  language handling and hyphenation. The most important change is that
  adding a brace group in the middle of a word (like in of{}fice) does
  not prevent ligature creation.

"LuaTeX Reference Manual", February 2024, version 1.18.  p.45
http://mirrors.ibiblio.org/CTAN/systems/doc/luatex/luatex.pdf

I find the manual completely fails at explaining what to do instead,
though (in any succint way that doesn't require the reader to become
an expert in LuaTeX as well as in TeX).

The reply at the following StackExchange post does it the same way
you did it, with a kern:

https://tex.stackexchange.com/questions/349725/luatex-does-not-respect-brace-groups-used-for-disabling-ligatures

I prefer only to use the kern for LuaTeX, using grouping characters
otherwise.  I have committed a change for this in commit 1cc5254d02
(2024-11-01).

Thanks for the report.

Reply via email to