diff options
Diffstat (limited to 'Master/texmf-dist/tex/generic/oberdiek/magicnum.sty')
-rw-r--r-- | Master/texmf-dist/tex/generic/oberdiek/magicnum.sty | 286 |
1 files changed, 286 insertions, 0 deletions
diff --git a/Master/texmf-dist/tex/generic/oberdiek/magicnum.sty b/Master/texmf-dist/tex/generic/oberdiek/magicnum.sty new file mode 100644 index 00000000000..5262b191af6 --- /dev/null +++ b/Master/texmf-dist/tex/generic/oberdiek/magicnum.sty @@ -0,0 +1,286 @@ +%% +%% 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 by Heiko Oberdiek <oberdiek@uni-freiburg.de> +%% +%% 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 % @ + \expandafter\let\expandafter\x\csname ver@magicnum.sty\endcsname + \ifcase 0% + \ifx\x\relax % plain + \else + \ifx\x\empty % LaTeX + \else + 1% + \fi + \fi + \else + \catcode35 6 % # + \catcode123 1 % { + \catcode125 2 % } + \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}% + \endgroup + \expandafter\endinput + \fi +\endgroup +\begingroup + \catcode35 6 % # + \catcode40 12 % ( + \catcode41 12 % ) + \catcode44 12 % , + \catcode45 12 % - + \catcode46 12 % . + \catcode47 12 % / + \catcode58 12 % : + \catcode64 11 % @ + \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\relax + \xdef#1{#3}% + \fi + }% + \fi +\expandafter\x\csname ver@magicnum.sty\endcsname +\ProvidesPackage{magicnum}% + [2007/12/12 v1.0 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{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 luatexversion\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}[2007/12/12]% + \fi + \def\magicnum#1{% + \directlua0{% + 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'. |