% Baskerville.cls: % Adrian Clark % Sue Brooks % Sebastan Rahtz % % based on the original LaTeX ARTICLE DOCUMENT STYLE % % for LaTeX2e % \def\filedate{94/08/15} \def\fileversion{3.4} % 29.5.94 added ISSN % 2.6.94 corrected \ukt\ macro % 7.6.94 centered captions % 15.8.94 changed editor names etc % Journals use two-sided printing. % \NeedsTeXFormat{LaTeX2e} \ProvidesClass{baskerv}[\filedate, Baskerville newsletter class \fileversion] \DeclareOption*{\PassOptionsToClass{\CurrentOption}{article}} \ProcessOptions \LoadClass{article} \RequirePackage[noisy]{textfit} \RequirePackage{pifont} \DeclareFontShape{T1}{pnb}{m}{sl}{<->ssub * pnb/m/it}{} \renewcommand{\sfdefault}{pgs} \renewcommand{\rmdefault}{pnb} \fontfamily{pnb}\selectfont \RequirePackage{t1enc} \RequirePackage{array} \RequirePackage{shortvrb} \RequirePackage{mflogo} \RequirePackage[dvips]{epsfig} \RequirePackage[dvips]{color} \RequirePackage{multicol} %\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 1pt \normallineskip 1pt \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 12pt \headsep 15pt \topskip 10pt \footskip 15pt % DIMENSION OF TEXT: \textheight 250mm % height of text on a page (A4 paper) \textwidth 180mm % total width of a page \columnseprule 0.5pt % width of line in the inter-column gutter \columnsep 10mm % space between columns \tolerance 9999 % make those columns justify % FOOTNOTES: \footnotesep 6pt \skip\footins 19.5pt plus 12pt minus 1pt % FLOATS: \floatsep 12pt plus 5.5pt minus 1pt \textfloatsep 15pt plus 4.5pt minus 3pt \intextsep 12pt plus 5.5pt minus 2pt \dblfloatsep 12pt plus 5.5pt minus 2pt \dbltextfloatsep 15pt plus 4.5pt minus 3pt \@fptop 0pt plus 0fil \@fpsep 12pt plus 0fil \@fpbot 0pt plus 3fil \@dblfptop 0pt plus 0fil \@dblfpsep 12pt plus 0fil \@dblfpbot 0pt plus 3fil \marginparpush 5pt % **************************************** % * PARAGRAPHING * % **************************************** % \parindent 1em \parskip \z@ plus .1pt \partopsep 0pt plus 1pt \@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@} {-24pt plus -12pt minus -.1pt} {12pt plus 1pt} {\raggedright\Large\bfseries}} \def\section{\@startsection {section}{1}{\z@} {-12pt plus -6pt minus -.1pt} {6pt} {\raggedright\large\bfseries}} \def\subsection{\@startsection{subsection}{2}{\z@} {-6pt plus -6pt minus -.1pt} {0.1pt plus 2pt} {\raggedright\normalsize\bfseries}} \def\subsubsection{\@startsection{subsubsection}{3}{\z@} {-6pt plus -6pt minus -.1pt} {0.1pt plus 2pt} {\raggedright\normalsize\it}} \def\paragraph{\@startsection{paragraph}{4}{\z@} {12pt plus 2.25pt minus 1pt} {-0.5em} {\normalsize\bfseries}} \def\subparagraph{\@startsection{subparagraph}{5}{\z@} {12pt plus 2.25pt minus 1pt} {-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{newcounter}} % **************************************** % * 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 6pt plus 1pt minus 1pt \itemsep \z@ plus .1pt } \let\@listi\@listI \@listi \def\@listii{\leftmargin\leftmarginii \labelwidth\leftmarginii\advance\labelwidth-\labelsep \topsep 6pt plus 1pt minus 1pt \parsep \z@ \itemsep \z@ plus .1pt } \def\@listiii{\leftmargin\leftmarginiii \labelwidth\leftmarginiii\advance\labelwidth-\labelsep \topsep 6pt plus 1pt minus 1pt \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 5pt \tabcolsep 6pt \arrayrulewidth .5pt \doublerulesep 1.5pt % **************************************** % * 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}% % \vspace*{-\headsep}% \@maketitle \bigskip\hrule\bigskip \thispagestyle{plain} \endgroup \let\maketitle\relax \let\@maketitle\relax % \let\thanks\relax } \newcount \scalefactor \newbox\BSKbox \def\editor{Sebastian Rahtz\\Elsevier Science Ltd} \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\ 1994} \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. Guidelines for submission of articles may be obtained from the Editor. } \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 0pt plus 1pt}\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} \def\title{\@ifnextchar [{\@titletwo}{\@titleone}} \def\@titletwo[#1]#2{\gdef\@title{#2}\gdef\@shorttitle{#1}} \def\@titleone#1{\gdef\@title{#1}\gdef\@shorttitle{#1}} \gdef\@shorttitle{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{\emph{\rightmark}} \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 \rightmark} \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.2pc} \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{12pt}} \def\tableofcontents{\Section*{Contents}\@starttoc{toc}} \def\l@part#1#2{\addpenalty{-\@highpenalty} \addvspace{2.25em plus 1pt} \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 1pt} \@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}\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}% \small\raggedright \parskip\z@ plus .1pt\relax \parindent\z@ \sloppy\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 6pt \setbox\@tempboxa\hbox{\small{\bfseries #1.} #2} \ifdim \wd\@tempboxa >\hsize \small{\bfseries #1.} #2\par \else \hbox to\hsize{\hfill\box\@tempboxa\hfill} \fi \vskip 6pt } % --- ----------------------------------------------------------------- % --- 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\logo{\fontfamily{logo}\selectfont} \def\MF{{\logo META}\-{\logo FONT}\spacefactor1000 } \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 } \let\METAFONT\MF \let\Metafont\MF \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} \newcommand{\CTAN}{\texttt{CTAN}} \def\ukt{{\footnotesize UK}TUG} \def\PS{\textsc{PostScript}} \newcommand{\payuk}{UK TeX Users' Group} \newcommand{\Newline}{\\[0.7\baselineskip]} \newcommand{\FullLine}[1]{% \makebox[\textwidth][l]{#1\hrulefill}\Newline} \newcommand{\HalfLine}[1]{% \makebox[0.5\textwidth][l]{#1\hrulefill}} \def\Dash{---} % --- ----------------------------------------------------------------- % --- Additional commands. % --- ----------------------------------------------------------------- \let\maketitle\make@articletitle \def\make@articletitle{\Section{\@title}} \def\article{% \setcounter{figure}{0}% \setcounter{table}{0}% \Section{\@title}% \let\maketitle\relax \markright{\@shortauthor\hfill\@shorttitle}% } % % Article is when the title is double column \def\Article{% \setcounter{figure}{0}% \setcounter{table}{0}% \begin{multicols}{2}[\Section{\@title}]% \let\maketitle\relax \markright{\@shortauthor\hfill\@shorttitle}% } % Article is when the title is double column \def\FArticle{% \setcounter{figure}{0}% \setcounter{table}{0}% \begin{multicols}{2}[\Section*{\@title}]% } \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 \extrarowheight2pt \setlength{\multicolsep}{6pt} \let\sl\it \newcommand{\meta}[1]{{$\langle$\itshape #1\/$\rangle$}} % 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 0pt \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}} \hyphenpenalty200 \doublehyphendemerits20000 \endinput % %%