[texhax] the \let command

tom sgouros tomfool at as220.org
Mon Nov 27 21:29:08 CET 2006


Philip TAYLOR <P.Taylor at Rhul.Ac.Uk> wrote:

> tom sgouros wrote:
> 
> >  o Are you talking about the original definition of \t that is
> >    recursive, or is there something incorrect in my redefinition of \t?
> 
> The original : \t -> macro :-> \OML-cmd \t \OML\t
> 

OK, now wait just a minute.  The original question was -- to beat that
darn horse into what by now ought to be a bloody pulp -- why does \t
work differently than \c in the document posted?

You replied that it acted in a peculiar fashion because it was a
recursive definition.  That makes a certain amount of sense, I admit.
But then I looked and it seems to me that the \c is also defined
recursively, at least according to \show:

\show \c 

  \c=macro:
  ->\OT1-cmd \c \OT1\c .

When I look in ot1enc.def, it doesn't seem as if \c's definition is
really recursive, and it's different than the above.  But \r is as
trouble-free as \c, and its definition is the same as \t, except for the
encoding. 

\DeclareTextAccent{\t}{OML}{127}

\DeclareTextAccent{\r}{OT1}{23}

So this whole issue is really some difference between the OML and OT1
font encodings.  According to the ltoutenc.dtx (thank you Oleg), the
\OT1\c in the above is really a single macro, not two.  So what really
seems to be happening here is that the problem lies in the recursive
definitions, but also in the encoding.  In the OT1 encoding, the
redefinition of \c to be "c" makes no difference somehow, while in the
OML encoding, the redefinition of \t does.  I'd suspect from reading the
file that the OT1 encoding doesn't have an entry for whatever character
a "c" references, while the OML encoding does have an entry for a "t".
But since the OT1 encoding is widely used for text, I know that this
doesn't really make sense as I've written it, so there is some other
hidden wrinkle at work here.

So I don't know where to find lists of the encodings to satisfy myself
on the point, and I've probably already spent plenty more time on this
than I really can justify, but the lesson I'll take away from this is
not to redefine the accent characters or any other single-character
commands.  Anyone wishing to add to the collective stock of
enlightenment on these points will find a ready ear over here.

Thanks all,

 -tom


-- 
 ------------------------
 tomfool at as220 dot org
 http://sgouros.com  
 http://whatcheer.net


More information about the texhax mailing list