diff options
Diffstat (limited to 'Master/texmf-dist/tex/latex/frankenstein/abbrevs.stq')
-rw-r--r-- | Master/texmf-dist/tex/latex/frankenstein/abbrevs.stq | 403 |
1 files changed, 403 insertions, 0 deletions
diff --git a/Master/texmf-dist/tex/latex/frankenstein/abbrevs.stq b/Master/texmf-dist/tex/latex/frankenstein/abbrevs.stq new file mode 100644 index 00000000000..668013e4133 --- /dev/null +++ b/Master/texmf-dist/tex/latex/frankenstein/abbrevs.stq @@ -0,0 +1,403 @@ +%% +%% This is file `abbrevs.stq', +%% generated with the docstrip utility. +%% +%% The original source files were: +%% +%% abbrevs.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 +%% abbrevs.sty or abbrevs.stq. This +%% LaTeX package will work ONLY if it is called abbrevs.sty +%% and placed in a proper directory. This file should have been +%% distributed to you with a DIFFERENT file (also) called +%% abbrevs.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{abbreviation macros (Frankenstein's briefs)} +\def\DoXPackageS {abbrevs} +\def\fileversion{v1.4} +\def\filedate{2001/09/08} +\def\docdate{2001/09/08} +\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{abbrevs}[\PPOptArg] +%% +\NeedsTeXFormat{LaTeX2e}[1995/12/01] +\RequirePackage{moredefs,slemph} +\requirecommand\nospacelist {% + ,.':;?-/\slash~!)]\bgroup\egroup\@sptoken\ \space\/\@xobeysp +} +\newcommand\maybe@ic@space {% + \futurelet\@let@token\maybe@ic@space@ +} +\newcommand\maybe@ic@space@ {% + \maybe@ic@ + \maybe@space@ +} +\newcommand\maybe@space {% + \futurelet\@let@token\maybe@space@ +} +\newcommand\maybe@space@ {% + \@tempswatrue + \expandafter \@tfor + \expandafter \reserved@a + \expandafter :% + \expandafter =% + \nospacelist + \do \t@st@ic + \if@tempswa + \space + \fi +} +\ReserveCS\TMResetAll +\ReserveCS\TMHookAll +\ReserveCS\TMFontAll + +\newcommand\NewAbbrevCategory [1] {% args: category + \expandafter\ReserveCS\csname TMReset#1\endcsname + \expandafter\ReserveCS\csname TMFont#1\endcsname + \expandafter\ReserveCS\csname TMHook#1\endcsname + \expandafter\g@addto@macro + \expandafter\TMResetAll\csname TMReset#1\endcsname +} +\newcommand\ResetAbbrevs [1] {% args: category-list + \@for\sc@t@a:=#1\do {% + \@ifundefined{TMReset\sc@t@a} {% + \FrankenWarning{abbrevs}{The abbreviation category \sc@t@a\space + is not defined!}% + }{% ELSE + \@nameuse{TMReset\sc@t@a}% + }% + }% +} +\newcommand\TMInitialSuffix {% + long% +} +\newcommand{\TMSubsequentSuffix} {% + short% +} +\ReserveCS\TMCurrentMacro +\newcommand\TMNewAbbrevPlain [3] {% args: \csname category body + \NewRobustCommand #1 {% + \@bsphack + \TMHookAll + \@nameuse{TMHook#2}% + \@esphack + \ifmmode + \def\sc@t@a {% + \nfss@text{\@nameuse{TMFont#2}#3}% + }% + \else + \def\sc@t@a {% + \leavevmode + \begingroup + \tm@check@nocorr #3\nocorr\@nil + \TMFontAll + \@nameuse{TMFont#2}% + \tm@check@left + #3% + \tm@check@right + \endgroup + }% + \fi + \sc@t@a + }% +} +\NewName{tm@check@nocorr} {#1#2\nocorr#3\@nil} {% + \let\tm@check@left\maybe@ic + \def\tm@check@right {\aftergroup\maybe@ic@space}% + \def\reserved@a {\nocorr}% + \def\reserved@b {#1}% + \def\reserved@c {#3}% + \ifx\reserved@a\reserved@b + \ifx\reserved@c\@empty + \let\check@icl\@empty + \else + \let\check@icl\@empty + \def\check@icr {\aftergroup\maybe@space}% + \fi + \else + \ifx\reserved@c\@empty\else + \def\tm@check@right {\aftergroup\maybe@space}% + \fi + \fi +} +\newboolean{TMInhibitSwitching} % initially false +\newboolean{TMAlwaysLong} % initially false +\newcommand\TMNewAbbrevSwitcher [5] {% args: definer category csname + \expandafter#1\csname #3\TMInitialSuffix\endcsname{#2}{#4} + \expandafter#1\csname #3\TMSubsequentSuffix\endcsname{#2}{#5} + \newboolean{@#3@mentioned} + \expandafter\g@addto@macro\csname TMReset#2\endcsname {% + \global\csname @#3@mentionedfalse\endcsname + } + \expandafter\@ifdefinable\csname #3\endcsname {% + \EExpand\csname #3\endcsname\In {% + \EExpand\csname if@#3@mentioned\endcsname\In {% + \EExpand\csname #3\TMSubsequentSuffix\endcsname\In {% + \EExpand\csname @#3@mentionedtrue\endcsname\In {% + \EExpand\csname #3\TMInitialSuffix\endcsname\In {% + \gdef ##1{% must be NO SPACE before `{' ! + \@tempswafalse + ####1% + \ifTMAlwaysLong\else + \@tempswatrue + \fi + \fi + \if@tempswa + \def\sc@t@a {########1}% + \else + \ifTMInhibitSwitching\else + \global ################1% + \fi + \def\sc@t@a {################################1}% + \fi + \sc@t@a + }% close \gdef + }}}}}% close \EExpand...\In's + }% close \@ifdefinable +} +\newcommand\TMDefineAbbrevStandard [3] {% args: category \csname + % initial [subsequent] + \@ifnextchar [ {% + \tm@defineabbrevstandard{#1}{#2}{#3}% + }{% ELSE + \TMNewAbbrevPlain{#2}{#1}{#3}% + }% +} +\NewName{tm@defineabbrevstandard} {#1#2#3[#4]} {% args: category \csname + % initial subsequent + \eExpand\expandafter\Gobble\string#2\In {% + \TMNewAbbrevSwitcher\TMNewAbbrevPlain{#1}{##1}{#3}{#4}% + }% +} +\newcommand\NewUserAbbrevDefiner [2] {% args: \csname category [definer] + \@ifnextchar [ {% + \tm@newuserabbrevdefiner{#1}{#2}% + }{% ELSE + \tm@newuserabbrevdefiner{#1}{#2}[\TMDefineAbbrevStandard]% + }% +} +\NewName{tm@newuserabbrevdefiner}{#1#2[#3]} {% args: \csname category definer + \newcommand #1 {% + #3{#2}% + }% +} +\NewAbbrevCategory{Generic} +\NewAbbrevCategory{Name} +\NewAbbrevCategory{Book} +\NewAbbrevCategory{Work} +\NewUserAbbrevDefiner{\newabbrev}{Generic} +\NewUserAbbrevDefiner{\newname}{Name} +\NewUserAbbrevDefiner{\newbook}{Book} +\NewUserAbbrevDefiner{\newwork}{Work} + +\def\TMFontBook {% + \itswitch +} +\def\TMFontWork {% + \itswitch +} +\newcommand\DateMark [1] {% + \hspace{.2em}{\DateMarkSize\scshape #1}% + \@ifnextchar. {% + \spacefactor\@m + }{% ELSE + .\maybe@ic@space + }% +} +\newlet\DateMarkSize\small +\newcommand{\PM} {% + \DateMark{p.m}% +} +\newcommand{\AM} {% + \DateMark{a.m}% +} +\newcommand{\BC} {% + \DateMark{b.c}% +} +\newcommand{\AD} {% + \DateMark{a.d}% +} +\@ifpackageloaded{acromake}{% + \FrankenWarning{abbrevs}{LaTeX is about to fail because \protect\acromake +is already defined.\MessageBreak Probably you have loaded acromake.sty, and if +so,\MessageBreak you should simply not load it, since abbrevs.sty +emulates\MessageBreak acromake.sty.} + }{%ELSE +} +\NewAbbrevCategory{Acromake} +\NewUserAbbrevDefiner{\acromake}{Acromake}[\TMAcromakeDefiner] + +\newcommand\TMAcromakeSecondarySuffix {secondary} + +\ReserveCS\tm@acromake@pageref +\ReserveCS\TMHookAcromakeHook +\newcommand\TMNewAbbrevSwitcherAcromake [5] {% args: definer category csname + #1{#3}{\TMInitialSuffix}{#2}{#4} + #1{#3}{\TMSubsequentSuffix}{#2}{#5} + \newboolean{@#3@mentioned} + \expandafter\g@addto@macro\csname TMReset#2\endcsname {% + \global\csname @#3@mentionedfalse\endcsname + } + \expandafter\@ifdefinable\csname #3\endcsname {% + \EExpand\csname #3\endcsname\In {% + \EExpand\csname if@#3@mentioned\endcsname\In {% + \EExpand\csname #3\TMSubsequentSuffix\endcsname\In {% + \EExpand\csname @#3@mentionedtrue\endcsname\In {% + \EExpand\csname #3\TMInitialSuffix\endcsname\In {% + \gdef ##1{% must be NO SPACE before `{' ! + \@tempswafalse + ####1% + \ifTMAlwaysLong\else + \@tempswatrue + \fi + \fi + \if@tempswa + \def\sc@t@a {########1}% + \else + \ifTMInhibitSwitching\else + \global ################1% + \fi + \def\sc@t@a {################################1}% + \fi + \sc@t@a + }% close \gdef + }}}}}% close \EExpand...\In's + }% close \@ifdefinable +} +\newcommand\TMAcromakeDefiner [4] {% args: category csname acronym fulltext + \ifnum \ACRcnta < 1\relax + \def\ACRcnta {1}% + \fi% + \Global\NewName{tm@acromake@#2}{} {-1}% macro for counting occurrences + \TMNewAbbrevSwitcherAcromake\TMNewAbbrevAcromake{#1}{#2}{#4 (#3)}{#3}% + \expandafter\g@addto@macro\csname TMReset#1\endcsname {% + \global\DefName{tm@acromake@#2}{} {-1}% + }% + \TMNewAbbrevAcromake{#2}{\TMAcromakeSecondarySuffix} + {Acromake} + {#3\ (see Page \pageref{TMacromake:#2})}% +} +\ReserveCS\TMCurrentMacroRootname +\newcommand\TMNewAbbrevAcromake [4] {% args: csname-root csname-suffix category body + \expandafter\NewRobustCommand\csname #1#2\endcsname {% + \gdef\TMCurrentMacroRootname {#1}% + \@bsphack + \TMHookAll + \@nameuse{TMHook#3}% + \@esphack + \ifmmode + \def\sc@t@a {% + \nfss@text{\@nameuse{TMFont#3}#4}% + }% + \else + \def\sc@t@a {% + \leavevmode + \begingroup + \tm@check@nocorr #4\nocorr\@nil + \TMFontAll + \@nameuse{TMFont#3}% + \tm@check@left + #4% + \tm@check@right + \endgroup + }% + \fi + \sc@t@a + }% +} + +\ReserveCS\tm@t % temp +\def\TMHookAcromake {% + \edef\tm@t{\TMCurrentMacroRootname}% + \ifnum\csname tm@acromake@\tm@t\endcsname = -1\relax + \eExpand\tm@t\In{% + \label{TMacromake:##1}% + }% + \tm@incmacro{\tm@t}% + \fi + \ifTMInhibitSwitching\else + \tm@incmacro{\tm@t}% + \fi + \ifnum\csname tm@acromake@\tm@t\endcsname < \ACRcnta\relax + \expandafter\global\csname @\tm@t@mentionedfalse\endcsname + \else + \ifnum\csname tm@acromake@\tm@t\endcsname = \ACRcnta\relax + \ifTMInhibitSwitching\else +\SaveName{\tm@t\TMSubsequentSuffix}% +\global\EElet\csname \tm@t\TMSubsequentSuffix\endcsname + \csname \tm@t\TMAcromakeSecondarySuffix\endcsname + \fi + \fi + \ifnum\csname tm@acromake@\tm@t\endcsname = \ACRcntb\relax + \RestoreName{\tm@t\TMSubsequentSuffix}% + \fi + \fi + \TMHookAcromakeHook +} +\newcounter{tm@util} +\newcommand{\tm@incmacro} [1] {% arg: acroabbrev + \eExpand\csname tm@acromake@#1\endcsname\In {% + \setcounter{tm@util}{##1}% + }% + \stepcounter{tm@util}% + \expandafter\xdef\csname tm@acromake@#1\endcsname {\thetm@util}% +} +\newcommand\ACRcnta {1} +\newcommand\ACRcntb {2} +\newcommand\AcromakePageref {(see Page ##1)} +\InputIfFileExists{abbrevs.cfg}{}{} +\endinput +%% +%% End of file `abbrevs.stq'. |