summaryrefslogtreecommitdiff
path: root/luatexbase-loader.dtx
diff options
context:
space:
mode:
authorManuel Pégourié-Gonnard <mpg@elzevir.fr>2011-05-23 01:09:14 +0200
committerManuel Pégourié-Gonnard <mpg@elzevir.fr>2011-05-23 01:09:14 +0200
commit414dd110e53e9f20f3308de3525e7f7dea17264b (patch)
treeb4afd7e547dcf29cd291ec248ca46c5b45cf1683 /luatexbase-loader.dtx
parentb8438d8d3c128128aa8b172b466f34478603d2c9 (diff)
downloadluatexbase-414dd110e53e9f20f3308de3525e7f7dea17264b.tar.gz
generalise better catcode defenses
Diffstat (limited to 'luatexbase-loader.dtx')
-rw-r--r--luatexbase-loader.dtx58
1 files changed, 27 insertions, 31 deletions
diff --git a/luatexbase-loader.dtx b/luatexbase-loader.dtx
index 9d57ac5..bee0757 100644
--- a/luatexbase-loader.dtx
+++ b/luatexbase-loader.dtx
@@ -172,48 +172,45 @@ See source file '\inFileName' for details.
%
% \subsubsection{Preliminaries}
%
-% Reload protection, especially for \plaintex.
+% Catcode defenses and reload protection.
%
% \begin{macrocode}
- \csname lltxb@loader@loaded\endcsname
-\expandafter\let\csname lltxb@loader@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@loader@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@loader@sty@endinput\endcsname%
% \end{macrocode}
%
% Package declaration.
@@ -251,8 +248,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@loader@AtEnd
- \expandafter\endinput
+ \expandafter\luatexbase@loader@sty@endinput%
\fi
% \end{macrocode}
%
@@ -277,7 +273,7 @@ See source file '\inFileName' for details.
\luatexbase@directlua{%
local file = "luatexbase.loader.lua"
local path = assert(kpse.find_file(file, 'tex'),
- "File '"..file.."' no found")
+ "File '"..file.."' not found")
texio.write_nl("("..path..")")
dofile(path)}
% \end{macrocode}
@@ -285,7 +281,7 @@ See source file '\inFileName' for details.
% That's all, folks!
%
% \begin{macrocode}
-\lltxb@loader@AtEnd
+\luatexbase@loader@sty@endinput%
%</texpackage>
% \end{macrocode}
%
@@ -301,8 +297,8 @@ module('luatexbase', package.seeall)
% approximate |LUAINPUTS|. But we need to handle suffixes ourselves.
%
% |lua_suffixes| is taken verbatim from Kpathsea's source
-% (\file{tex-file.c}, constant |LUA_SUFFIXES|),\footnote{Unchanged since
-% 2007-07-06, last checked 2010-05-10.}.
+% (\file{tex-file.c}, constant |LUA_SUFFIXES|).\footnote{Unchanged since
+% 2007-07-06, last checked 2010-05-10.}
%
% \begin{macrocode}
local lua_suffixes = {