diff options
author | Norbert Preining <norbert@preining.info> | 2019-09-02 13:46:59 +0900 |
---|---|---|
committer | Norbert Preining <norbert@preining.info> | 2019-09-02 13:46:59 +0900 |
commit | e0c6872cf40896c7be36b11dcc744620f10adf1d (patch) | |
tree | 60335e10d2f4354b0674ec22d7b53f0f8abee672 /macros/lamstex/inputs/paper.st |
Initial commit
Diffstat (limited to 'macros/lamstex/inputs/paper.st')
-rw-r--r-- | macros/lamstex/inputs/paper.st | 516 |
1 files changed, 516 insertions, 0 deletions
diff --git a/macros/lamstex/inputs/paper.st b/macros/lamstex/inputs/paper.st new file mode 100644 index 0000000000..3f94dd5291 --- /dev/null +++ b/macros/lamstex/inputs/paper.st @@ -0,0 +1,516 @@ +% PAPER.ST VERSION 2.0 +% COPYRIGHT (C) 1989, 1990, 1991 BY THE TEXPLORATORS CORPORATION +% ALL RIGHTS RESERVED + +% IF THIS FILE IS MODIFIED IN ANY WAY, IT SHOULD BE GIVEN A DIFFERENT NAME ! + +\catcode`\@=11 +\ifx\paperst@\relax\catcode`\@=\active\endinput\else\let\paperst@\relax\fi +\let\alloc@=\alloc@@ + +\hsize=30pc +\vsize=42pc +\parindent=1em +\normallineskiplimit=1pt +\advance\hoffset 48pt +\advance\voffset 78pt + +\font@\ninerm=cmr9 +\font@\eightrm=cmr8 +\font@\sixrm=cmr6 +\font@\eighti=cmmi8 \skewchar\eighti='177 +\font@\sixi=cmmi6 \skewchar\sixi='177 +\font@\ninesy=cmsy9 \skewchar\ninesy='60 +\font@\eightsy=cmsy8 \skewchar\eightsy='60 +\font@\sixsy=cmsy6 \skewchar\sixsy='60 +\font@\eightbf=cmbx8 +\font@\sixbf=cmbx6 +\font@\eightit=cmti8 +\font@\eightsl=cmsl8 +\font@\eighttt=cmtt8 + +\ifmsamloaded@ + \font@\eightmsa=msam8 + \font@\sixmsa=msam6 +\fi + +\ifmsbmloaded@ + \font@\eightmsb=msbm8 + \font@\sixmsb=msbm6 +\fi + +\ifeufmloaded@ + \font@\eighteufm=eufm8 + \font@\sixeufm=eufm6 +\fi + +\ifcmmibloaded@ + \font@\eightcmmib=cmmib8 \skewchar\eightcmmib='177 + \font@\sixcmmib=cmmib6 \skewchar\sixcmmib='177 +\fi + +\ifcmbsyloaded@ + \font@\eightcmbsy=cmbsy8 \skewchar\eightcmbsy='60 + \font@\sixcmbsy=cmbsy6 \skewchar\sixcmbsy='60 +\fi + +\newskip\ttglue@ + +\def\tenpoint{\def\pointsize@{10}% + \normalbaselineskip12\p@ + \abovedisplayskip12\p@ plus3\p@ minus9\p@ + \belowdisplayskip12\p@ plus3\p@ minus9\p@ + \abovedisplayshortskip\z@ plus3\p@ + \belowdisplayshortskip7\p@ plus3\p@ minus4\p@ + \textonlyfont@\rm\tenrm + \textonlyfont@\it\tenit + \textonlyfont@\sl\tensl + \textonlyfont@\bf\tenbf + \ifsyntax@\def\big##1{{\hbox{$\left##1\right.$}}}\else + \let\big\tenbig@ + \textfont\z@\tenrm \scriptfont\z@\sevenrm \scriptscriptfont\z@\fiverm + \textfont\@ne\teni \scriptfont\@ne\seveni \scriptscriptfont\@ne\fivei + \textfont\tw@\tensy \scriptfont\tw@\sevensy \scriptscriptfont\tw@\fivesy + \textfont\thr@@\tenex \scriptfont\thr@@\tenex \scriptscriptfont\thr@@\tenex + \textfont\itfam\tenit + \textfont\slfam\tensl + \textfont\bffam\tenbf \scriptfont\bffam\sevenbf + \scriptscriptfont\bffam\fivebf + \ifmsamloaded@ + \textfont\msafam\tenmsa \scriptfont\msafam\sevenmsa + \scriptscriptfont\msafam\fivemsa + \fi + \ifmsbmloaded@ + \textfont\msbfam\tenmsb \scriptfont\msbfam\sevenmsb + \scriptscriptfont\msbfam\fivemsb + \fi + \ifeufmloaded@ + \textfont\eufmfam\teneufm \scriptfont\eufmfam\seveneufm + \scriptscriptfont\eufmfam\fiveeufm + \fi + \ifcmmibloaded@ + \textfont\cmmibfam\tencmmib \scriptfont\cmmibfam\sevencmmib + \scriptscriptfont\cmmibfam\fivecmmib + \fi + \ifcmbsyloaded@ + \textfont\cmbsyfam\tencmbsy \scriptfont\cmbsyfam\sevencmbsy + \scriptscriptfont\cmbsyfam\fivecmbsy + \fi + \fi + \let\tt\tentt + \tt\ttglue@.5emminus.15em + \setbox\strutbox\hbox{\vrule\height8.5\p@\depth3.5\p@\width\z@}% + \setbox\strutbox@\hbox{\vrule\height8\p@\depth3\p@\width\z@}% + \ex@.2326ex\normalbaselines\ifmmode\else\rm\fi} + +\def\tenbig@#1{{\hbox{$\left#1\vbox to8.5\p@{}\right.\n@space$}}} + +\tenpoint + +\def\eightpoint{\def\pointsize@{8}% + \normalbaselineskip10\p@ + \abovedisplayskip10\p@ plus2.4\p@ minus7.2\p@ + \belowdisplayskip10\p@ plus2.4\p@ minus7.2\p@ + \abovedisplayshortskip\z@ plus2.4\p@ + \belowdisplayshortskip5.6\p@ plus2.4\p@ minus3.2\p@ + \textonlyfont@\rm\eightrm + \textonlyfont@\it\eightit + \textonlyfont@\sl\eightsl + \textonlyfont@\bf\eightbf + \ifsyntax@\def\big##1{{\hbox{$\left##1\right.$}}}\else + \let\big\eightbig@ + \textfont\z@\eightrm \scriptfont\z@\sixrm \scriptscriptfont\z@\fiverm + \textfont\@ne\eighti \scriptfont\@ne\sixi \scriptscriptfont\@ne\fivei + \textfont\tw@\eightsy \scriptfont\tw@\sixsy \scriptscriptfont\tw@\fivesy + \textfont\thr@@\tenex \scriptfont\thr@@\tenex \scriptscriptfont\thr@@\tenex + \textfont\itfam\eightit + \textfont\slfam\eightsl + \textfont\bffam\eightbf \scriptfont\bffam\sixbf + \scriptscriptfont\bffam\fivebf + \ifmsamloaded@ + \textfont\msafam\eightmsa \scriptfont\msafam\sixmsa + \scriptscriptfont\msafam\fivemsa + \fi + \ifmsbmloaded@ + \textfont\msbfam\eightmsb \scriptfont\msbfam\sixmsb + \scriptscriptfont\msbfam\fivemsb + \fi + \ifeufmloaded@ + \textfont\eufmfam\eighteufm \scriptfont\eufmfam\sixeufm + \scriptscriptfont\eufmfam\fiveeufm + \fi + \ifcmmibloaded@ + \textfont\cmmibfam\eightcmmib \scriptfont\cmmibfam\sixcmmib + \scriptscriptfont\cmmibfam\fivecmmib + \fi + \ifcmbsyloaded@ + \textfont\cmbsyfam\eightcmbsy \scriptfont\cmbsyfam\sixcmbsy + \scriptscriptfont\cmbsyfam\fivecmbsy + \fi + \fi + \let\tt\eighttt + \tt\ttglue@.4emminus.12em + \setbox\strutbox\hbox{\vrule\height7\p@\depth3\p@\width\z@}% + \setbox\strutbox@\hbox{\vrule\height6.5\p@\depth2.5\p@\width\z@}% + \ex@.2326ex\normalbaselines\ifmmode\else\rm\fi} + +\def\eightbig@#1{{\hbox{$\textfont\z@\ninerm\textfont\tw@\ninesy + \left#1\vbox to6.5\p@{}\right.\n@space$}}} + +{\catcode` =\active +\gdef\litcodes@@{\def {\allowbreak\hskip\ttglue@}}} + +\footline={\hss\tenpoint\folio\hss} + +\def\LamSTeX{L\kern-.4em\raise.3ex\hbox{$\ssize\Cal A$}% + \DN@{10}\ifx\next@\pointsize@\kern-.25em\else\kern-.3em\fi + \lower.4ex\hbox{\DN@{10}\ifx\next@\pointsize@\eightsy\else\sixsy\fi M}% + \kern-.1em{$\Cal S$}-\TeX} + +\def\claimformat@#1#2#3{\medbreak\noindent@@ + \DN@{8}\ifx\pointsize@\next@ + \rm\uppercase{#1 {\claim@@@F#2} #3}\punct@{\null.}\addspace@\enspace\else + \smc#1 {\claim@@@F#2} #3\punct@{\null.}\addspace@\enspace\fi + \sl} + +\def\windex@{\ifindexing@ + \expandafter\unmacro@\meaning\stari@\unmacro@ + \edef\macdef@{\string"\macdef@\string"}% + \edef\next@{\write\ndx@{\macdef@}}\next@ + \write\ndx@{{\number\pageno}{\page@N}{\page@P}{\page@Q}}% + \fi + \ifindexproofing@ + \ifx\stariii@\empty\else + \expandafter\unmacro@\meaning\stariii@\unmacro@\fi + \insert\margin@{\hbox{\eightpoint + \vrule\height7\p@\depth3\p@\width\z@\starii@ + \ifx\stariii@\empty\else\tt\macdef@\fi}}\fi} + +\newcount\toclevel@ +\toclevel@=3 +\def\toclevel#1{\toclevel@#1\relax} + +\def\HLtoc@{% + \iftoc@ + \ifnum\toclevel@<\@ne \else + {\noexpands@\let\style\relax + \edef\next@{\write\toc@{% + \noexpand\noexpand\expandafter\noexpand\HLname@ + {\expandafter\noexpand\csname HL@W\HLlevel@\endcsname}{\QorThelabel@@@@}}}% + \next@}% + \expandafter\unmacro@\meaning\entry@\unmacro@ + \Sixtoc@ + \write\toc@{\noexpand\Page{\number\pageno}{\page@N}% + {\page@P}{\page@Q}^^J}% + \fi + \fi} + +\def\hltoc@{% + \iftoc@ + \ifnum\hllevel@<\toclevel@ + {\noexpands@\let\style\relax + \edef\next@{\write\toc@{% + \ifnopunct@\noexpand\noexpand\noexpand\nopunct\fi + \ifnospace@\noexpand\noexpand\noexpand\nospace\fi + \noexpand\noexpand\expandafter\noexpand\hlname@ + {\expandafter\noexpand\csname hl@W\hllevel@\endcsname}{\QorThelabel@@@@}}}% + \next@}% + \expandafter\unmacro@\meaning\entry@\unmacro@ + \Sixtoc@ + \write\toc@{\noexpand\Page{\number\pageno}{\page@N}% + {\page@P}{\page@Q}^^J}% + \fi + \fi} + +\def\notocwrite@#1#2#3{\iftoc@\test@true\else\test@false\fi + \toc@false#1{#2}#3\iftest@\toc@true\fi} + +\notocwrite@\NameHL1\heading +\newfontstyle\heading{\smc} +\newif\ifinsection@ + +\expandafter\def\csname HL@1\endcsname#1\endHL{\global\insection@false + \bigbreak\medskip + {\locallabel@ + \global\setbox\@ne\vbox{\Let@\tabskip\hss@ + \halign to\hsize{\smc\hfil\ignorespaces##\unskip\hfil\cr + \expandafter\ifx\csname HL@W1\endcsname\empty\else + \csname HL@W1\endcsname\space\fi + {\HL@@F\ifx\thelabel@@\empty\else\thelabel@@\space\fi}% + \ignorespaces#1\crcr}}}\unvbox\@ne\nobreak\medskip} + +\def\appendices{% + \NameHL1\appendix + \Reset\appendix\@ne + \newnumstyle\appendix\Alph + \newword\appendix{Appendix}% +} + +\notocwrite@\Namehl1\section +\newstyle\section#1{#1\null.} + +\newif\ifcontinuesection@ +\def\keepsection{\global\continuesection@true} + +\expandafter\def\csname hl@1\endcsname#1{\global\insection@true + \global\continuesection@false + \medbreak\noindent@@ + {\locallabel@ + \bf{\hl@@F\ifx\thelabel@@\empty\else\thelabel@@\space\fi}% + \ignorespaces#1\unskip\punct@{\null.}}% + \par\nobreak\smallskip} + +\expandafter\newcount\csname hl@C2\endcsname +\csname hl@C2\endcsname\z@ +\expandafter\def\csname hl@S2\endcsname#1{#1\null.} +\expandafter\let\csname hl@N2\endcsname\arabic +\expandafter\let\csname hl@P2\endcsname\empty +\expandafter\let\csname hl@Q2\endcsname\empty +\expandafter\def\csname hl@F2\endcsname{\bf} +\expandafter\let\csname hl@W2\endcsname\empty + +\notocwrite@\Namehl2\subsection + +\expandafter\def\csname hl@2\endcsname#1{% + \ifinsection@ + \smallbreak + \noindent@@ + {\locallabel@ + {\hl@@F\ifx\thelabel@@\empty\else\thelabel@@\space\fi}\bf + \ignorespaces#1\unskip\punct@{\null.}\addspace@\enspace}% + \else + \Err@{\noexpand\subsection not in a \string\section}% + \fi} + +\expandafter\newcount\csname hl@C3\endcsname +\csname hl@C3\endcsname\z@ +\expandafter\def\csname hl@S3\endcsname#1{#1} +\expandafter\let\csname hl@N3\endcsname\arabic +\expandafter\let\csname hl@P3\endcsname\empty +\expandafter\let\csname hl@Q3\endcsname\empty +\expandafter\let\csname hl@F3\endcsname\empty +\expandafter\let\csname hl@W3\endcsname\empty + +\notocwrite@\Namehl3\topic + +\expandafter\def\csname hl@3\endcsname#1{% + \smallbreak + \noindent@@ + {\locallabel@ + \bf\ignorespaces#1\unskip\punct@{\null.}\addspace@\enspace}} + +\expandafter\newcount\csname hl@C4\endcsname +\csname hl@C4\endcsname\z@ +\expandafter\def\csname hl@S4\endcsname#1{#1} +\expandafter\let\csname hl@N4\endcsname\arabic +\expandafter\let\csname hl@P4\endcsname\empty +\expandafter\let\csname hl@Q4\endcsname\empty +\expandafter\let\csname hl@F4\endcsname\empty +\expandafter\let\csname hl@W4\endcsname\empty + +\notocwrite@\Namehl4\subtopic + +\expandafter\def\csname hl@4\endcsname#1{% + \smallbreak + {\locallabel@\bf\ignorespaces#1\unskip + \punct@{\null.}\addspace@\enspace}} + +\expandafter\def\csname HL@I1\endcsname{\ifcontinuesection@ + \else\Reset\hl11\fi} +\expandafter\def\csname hl@I1\endcsname{\Reset\hl21% + \newpre\hl2{\ifx\pref\empty\else\pref.\fi}} +\expandafter\def\csname hl@I2\endcsname{\Reset\hl31} +\expandafter\def\csname hl@I3\endcsname{\Reset\hl41} + +\def\vfootnote@#1{\insert\footins + \bgroup + \floatingpenalty\@MM\interlinepenalty\interfootnotelinepenalty + \leftskip\z@\rightskip\z@\spaceskip\z@\xspaceskip\z@ + \eightpoint + \splittopskip\ht\strutbox\splitmaxdepth\dp\strutbox + \locallabel@\noindent@@{\foottext@F#1}\modifyfootnote@ + \footstrut\FN@\fo@t} + +\newbox\abstractbox@ +\rightadd@\abstract\to\nofrillslist@ +\def\abstract@W{Abstract} + +\def\abstract{\begingroup + \global\setbox\abstractbox@\vbox\bgroup + \eightpoint\leftskip24\p@ \rightskip\leftskip + \everydisplay{\advance\displaywidth-48\p@\displayindent24\p@ + \csname displaymath \endcsname}% + \tolerance800 + \noindent@@ + \ifx\abstract@W\empty\else + \abstract@W\punct@{\null.}\addspace@\enspace\fi} + +\def\endabstract{\egroup\endgroup} + +\let\thanks@\relax +\long\def\thanks#1{\gdef\thanks@{\ignorespaces#1\unskip}} + +\let\keywords@\relax +\def\keywords#1{\gdef\keywords@{{\ignorespaces#1}}} + +\let\subjclass@\relax +\def\subjclass#1{\gdef\subjclass@{{\ignorespaces#1}}} + +\newcount\addresscount@ +\addresscount@\z@ +\long\def\address#1{\global\advance\addresscount@\@ne + \expandafter\gdef\csname address\number\addresscount@\endcsname + {{\ignorespaces#1}}} + +\def\bye{\par\nobreak\vskip12\p@ minus6\p@ + \eightpoint + \ifx\keywords@\relax\else + \noindent@@{\it Keywords.\enspace}\keywords@\par\fi + \ifx\subjclass@\relax\else + \noindent@@ 1980 {\it Mathematics subject classifications\/}\colon@\space + \subjclass@\par\fi + \ifnum\addresscount@>\z@ + \nobreak\vskip12\p@ minus6\p@ + \loop\ifnum\addresscount@>\z@ + \csname address\number\addresscount@\endcsname\endgraf + \global\advance\addresscount@\m@ne + \repeat + \fi + \vfill\supereject + \end} + +\let\enddocument\bye + +\let\pretitle\empty +\let\preauthor\empty +\let\preaffil\empty +\let\predate\empty +\let\preabstract\empty +\let\prepaper\empty + +\def\maketitle{\hrule\height\z@\vskip-\topskip + \pretitle + \vskip24\p@ plus12\p@ minus12\p@ + \unvbox\titlebox@ + \preauthor + \ifvoid\authorbox@\else\vskip12\p@ plus6\p@ minus3\p@\unvbox\authorbox@\fi + \preaffil + \ifvoid\affilbox@\else\vskip10\p@ plus5\p@ minus2\p@\unvbox\affilbox@\fi + \predate + \ifx\date@\relax\else\vskip6\p@ plus2\p@ minus\p@\centerline{\rm\date@}% + \let\date@\relax\fi + \preabstract + \ifx\thanks@\relax\else\vfootnote@{}\thanks@\let\thanks@\relax\fi + \ifvoid\abstractbox@\else\vskip15\p@ plus12\p@ minus12\p@ + \unvbox\abstractbox@\fi + \prepaper + \vskip18\p@ plus12\p@ minus6\p@} + +\def\makebib{\begingroup\eightpoint + \bigbreak\centerline{\smc\makebib@W}% + \nobreak\medskip + \sfcode`\.=\@m\everypar{}\parindent\z@ + \def\nopunct{\nopunct@true}\def\nospace{\nospace@true}% + \nopunct@false\nospace@false + \def\lkerns@{\null\kern\m@ne sp\kern\@ne sp}% + \def\nkerns@{\null\kern-\tw@ sp\kern\tw@ sp}% +} + +\def\beginthebibliography@#1{\eightpoint + \setboxz@h{#1\ }\bibindent@\wdz@ + \bigbreak\centerline{\smc\bibliography@W}\nobreak\medskip + \sfcode`\.=\@m\everypar{}\parindent\z@} + +\def\dotleaders{\leaders\hbox to10pt{\rm\hfil.\hfil}\hfil}% +\def\Page@#1#2#3#4{\kern10pt\hbox{\rm#3#2{#1}#4}}% +\long\def\widerthanhsize@#1#2#3#4{\test@true + \setbox\z@\vbox{\hsize\maxdimen + \rm\noindent@#1#2#3#4\par\setboxzl@}% + \ifdim\wdz@=\z@\setboxz@h{\kern24\p@\rm#1#2#3#4}\ifdim\wdz@>\hsize\else + \test@false\fi\fi}% +\long\def\setentry@#1#2#3#4{% + \widerthanhsize@{#1}{#2}{#3}{#4}% + \iftest@ + \longentry@{#1}{#2}{#3}{#4}% + \else + \hbox to\hsize{\kern24\p@\rm\strut#1#2#3#4\strut}% + \fi}% +\def\endstrut@{\lower\dp\strutbox\vbox to\dp\strutbox{}}% +\newdimen\thehang@ +\long\def\longentry@#1#2#3#4{\setboxz@h{#1}% + \thehang@\wdz@\advance\thehang@10\p@ + \setboxz@h{#4}% + \setbox\z@\vbox{\advance\hsize-\wdz@\advance\hsize-20\p@ + \normalbaselines + \hangafter\@ne\hangindent\thehang@\leftskip24\p@ + \vskip-\parskip + \noindent@\rm\strut\hbox{#1}#2\vphantom{#3#4}\strut}% + \setbox\z@\vbox{\unvbox\z@ + \setboxzl@ + \hbox to\hsize{\kern\thehang@\unhbox\z@\unskip\unskip#3#4\strut}% + }% + \unvbox\z@}% +\newif\ifemptynumber@ +\def\Style@{\emptynumber@false\FN@\Style@@}% +\def\Style@@{\ifx\next"\expandafter\Style@@@\else\expandafter\Style@@@@\fi}% +\def\Style@@@@#1\Style@{\style{#1}}% +\def\Style@@@"#1"\Style@{\DN@{#1}\ifx\next@\emtpy\emptynumber@true + \else\emptynumber@false#1\fi}% +\newdimen\digits + +\def\maketoc@W{Contents} + +\def\maketoc{\par + \begingroup + \eightpoint\tolerance800 + \unlabel@\noset@\let\nopunct\relax\let\nospace\relax\let\overlong\relax + \everypar{}\parindent\z@ + \lineskiplimit\z@ + \def\HL##1##2##3##4\Page##5##6##7##8{\def\HLlevel@{##1}% + \ifnum\HLlevel@=\@ne + \begingroup + \def\\{\unskip\space\ignorespaces}% + \setentry@{\bf\def\next@{##2}\ifx\next@\empty\else##2 \fi + \let\style\HL@@S\Style@##3\Style@ + \ifemptynumber@\else\space\fi}% + {\bf\ignorespaces##4\unskip}\dotleaders{\Page@{##5}{##6}{##7}{##8}}% + \endgroup + \else + \Err@{\string\HL##1 not defined in this style}% + \fi}% + \setbox0\hbox{0.00}% + \digits\wd\z@ + \def\hl##1##2##3##4\Page##5##6##7##8{\def\hllevel@{##1}% + \ifnum\hllevel@<\thr@@ + \begingroup + \setentry@{\rm\kern\hllevel@ em\quad\let\style\hl@@S + \Style@##3\Style@\ifemptynumber@\else\space\fi}% + {\rm\ignorespaces##4\unskip}\dotleaders{\Page@{##5}{##6}{##7}{##8}}% + \endgroup + \else + \ifnum\hllevel@<5 + \setentry@{}{\rm\kern\hllevel@ em\quad\ignorespaces##4\unskip}% + \dotleaders{\Page@{##5}{##6}{##7}{##8}}% + \else + \Err@{\string\hl##1 not defined in this style}% + \fi\fi}% + \def\NameHL##1##2{\def##2####1####2####3\Page{% + \HL{##1}{####1}{####2}####3\Page}}% + \def\Namehl##1##2{\def##2####1####2####3\Page{% + \hl{##1}{####1}{####2}####3\Page}}% + \NameHL1\heading \Namehl1\section \Namehl2\subsection \Namehl3\topic + \Namehl4\subtopic + \centerline{\smc\maketoc@W}% + \nobreak + \vskip18\p@ plus12\p@ minus6\p@ + \advance\hsize-24\p@ + \input\jobname.toc + \endgroup + \vskip12\p@ plus8\p@ minus4\p@ +} + +\def\alloc@#1#2#3#4#5{\global\advance\count1#1by\@ne + \ch@ck#1#4#2\allocationnumber=\count1#1 + \global#3#5=\allocationnumber + \wlog{\string#5=\string#2\the\allocationnumber}} +\catcode`\@=\active |