%% %% This is file `magicnum.sty', %% generated with the docstrip utility. %% %% The original source files were: %% %% magicnum.dtx (with options: `package') %% %% This is a generated file. %% %% Copyright (C) 2007, 2009 by Heiko Oberdiek %% %% This work may be distributed and/or modified under the %% conditions of the LaTeX Project Public License, either %% version 1.3 of this license or (at your option) any later %% version. The latest version of this license is in %% http://www.latex-project.org/lppl.txt %% and version 1.3 or later is part of all distributions of %% LaTeX version 2005/12/01 or later. %% %% This work has the LPPL maintenance status "maintained". %% %% This Current Maintainer of this work is Heiko Oberdiek. %% %% This work consists of the main source file magicnum.dtx %% and the derived files %% magicnum.sty, magicnum.pdf, magicnum.ins, magicnum.drv, magicnum.txt, %% magicnum-test1.tex, magicnum-test2.tex, magicnum-test3.tex, %% magicnum.lua, oberdiek.magicnum.lua. %% \begingroup \catcode44 12 % , \catcode45 12 % - \catcode46 12 % . \catcode58 12 % : \catcode64 11 % @ \catcode123 1 % { \catcode125 2 % } \expandafter\let\expandafter\x\csname ver@magicnum.sty\endcsname \ifx\x\relax % plain-TeX, first loading \else \def\empty{}% \ifx\x\empty % LaTeX, first loading, % variable is initialized, but \ProvidesPackage not yet seen \else \catcode35 6 % # \expandafter\ifx\csname PackageInfo\endcsname\relax \def\x#1#2{% \immediate\write-1{Package #1 Info: #2.}% }% \else \def\x#1#2{\PackageInfo{#1}{#2, stopped}}% \fi \x{magicnum}{The package is already loaded}% \aftergroup\endinput \fi \fi \endgroup \begingroup \catcode35 6 % # \catcode40 12 % ( \catcode41 12 % ) \catcode44 12 % , \catcode45 12 % - \catcode46 12 % . \catcode47 12 % / \catcode58 12 % : \catcode64 11 % @ \catcode91 12 % [ \catcode93 12 % ] \catcode123 1 % { \catcode125 2 % } \expandafter\ifx\csname ProvidesPackage\endcsname\relax \def\x#1#2#3[#4]{\endgroup \immediate\write-1{Package: #3 #4}% \xdef#1{#4}% }% \else \def\x#1#2[#3]{\endgroup #2[{#3}]% \ifx#1\@undefined \xdef#1{#3}% \fi \ifx#1\relax \xdef#1{#3}% \fi }% \fi \expandafter\x\csname ver@magicnum.sty\endcsname \ProvidesPackage{magicnum}% [2009/04/10 v1.1 Magic numbers (HO)] \begingroup \catcode123 1 % { \catcode125 2 % } \def\x{\endgroup \expandafter\edef\csname magicnum@AtEnd\endcsname{% \catcode35 \the\catcode35\relax \catcode64 \the\catcode64\relax \catcode123 \the\catcode123\relax \catcode125 \the\catcode125\relax }% }% \x \catcode35 6 % # \catcode64 11 % @ \catcode123 1 % { \catcode125 2 % } \def\TMP@EnsureCode#1#2{% \edef\magicnum@AtEnd{% \magicnum@AtEnd \catcode#1 \the\catcode#1\relax }% \catcode#1 #2\relax } \TMP@EnsureCode{34}{12}% " \TMP@EnsureCode{40}{12}% ( \TMP@EnsureCode{41}{12}% ) \TMP@EnsureCode{42}{12}% * \TMP@EnsureCode{44}{12}% , \TMP@EnsureCode{45}{12}% - \TMP@EnsureCode{46}{12}% . \TMP@EnsureCode{47}{12}% / \TMP@EnsureCode{60}{12}% < \TMP@EnsureCode{62}{12}% > \begingroup\expandafter\expandafter\expandafter\endgroup \expandafter\ifx\csname newcommand\endcsname\relax \expandafter\ifx\csname magicnum\endcsname\relax \else \input infwarerr.sty\relax \@PackageErrorNoLine{magicnum}{% \string\magicnum\space is already defined% }\@ehc \fi \else \newcommand*{\magicnum}{}% \fi \begingroup\expandafter\expandafter\expandafter\endgroup \expandafter\ifx\csname directlua\endcsname\relax \begingroup\expandafter\expandafter\expandafter\endgroup \expandafter\ifx\csname ifcsname\endcsname\relax \def\magicnum#1{% \expandafter\ifx\csname MG@#1\endcsname\relax \else \csname MG@#1\endcsname \fi }% \else \begingroup \edef\x{\endgroup \def\noexpand\magicnum##1{% \expandafter\noexpand\csname ifcsname\endcsname MG@##1\noexpand\endcsname \noexpand\csname MG@##1% \noexpand\expandafter\noexpand\endcsname \expandafter\noexpand\csname fi\endcsname }% }% \x \fi \else \begingroup\expandafter\expandafter\expandafter\endgroup \expandafter\ifx\csname RequirePackage\endcsname\relax \input luatex.sty\relax \else \RequirePackage{luatex}[2009/04/10]% \fi \ifnum\luatexversion<36 % \def\magicnum@directlua{\directlua0 }% \else \let\magicnum@directlua\directlua \fi \def\magicnum#1{% \magicnum@directlua{% require("oberdiek.magicnum")% oberdiek.magicnum.get(% "\luaescapestring{#1}",\number\CatcodeTableString )% }% }% \magicnum@AtEnd \expandafter\endinput \fi \begingroup\expandafter\expandafter\expandafter\endgroup \expandafter\ifx\csname detokenize\endcsname\relax \def\magicnum@add#1#2#3{% \expandafter\magicnum@@add \csname MG@#1.#2\expandafter\endcsname \csname MG@#1.#3\endcsname {#3}{#2}% }% \def\magicnum@@add#1#2#3#4{% \def#1{#3}% \def#2{#4}% \edef#1{% \expandafter\strip@prefix\meaning#1% }% \edef#2{% \expandafter\strip@prefix\meaning#2% }% }% \expandafter\ifx\csname strip@prefix\endcsname\relax \def\strip@prefix#1->{}% \fi \else \def\magicnum@add#1#2#3{% \expandafter\edef\csname MG@#1.#2\endcsname{% \detokenize{#3}% }% \expandafter\edef\csname MG@#1.#3\endcsname{% \detokenize{#2}% }% }% \fi \magicnum@add{tex.catcode}{escape}{0} \magicnum@add{tex.catcode}{begingroup}{1} \magicnum@add{tex.catcode}{endgroup}{2} \magicnum@add{tex.catcode}{math}{3} \magicnum@add{tex.catcode}{align}{4} \magicnum@add{tex.catcode}{eol}{5} \magicnum@add{tex.catcode}{parameter}{6} \magicnum@add{tex.catcode}{superscript}{7} \magicnum@add{tex.catcode}{subscript}{8} \magicnum@add{tex.catcode}{ignore}{9} \magicnum@add{tex.catcode}{space}{10} \magicnum@add{tex.catcode}{letter}{11} \magicnum@add{tex.catcode}{other}{12} \magicnum@add{tex.catcode}{active}{13} \magicnum@add{tex.catcode}{comment}{14} \magicnum@add{tex.catcode}{invalid}{15} \magicnum@add{etex.grouptype}{bottomlevel}{0} \magicnum@add{etex.grouptype}{simple}{1} \magicnum@add{etex.grouptype}{hbox}{2} \magicnum@add{etex.grouptype}{adjustedhbox}{3} \magicnum@add{etex.grouptype}{vbox}{4} \magicnum@add{etex.grouptype}{align}{5} \magicnum@add{etex.grouptype}{noalign}{6} \magicnum@add{etex.grouptype}{output}{8} \magicnum@add{etex.grouptype}{math}{9} \magicnum@add{etex.grouptype}{disc}{10} \magicnum@add{etex.grouptype}{insert}{11} \magicnum@add{etex.grouptype}{vcenter}{12} \magicnum@add{etex.grouptype}{mathchoice}{13} \magicnum@add{etex.grouptype}{semisimple}{14} \magicnum@add{etex.grouptype}{mathshift}{15} \magicnum@add{etex.grouptype}{mathleft}{16} \magicnum@add{etex.iftype}{none}{0} \magicnum@add{etex.iftype}{char}{1} \magicnum@add{etex.iftype}{cat}{2} \magicnum@add{etex.iftype}{num}{3} \magicnum@add{etex.iftype}{dim}{4} \magicnum@add{etex.iftype}{odd}{5} \magicnum@add{etex.iftype}{vmode}{6} \magicnum@add{etex.iftype}{hmode}{7} \magicnum@add{etex.iftype}{mmode}{8} \magicnum@add{etex.iftype}{inner}{9} \magicnum@add{etex.iftype}{void}{10} \magicnum@add{etex.iftype}{hbox}{11} \magicnum@add{etex.iftype}{vbox}{12} \magicnum@add{etex.iftype}{x}{13} \magicnum@add{etex.iftype}{eof}{14} \magicnum@add{etex.iftype}{true}{15} \magicnum@add{etex.iftype}{false}{16} \magicnum@add{etex.iftype}{case}{17} \magicnum@add{etex.iftype}{defined}{18} \magicnum@add{etex.iftype}{csname}{19} \magicnum@add{etex.iftype}{fontchar}{20} \magicnum@add{etex.nodetype}{none}{-1} \magicnum@add{etex.nodetype}{char}{0} \magicnum@add{etex.nodetype}{hlist}{1} \magicnum@add{etex.nodetype}{vlist}{2} \magicnum@add{etex.nodetype}{rule}{3} \magicnum@add{etex.nodetype}{ins}{4} \magicnum@add{etex.nodetype}{mark}{5} \magicnum@add{etex.nodetype}{adjust}{6} \magicnum@add{etex.nodetype}{ligature}{7} \magicnum@add{etex.nodetype}{disc}{8} \magicnum@add{etex.nodetype}{whatsit}{9} \magicnum@add{etex.nodetype}{math}{10} \magicnum@add{etex.nodetype}{glue}{11} \magicnum@add{etex.nodetype}{kern}{12} \magicnum@add{etex.nodetype}{penalty}{13} \magicnum@add{etex.nodetype}{unset}{14} \magicnum@add{etex.nodetype}{maths}{15} \magicnum@add{etex.interactionmode}{batch}{0} \magicnum@add{etex.interactionmode}{nonstop}{1} \magicnum@add{etex.interactionmode}{scroll}{2} \magicnum@add{etex.interactionmode}{errorstop}{3} \magicnum@add{luatex.pdfliteral.mode}{setorigin}{0} \magicnum@add{luatex.pdfliteral.mode}{page}{1} \magicnum@add{luatex.pdfliteral.mode}{direct}{2} \magicnum@AtEnd \endinput %% %% End of file `magicnum.sty'.