[tex-eplain] \definexref problem

geolsoft at mail.ru geolsoft at mail.ru
Wed Nov 2 18:52:49 CET 2005

On Wed, Nov 02, 2005 at 01:11:01PM +0000, Adam Fenn wrote:
> This worked

This is strange, I can't get your code to compile with
Eplain 2.8.4, I get the following error during the second

    ! Use of firstbookfull doesn't match its definition.
    firstbookfull ...t escapechar = -1 firstbookfull }
    bookref ...mpty csname xrlabel {#1:long}endcsname 
                                                      else csname xrlabel {#1:sh...
    l.35 \bookref{article}
                            % a long reference to article in first book

and this is right, because \xrefn expands to many
primitives, not just the text of the reference, and a mess
of all those primitives goes to the .aux file.

However, there is a difference between Eplain 3.0 and 2.8.4.
New in Eplain 3.0, \xrefn takes an optional argument, and
therefore its expansion is now even more complex.  In case
you need the previous `plain' functionality, there is a
macro \plain at xrefn which is equivalent to the 2.8.4's

Anyway, as for your problem, I believe what you need is

    {article in \string\xrefn{firstbookfull}}
    {article (short ref)}

(I've added \string in front of \xrefn to suppress expansion).

Hope this helps.

Best regards,
Oleg Katsitadze

More information about the tex-eplain mailing list