[luatex] Catcode table 0.

Joseph Wright joseph.wright at morningstar2.co.uk
Sun Sep 25 10:06:57 CEST 2011

On 25/09/2011 08:13, Paul Isambert wrote:
> Hello all,
> The manual says catcode table 0 is initialized by INITEX. So you'd think
> it holds INITEX catcodes. But actually it does absolutely nothing when
> called:
> \catcode`\$=14
> \catcodetable0
> \immediate\write17{\the\catcode`\$}% Prints 14.
> \bye
> Is that normal? I.e. is table 0 a noop on purpose?
> Best,
> Paul

Catcode table 0 holds the _current_ catcodes when the document starts:
it's never been saved using \savecatcodetable. You can't save the table
to itself, so the usual set up is to ave the IniTeX values to some other
table, then use a stack to switch out table 0 to the IniTeX one to 'do
stuff', then back again when the job is done. See for example Heiko
Oberdiek's 'luatex' package.
Joseph Wright

More information about the luatex mailing list