summaryrefslogtreecommitdiff
path: root/Master/texmf-dist/tex/latex/frankenstein/moredefs.stq
diff options
context:
space:
mode:
Diffstat (limited to 'Master/texmf-dist/tex/latex/frankenstein/moredefs.stq')
-rw-r--r--Master/texmf-dist/tex/latex/frankenstein/moredefs.stq577
1 files changed, 577 insertions, 0 deletions
diff --git a/Master/texmf-dist/tex/latex/frankenstein/moredefs.stq b/Master/texmf-dist/tex/latex/frankenstein/moredefs.stq
new file mode 100644
index 00000000000..81752d699c5
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/frankenstein/moredefs.stq
@@ -0,0 +1,577 @@
+%%
+%% This is file `moredefs.stq',
+%% generated with the docstrip utility.
+%%
+%% The original source files were:
+%%
+%% moredefs.sty
+%%
+%% This program is part of the Frankenstein bundle for LaTeX.
+%%
+%% Copyright (C) 1995-2001 Matthew Swift <swift@alum.mit.edu>
+%%
+%% This file may have one of TWO names, either
+%% moredefs.sty or moredefs.stq. This
+%% LaTeX package will work ONLY if it is called moredefs.sty
+%% and placed in a proper directory. This file should have been
+%% distributed to you with a DIFFERENT file (also) called
+%% moredefs.sty which functions identically to this one
+%% but contains documentation in comments. This file works faster,
+%% but the other should be kept because it contains the documentation
+%% for this LaTeX package. Files called README and INSTALL should have
+%% also been distributed to you with this file; see them for more
+%% information.
+%%
+%% This program is free software; you may redistribute it and/or
+%% modify it under the conditions of the LaTeX Project Public
+%% License, either version 1.2 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.2 or later is
+%% part of all distributions of LaTeX version 1999/12/01 or later.
+%%
+%% This program is distributed in the hope that it will be useful,
+%% but WITHOUT ANY WARRANTY; without even the implied warranty of
+%% MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+%% LaTeX Project Public License for more details.
+%%
+%% \CharacterTable
+%% {Upper-case \A\B\C\D\E\F\G\H\I\J\K\L\M\N\O\P\Q\R\S\T\U\V\W\X\Y\Z
+%% Lower-case \a\b\c\d\e\f\g\h\i\j\k\l\m\n\o\p\q\r\s\t\u\v\w\x\y\z
+%% Digits \0\1\2\3\4\5\6\7\8\9
+%% Exclamation \! Double quote \" Hash (number) \#
+%% Dollar \$ Percent \% Ampersand \&
+%% Acute accent \' Left paren \( Right paren \)
+%% Asterisk \* Plus \+ Comma \,
+%% Minus \- Point \. Solidus \/
+%% Colon \: Semicolon \; Less than \<
+%% Equals \= Greater than \> Question mark \?
+%% Commercial at \@ Left bracket \[ Backslash \\
+%% Right bracket \] Circumflex \^ Underscore \_
+%% Grave accent \` Left brace \{ Vertical bar \|
+%% Right brace \} Tilde \~}
+\def\fileinfo{more defining commands (Frankenstein's brain)}
+\def\DoXPackageS {}
+\def\fileversion{v1.8}
+\def\filedate{2001/08/31}
+\def\docdate{2001/08/31}
+\edef\PPOptArg {%
+ \filedate\space \fileversion\space \fileinfo
+}
+\makeatletter% A special comment to help create bst files. Don't change!
+\@ifundefined{JusTLoaDInformatioN} {%
+ }{% ELSE (we know the compsci package is already loaded, too)
+ \UndefineCS\JusTLoaDInformatioN
+ \SaveDoXVarS
+ \eExpand\csname DoXPackageS\endcsname\In {%use \csname in case it's undefined
+ \usepackage{#1}%
+ }%
+ \RestoreDoXVarS
+ \makeatother
+ \endinput
+}% A special comment to help create bst files. Don't change!
+\NeedsTeXFormat{LaTeX2e}
+\ProvidesPackage{moredefs}[\PPOptArg]
+%%
+\newcommand*\@ifundefined@cs [1] {%
+ \edef\reserved@a{%
+ \expandafter\@gobble\string #1%
+ }%
+ \@ifundefined\reserved@a
+ \@firstoftwo
+ \@secondoftwo
+}
+\newcommand\IfElement{}
+\def\IfElement #1\In#2{%
+ \@tempswafalse
+ \expandafter \@tfor
+ \expandafter \sc@t@a
+ \expandafter :%
+ \expandafter =#2\do {%
+ \ifx #1\sc@t@a
+ \@tempswatrue
+ \@break@tfor
+ \else
+ \fi
+ }%
+ \if@tempswa
+ \expandafter\@firstoftwo
+ \else
+ \expandafter\@secondoftwo
+ \fi
+}
+\newcommand*\sc@star@nothing{}
+\newcommand*\sc@star@or@long [1] {% args: defining-command
+ \@ifstar {%
+ \let\l@ngrel@x\relax
+ \def\sc@star@nothing {*}%
+ #1%
+ }{% ELSE
+ \let\l@ngrel@x\long
+ \def\sc@star@nothing {}%
+ #1%
+ }%
+}
+\newcommand\md@check@star {%
+ \@ifstar {%
+ \def\sc@star@nothing {*}%
+ }{% ELSE
+ \let\sc@star@nothing \ShortEmpty
+ }%
+}
+\newcommand\requirecommand {%
+ \sc@star@or@long\require@command
+}
+\newcommand\require@command [1] {% args: \csname
+ \@ifundefined@cs{#1} {%
+ \expandafter\newcommand\sc@star@nothing
+ }{% ELSE
+ \expandafter\CheckCommand\sc@star@nothing
+ }%
+ {#1}%
+}
+\newcommand\InitCS {%
+ \@star@or@long\Init@CS
+}
+\newcommand\Init@CS [1] {% args: \csname
+ \l@ngrel@x\def#1{}%
+}
+\newcommand\InitName {%
+ \sc@star@or@long\Init@Name
+}
+\newcommand\Init@Name [1] {% args: csname
+ \expandafter\DefName\sc@star@nothing{#1}{}{}%
+}
+\newcommand\ReserveCS {%
+ \sc@star@or@long\Reserve@CS
+}
+\newcommand\Reserve@CS [1] {% args: \csname
+ \expandafter\newcommand\sc@star@nothing{#1} {}%
+}
+\newcommand\ReserveName {%
+ \sc@star@or@long\Reserve@Name
+}
+\newcommand\Reserve@Name [1] {% args: csname
+ \expandafter\NewName\sc@star@nothing{#1}{} {}%
+}
+\InitCS*\ShortEmpty
+\InitCS\LongEmpty
+\ReserveCS\sc@t@a
+\ReserveCS\sc@t@b
+\ReserveCS\sc@t@c
+\ReserveCS\sc@t@d
+\ReserveCS\sc@t@e
+\ReserveCS\sc@t@f
+\ReserveCS\sc@t@g
+\newcommand\newtokens [1] {% args: \csname
+ \@ifdefinable #1 {%
+ \@nameuse{newtoks}#1%
+ }%
+}
+\newcommand*\newlet [2] {% args: \csname-a \csname-b
+ \@ifdefinable #1 {%
+ \let #1#2%
+ }%
+}
+\newcommand*\providetokens [1] {% args: \csname
+ \@ifundefined@cs{#1} {%
+ \@nameuse{newtokens}#1%
+ }{% ELSE
+ \FrankenInfo{moredefs}{\protect\providetokens\space is not reallocating
+ token variable \protect#1.\MessageBreak
+ The existing contents are [\the#1]}%
+ }%
+}
+\newcommand*\providelength [1] {% args: \csname
+ \@ifundefined@cs{#1} {%
+ \newlength{#1}%
+ }{% ELSE
+ \FrankenInfo{moredefs}{\protect\providelength\space is not reallocating
+ \protect#1.\MessageBreak
+ The existing value is [\the#1]}%
+ }%
+}
+\newcommand*\providesavebox [1] {% args: \csname
+ \@ifundefined@cs{#1} {%
+ \newsavebox{#1}%
+ }{% ELSE
+ \FrankenInfo{moredefs}{\protect\providesavebox\space is not reallocating
+ box \protect#1.}%
+ }%
+}
+\newcommand*\providecounter [1] {% args: string
+ \@ifundefined{c@#1} {%
+ \newcounter{#1}%
+ }{% ELSE
+ \FrankenInfo{moredefs}{\protect\providecounter\space is not reallocating
+ counter #1.\MessageBreak
+ The existing value is [\expandafter\number\csname c@#1\endcsname]}%
+ }%
+}
+
+
+\requirecommand*\newboolean [1] {% args: string
+ \expandafter
+ \@ifdefinable\csname if#1\endcsname {%
+ \expandafter\newif\csname if#1\endcsname
+ }%
+}
+
+\@ifpackageloaded{ifthen} {%
+ }{% ELSE
+ \requirecommand*\provideboolean [1] {% args: string
+ \@ifundefined {if#1} {%
+ \newboolean{#1}%
+ }{% ELSE
+ \FrankenInfo{moredefs}{\protect\provideboolean\space is not reallocating
+ \protect#1.\MessageBreak
+ The value is [\@nameuse{if#1}TRUE\else FALSE\fi]}%
+ }%
+ }%
+}
+\newtokens\sc@toks@a
+\newtokens\sc@toks@b
+
+\newcommand\addto@macro [2] {%
+ \sc@toks@a=\expandafter{#1#2}%
+ \edef#1{%
+ \the\sc@toks@a
+ }%
+}
+\newcommand\lg@addto@macro [2] {%
+ \sc@toks@a=\expandafter{#1#2}%
+ \long\xdef#1{%
+ \the\sc@toks@a
+ }%
+}
+\newcommand\prependto@macro [2] {%
+ \sc@toks@a={#2}%
+ \sc@toks@b=\expandafter{#1}%
+ \edef#1{%
+ \the\sc@toks@a\the\sc@toks@b
+ }%
+}
+\newcommand\g@prependto@macro [2] {%
+ \sc@toks@a={#2}%
+ \sc@toks@b=\expandafter{#1}%
+ \xdef#1{%
+ \the\sc@toks@a\the\sc@toks@b
+ }%
+}
+\newcommand\lg@prependto@macro [2] {%
+ \sc@toks@a={#2}%
+ \sc@toks@b=\expandafter{#1}%
+ \long\xdef#1{%
+ \the\sc@toks@a\the\sc@toks@b
+ }%
+}
+\newcommand\UndefineCS [1] {% args: \csname
+ \let#1\@undefined
+}
+\newcommand\UndefineName [1] {% args: csname
+ \expandafter\let\csname#1\endcsname\@undefined
+}
+\newcommand\defcommand {%
+ \@star@or@long\def@command
+}
+\newcommand\def@command {%
+ \let\@ifdefinable\@rc@ifdefinable
+ \new@command
+}
+\newcommand\DefName {%
+ \@star@or@long\def@name
+}
+\newcommand\def@name [3] {% args: arglist csname body
+ \sc@global\l@ngrel@x\@namedef{#1}#2{#3}%
+}
+\newcommand\NewName {%
+ \@star@or@long\new@name
+}
+\newcommand\new@name [3] {% args: arglist csname body
+ \@ifundefined{#1} {%
+ \sc@global\l@ngrel@x\@namedef{#1}#2{#3}%
+ }{% ELSE
+ \defcommand\reserved@a {%
+ #1%
+ }%
+ \@notdefinable
+ }%
+}
+\newcommand\sc@global {%
+ \relax
+}
+\newcommand\Global {%
+ \def\sc@global {%
+ \global\let\sc@global\relax\global
+ }%
+}
+\newcommand\CheckName {%
+ \@star@or@long\check@name
+}
+\newcommand\check@name [3] {% args: arglist csname body
+ \expandafter\DefName\sc@star@nothing{reserved@a}{#2}{#3}%
+ \expandafter\@check@eq\csname #1\endcsname\reserved@a
+}
+\newcommand\RequireName {%
+ \sc@star@or@long\require@name
+}
+\newcommand\require@name [3] {% args: arglist csname body
+ \@ifundefined{#1} {%
+ \expandafter\DefName\sc@star@nothing{#1}{#2}{#3}%
+ }{% ELSE
+ \expandafter \expandafter
+ \expandafter \CheckName
+ \expandafter \sc@star@nothing
+ \csname #1\endcsname
+ {#2}{#3}%
+ }%
+}
+\newcommand\NewTextFontCommand [2] {% args: \csname font-command
+ \NewRobustCommand#1[1]{%
+ \ifmmode
+ \nfss@text{#2##1}%
+ \else
+ \leavevmode
+ {\text@command{##1}%
+ #2\check@icl ##1\check@icr
+ \expandafter}%
+ \fi
+ }%
+}
+\newcommand\NewRobustCommand {%
+ \@star@or@long\new@robustcommand
+}
+\newcommand\new@robustcommand [1] {%
+ \let\sc@t@a\relax
+ \@ifdefinable #1 {%
+ \def\sc@t@a {%
+ \new@@robustcommand #1%
+ }%
+ }%
+ \sc@t@a
+}
+\newcommand\new@@robustcommand [1] {%
+ \edef\reserved@a {\string#1}%
+ \def\reserved@b {#1}%
+ \edef\reserved@b {%
+ \expandafter\strip@prefix\meaning\reserved@b
+ }%
+ \edef#1{%
+ \ifx\reserved@a\reserved@b
+ \noexpand\x@protect
+ \noexpand#1%
+ \fi
+ \noexpand\protect
+ \expandafter\noexpand\csname
+ \expandafter\@gobble\string#1 \endcsname
+ }%
+ \let\@ifdefinable\@rc@ifdefinable
+ \expandafter\new@command\csname
+ \expandafter\@gobble\string#1 \endcsname
+}
+\newcommand\Elet {%
+ \expandafter\let\expandafter
+}
+\newcommand*\EElet {%
+ \expandafter\expandafter\expandafter\let\expandafter\expandafter
+}
+\newcommand\NewUserInfo {%
+ \sc@star@or@long\new@userinfo
+}
+\newcommand*\new@userinfo [2][] {% args: [\csname] \csname
+ \expandafter\ReserveCS\sc@star@nothing{#2}%
+ \def\sc@t@b {#1}%
+ \ifx\sc@t@b\ShortEmpty
+ \edef\sc@t@a {%
+ \edef\noexpand\sc@t@b{%
+ \E@cdr\string#2\@nil
+ }%
+ }%
+ \lowercase\expandafter{\sc@t@a}%
+ \else
+ \edef\sc@t@b {\E@cdr\string#1\@nil}%
+ \fi
+ \edef\sc@t@a {%
+ \noexpand\NewName\sc@star@nothing{\sc@t@b}{####1}
+ {\noexpand\renewcommand\sc@star@nothing\noexpand#2{####1}}
+ }%
+ \sc@t@a
+}
+\newcommand\SaveCS [1] {% args: \csname
+ \expandafter\newlet\csname MDSaved\E@cdr\string#1\@nil\endcsname#1%
+}
+\newcommand\RestoreCS [1] {% args: \csname
+ \Elet#1\csname MDSaved\E@cdr\string#1\@nil\endcsname
+ \UndefineName{MDSaved\E@cdr\string#1\@nil}%
+}
+\newcommand\SaveName [1] {% args: csname
+ \ReserveName{MDSaved#1}%
+ \EElet\csname MDSaved#1\endcsname
+ \csname #1\endcsname
+}
+\newcommand\RestoreName [1] {% args: csname
+ \EElet\csname #1\endcsname
+ \csname MDSaved#1\endcsname
+ \UndefineName{MDSaved#1}%
+}
+\newcommand\eExpand {%
+ \sc@star@or@long\sc@eExpand
+}
+\NewName{sc@eExpand} {#1\In#2} {% args: object body
+ \l@ngrel@x\edef\sc@t@a{#1}%
+ \expandafter\defcommand\sc@star@nothing\sc@t@b [1] {#2}%
+ \expandafter \sc@t@b
+ \expandafter {\sc@t@a}%
+}
+\newcommand\EExpand {%
+ \sc@star@or@long\sc@EExpand
+}
+\NewName{sc@EExpand}{#1\In#2} {% args: object body
+ \let\sc@t@c\sc@star@nothing
+ \expandafter \expandafter
+ \expandafter \defcommand
+ \expandafter \sc@t@c
+ \expandafter \sc@t@a
+ \expandafter {#1}%
+ \expandafter\defcommand\sc@t@c\sc@t@b [1] {#2}%
+ \expandafter\sc@t@b
+ \expandafter{\sc@t@a}%
+}
+\newcommand\eExecute {%
+ \sc@star@or@long\sc@eExecute
+}
+\newcommand\sc@eExecute [1] {% args: body
+ \l@ngrel@x\edef\sc@t@a {#1}%
+ \sc@t@a
+}
+\NewName{E@cdr} {#1\@nil} {%
+ \expandafter\@cdr #1\@nil
+}
+\NewName{E@car} {#1\@nil} {%
+ \expandafter\@car #1\@nil
+}
+\newlet\Gobble\@gobble
+\newlet\GobbleM\@gobble
+\newcommand\GobbleO {%
+ \@ifnextchar [
+ \sc@gobbleO
+ \relax
+}
+\newlet\GobbleMM\@gobbletwo
+\newcommand\GobbleOM {%
+ \@ifnextchar [
+ \sc@gobbleOM
+ \Gobble
+}
+\newcommand\GobbleMO [1] {%
+ \@ifnextchar [
+ \sc@gobbleO
+ \relax
+}
+\NewName{sc@gobbleOM} {[#1]#2}
+ {}
+\NewName{sc@gobbleO} {[#1]}
+ {}
+\newcommand\DeclareBooleanOptions [2] {% args: on off
+ \newboolean{@#1@}%
+ \DeclareOption{#1} {%
+ \@nameuse{@#1@true}
+ }%
+ \DeclareOption{#2} {%
+ \@nameuse{@#1@false}
+ }%
+}
+\newcommand\DeclareBooleanUserOptions [2] {% args: on off
+ \DeclareBooleanOptions{#1}{#2}%
+ \ReserveName{#1}%
+ \ReserveName{#2}%
+ \EElet \csname#1\endcsname\csname @#1@true\endcsname
+ \EElet \csname#2\endcsname\csname @#1@false\endcsname
+}
+\newcommand\ToggleBoolean [1] {% arg: boolean
+ \csname if#1\endcsname
+ \sc@global\csname #1false\endcsname
+ \else
+ \sc@global\csname #1true\endcsname
+ \fi
+}
+\newcommand*\VerboseErrors [1][\@M] {% args: [number]
+ \c@errorcontextlines #1%
+ \showboxbreadth #1%
+ \showboxdepth #1%
+}
+\newcommand*\GVerboseErrors [1][\@M] {% args: [number]
+ \global\c@errorcontextlines #1%
+ \global\showboxbreadth #1%
+ \global\showboxdepth #1%
+}
+\ReserveCS\md@maybe@global
+\newcommand*\Debug {%
+ \let\md@maybe@global\relax
+ \md@debug
+}
+\newcommand*\GDebug {%
+ \let\md@maybe@global\global
+ \md@debug
+}
+\newcommand*\md@debug [1] {% args: debug-level
+ \ifnum #1 > 0%
+ \let\sc@t@a\@M
+ \md@maybe@global\def\DTypeout ##1{%
+ \typeout{##1}%
+ }%
+ \md@maybe@global\def\DGobbleM ##1{%
+ \typeout{DGobbleM: [##1]}%
+ }%
+ \ifnum #1 > 1%
+ \md@maybe@global\def\DDTypeout ##1{%
+ \typeout{##1}%
+ }%
+ \ifnum #1 > 2%
+ \md@maybe@global\def\DDDTypeout ##1{%
+ \typeout{##1}%
+ }%
+ \fi
+ \fi
+ \else
+ \let\sc@t@a\m@ne
+ \md@maybe@global\let\DTypeout\GobbleM
+ \md@maybe@global\let\DDTypeout\GobbleM
+ \md@maybe@global\let\DDDTypeout\GobbleM
+ \md@maybe@global\let\DGobbleM\GobbleM
+ \fi
+ \md@maybe@global\tracingoutput#1 %
+ \md@maybe@global\tracingpages#1 %
+ \md@maybe@global\tracingmacros#1 %
+ \md@maybe@global\tracingcommands#1 %
+ \ifx\md@maybe@global\relax
+ \VerboseErrors[\sc@t@a]%
+ \typeout{++++ Debugging [#1]\on@line}%
+ \else
+ \GVerboseErrors[\sc@t@a]%
+ \typeout{++++ Global debugging [#1]\on@line}%
+ \fi
+}
+\newlet\DTypeout\GobbleM
+\newlet\DDTypeout\GobbleM
+\newlet\DDDTypeout\GobbleM
+\newlet\DGobbleM\GobbleM
+\newcommand\FrankenWarning [2] {% args: package warning
+ \GenericWarning % continuation message
+ {(#1)\@spaces\@spaces\@spaces\@spaces\@spaces}
+ {Frankenstein (#1) WARNING: #2}%
+}
+\newcommand\FrankenError [3] {% args: package error-message help-text
+ \GenericError % args: continuation message where-help what-help
+ {(#1)\@spaces\@spaces\@spaces\@spaces\@spaces}
+ {Frankenstein (#1) error: #2}
+ {See the documenation for the #1 package for more information.}
+ {#3}%
+}
+\newcommand\FrankenInfo [2] {% args: package info
+ \GenericInfo % continuation message
+ {(#1)\@spaces\@spaces\@spaces\@spaces\@spaces}
+ {Frankenstein (#1) says: #2}%
+}
+\endinput
+%%
+%% End of file `moredefs.stq'.