%% %% This is file `luatexbase-attr.sty', %% generated with the docstrip utility. %% %% The original source files were: %% %% luatexbase-attr.dtx (with options: `texpackage') %% %% See the aforementioned source file(s) for copyright and licensing information. %% \begingroup\catcode61\catcode48\catcode32=10\relax% = and space \catcode123 1 % { \catcode125 2 % } \catcode 35 6 % # \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 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 10 12 % new line ^^J \y 34 12 % " \y 39 12 % ' \y 40 12 % ( \y 41 12 % ) \y 44 12 % , \y 45 12 % - \y 46 12 % . \y 47 12 % / \y 58 12 % : \y 60 12 % < \y 62 12 % > \y 91 12 % [ \y 93 12 % ] \y 94 7 % ^ \y 95 8 % _ \y 96 12 % ` \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@attr@sty@endinput\endcsname% \begingroup \expandafter\ifx\csname ProvidesPackage\endcsname\relax \def\x#1[#2]{\immediate\write16{Package: #1 #2}} \else \let\x\ProvidesPackage \fi \expandafter\endgroup \x{luatexbase-attr}[2013/05/11 v0.6 Attributes allocation for LuaTeX] \begingroup\expandafter\expandafter\expandafter\endgroup \expandafter\ifx\csname RequirePackage\endcsname\relax \input ifluatex.sty \else \RequirePackage{ifluatex} \fi \ifluatex\else \begingroup \expandafter\ifx\csname PackageError\endcsname\relax \def\x#1#2#3{\begingroup \newlinechar10 \errhelp{#3}\errmessage{Package #1 error: #2}\endgroup} \else \let\x\PackageError \fi \expandafter\endgroup \x{luatexbase-attr}{LuaTeX is required for this package. Aborting.}{% 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.} \expandafter\luatexbase@attr@sty@endinput% \fi \begingroup\expandafter\expandafter\expandafter\endgroup \expandafter\ifx\csname RequirePackage\endcsname\relax \input luatexbase-modutils.sty \input luatex.sty \else \RequirePackage{luatexbase-modutils} \RequirePackage{luatex} \fi \luatexbase@ensure@primitive{luaescapestring} \luatexbase@ensure@primitive{attributedef} \luatexbase@ensure@primitive{attribute} \luatexbase@directlua{require('luatexbase.attr')} \def\newluatexattribute#1{% \begingroup\escapechar\m@ne \expandafter\expandafter\expandafter \endgroup \expandafter\expandafter\expandafter \allocationnumber \luatexbase@directlua{tex.write( luatexbase.new_attribute("\luatexluaescapestring{\string#1}", true))}% \ifnum\allocationnumber>\m@ne \global\luatexattributedef#1=\allocationnumber \wlog{\string#1=\string\luatexattribute\the\allocationnumber}% \else \errmessage{No room for a new \string\attribute}% \fi} \newcount\lltxb@attr@unsetvalue \lltxb@attr@unsetvalue=\ifnum\luatexversion<37 -1\else -2147483647\fi\relax \def\unsetluatexattribute#1{% #1\lltxb@attr@unsetvalue} \def\setluatexattribute#1#2{% #1=\numexpr#2\relax} \luatexbase@attr@sty@endinput% \endinput %% %% End of file `luatexbase-attr.sty'.