1: % raedoc.tex for LaTeX2e
2: % Version 15-JUNE-1996.
3: % Contact Lee Larson (lmlars01@homer.louisville.edu) about bugs.
4: % The latest version can be obtained from
5: % <http://www.louisville.edu/~lmlars01/index.html
6: % or
7: % <ftp://ftp.louisville.edu/pub/math/Larson/rae/>
8:
9: % Identification
10: \NeedsTeXFormat{LaTeX2e}
11: \ProvidesClass{rae}[1994/10/04]
12:
13: % Bring in the regular article class
14: \LoadClass[twoside]{article}
15:
16: % Set the page dimensions for the Exchange
17: \setlength{\textheight}{6.75in}
18: \advance\textheight by \topskip
19: \setlength{\textwidth}{4.675in}
20:
21: % These define the parameters from the issueinfo.tex file, if
22: % it exists.
23: \newcommand{\Volume}[1]%
24: {\newsavebox{\volumebox}\sbox{\volumebox}{\scriptsize#1}
25: \let\Volume\relax}
26: \newcommand{\IssueNumber}[1]%
27: {\newsavebox{\issuebox}\sbox{\issuebox}{\scriptsize#1}
28: \let\IssueNumber\relax}
29: \newcommand{\Year}[1]%
30: {\newsavebox{\yearbox}\sbox{\yearbox}{\scriptsize#1}
31: \let\Year\relax}
32:
33: % Stuff to do at the beginning of text insertion.
34: \AtBeginDocument{%
35: % Catch first page number for the header information.
36: \label{firstpage}%
37: % If issueinfo.tex exists, then we're in production mode. So, we
38: % get the issue information from the disk and the starting page
39: % number. The format for issueinfo.tex has three lines
40: % \Volume{20}
41: % \IssueNumber{2}
42: % \Year{1994/5}
43: % with an optional fourth line to set the first page number to nn
44: % \firstpagenumber{nn}
45: \IfFileExists{issueinfo}{\input{issueinfo}\getfirstpage}{\null}
46: % Fill in the information at the bottom of the page for key words,
47: % Math Reviews classification and the date received by the
48: % editors. If any of the information macros is not there, then
49: %that one is left out.
50: \ifx\nnull\key@words%
51: \else
52: \insert\footins{\footnotesize
53: \fnstrut Key Words: \key@words\fnstrut}
54: \fi
55: \ifx\nnull\math@reviews%
56: \else
57: \insert\footins{\footnotesize
58: \fnstrut
59: Mathematical Reviews subject classification: \math@reviews
60: \fnstrut}
61: \fi
62: \ifx\date@received\nnull
63: \else
64: \insert\footins{\footnotesize
65: \fnstrut Received by the editors \date@received\fnstrut}
66: \fi
67: % Blow out macros which are no longer needed.
68: \let\getfirstpage\relax
69: \let\firstpagenumber\relax
70: \let\nnull\relax
71: }
72:
73: % Catch the last page number in the aux file for use in the
74: % journal header.
75: \AtEndDocument{\label{lastpage}}
76:
77: % Here is the information supplied in the header which is not
78: % part of the normal LaTeX topmatter.
79: \newcommand{\nnull}{\null} %For use with \ifx.
80: \newcommand{\fnstrut}{\rule{0pt}{\footnotesep}} % Separate notes
81: %
82: \newcommand{\keywords}[1]{\renewcommand{\key@words}{#1}}
83: \newcommand{\key@words}{\null}
84: %
85: \newcommand{\MathReviews}[1]{\renewcommand{\math@reviews}{#1}}
86: \newcommand{\math@reviews}{\null}
87: %
88: \def\received#1{\renewcommand{\date@received}{#1}}
89: \newcommand{\date@received}{\null}
90:
91: % Code to patch the myheadings option to small caps instead
92: % of italic.
93:
94: \def\ps@myheadings{%
95: \let\@oddfoot\@empty\let\@evenfoot\@empty
96: \def\@evenhead{\thepage\hfil\scshape\leftmark}%
97: \def\@oddhead{{\scshape\rightmark}\hfil\thepage}%
98: \let\@mkboth\@gobbletwo
99: \let\sectionmark\@gobble
100: \let\subsectionmark\@gobble
101: }
102:
103:
104: % Code to patch \maketitle from article.cls.
105:
106: \renewcommand\maketitle{\par
107: \begingroup
108: \renewcommand\thefootnote{\fnsymbol{footnote}}%
109: \def\@makefnmark{\hbox to\z@{$\m@th^{\@thefnmark}$\hss}}%
110: \long\def\@makefntext##1{\parindent 1em\noindent
111: \hbox to1.8em{\hss$\m@th^{\@thefnmark}$}##1}%
112: \if@twocolumn
113: \ifnum \col@number=\@ne
114: \@maketitle
115: \else
116: \twocolumn[\@maketitle]%
117: \fi
118: \else
119: \global\@topnum\z@ % Prevents figures from going at top of page.
120: \@maketitle
121: \fi
122: \thispagestyle{plain}\@thanks
123: \endgroup
124: \setcounter{footnote}{0}%
125: \let\thanks\relax
126: \let\maketitle\relax\let\@maketitle\relax
127: \gdef\@thanks{}\gdef\@author{}\gdef\@title{}}
128: \def\@maketitle{%
129: % First, do the stuff for the production option. Use the existence of
130: % the issueinfo.tex file as the flag for production rather than
131: % civilian mode.
132: \IfFileExists{issueinfo}{%
133: \hfill\parbox{3in}{\scriptsize\raggedleft
134: \textbf{Real Analysis Exchange}
135: \linebreak
136: Vol.~\usebox{\volumebox}(\usebox{\issuebox}), \usebox{\yearbox},
137: pp.~\pageref{firstpage}--\pageref{lastpage}}}{\null}
138: % Add a bit of space between the coordinate information and the
139: % author information.
140: \par\vskip 1em
141: % Put in the author information.
142: \begingroup
143: \def\and{\par\vskip .2em}
144: % Use left justification to inhibit breaking names.
145: \begin{flushleft}%
146: {\@author}\par
147: \end{flushleft}
148: \endgroup
149: \vskip 2em%
150: \begin{center}%
151: {\Large\textbf{\@title}\par}
152: \end{center}%
153: \par
154: \vskip .5em}
155:
156: % Make the section titling a bit smaller.
157: \renewcommand\section{\@startsection {section}{1}{\z@}%
158: {-3.5ex \@plus -1ex \@minus -.2ex}%
159: {2.3ex \@plus.2ex}%
160: {\reset@font\large\bfseries}}
161: \renewcommand\subsection{\@startsection{subsection}{2}{\z@}%
162: {-3.25ex\@plus -1ex \@minus -.2ex}%
163: {1.5ex \@plus .2ex}%
164: {\reset@font\normalsize\bfseries}}
165:
166: %
167: % Procedure to set beginning page number. If the macro
168: % \firstpagenumber{nn} appears in the topmatter, that will
169: % set the first page number. Otherwise, it can be called
170: % interactively from \getfirstpage. This is for the production
171: % of the papers in the journal.
172: %
173: \def\getfirstpage{
174: \newcount\FirstPage
175: \typein[\FirstPage]{First page number: }
176: \ifnum\FirstPage>0
177: \firstpagenumber{\FirstPage}
178: \else\setcounter{page}{1}
179: \fi}
180: \def\firstpagenumber#1{\global\setcounter{page}{#1}
181: \let\getfirstpage\relax
182: \message{First page set to \the\c@page.}}
183:
184: % Always want author on left and title on right.
185: \pagestyle{myheadings}
186: