From 414dd110e53e9f20f3308de3525e7f7dea17264b Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Manuel=20P=C3=A9gouri=C3=A9-Gonnard?= Date: Mon, 23 May 2011 01:09:14 +0200 Subject: generalise better catcode defenses --- luatexbase-modutils.dtx | 52 +++++++++++++++++++++++-------------------------- 1 file changed, 24 insertions(+), 28 deletions(-) (limited to 'luatexbase-modutils.dtx') diff --git a/luatexbase-modutils.dtx b/luatexbase-modutils.dtx index 81394be..c622be2 100644 --- a/luatexbase-modutils.dtx +++ b/luatexbase-modutils.dtx @@ -297,48 +297,45 @@ See source file '\inFileName' for details. % % \subsubsection{Preliminaries} % -% Reload protection, especially for \plaintex. +% Catcode defenses and reload protection. % % \begin{macrocode} - \csname lltxb@modutils@loaded\endcsname -\expandafter\let\csname lltxb@modutils@loaded\endcsname\endinput -% \end{macrocode} -% -% Catcode defenses. -% -% \begin{macrocode} -\begingroup +\begingroup\catcode61\catcode48\catcode32=10\relax% = and space \catcode123 1 % { \catcode125 2 % } \catcode 35 6 % # - \toks0{}% - \def\x{}% + \toks0\expandafter{\expandafter\endlinechar\the\endlinechar}% + \edef\x{\endlinechar13}% \def\y#1 #2 {% \toks0\expandafter{\the\toks0 \catcode#1 \the\catcode#1}% \edef\x{\x \catcode#1 #2}}% - \y 123 1 % { - \y 125 2 % } - \y 35 6 % # - \y 10 12 % ^^J + \y 13 5 % carriage return + \y 61 12 % = + \y 32 10 % space + \y 123 1 % { + \y 125 2 % } + \y 35 6 % # + \y 64 11 % @ (letter) \y 34 12 % " - \y 36 3 % $ $ \y 39 12 % ' \y 40 12 % ( \y 41 12 % ) - \y 42 12 % * - \y 43 12 % + \y 44 12 % , \y 45 12 % - \y 46 12 % . \y 47 12 % / - \y 60 12 % < - \y 61 12 % = - \y 64 11 % @ (letter) - \y 62 12 % > - \y 95 12 % _ (other) + \y 58 12 % : + \y 91 12 % [ + \y 93 12 % ] + \y 94 7 % ^ + \y 95 8 % _ \y 96 12 % ` - \edef\y#1{\endgroup\edef#1{\the\toks0\relax}\x}% -\expandafter\y\csname lltxb@modutils@AtEnd\endcsname + \toks0\expandafter{\the\toks0 \relax\noexpand\endinput}% + \edef\y#1{\noexpand\expandafter\endgroup% + \noexpand\ifx#1\relax \edef#1{\the\toks0}\x\relax% + \noexpand\else \noexpand\expandafter\noexpand\endinput% + \noexpand\fi}% +\expandafter\y\csname luatexbase@modutils@sty@endinput\endcsname% % \end{macrocode} % % Package declaration. @@ -376,8 +373,7 @@ See source file '\inFileName' for details. This package can only be used with the LuaTeX engine^^J% (command `lualatex' or `luatex').^^J% Package loading has been stopped to prevent additional errors.} - \lltxb@modutils@AtEnd - \expandafter\endinput + \expandafter\luatexbase@modutils@sty@endinput% \fi % \end{macrocode} % @@ -456,7 +452,7 @@ See source file '\inFileName' for details. % \end{macrocode} % % \begin{macrocode} -\lltxb@modutils@AtEnd +\luatexbase@modutils@sty@endinput% % % \end{macrocode} % -- cgit v1.2.3