bug-texinfo
[Top][All Lists]

@L and @l print visible space char in code

 From: Karl Berry Subject: @L and @l print visible space char in code Date: Sun, 31 Oct 2021 16:49:18 -0600

Hi Gavin and all - the Texinfo input
@code{@l{} and @L{}}
outputs visible space characters before regular l and L, llapped in the
case of the L, instead of Polish l and L.
(Complete input file and my output below.) It happens with the latest
released texinfo.tex and the one in the source repo.

I believe this is because the plain TeX definitions of \l and \L are
the active ones, and they typeset character 32. In the cmtt fonts,
character 32 is the visible space, whereas in the cmr (and other cm),
char32 is the weird "Polish bar" character used to construct the Polish
l's. From plain.tex:
\def\l{\char32l}
\def\L{\leavevmode\setbox0\hbox{L}\hbox to\wd0{\hss\char32L}}

The best fix I can think of is for Texinfo to have its own \l and \L
definitions which check for a monospaced context (\ifmonospace) and
switch to an EC typewriter font which provides the Polish l's, as we do
for @DH{} and other characters. Well, I'm assuming the ec fonts have
typewriter Polish l's; I confess I didn't check, sorry.

Thanks,
Karl

%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\input texinfo

@node Test
@top Test

@code{@l{} and @L{}}

@bye
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%

pl-l-code.pdf