From e0c6872cf40896c7be36b11dcc744620f10adf1d Mon Sep 17 00:00:00 2001 From: Norbert Preining Date: Mon, 2 Sep 2019 13:46:59 +0900 Subject: Initial commit --- usergrps/uktug/baskervi/5_3/baskerv.cls | 766 ++++++++++++++++++++++++++++++++ 1 file changed, 766 insertions(+) create mode 100644 usergrps/uktug/baskervi/5_3/baskerv.cls (limited to 'usergrps/uktug/baskervi/5_3/baskerv.cls') diff --git a/usergrps/uktug/baskervi/5_3/baskerv.cls b/usergrps/uktug/baskervi/5_3/baskerv.cls new file mode 100644 index 0000000000..37874bc409 --- /dev/null +++ b/usergrps/uktug/baskervi/5_3/baskerv.cls @@ -0,0 +1,766 @@ +% Baskerville.cls: +% Adrian Clark +% Sue Brooks +% Sebastan Rahtz +% +% based on the original LaTeX ARTICLE DOCUMENT STYLE +% +% for LaTeX2e +% +\def\filedate{1995/01/30} +\def\fileversion{3.10} +% 29.5.94 added ISSN +% 2.6.94 corrected \ukt\ macro +% 7.6.94 centered captions +% 15.8.94 changed editor names etc +% 2.11.94 use Alan Jeffrey's code for paths, emails, URLs etc +% from faq.sty +% put PA address in mast head +% Journals use two-sided printing. +% 1.12.94 cleaned again for FAQ issue. +% 6.12.94 more little fixes for FAQ issue +% 14.3.95 parameterized date +% 12.6.95 removed JF +\NeedsTeXFormat{LaTeX2e} +\ProvidesClass{baskerv}[\filedate, Baskerville newsletter class \fileversion] +\DeclareOption*{\PassOptionsToClass{\CurrentOption}{article}} +\ProcessOptions +\LoadClass{article} +\RequirePackage[noisy]{textfit} +\RequirePackage{pifont} +\RequirePackage{latexsym} +\RequirePackage{calc} +\RequirePackage{ifthen} +\RequirePackage{longtable} +\renewcommand{\rmdefault}{mbvx} +\renewcommand{\sfdefault}{cmss} +\renewcommand{\ttdefault}{cmtt} +\fontfamily{mbv}\selectfont +\DeclareFontShape{T1}{mbv}{m}{sl}{<->ssub * mbv/m/it}{} +\RequirePackage{t1enc} +\RequirePackage{array} +\RequirePackage{shortvrb} +\RequirePackage[dvips]{epsfig} +\RequirePackage[dvips]{color} +\RequirePackage{multicol} +\RequirePackage{faq} +\RequirePackage{mflogo} +%\RequirePackage{footcols} +\newcommand\bs{{\ttfamily\upshape\char'134}} +\def\arraybackslash{\let\\=\@arraycr} +\newcolumntype{P}[1]{>{\raggedright\arraybackslash}p{#1}} +\newcolumntype{C}[1]{>{\centering\arraybackslash}p{#1}} +\lineskip 1\p@ +\normallineskip 1\p@ +\def\baselinestretch{1} +\renewcommand\normalsize{% + \@setfontsize\normalsize\@xpt\@xiipt + \abovedisplayskip 4\p@ \@plus1\p@ \@minus1\p@ + \abovedisplayshortskip \z@ \@plus3\p@ + \belowdisplayshortskip 4\p@ \@plus3\p@ + \belowdisplayskip \abovedisplayskip + \let\@listi\@listI} +\let\@normalsize\normalsize +\normalsize +\renewcommand\small{% + \@setfontsize\small\@ixpt{10.5}% + \abovedisplayskip 4\p@ \@plus1\p@ \@minus1\p@ + \abovedisplayshortskip 4\p@ \@plus1\p@ + \belowdisplayshortskip \abovedisplayshortskip + \def\@listi{\leftmargin\leftmargini + \topsep 2\p@ \@plus1\p@ \@minus1\p@ + \parsep \z@ + \itemsep 2\p@}% + \belowdisplayskip \abovedisplayskip +} +\renewcommand\footnotesize{% + \@setfontsize\footnotesize\@viiipt{9}% + \abovedisplayskip 4\p@ \@plus1\p@ \@minus1\p@ + \abovedisplayshortskip \z@ \@plus\p@ + \belowdisplayshortskip 3\p@ \@plus\p@ \@minus2\p@ + \def\@listi{\leftmargin\leftmargini + \topsep 1\p@ \@plus1\p@ \@minus1\p@ + \parsep \z@ + \itemsep 2\p@}% + \belowdisplayskip \abovedisplayskip +} +\renewcommand\scriptsize{\@setfontsize\scriptsize\@viipt\@viiipt} +\renewcommand\tiny{\@setfontsize\tiny\@vpt\@vipt} +\renewcommand\large{\@setfontsize\large\@xipt{12}} +\renewcommand\Large{\@setfontsize\Large\@xiipt{14}} +\renewcommand\LARGE{\@setfontsize\LARGE\@xivpt{17}} +\renewcommand\huge{\@setfontsize\huge\@xviipt{20}} +\renewcommand\Huge{\@setfontsize\Huge\@xxpt{30}} +\normalsize +\DeclareOldFontCommand{\rm}{\normalfont\rmfamily}{\mathrm} +\DeclareOldFontCommand{\sf}{\normalfont\sffamily}{\mathsf} +\DeclareOldFontCommand{\tt}{\normalfont\ttfamily}{\mathtt} +\DeclareOldFontCommand{\bf}{\normalfont\bfseries}{\mathbf} +\DeclareOldFontCommand{\it}{\normalfont\itshape}{\mathit} +\DeclareOldFontCommand{\sl}{\normalfont\slshape}{\@nomath\sl} +\DeclareOldFontCommand{\sc}{\normalfont\scshape}{\@nomath\sc} + +% **************************************** +% * PAGE LAYOUT * +% **************************************** +% +% SIDE MARGINS: +\oddsidemargin -2.5pc \evensidemargin -2.5pc +\marginparwidth 4pc % don't use marginal notes... +\marginparsep 0.5pc % ...in the UK TUG newsletter + +% VERTICAL SPACING: +\topmargin -3pc +\headheight 12\p@ +\headsep 15\p@ +\topskip 10\p@ +\footskip 15\p@ + +% DIMENSION OF TEXT: + +\textheight 250mm % height of text on a page (A4 paper) +\textwidth 180mm % total width of a page +\columnseprule 0.5\p@ % width of line in the inter-column gutter +\columnsep 10mm % space between columns +\tolerance 9999 % make those columns justify + +% FOOTNOTES: +\footnotesep 6\p@ +\skip\footins 19.5\p@ plus 12\p@ \@minus 1\p@ + +% FLOATS: +\floatsep 12\p@ plus 5.5\p@ \@minus 1\p@ +\textfloatsep 15\p@ plus 4.5\p@ \@minus 3\p@ +\intextsep 12\p@ plus 5.5\p@ \@minus 2\p@ +\dblfloatsep 12\p@ plus 5.5\p@ \@minus 2\p@ +\dbltextfloatsep 15\p@ plus 4.5\p@ \@minus 3\p@ +\@fptop 0\p@ plus 0fil +\@fpsep 12\p@ plus 0fil +\@fpbot 0\p@ plus 3fil +\@dblfptop 0\p@ plus 0fil +\@dblfpsep 12\p@ plus 0fil +\@dblfpbot 0\p@ plus 3fil +\marginparpush 5\p@ + +% **************************************** +% * PARAGRAPHING * +% **************************************** +% +\parindent 12\p@ +\parskip \z@ plus .1\p@ +\partopsep 0\p@ plus 1\p@ +\@lowpenalty 51 +\@medpenalty 151 +\@highpenalty 301 +\@beginparpenalty -\@lowpenalty +\@endparpenalty -\@lowpenalty +\@itempenalty -\@lowpenalty +\clubpenalty=0 +\widowpenalty=10000 + +% **************************************** +% * SKIPS * +% **************************************** +% +\newskip\@indentskip +\newskip\smallindent +\newskip\@footindent +\newskip\@leftskip +\@indentskip=1.25pc +\smallindent=\parindent +\@footindent=\smallindent +\@leftskip=\z@ + + +% **************************************** +% * SECTIONS * +% **************************************** +% +\def\Section{\@startsection{newarticle}{0}{\z@} + {-24\p@ \@plus -12\p@ \@minus -.1\p@} + {12\p@ \@plus 1\p@} + {\raggedright\Large\bfseries}} +\def\section{%\typeout{** section!}% +\@startsection {section}{1}{\z@} + {-12\p@ \@plus -6\p@ \@minus -.1\p@} + {6\p@} + {\raggedright\large\bfseries}} +\def\subsection{\@startsection{subsection}{2}{\z@} + {-4\p@ \@plus -2\p@ \@minus -.1\p@} + {0.1\p@ \@plus 2\p@} + {\raggedright\normalsize\itshape}} +\def\subsubsection{\@startsection{subsubsection}{3}{\z@} + {-6\p@ \@plus -3\p@ \@minus -1\p@} + {0.1\p@ \@plus 2\p@} + {\raggedright\normalsize\it}} +\def\paragraph{\@startsection{paragraph}{4}{\z@} + {12\p@ \@plus 2.25\p@ \@minus -1\p@} + {-0.5em} + {\normalsize\bfseries}} +\def\subparagraph{\@startsection{subparagraph}{5}{\z@} + {12\p@ \@plus 2.25\p@ \@minus 1\p@} + {-0.5em} + {\normalsize\it}} +\setcounter{secnumdepth}{-1} +% +\def\appendix{\par + \setcounter{section}{0} + \setcounter{subsection}{0} + \def\thesection{\Alph{section}}} + +% **************************************** +% * PARTS & SECTIONS NUMBERS * +% **************************************** +% +\newcounter{newarticle} +\@newctr{section}[newarticle] +\def\thenewarticle {\Alph{newarticle}} + +% **************************************** +% * LISTS * +% **************************************** +% +\leftmargini \@indentskip +\leftmarginii 1pc +\leftmarginiii 1pc +\leftmarginiv 1pc +\leftmarginv 1pc +\leftmarginvi 1pc +\leftmargin\leftmargini +\labelsep 0.5em +\labelwidth\leftmargini\advance\labelwidth-\labelsep +% +% label macros for Range-Left and Range-Right labels +\def\makeRLlabel#1{\rlap{#1}\hss} +\def\makeRRlabel#1{\hss\llap{#1}} +% +\def\@listI{\leftmargin\leftmargini + \parsep \z@ + \topsep 2\p@ \@plus 1\p@ \@minus 1\p@ + \itemsep \z@ \@plus .1\p@ +} +\let\@listi\@listI +\@listi +\def\@listii{\leftmargin\leftmarginii + \labelwidth\leftmarginii\advance\labelwidth-\labelsep + \topsep 2\p@ \@plus 1\p@ \@minus 1\p@ + \parsep \z@ + \itemsep \z@ \@plus .1\p@ +} +\def\@listiii{\leftmargin\leftmarginiii + \labelwidth\leftmarginiii\advance\labelwidth-\labelsep + \topsep 1\p@ \@plus 1\p@ \@minus 1\p@ + \parsep \z@ + \partopsep \z@ + \itemsep \topsep +} +\def\@listiv{\leftmargin\leftmarginiv + \labelwidth\leftmarginiv\advance\labelwidth-\labelsep +} +\def\@listv{\leftmargin\leftmarginv + \labelwidth\leftmarginv\advance\labelwidth-\labelsep +} +\def\@listvi{\leftmargin\leftmarginvi + \labelwidth\leftmarginvi\advance\labelwidth-\labelsep +} +% +% ITEMIZE +\def\itemize{\ifnum \@itemdepth >3 \@toodeep + \else \advance\@itemdepth \@ne + \edef\@itemitem{labelitem\romannumeral\the\@itemdepth}% + \list{\csname\@itemitem\endcsname}% + {\let\makelabel\makeRRlabel}% + \fi} +\def\labelitemi{$\bullet$} +\def\labelitemii{--} +\def\labelitemiii{$\cdot$} +\def\labelitemiv{*} +% +% ENUMERATE with optional argument to set left margin... +\def\enumerate{\ifnum \@enumdepth >3 \@toodeep \else + \advance\@enumdepth \@ne + \edef\@enumctr{enum\romannumeral\the\@enumdepth}% + \fi + \@ifnextchar [{\@enumeratetwo}{\@enumerateone}% +} +\def\@enumeratetwo[#1]{% + \list{\csname label\@enumctr\endcsname}% + {\settowidth\labelwidth{[#1]} + \leftmargin\labelwidth \advance\leftmargin\labelsep + \usecounter{\@enumctr} + \let\makelabel\makeRRlabel} +} +\def\@enumerateone{% + \list{\csname label\@enumctr\endcsname}% + {\usecounter{\@enumctr} + \let\makelabel\makeRRlabel}} +% +\def\labelenumi{\theenumi} +\def\theenumi{\arabic{enumi}.} +\def\labelenumii{(\theenumii)} +\def\theenumii{\alph{enumii}} +\def\p@enumii{\theenumi} +\def\labelenumiii{\theenumiii} +\def\theenumiii{\roman{enumiii}} +\def\p@enumiii{\theenumi(\theenumii)} +\def\labelenumiv{\theenumiv} +\def\theenumiv{\Alph{enumiv}} +\def\p@enumiv{\p@enumiii\theenumiii} +% ARRAY AND TABULAR +% +\arraycolsep 5\p@ +\tabcolsep 6\p@ +\arrayrulewidth .5\p@ +\doublerulesep 1.5\p@ + +% **************************************** +% * TITLES AND ABSTRACT * +% **************************************** +% +\def\BASKvol#1{\gdef\BASK@vol{#1}} +\gdef\BASK@vol{?} +\def\BASKno#1{\gdef\BASK@no{#1}} +\gdef\BASK@no{?} +\def\makeBSKtitle{\par + \begingroup + \vspace*{-\headheight}% + \@maketitle + \bigskip\hrule\bigskip + \thispagestyle{plain} + \endgroup + \let\maketitle\relax + \let\@maketitle\relax +} +\newbox\BSKbox +\def\@maketitle{% +\centerline{{\bfseries \scaletowidth{\textwidth}{B\,a\,s\,k\,e\,r\,v\,i\,l\,l\,e}}} + \medskip + \hbox to \textwidth{\bfseries The Annals of the UK \TeX\ Users' + Group\hfill Editor: Sebastian Rahtz\hfill Vol.~\BASK@vol\ No.~\BASK@no} + \smallskip\hbox to \textwidth{\bfseries ISSN 1354--5930 +\hfill \thismonth\ \thisyear} + \medskip + \noindent Articles may be submitted via electronic mail to + \texttt{baskerville@tex.ac.uk}, or on MSDOS-compatible discs, + to Sebastian Rahtz, Elsevier Science Ltd, The Boulevard, Langford +Lane, Kidlington, Oxford OX5 1GB, to whom any correspondence +concerning \BV\ should also be addressed. \BV\ is set in Monotype +Baskerville, with Computer Modern Typewriter for literal +text, and printed on a Xerox Docutech. Production and distribution is +undertaken in Cambridge by Robin Fairbairns. Back +issues from the previous 12 months may be ordered from \ukt\ for +\pounds2 each; earlier issues are archived on \textsc{ctan} in +\texttt{usergrps/uktug}. + +Please send \ukt\ subscriptions, and book or software orders, to +Peter Abbott, 1 Eymore Close, Selly Oak, Birmingham B29 4LB. +Fax/telephone: 0121 476 2159. Email +enquiries about \ukt\ to \protect\texttt{uktug-enquiries@tex.ac.uk}. + } + +\def\and{\end{tabular}\vskip 6pt\par + \begin{tabular}[t]{@{}l@{}}} +% +\def\abstract{\@abstract} +%\def\endabstract{\endlist} +%\def\@abstract{\list{}{\leftmargin \z@\rightmargin\z@ +% \parsep 0\p@ \@plus 1\p@}\item[]\normalsize{\bfseries Summary}\\} +\def\endabstract{\par} +\def\@abstract{\subsection*{Summary}} + +% **************************************** +% * PAGE STYLES * +% **************************************** +% +\mark{{}{}} +\gdef\@author{} +\def\author{\@ifnextchar [{\@authortwo}{\@authorone}} +\def\@authortwo[#1]#2{\gdef\@author{#2}\gdef\@shortauthor{#1}} +\def\@authorone#1{\gdef\@author{#1}\gdef\@shortauthor{#1}} +\gdef\@shortauthor{Dummy Author} +\gdef\@title{Dummy Article Title} +\gdef\@longtitle{Dummy Article Title} +\def\title{\@ifnextchar [{\@titletwo}{\@titleone}} +\def\@titletwo[#1]#2{\gdef\@title{#1}\gdef\@longtitle{#2}} +\def\@titleone#1{\gdef\@title{#1}\gdef\@longtitle{#1}} +\gdef\@longtitle{Dummy Title} + +% +% \ps@empty defined in LATEX.TEX +% +\def\ps@plain{\let\@mkboth\markboth + \def\@oddhead{} + \def\@evenhead{} + \def\@oddfoot{\rm \hfil --\thepage--\hfil} + \def\@evenfoot{\rm \hfil --\thepage--\hfil} +} +\def\ps@headings{\let\@mkboth\markboth + \def\@oddhead{\hfill\emph{\@title}\hfill} + \def\@oddfoot{\rm \hfil --\thepage--\hfil} + \def\@evenhead{\it Baskerville \hfill Volume \BASK@vol, Number \BASK@no} + \def\@evenfoot{\rm \hfil --\thepage--\hfil} +} +\def\ps@myheadings{\let\@mkboth\@gobbletwo + \def\@oddhead{\it\@shortauthor \hfill \@title} + \def\@oddfoot{\rm \hfil --\thepage--\hfil} + \def\@evenhead{\it Baskerville \hfill Volume \BASK@vol, Number \BASK@no} + \def\@evenfoot{\rm \hfil --\thepage--\hfil} + \def\sectionmark##1{} + \def\subsectionmark##1{}} + +% **************************************** +% * TABLE OF CONTENTS, ETC. * +% **************************************** +% +\def\@pnumwidth{1.4pc} +\def\@tocrmarg {2pc} +\def\@dotsep{10} +\setcounter{tocdepth}{0} +%\def\tableofcontents{\@restonecolfalse +% \if@twocolumn\@restonecoltrue\onecolumn\fi +% \section*{Contents} \@starttoc{toc} +% \if@restonecol\twocolumn\fi \par\vspace{12\p@}} +\def\tableofcontents{\Section*{Contents}\@starttoc{toc}} +\def\l@part#1#2{\addpenalty{-\@highpenalty} + \addvspace{2.25em \@plus 1\p@} + \begingroup + \parindent \z@ \rightskip \@pnumwidth + \parfillskip -\@pnumwidth + {\normalsize\rm + \leavevmode \hspace*{3pc} + #1\hfil \hbox to\@pnumwidth{\hss \ }}\par + \nobreak \global\@nobreaktrue + \everypar{\global\@nobreakfalse\everypar{}}\endgroup} +\def\dotfil{\cleaders\hbox{$\m@th \mkern1.5mu.\mkern1.5mu$}\hfil\kern\z@} +\def\l@newarticle#1#2{\addpenalty{\@secpenalty} +% \addvspace{1.0em \@plus 1\p@} + \@tempdima 1.5em % width of box holding section number + \begingroup + \parindent \z@ \rightskip \@pnumwidth + \parfillskip -\@pnumwidth + \leavevmode + #1\dotfil \hbox to\@pnumwidth{\hss #2}\par + \endgroup} +\def\l@section{\@dottedtocline{1}{\z@}{1.5em}} +\def\l@subsection{\@dottedtocline{2}{1.5em}{2.3em}} +\def\l@subsubsection{\@dottedtocline{3}{3.8em}{3.2em}} +\def\l@paragraph{\@dottedtocline{4}{7.0em}{4.1em}} +\def\l@subparagraph{\@dottedtocline{5}{10em}{5em}} +\def\listoffigures{\@restonecolfalse + \if@twocolumn\@restonecoltrue\onecolumn\fi + \section*{List of Figures\@mkboth{List of Figures}{List of Figures}} + \@starttoc{lof} \if@restonecol\twocolumn\fi} +\def\l@figure{\@dottedtocline{1}{1.5em}{2.3em}} +\def\listoftables{\@restonecolfalse + \if@twocolumn\@restonecoltrue\onecolumn\fi + \section*{List of Tables\@mkboth{List of Tables}{List of Tables}} + \@starttoc{lot} \if@restonecol\twocolumn\fi} +\let\l@table\l@figure + +% **************************************** +% * BIBLIOGRAPHY * +% **************************************** +% +\def\thebibliography#1{\section*{\refname} + \small +\list + {\@biblabel{\arabic{enumiv}}}{\settowidth\labelwidth{\@biblabel{#1}}% + \leftmargin\labelwidth + \advance\leftmargin\labelsep + \usecounter{enumiv}% + \let\p@enumiv\@empty + \def\theenumiv{\arabic{enumiv}}}% + \def\newblock{\hskip .11em plus.33em minus.07em}% + \parskip\z@ \@plus .1pt\relax + \clubpenalty4000\widowpenalty4000\sfcode`\.=1000\relax} +\def\refname{References} +\def\endthebibliography{% + \def\@noitemerr{\@warning{Empty `thebibliography' environment}}% + \endlist} + +\setcounter{topnumber}{2} +\def\topfraction{.9} +\setcounter{bottomnumber}{1} +\def\bottomfraction{.9} +\setcounter{totalnumber}{3} +\def\textfraction{.1} +\def\floatpagefraction{.75} +\setcounter{dbltopnumber}{2} +\def\dbltopfraction{.9} +\def\dblfloatpagefraction{.75} + +\long\def\@makecaption#1#2{\vskip 6\p@ + \setbox\@tempboxa\hbox{\small{\bfseries #1.} #2} + \ifdim \wd\@tempboxa >.8\hsize + \small{\bfseries #1.} #2\par + \else + \hbox to.8\hsize{\hfill\box\@tempboxa\hfill} + \fi + \vskip 6\p@ +} + + +% --- ----------------------------------------------------------------- +% --- Shorthands for non-English abbreviations and words. +% --- ----------------------------------------------------------------- + +\def\foreign{\em} +\def\etc{{\foreign etc.}} % etc. +\def\eg{{\foreign e.g.~}\ignorespaces} % e.g. +\def\egc{{\foreign e.g.,~}\ignorespaces} % e.g., +\def\ie{{\foreign i.e.~}\ignorespaces} % i.e. +\def\iec{{\foreign i.e.,~}\ignorespaces} % i.e., + +% --- ----------------------------------------------------------------- +% --- Tex-related mnemonics. +% --- ----------------------------------------------------------------- + + +\def\La{\protect\p@La} +\def\p@La{L% + {\setbox0\hbox{T}% + \setbox2\vbox to\ht0{\kern.07ex\hbox{% + \csname S@\f@size\endcsname + \math@fontsfalse + \fontsize\sf@size\z@\selectfont + A}% + \vss}% + \kern-.5\wd2 + \box2 + }} +\def\AllTeX{(\La)\TeX} +\def\AmSTeX{$\mathcal{A}\kern-.1667em\lower.5ex\hbox{$\mathcal{M}$}\kern-.125em S$\TeX} +\def\LamsTeX{$\mathcal{L}\mathcal{A}% +\kern-.1667em\lower.5ex\hbox{$\mathcal{M}$}\kern-.125em S$\TeX} +\def\BibTeX{{\rmfamily B\kern-.05em\textsc{i\kern-.025em b}\kern-.08em\TeX}} +\def\INRStex{T\kern-.1667em\lower.5ex\hbox{\^E}\kern-.125emX} +\def\JTeX{\leavevmode\hbox{\lower.5ex\hbox{J}\kern-.18em\TeX}} +\def\LAMSTeX{L\kern -0.4 em \raise 0.3 ex \hbox {$\scriptstyle \mathcal{A}$}% + \kern -0.25 em \lower 0.4 ex \hbox {$\cal M$}% + \kern -0.1 em \hbox {$\mathcal{S}$}-\TeX} +\def\AMSLaTeX{{$\mathcal{A}$\kern-.1667em\lower.5ex\hbox{$\mathcal{M}$}\kern-.125em + $\mathcal{S}$-\LaTeX}} +\def\MakeIndex{{\itshape MakeIndex}} +\def\PiC{P\kern-.12em\lower.5ex\hbox{I}\kern-.075emC} +\def\PiCTeX{\PiC\kern-.11em\TeX} +% SliTeX from the SliTeX Documentation +\def\SLiTeX{S\kern-.065em L\kern-.18em\raise.32ex\hbox{\textsc{i}}\kern-.03em\TeX} +\let\SliTeX\SLiTeX +\def\POBox{P.\thinspace O.~Box } +\def\TeXhax{\TeX hax} +\def\TeXXeT{\TeX--X\kern-.125em\lower.5ex\hbox{E}\kern-.1667emT} +\def\TUB{\emph{TUGboat}} +\def\DVI{\texttt{dvi}} +\def\VF{\textsc{vf}} +\def\BV{\emph{Baskerville}} +\def\UKTUG{UK \TeX\ Users' Group} +\def\ukt{{\footnotesize UK}TUG} +\let\shortuktug\ukt +\def\PS{\textsc{PostScript}} +\newcommand{\payuk}{UK TeX Users' Group} +\newcommand{\Newline}{\\[0.7\baselineskip]} +\newcommand{\FullLine}[1]{% + \makebox[\linewidth][l]{#1\hrulefill}\Newline} +\newcommand{\HalfLine}[1]{% + \makebox[0.5\linewidth][l]{#1\hrulefill}} + +\def\Dash{---} + + +% --- ----------------------------------------------------------------- +% --- Additional commands. +% --- ----------------------------------------------------------------- + +\let\maketitle\make@articletitle +\def\make@articletitle{\Section{\@longtitle}} + +\def\article{% + \setcounter{figure}{0}% + \setcounter{table}{0}% + \Section{\@longtitle}% + \let\maketitle\relax + \markright{\@shortauthor\hfill\@longtitle}% +} +% +% Article is when the title is double column +\def\Article{% + \setcounter{figure}{0}% + \setcounter{table}{0}% + \begin{multicols}{2}[\Section{\@longtitle}]% + \let\maketitle\relax + \markright{\@shortauthor\hfill\@longtitle}% +} +% Article is when the title is double column +\def\FArticle{% + \setcounter{figure}{0}% + \setcounter{table}{0}% + \begin{multicols}{2}[\Section*{\@longtitle}]% +} +\def\endarticle{\@signature + \gdef\@author{\mbox{}}} + +\def\endArticle{\@signature + \gdef\@author{\mbox{}}\end{multicols}% +} +\let\endFArticle\endArticle +\def\newarticlemark#1{} + +% --- Macros for cross-referencing tables and figures. + +\def\figref#1{Figure~\ref{#1}} +\def\tabref#1{Table~\ref{#1}} + +% --- Output the attribution at the end of an article. +\def\emptysig{} +\def\@signature{% + \ifx\@author\emptysig\else + \begin{flushright}\begin{tabular}{@{}r@{}}\@author\end{tabular}% + \end{flushright}\fi} + +\def\signature#1{\begin{flushright} + \begin{tabular}{@{}r@{}}#1\end{tabular}% + \end{flushright}} + +% --- ------------------------------------------------------------------ +% --- The following macros are taken from Adrian F. Clark's LaTeX style +% --- file `dates.sty', which provides fairly flexible date inclusions. +% --- ------------------------------------------------------------------ + +\def\today{\thisdayofweek\ \thisdayth\ \thismonth\ \thisyear} + +\def\thisday{\number\day} + +\def\thisdayth{\thisday \ifcase\day + \or\st\or\nd\or\rd\or\th\or\th\or\th\or\th\or\th\or\th\or\th + \or\th\or\th\or\th\or\th\or\th\or\th\or\th\or\th\or\th\or\th + \or\st\or\nd\or\rd\or\th\or\th\or\th\or\th\or\th\or\th\or\th\or\st\fi} + +\def\thisdayofweek{\dayofweek{\year}{\month}{\day}} + +\def\thismonth{\ifcase\month\or \January\or \February\or \March\or + \April\or \May\or \June\or \July\or \August\or \September\or + \October\or \November\or \December\fi} + +\def\thisyear{\number\year} + +% --- Names of days of the week and the months. +% --- This makes it easier to change them for languages other than English. +% --- (And that's why they're not \@Sunday, etc). + +\def\Sunday{Sunday} +\def\Monday{Monday} +\def\Tuesday{Tuesday} +\def\Wednesday{Wednesday} +\def\Thursday{Thursday} +\def\Friday{Friday} +\def\Saturday{Saturday} + +\def\January{January} +\def\February{February} +\def\March{March} +\def\April{April} +\def\May{May} +\def\June{June} +\def\July{July} +\def\August{August} +\def\September{September} +\def\October{October} +\def\November{November} +\def\December{December} + +% --- Counters. Note that we use the same registers as TeX holds other +% --- things in (e.g., \count0 holds the page number). This requires +% --- that \@savestyle, \@setstyle, and \dayofweek perform all +% --- their register manipulations within a group. This may seem +% --- a bit messy, but it saves having eight registers permanently set +% --- aside just for date calculation. + +\def\@cent{\count0 } % century number (1979 == 20) +\def\@diy{\count1 } % day in the year +\def\@dow{\count2 } % gets day of the week +\def\@epact{\count3 } % age of the moon on Jan. 1 +\def\@golden{\count4 } % Moon's golden number +\def\@leap{\count5 } % leap year fingaler +\def\@x{\count6 } % temp register +\def\@y{\count7 } % another temp register + +\def\st{\alien@up{st}} +\def\nd{\alien@up{nd}} +\def\rd{\alien@up{rd}} +\def\th{\alien@up{th}} + +\def\alien@up#1{{\@savestyle\thinspace$^{\underline{\hbox{% + \scriptsize\@setstyle#1\fam=-1 }}}$}} + +% --- Macros to save and restore the font family. + +\def\@savestyle{\count0=\the\fam} + +\def\@setstyle{\ifcase\count0\rm\or\mit\or\cal\or\rm% what's family 3? + \or\it\or\sl\or\bfseries\or\tt\fi} + +% --- The day of the week (\Sunday, etc.) is inserted into the text +% --- by \dayofweek. (This uses registers \@dow, \@leap, \@x and \@y.) +% --- I acquired this from elsewhere; it was apparently written by +% --- Martin Minow, now a DEC employee. + +\def\dayofweek#1#2#3{{% + \@leap=#2 \advance\@leap by -14 \divide\@leap by 12 + \advance\@leap by #1 + \@dow=#2 \advance\@dow by 10 + \@y=\@dow \divide\@y by 13 \multiply\@y by 12 + \advance\@dow by -\@y \multiply\@dow by 13 \advance\@dow by -1 \divide\@dow by 5 + \advance\@dow by #3 \advance\@dow by 77 + \@x=\@leap \@y=\@x \divide\@y by 100 \multiply\@y by 100 \advance\@x by -\@y + \multiply\@x by 5 \divide\@x by 4 \advance\@dow by \@x + \@x=\@leap \divide\@x by 400 \advance\@dow by \@x + \@x=\@leap \divide\@x by 100 \multiply\@x by 2 \advance\@dow by -\@x + \@x=\@dow \divide\@x by 7 \multiply\@x by 7 \advance\@dow by -\@x + \ifcase\@dow \Sunday\or \Monday\or \Tuesday\or \Wednesday\or + \Thursday\or \Friday\or \Saturday\fi}} + +% **************************************** +% * INITIALIZATION * +% **************************************** +% +\ps@headings +\pagenumbering{arabic} +\sloppy +\flushbottom +\frenchspacing + +\extrarowheight2\p@ +\setlength{\multicolsep}{6\p@} +\let\sl\it +\newcommand{\meta}[1]{{$\langle$\itshape #1\/$\rangle$}} +\def\Gin@extensions{eps,ps,psz} +\def\Gin@sepdefault{.}% +\@namedef{Gin@rule@psz}#1{{eps}{bb}{`gunzip -c #1}} + +% no rule in footcols + +\def\@makecol@ftn{% + \vskip \skip\footins + \footnoterule + \footnotesize + \multicolsep\z@\relax + \hsize\textwidth + \@parboxrestore + % {\showoutput\batchmode\showbox\footins}% + \raggedcolumns + \bgroup \columnseprule 0\p@ + \begin{multicols}{\the\ftn@col@number}% + \unvbox \footins + \end{multicols}% + \egroup +} +% +% available for inter-article dinglines +% +\def\Dings{\nopagebreak{\footnotesize\dingline{167}}} +% +% breakable, no brackets, cites +\def\@cite#1#2{{#1\if@tempswa , #2\fi}} +\@twosidetrue \@mparswitchtrue +\endinput +%% -- cgit v1.2.3