\catcode\csname \romannumeral\parshape \endcsname\month |
---Michael Downes |
\csname\endcsname
, the no-name control sequence. What I
meant by "defined in an obvious way" was that
\csname\endcsname
should be defined to have an integer
value in the proper range for the first argument of a catcode
statement---an <8-bit number> in the syntax rules of TeXbook
Chapter 24. This could be accomplished in many different ways, but here
are some of the more likely ones:
\expandafter \def\csname\endcsname{0} \expandafter \let\csname\endcsname=\day \expandafter \chardef\csname\endcsname=`\* \expandafter \newcount\csname\endcsname |
\expandafter\def\csname\endcsname#1{#1#1}
^^J
to 'space'.
By the way, it seems to be a minor deficiency of plain TeX that
\csname\endcsname
is not initialized with the same
definition as for
\^^M
,
because if you try to enter '
\
' (control-space) at the end
of an error-recovery insertion, the final space gets silently discarded
following TeX's normal practice of discarding whitespace at the end of a
line, and the unsuspecting user gets an error message:
! Undefined control sequence. l.1 Foo car \Tex and then ? i\TeX\[In the above line I entered '
\
' as the last thing on the line.]
! Undefined control sequence.\TeX\ l.1 Foo car \Tex and then ?