[Top][All Lists]

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: braces in xrefs failure with texinfo.tex

From: Gavin Smith
Subject: Re: braces in xrefs failure with texinfo.tex
Date: Wed, 20 Jan 2016 19:26:48 +0000

On 17 January 2016 at 21:56, Karl Berry <address@hidden> wrote:
> Hi Gavin - somewhere in all the brace/indexing changes to texinfo.tex,
> it seems that using @{ or @} inside @xref or other ref commands started
> to fail (or maybe it never worked, I guess I'm not entirely sure, come
> to think of it).  Now, something like
>   @address@hidden
> gets (with texinfo.tex 2016-01-11.19):
>   ./refbrace.tex:4: Missing @endcsname inserted.
>   <to be read again>
>                      @indexrbrace

It did work for a while, before I changed it to output a braced
sequence to work with texindex before 6.0. However, in doing so I'd
overlooked the comment "\indexnofonts is used when outputting the
strings to sort the index
% by, and when constructing control sequence names.", and \csname
doesn't accept (unexpandable) control sequences in the names of the
control sequence it is creating. This should be fixed now.

Testing, I found @{ in an xref was broken in 2008-04-18.10 (4.13
release), and broken in 2004-06-14.14. The latter version of
texinfo.tex is the one I discovered that braces would be output in an
index with the old texindex (in the manual for gawk 3.1.4) - this
worked because the braces were output in the sort key as braced
sequences. The use of |a as the sort value was introduced on
2010-08-17, and I expect xrefs containing @{ and @{ worked from then
on (except it didn't work if two xrefs were exactly the same except @{
was replaced with @}). For example, @{ in an xref worked with
2013-09-11.11 (5.2 release).

The test file I've attached tests a few more cases, including index entries.

Attachment: refbrace.texi
Description: TeXInfo document

reply via email to

[Prev in Thread] Current Thread [Next in Thread]