% $Header: /ep/users/dre/papers/epodd.sty,v 1.15 93/04/05 11:58:19 dre Exp Locker: dre $ % % I call this file epodd.sty and I use it in my LaTeX file as % \documentstyle[epodd,times]{article} % There is also an epodd.bst, invoked as % \bibliographystyle{epodd} % Also specify % \titlehead{Short title for paper} % \authorhead{Author Name(s)} % The fields of \maketitle are further redefined: \date is eliminated and % \affiliation is added. % % Richard Furuta December 9, 1987 % Esther Lim revised July 1989 % Generalisations by David Evans, November 1989 % Revised by Richard Furuta, January 1990 % Revised by Geeti Granger and David Evans, John Wiley & Sons, Chichester, April 1990 (version 1.1) \typeout {LaTeX style for EP-odd, $Revision: 1.15 $, $Date: 93/04/05 11:58:19 $ } \@twosidetrue % Usage is as shown below: % % \documentstyle[times,epodd]{article} % \title{Electronic publishing and computer science} % \author{DAVID F. BRAILSFORD} % \titlehead{ELECTRONIC PUBLISHING AND COMPUTER SCIENCE} % \authorhead{D. F. BRAILSFORD} % \received{6 November 1987} % \revised{13 November 1987} % \epodd{1}{0}{JANUARY}{88}{13}{21} % The following style file is also needed if you are using dvips with % encapsulated PostScript inserts. % \input epsf % EPSF (encapsulated PostScript) style for including PS figures \def\ifundefined#1{\expandafter\ifx\csname#1\endcsname\relax} \frenchspacing % size requirements \def\@normalsize{\@setsize\normalsize{12pt}\xpt\@xpt \abovedisplayskip 10pt\belowdisplayskip \abovedisplayskip \abovedisplayshortskip \z@ plus3pt\belowdisplayshortskip 6pt} \def\small{\@setsize\small{11pt}\ixpt\@ixpt} \abovedisplayskip 10pt\belowdisplayskip \abovedisplayskip \abovedisplayshortskip \z@\belowdisplayshortskip 6pt %\def\@listi{\topsep 4pt plus 2pt minus 2pt\parsep 2pt plus 1pt minus 1pt %\itemsep \parsep}} \def\footnotesize{\@setsize\footnotesize{9pt}\viiipt\@viiipt \abovedisplayskip 8pt plus 2pt minus 4pt\belowdisplayskip \abovedisplayskip \abovedisplayshortskip \z@ plus 1pt\belowdisplayshortskip 4pt plus 2pt minus 2pt \def\@listi{\topsep 6pt\parsep0pt \itemsep \parsep}} %\def\@listi{\topsep 4pt plus 2pt minus 2pt\parsep 2pt plus 1pt minus 1pt %\itemsep \parsep}} \def\scriptsize{\@setsize\scriptsize{9.5pt}\viiipt\@viiipt} \def\tiny{\@setsize\tiny{7pt}\vipt\@vipt} \def\Tiny{\@setsize\tiny{8pt}\viipt\@viipt} \def\large{\@setsize\large{14pt}\xiipt\@xiipt} \def\Large{\@setsize\Large{18pt}\xivpt\@xivpt} \def\LARGE{\@setsize\LARGE{22pt}\xviipt\@xviipt} \def\huge{\@setsize\huge{25pt}\xxpt\@xxpt} \def\Huge{\@setsize\Huge{30pt}\xxvpt\@xxvpt} \normalsize % baseline for section is set at 12 because I need 13 and can't get it % easily another way (see redefinition of section, etc.) \def\headsize{\@setsize\sectsize{11pt}\ixpt\@ixpt} % for page header \def\footsize{\@setsize\sectsize{9pt}\viiipt\@viiipt} % for page footer \def\sectsize{\@setsize\sectsize{12pt}\xpt\@xpt\bf\appendixstr} % for section heads \def\subsectsize{\@setsize\subsectsize{12pt}\xpt\@xpt\bf} % for section heads \def\subsubsectsize{\@setsize\subsubsectsize{12pt}\xpt\@xpt\it} % for section heads \def\summsize{\@setsize\summsize{10pt}\ixpt\@ixpt\bf} % for summary \def\abstsize{\@setsize\abstsize{10pt}\ixpt\@ixpt\bf} % for abstract \def\captsize{\@setsize\captsize{10pt}\ixpt\@ixpt} % for captions \def\titlesize{\@setsize\titlesize{18pt}\xviipt\@xviipt\bf} % large title should be 16pt \def\authsize{\@setsize\authsize{9pt}\viiipt\@viiipt} % author size \def\affilsize{\@setsize\affilsize{9pt}\viiipt\@viiipt\it} % affiliation \def\refsize{\@setsize\refsize{10pt}\ixpt\@ixpt} % references \def\keysize{\@setsize\affilsize{9pt}\viiipt\@viiipt} % key words \setcounter{secnumdepth}{3} % define medium rule \def\medline{\leaders\hrule height 0.8pt\hfill\\} \def\tmedline{\noalign{\hrule height 0.8pt}} \def\tspace#1{\noalign{\vskip #1}} \def\ds{\cr\noalign{\vskip 5pt}} % - redefine the citation style to put spaces after the commas % redefine the citation style to put spaces after the commas \def\@citex[#1]#2{\if@filesw\immediate\write\@auxout{\string\citation{#2}}\fi \def\@citea{}\@cite{\@for\@citeb:=#2\do {\@citea\def\@citea{,}\@ifundefined {b@\@citeb}{{\bf ?}\@warning {Citation `\@citeb' on page \thepage \space undefined}}% \hbox{\csname b@\@citeb\endcsname}}}{#1}} % new field for the title \def\affiliation#1{\gdef\@affiliation{#1}} %title's spacing \def\titlesp{\list{}{\leftmargin0pc}\item[]} \let\endtitlesp=\endlist % Alas we have to modify \maketitle to avoid resetting the footnote counter % The original definition was from % article.sty 16-Mar-88 \def\@makefnmark{\hbox {$^{\rm \@thefnmark}$\hss}} \def\maketitle{\par \begingroup %\def\thefootnote{\fnsymbol{footnote}} \def\@makefnmark{\hbox {$^{\rm \@thefnmark}$\hss}} \if@twocolumn \twocolumn[\@maketitle] \else \newpage \global\@topnum\z@ \@maketitle \fi\thispagestyle{plain}\@thanks \endgroup % \setcounter{footnote}{0} \let\maketitle\relax \let\@maketitle\relax \gdef\@thanks{}\gdef\@author{}\gdef\@title{}\let\thanks\relax} % title needs adjusting, no date in title \def\@maketitle{\newpage \null % \vskip 48pt % Vertical space above title. 65pt - 17pt % % (adjust for following baseline) \vspace*{-30pt} % ? assume 24 point after heading rule \begin{titlesp} {\titlesize \@title \par} \vskip 10pt % Vertical space after title. 24 pt (24-14) {\authsize \@author \par} % there should be 18 pts between author and affiliation baselines \vskip 3pt % Vertical space after author. 12pt - 9pt {\affilsize\it \@affiliation \par} \vskip 11.6pt % 12pt = 11.6 + 0.4rule \hrule % point rule \end{titlesp} \par \vskip 20pt} % Vertical space after title. 26pt - 10pt % modify the sectioning commands as is appropriate for style. Adjusting % for baselines again to get 18 pt above and 6 pt below \def\thesection {\arabic{section}} \def\thesubsection {\thesection.\arabic{subsection}} \def\thesubsubsection {\thesubsection .\arabic{subsubsection}} \def\theparagraph {\thesubsubsection.\arabic{paragraph}} \def\thesubparagraph {\theparagraph.\arabic{subparagraph}} \def\section{\@startsection {section}{1}{\z@}{-18pt}{6pt}{\sectsize}} %18 above 6 below \def\subsection{\@startsection{subsection}{2}{\z@}{-18pt}{6pt}{\subsectsize}} %18 above, 6 below \def\subsubsection{\@startsection{subsubsection}{3}{\z@}{-18pt}{6pt}{\subsubsectsize}} %18 above, 6 below \def\paragraph{\@startsection {paragraph}{4}{\z@}{6pt plus 2pt minus 2pt}{-1em}{\normalsize\bf}} \def\subparagraph{\@startsection {subparagraph}{4}{\parindent}{6pt plus 2pt minus 2pt}{-1em}{\normalsize\bf}} % modify the appendix command to change the style of the subsequent sections \def\appendixstr{} \def\appendix{\par\noindent\ignorespaces \setcounter{section}{0} \setcounter{subsection}{0} \def\thesection{\Alph{section}:} \def\appendixstr{\noindent\ignorespaces APPENDIX }} % define a new environment for use in setting the summary \def\summary{\ifundefined{pdfmark} \relax \else \@outline{1}{SUMMARY}{0} \fi% \summsize{\noindent SUMMARY}\par\vspace{2pt}% {\leftmargin0pc}\noindent\ignorespaces} \def\endsummary{\endlist}%\vskip-7pt} % for old versions: \def\summ{\summary} \def\endsumm{\endsummary} % make abstract the same as the summary \def\abstract{\summary} \def\endabstract{\endsummary} % define a new environment for use in setting the abstract \def\abst{\list{}{\leftmargin0pc}\abstsize\item[]} \def\endabst{\endlist\vskip-7pt} % for acknowledgements \def\acknowledgements{\section*{\rm ACKNOWLEDGEMENTS}} \def\ack{\acknowledgements} % need a period after section numbers \def\@sect#1#2#3#4#5#6[#7]#8{\ifnum #2>\c@secnumdepth \def\@svsec{}\else \refstepcounter{#1}\edef\@svsec{\csname the#1\endcsname{}\hskip 1em }\fi \@tempskipa #5\relax \ifdim \@tempskipa>\z@ \begingroup #6\relax \@hangfrom{\hskip #3\relax\@svsec}{\interlinepenalty \@M #8\par} \endgroup \csname #1mark\endcsname{#7}\addcontentsline {toc}{#1}{\ifnum #2>\c@secnumdepth \else \protect\numberline{\csname the#1\endcsname}\fi #7}\else \def\@svsechd{#6\hskip #3\@svsec #8\csname #1mark\endcsname {#7}\addcontentsline {toc}{#1}{\ifnum #2>\c@secnumdepth \else \protect\numberline{\csname the#1\endcsname}\fi #7}}\fi \@xsect{#5}} % bibliography stuff \def\thebibliography#1{\section*{\rm REFERENCES\@mkboth {\eightrm REFERENCES}{\eightrm REFERENCES}}\refsize\list {\arabic{enumi}.~}{\settowidth\labelwidth{0#1.~}\leftmargin\labelwidth \itemsep0pt% plus 1pt % \parindent=0pt %made no difference %\advance\leftmargin-1em %made no difference %\labelsep \parsep0pt\itemsep0pt \usecounter{enumi}} \def\newblock{\hskip .11em plus .33em minus .07em} \sloppy\clubpenalty4000\widowpenalty4000\interlinepenalty=100 \sfcode`\.=1000\relax} \let\endthebibliography=\endlist \def\@biblabel#1{#1\hfill} %\def\@cite#1{\thinspace[{#1}]} % here is a useful little macro that lets you access citation numbers % use it as in \citestr{CiteKey} \def\citestr#1{\nocite{#1}\csname b@#1\endcsname} % figure spacings % ONE-COLUMN MODE OR SINGLE-COLUMN FLOATS IN TWO-COLUMN MODE: \textfloatsep 13pt plus 2pt minus 4pt % Space between main text and floats % at top or bottom of page. \@maxsep 13pt % The maximum of \floatsep, % \textfloatsep and \intextsep (minus % the stretch and shrink). \def\fnum@table{\captsize\rm Table \thetable} \def\fnum@figure{\captsize\it Figure \thefigure} \long\def\@caption#1[#2]#3{\addcontentsline{\csname ext@#1\endcsname}{#1}{\protect\numberline{\csname the#1\endcsname}{\ignorespaces #2}}\par \begingroup \@parboxrestore \captsize \@makecaption{\csname fnum@#1\endcsname}{\ignorespaces #3}\par \endgroup} \long\def\@makecaption#1#2{ \vspace{-12pt} \begin{center} {\captsize\it #1. #2\normalsize} \end{center} } % figure placement modifications \setcounter{topnumber}{1} \def\bottomfraction{0.01} % header title for lefthand pages \def\titlehead#1{\gdef\@titlehead{#1}} % author title for righthand pages \def\authorhead#1{\gdef\@authorhead{#1}} % print integer as a zero filled 2 digit field \def\twodigits#1{\ifnum #1 < 10{0#1}\else{#1}\fi} % print integer as a zero filled 4 digit field \def\fourdigits#1{\ifnum #1 < 10{000#1}\else \ifnum #1 < 100{00#1}\else \ifnum #1 < 1000{0#1}\else{#1}\fi \fi \fi} % price is US $5 plus $0.50 per page \def\price#1{\count200=50 \multiply\count200 by #1% \count201=\count200 \divide\count201 by 100% dollars \advance\count201 by 5 \divide\count200 by 10 \ifodd\count200 \count200=50\else\count200=0\fi \def\dollars{\the\count201}% \def\cents{\the\count200}% {\dollars.\twodigits{\cents}}% } %Macro copied fron lplain and amended to give Times c %\def\copyright{{\ooalign{\hfil\raise.07ex\hbox{\sevenrm c}\hfil\crcr\mathhexbox20D}}} % epodd: args are: volume, number, month, year (2 digits), first page number, % last page number \def\epodd#1#2#3#4#5#6{ \gdef\mymainhead{\headsize ELECTRONIC PUBLISHING, VOL. #1(#2), \ifnum #5 = #6 #5 \else #5--#6\fi (#3 19#4)\hfil} \setcounter{page}{#5} \setcounter{pageone}{#5} \setcounter{lastpage}{#6} \setcounter{pages}{1} \addtocounter{pages}{\thelastpage} \addtocounter{pages}{-\thepageone} \gdef\@myref{\footsize 0894--3982/#4/\twodigits{#2}\fourdigits{#5}--\twodigits{\thepages}\$\price{\thepages}} \gdef\@mycopyright{\footsize\copyright 19#4 by John Wiley \& Sons, Ltd.} \ifundefined{pdfmark} \relax \else \pdfmark \fi } % set up counters \newcounter{pageone}\setcounter{pageone}{1} \newcounter{lastpage}\setcounter{lastpage}{1} \newcounter{pages}\setcounter{pages}{1} % initialise values so authors do not have to specify epodd, received & revised \gdef\mymainhead{\relax} \setcounter{page}{1} \gdef\@myref{\footsize Paper for submission to Electronic Publishing---Origination, Dissemination and Design} \gdef\@mycopyright{\relax} \gdef\@myreceive{\relax} \gdef\@myrevise{\relax} %footer stuff \gdef\received#1{\gdef\@myreceive{\footsize\it Received #1}} \gdef\revised#1{\gdef\@myrevise{\footsize\it Revised #1}} \def\myfootnote{% \vbox{\footnotesize \hbox{\vrule height 0pt depth 0pt width0pt} \ifodd\count202\relax\else\ifnum\thepageone=\thepage% \hbox to \textwidth{\leaders\hrule height 0.8pt\hfill}% \fi% %\else\vskip 24pt% \fi \hbox to \textwidth{\noindent \@myref\hfill\@myreceive} \hbox to \textwidth{\noindent \@mycopyright \hfill \@myrevise}}} %\def\myfootnote{\footnotesize\vbox{ %\hbox{\vrule height 0pt depth 0pt width0pt} %\hbox to \textwidth{\leaders\hrule height 0.8pt\hfill} %\hbox to \textwidth{\noindent %\@myref\hfill\@myreceive} %\hbox to \textwidth{\noindent \@mycopyright \hfill %\@myrevise}}} % pagestyle % the definition of \@oddfoot below is a hack to try and get the % page length right after the first page. It seems to work. \def\ps@epoddfirst{\let\@mkboth\@gobbletwo% \def\@oddhead{\mymainhead}% \def\@oddfoot{\myfootnote\global\textheight\ntextheight}% \def\@evenhead{\mymainhead}% \let\@evenfoot\@oddfoot} \let\ps@empty\ps@epoddfirst \let\ps@plain\ps@epoddfirst \def\ps@epodd{\let\@mkboth\@gobbletwo% \def\@oddhead{\normalsize\rm{\viiipt\@titlehead}\hfil\xpt\thepage}% \def\@oddfoot{\sysdetails} \def\@evenhead{\normalsize\rm\xpt\thepage\viiipt\hfil{\@authorhead}}% \let\@evenfoot\@oddfoot} % Original from LATEX VERSION 2.09 <4 Aug 1988> \def\@outputpage{\begingroup\catcode`\ =10 \let\-\@dischyph \let\'\@acci \let\`\@accii \let\=\@acciii \if@specialpage \global\@specialpagefalse\@nameuse{ps@\@specialstyle}\fi \if@twoside \ifodd\count\z@ \let\@thehead\@oddhead \let\@thefoot\@oddfoot \let\@themargin\oddsidemargin \else \let\@thehead\@evenhead \let\@thefoot\@evenfoot \let\@themargin\evensidemargin \fi\fi \shipout \vbox{\normalsize \baselineskip\z@ \lineskip\z@ \let\par\@@par %% 15 Sep 87 \vskip \topmargin \moveright\@themargin \vbox{\setbox\@tempboxa \vbox to\headheight{\vfil \hbox to\textwidth {\let\label\@gobble \let\index\@gobble \@thehead} \vskip 22pt %added RKF \hbox to\textwidth %added RKF {\leaders\hrule height 0.8pt\hfill}%added RKF } %% 22 Feb 87 \dp\@tempboxa\z@ \box\@tempboxa \vskip \headsep \box\@outputbox \baselineskip\footskip \hbox to\textwidth{\let\label\@gobble \let\index\@gobble %% 22 Feb 87 \@thefoot}}}\global\@colht\textheight \endgroup\stepcounter{page}\let\firstmark\botmark } % heading needs a bar \headheight 32pt \headsep 14pt % text area is 127 mm wide by 166 mm high. Use 11pt on 14. \marginparwidth 0pt \oddsidemargin 45pt \evensidemargin 45pt \marginparsep 0pt % \footskip 0pt % \footheight 0pt \topmargin 0pt \newdimen\ftextheight \newdimen\ntextheight % height is 588 points - (28+14) + 14 (baseline adjustment) \textwidth 360pt \ntextheight 564pt%%%why was this commented out? \ftextheight\ntextheight \advance\ftextheight -24pt \parindent 1.5em % should be unnecessary because of redefinition of normalsize % \baselineskip 13pt \pagestyle{epodd} \count202=0 \def\footnoterule{\global\advance\count202 by 1\kern-3\p@ \hrule height 0.8pt\kern 2.2\p@} % this \hrule is .8pt high \long\def\@makefntext#1{\ifnum\thefootnote<10\hangindent7pt\else\hangindent9pt\fi $^{\rm\@thefnmark}$ #1} % Print system details in footline -- first calculate time! \newcount\hour \newcount\minute \hour=\time \divide\hour by 60 \minute=\hour \multiply\minute by 60 \advance\minute by -\time \minute=-\minute \def\sysdetails{\hss\number\day/\number\month/\number\year\ % \twodigits{\number\hour}:\twodigits{\number\minute}\ \stage\ \jobname\hss} \def\stage{\hbox{PAGE PROOFS}} % Figure space modifications \def\figbreak{\break\vspace{-24pt}} \def\figfill{\vspace{-36pt}\vfill} % Macro for keywords -- separate key words by \quad space. \def\keywords#1{\vskip 16pt\par% \begingroup\keysize{\noindent\rm KEY WORDS\ksp}#1\endgroup% \vskip 12pt \normalsize\par\noindent} \def\ksp{\quad} \thispagestyle{epoddfirst} \textheight\ftextheight % let more of the page be taken up with figures \def\topfraction{.9} \def\dbltopfraction{.9} \def\textfraction{.1} \def\bottomfraction{.9} % THE \LaTeX LOGO IS DEFINED HERE. % \def\LaTeX{{\rm L\kern-.36em\raise.3ex\hbox{\sc A}\kern-.15em T\kern-.1667em\lower.7ex\hbox{E}\kern-.125emX}} % list modifications % em-dash for second level lists \def\labelitemii{\bf ---} % no spacing between list items \def\enumerate{\ifnum \@enumdepth >3 \@toodeep\else \advance\@enumdepth \@ne \edef\@enumctr{enum\romannumeral\the\@enumdepth}\list {\csname label\@enumctr\endcsname}{\usecounter {\@enumctr}\itemsep 0pt\parsep 0pt \def\makelabel##1{\hss\llap{##1}}}\fi} \let\endenumerate =\endlist \def\itemize{\ifnum \@itemdepth >3 \@toodeep\else \advance\@itemdepth \@ne \edef\@itemitem{labelitem\romannumeral\the\@itemdepth}% \list{\csname\@itemitem\endcsname}{\itemsep 0pt\parsep 0pt \def\makelabel##1{\hss\llap{##1}}}\fi} \let\enditemize =\endlist % epoddhst.sty --- handsettitle % % for those cases in which the EP-odd default LaTeX style isn't powerful % enough (e.g., multiple affiliations) % Richard Furuta 11/21/90 % Modified by David Evans, April 1993 to include in epodd.sty \def\handsettitle{% % new definitions \gdef\maketitle{\relax} \gdef\title##1{{\titlesize ##1 \par} \vskip 10pt % Vertical space after title. 24 pt (24-14) } \gdef\author##1{{\authsize ##1 \par} \vskip 3pt % Vertical space after author. 12pt - 9pt } \gdef\affiliation##1{{\affilsize\it ##1 \par}} % begin title % this first part was extracted from \maketitle \par \begingroup % \def\thefootnote{\fnsymbol{footnote}} \def\@makefnmark{\hbox {$^{\rm \@thefnmark}$\hss}} % this comes from \@maketitle \newpage \null % \vskip 48pt % Vertical space above title. 65pt - 17pt % % (adjust for following baseline) \vspace*{-30pt} % ? assume 24 point after heading rule \begin{titlesp} } \def\endhandsettitle{% % end title % this part comes from \@maketitle \vskip 11.6pt % 12pt = 11.6 + 0.4rule \hrule % point rule \end{titlesp} \par \vskip 20pt % this part was extracted from \maketitle \thispagestyle{plain}\@thanks \endgroup % \setcounter{footnote}{0} \let\maketitle\relax \let\@maketitle\relax \gdef\@thanks{}\gdef\@author{}\gdef\@title{}\let\thanks\relax}