# [OS X TeX] i-Installer TeX installation on Intel

Morten Høgholm morten.hoegholm at gmail.com
Fri May 5 17:11:51 EDT 2006

On Thu, 04 May 2006 20:01:23 +0200, George Gratzer
<gratzer at ms.umanitoba.ca> wrote:

> Two things:
>
> 1. I got a bunch of error messages wanting to put $signs in the middle > of a verbatim environment. Not all, but a few per chapter. > > 2. It wants to put$ signs following an EOL. Used BBEdit to change the
> EOL to Unix or Mac, but it did not help.

I found the bug.

In the new xspace, there is a definition for setting up active characters
which goes like this:

\def\@xspace at eTeX@setup{%
\begingroup
\everyeof{}%
\endlinechar=-1\relax
\catcode\ =10\relax
\makeatletter
\scantokens\expandafter{\expandafter\gdef
\expandafter\@xspace at exceptions@tlp
\expandafter{\@xspace at exceptions@tlp}}%
\endgroup
}

The idea is to re-read the list of exceptions but with current catcodes.
The implementation shown above requires \, { and } to have the usual
catcodes of 0, 1 and 2 but in George's example, \xspace was called in a
header in the output routine but in a setting where the verbatim
environment is actually active. Hence this leads to an error because the
inner \, { and } in this \scantokens have catcodes 12.

The solution is to change the expansion order (and recalling that
\scantokens is expandable):

\def\@xspace at eTeX@setup{%
\begingroup
\everyeof{}%
\endlinechar=-1\relax
\catcode\ =10\relax
\makeatletter
\expandafter\expandafter\expandafter\gdef
\expandafter\expandafter\expandafter\@xspace at exceptions@tlp
\expandafter\expandafter\expandafter{%
\expandafter\expandafter\expandafter
\scantokens\expandafter{\@xspace at exceptions@tlp}}%
\endgroup
}

George, add this to your preamble - surrounded by the usual \makeatletter
and \makeatother of course - and I predict it'll work... Thanks for
bringing this to my attention!

Lesson to learn: Never let a catcode into your life.
--
Morten
------------------------- Info --------------------------
Mac-TeX Website: http://www.esm.psu.edu/mac-tex/
& FAQ: http://latex.yauh.de/faq/
TeX FAQ: http://www.tex.ac.uk/faq
List Archive: http://tug.org/pipermail/macostex-archives/