% BOOK DOCUMENT STYLE -- Released 24 May 1989 % for LaTeX version 2.09 % Copyright (C) 1988 by Leslie Lamport \typeout{Document Style `book' <24 May 89>.} % PREPARING A FOREIGN LANGUAGE VERSION: % This document style is for documents prepared in the English language. % To prepare a version for another language, various English words must % be replaced. All the English words that required replacement are % indicated below, where we give the name of the command in which the % words appear, and the entire line containing the word(s), with the % actual words underlined. % \tableofcontents: % \fi\chapter*{Contents\@mkboth{CONTENTS}{CONTENTS}} % ~~~~~~~~ ~~~~~~~~ ~~~~~~~~ % \listoffigures: % \fi\chapter*{List of Figures\@mkboth % ~~~~~~~~~~~~~~~ % {LIST OF FIGURES}{LIST OF FIGURES}}\@starttoc{lof}\if@restonecol % ~~~~~~~~~~~~~~~ ~~~~~~~~~~~~~~~ % \listoftables: % \fi\chapter*{List of Tables\@mkboth % ~~~~~~~~~~~~~~ % {LIST OF TABLES}{LIST OF TABLES}}\@starttoc{lot}\if@restonecol % ~~~~~~~~~~~~~~ ~~~~~~~~~~~~~~~ % \thebibliography: % \def\thebibliography#1{\chapter*{Bibliography\@mkboth % ~~~~~~~~~~~~ % {BIBLIOGRAPHY}{BIBLIOGRAPHY}}\list % ~~~~~~~~~~~~ ~~~~~~~~~~~~ % \theindex: % \columnsep 35pt\twocolumn[\@makeschapterhead{Index}] % ~~~~~ % \@mkboth{INDEX}{INDEX}\thispagestyle{plain}\parindent\z@ % ~~~~~ ~~~~~ % figure and table environments: % \def\fnum@figure{Figure \thefigure} % ~~~~~~ % \def\fnum@table{Table \thetable} % ~~~~~ % \chapter: % \def\@chapapp{Chapter} % ~~~~~~~ % \part: % \huge\bf Part \thepart % THEN Print 'Part' and number % ~~~~ % CHOOSING THE TYPE SIZE: % The type size option is handled by reading a different file for each % size, as follows, to define font size-specific commands: % 10pt : BK10, 11pt : BK11, 12pt : BK12 % Implemented by \def'ing \@ptsize to last digit of file name. \def\@ptsize{0} % Default is REP10.STY \@namedef{ds@11pt}{\def\@ptsize{1}} % 11pt option reads in REP11.STY \@namedef{ds@12pt}{\def\@ptsize{2}} % 12pt option reads in REP12.STY % Books use two-sided printing. \@twosidetrue % Defines twoside option. \@mparswitchtrue % Marginpars go on outside of page. % draft option % \overfullrule = 0pt % Default is don't mark overfull hboxes. \def\ds@draft{\overfullrule 5pt} % Causes overfull hboxes to be marked. % The \@options command causes the execution of every command \ds@FOO % which is defined and for which the user typed the FOO option in his % \documentstyle command. For every option BAR he typed for which % \ds@BAR is not defined, the file BAR.sty will be read after the present % (main) .STY file is executed. \@options \input bk1\@ptsize.sty\relax % **************************************** % * LISTS * % **************************************** % ENUMERATE % Enumeration is done with four counters: enumi, enumii, enumiii % and enumiv, where enumN controls the numbering of the Nth level % enumeration. The label is generated by the commands \labelenumi % ... \labelenumiv. The expansion of \p@enumN\theenumN defines the % output of a \ref command. % 16 Mar 88 -- changed defs of \labelenum... to use \theenum... \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} % ITEMIZE % Itemization is controlled by four commands: \labelitemi, \labelitemii, % \labelitemiii, and \labelitemiv, which define the labels of the various % itemization levels. \def\labelitemi{$\bullet$} \def\labelitemii{\bf --} \def\labelitemiii{$\ast$} \def\labelitemiv{$\cdot$} % VERSE % The verse environment is defined by making clever use of the % list environment's parameters. The user types \\ to end a line. % This is implemented by \let'in \\ equal \@centercr. \def\verse{\let\\=\@centercr \list{}{\itemsep\z@ \itemindent -1.5em\listparindent \itemindent \rightmargin\leftmargin\advance\leftmargin 1.5em}\item[]} \let\endverse\endlist % QUOTATION % Fills lines % Indents paragraph \def\quotation{\list{}{\listparindent 1.5em \itemindent\listparindent \rightmargin\leftmargin\parsep 0pt plus 1pt}\item[]} \let\endquotation=\endlist % QUOTE -- same as quotation except no paragraph indentation, \def\quote{\list{}{\rightmargin\leftmargin}\item[]} \let\endquote=\endlist % DESCRIPTION % To change the formatting of the label, you must redefine % \descriptionlabel. \def\descriptionlabel#1{\hspace\labelsep \bf #1} \def\description{\list{}{\labelwidth\z@ \itemindent-\leftmargin \let\makelabel\descriptionlabel}} \let\enddescription\endlist \newdimen\descriptionmargin \descriptionmargin=3em % **************************************** % * OTHER ENVIRONMENTS * % **************************************** % THEOREM % \@begintheorem ... \@endtheorem are the commands executed at the % beginning and end of a (user-defined) theorem-like environment. % Except \@opargbegintheorem is executed when an optional argument is % given. Cf. LATEX.TEX. % \def\@begintheorem#1#2{\it \trivlist \item[\hskip \labelsep{\bf #1\ #2}]} % \def\@opargbegintheorem#1#2#3{\it \trivlist % \item[\hskip \labelsep{\bf #1\ #2\ (#3)}]} % \def\@endtheorem{\endtrivlist} % TITLEPAGE % In the normal environments, the titlepage environment does nothing but % start and end a page, and inhibit page numbers. It also resets the % page number to zero. In two-column style, it still makes a one-column % page. \def\titlepage{\@restonecolfalse\if@twocolumn\@restonecoltrue\onecolumn \else \newpage \fi \thispagestyle{empty}\c@page\z@} \def\endtitlepage{\if@restonecol\twocolumn \else \newpage \fi} % ARRAY AND TABULAR \arraycolsep 5pt % Half the space between columns in an array environment. \tabcolsep 6pt % Half the space between columns in a tabular environment. \arrayrulewidth .4pt % Width of rules in array and tabular environment. \doublerulesep 2pt % Space between adjacent rules in array or tabular env. % TABBING \tabbingsep \labelsep % Space used by the \' command. (See LaTeX manual.) % MINIPAGE % \@minipagerestore is called upon entry to a minipage environment to % set up things that are to be handled differently inside a minipage % environment. In the current styles, it does nothing. % \skip\@mpfootins : plays same role for footnotes in a minipage as % \skip\footins does for ordinary footnotes \skip\@mpfootins = \skip\footins % FRAMEBOX \fboxsep = 3pt % Space left between box and text by \fbox and \framebox. \fboxrule = .4pt % Width of rules in box made by \fbox and \framebox. % **************************************** % * CHAPTERS AND SECTIONS * % **************************************** % DEFINE COUNTERS: % \newcounter{NEWCTR}[OLDCTR] : Defines NEWCTR to be a counter, which is % reset to zero when counter OLDCTR is stepped. % Counter OLDCTR must already be defined. \newcounter{part} \newcounter {chapter} \newcounter {section}[chapter] \newcounter {subsection}[section] \newcounter {subsubsection}[subsection] \newcounter {paragraph}[subsubsection] \newcounter {subparagraph}[paragraph] % For any counter CTR, \theCTR is a macro that defines the printed version % of counter CTR. It is defined in terms of the following macros: % \arabic{COUNTER} : The value of COUNTER printed as an arabic numeral. % \roman{COUNTER} : Its value printed as a lower-case roman numberal. % \Roman{COUNTER} : Its value printed as an upper-case roman numberal. % \alph{COUNTER} : Value of COUNTER printed as a lower-case letter: % 1 = a, 2 = b, etc. % \Alph{COUNTER} : Value of COUNTER printed as an upper-case letter: % 1 = A, 2 = B, etc. \def\thepart {\Roman{part}} \def\thechapter {\arabic{chapter}} \def\thesection {\thechapter.\arabic{section}} \def\thesubsection {\thesection.\arabic{subsection}} \def\thesubsubsection {\thesubsection .\arabic{subsubsection}} \def\theparagraph {\thesubsubsection.\arabic{paragraph}} \def\thesubparagraph {\theparagraph.\arabic{subparagraph}} % \@chapapp is initially defined to be 'Chapter'. The \appendix % command redefines it to be 'Appendix'. \def\@chapapp{Chapter} %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% % PART % %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% \def\part{\cleardoublepage % Starts new page. \thispagestyle{plain} % Page style of part page is 'plain' \if@twocolumn % IF two-column style \onecolumn % THEN \onecolumn \@tempswatrue % @tempswa := true \else \@tempswafalse % ELSE @tempswa := false \fi % FI \hbox{}\vfil % Add fil glue to center title %% \bgroup \centering % BEGIN centering %% Removed 19 Jan 88 \secdef\@part\@spart} \def\@part[#1]#2{\ifnum \c@secnumdepth >-2\relax % IF secnumdepth > -2 \refstepcounter{part} % THEN step part counter \addcontentsline{toc}{part}{\thepart % add toc line \hspace{1em}#1}\else % ELSE add unnumbered line \addcontentsline{toc}{part}{#1}\fi % FI \markboth{}{} {\centering % %% added 19 Jan 88 \ifnum \c@secnumdepth >-2\relax % IF secnumdepth > -2 \huge\bf Part \thepart % THEN Print 'Part' and number \par % in \huge bold. \vskip 20pt \fi % Add space before title. \Huge \bf % FI #1\par}\@endpart} % Print Title in \Huge bold. % \@endpart finishes the part page \def\@endpart{\vfil\newpage % End page with 1fil glue. \if@twoside % IF twoside printing \hbox{} % THEN Produce totally blank page \thispagestyle{empty} \newpage \fi % FI \if@tempswa % IF @tempswa = true \twocolumn % THEN \twocolumn \fi} % FI \def\@spart#1{{\centering % %% added 19 Jan 88 \Huge \bf % Print title in \huge boldface #1\par}\@endpart} % **************************************** % * TABLE OF CONTENTS, ETC. * % **************************************** % A \subsection command writes a % \contentsline{subsection}{TITLE}{PAGE} % command on the .toc file, where TITLE contains the contents of the % entry and PAGE is the page number. If subsections are being numbered, % then TITLE will be of the form % \numberline{NUM}{HEADING} % where NUM is the number produced by \thesubsection. Other sectioning % commands work similarly. % A \caption command in a 'figure' environment writes % \contentsline{figure}{\numberline{NUM}{CAPTION}}{PAGE} % on the .lof file, where NUM is the number produced by \thefigure and % CAPTION is the figure caption. It works similarly for a 'table' environment. % The command \contentsline{NAME} expands to \l@NAME. So, to specify % the table of contents, we must define \l@chapter, \l@section, % \l@subsection, ... ; to specify the list of figures, we must define % \l@figure; and so on. Most of these can be defined with the % \@dottedtocline command, which works as follows. % \@dottedtocline{LEVEL}{INDENT}{NUMWIDTH}{TITLE}{PAGE} % LEVEL : An entry is produced only if LEVEL < or = value of % 'tocdepth' counter. Note, \chapter is level 0, \section % is level 1, etc. % INDENT : The indentation from the outer left margin of the start of % the contents line. % NUMWIDTH : The width of a box in which the section number is to go, % if TITLE includes a \numberline command. % This command uses the following three parameters, which are set % with a \def (so em's can be used to make them depend upon the font). % \@pnumwidth : The width of a box in which the page number is put. % \@tocrmarg : The right margin for multiple line entries. One % wants \@tocrmarg > or = \@pnumwidth % \@dotsep : Separation between dots, in mu units. Should be \def'd to % a number like 2 or 1.7 \def\@pnumwidth{1.55em} \def\@tocrmarg {2.55em} \def\@dotsep{4.5} \setcounter{tocdepth}{2} % TABLEOFCONTENTS % In report style, \tableofcontents, \listoffigures, etc. are always % set in single-column style. @restonecol \def\tableofcontents{\@restonecolfalse\if@twocolumn\@restonecoltrue\onecolumn \fi\chapter*{Contents\@mkboth{CONTENTS}{CONTENTS}} \@starttoc{toc}\if@restonecol\twocolumn\fi} \def\l@part#1#2{\addpenalty{-\@highpenalty} \addvspace{2.25em plus 1pt} % space above part line \begingroup \@tempdima 3em % width of box holding part number, used by \parindent \z@ \rightskip \@pnumwidth %% \numberline \parfillskip -\@pnumwidth {\large \bf % set line in \large boldface \leavevmode % TeX command to enter horizontal mode. #1\hfil \hbox to\@pnumwidth{\hss #2}}\par \nobreak % Never break after part entry \global\@nobreaktrue %% Added 24 May 89 as \everypar{\global\@nobreakfalse\everypar{}}%% suggested by Jerry Leichter \endgroup} %% First line of l@chapter changed 24 May 89, as suggested by Jerry Leichter. \def\l@chapter#1#2{\addpenalty{-\@highpenalty} \vskip 1.0em plus 1pt % space above chapter line \@tempdima 1.5em % width of box holding chapter number \begingroup \parindent \z@ \rightskip \@pnumwidth \parfillskip -\@pnumwidth \bf % Boldface. \leavevmode % TeX command to enter horizontal mode. \advance\leftskip\@tempdima %% added 5 Feb 88 to conform to \hskip -\leftskip %% 25 Jan 88 change to \numberline #1\nobreak\hfil \nobreak\hbox to\@pnumwidth{\hss #2}\par \penalty\@highpenalty %% added 24 May 89 as suggested by J. Leichter \endgroup} \def\l@section{\@dottedtocline{1}{1.5em}{2.3em}} \def\l@subsection{\@dottedtocline{2}{3.8em}{3.2em}} \def\l@subsubsection{\@dottedtocline{3}{7.0em}{4.1em}} \def\l@paragraph{\@dottedtocline{4}{10em}{5em}} \def\l@subparagraph{\@dottedtocline{5}{12em}{6em}} % LIST OF FIGURES \def\listoffigures{\@restonecolfalse\if@twocolumn\@restonecoltrue\onecolumn \fi\chapter*{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}} % LIST OF TABLES \def\listoftables{\@restonecolfalse\if@twocolumn\@restonecoltrue\onecolumn \fi\chapter*{List of Tables\@mkboth {LIST OF TABLES}{LIST OF TABLES}}\@starttoc{lot}\if@restonecol \twocolumn\fi} \let\l@table\l@figure % **************************************** % * BIBLIOGRAPHY * % **************************************** % The thebibliography environment executes the following commands: % \def\newblock{\hskip .11em plus .33em minus .07em} -- % Defines the `closed' format, where the blocks (major units of % information) of an entry run together. % \sloppy -- Used because it's rather hard to do line breaks in % bibliographies, % \sfcode`\.=1000\relax -- % Causes a `.' (period) not toproduce an end-of-sentence space. \def\thebibliography#1{\chapter*{Bibliography\@mkboth {BIBLIOGRAPHY}{BIBLIOGRAPHY}}\list {[\arabic{enumi}]}{\settowidth\labelwidth{[#1]}\leftmargin\labelwidth \advance\leftmargin\labelsep \usecounter{enumi}} \def\newblock{\hskip .11em plus .33em minus .07em} \sloppy\clubpenalty4000\widowpenalty4000 \sfcode`\.=1000\relax} \let\endthebibliography=\endlist % \def\@biblabel#1{[#1]\hfill} % Produces the label for a \bibitem[...] % command. % \def\@cite#1{[#1]} % Produces the output of the \cite command. % **************************************** % * THE INDEX * % **************************************** % THE THEINDEX ENVIRONMENT % Produces double column format, with each paragraph a separate entry. % The user commands \item, \subitem and \subsubitem are used to % produce the entries, and \indexspace adds an extra vertical space % that's the right size to put above the first entry with a new letter % of the alphabet. \newif\if@restonecol \def\theindex{\@restonecoltrue\if@twocolumn\@restonecolfalse\fi \columnseprule \z@ \columnsep 35pt\twocolumn[\@makeschapterhead{Index}] \@mkboth{INDEX}{INDEX}\thispagestyle{plain}\parindent\z@ \parskip\z@ plus .3pt\relax\let\item\@idxitem} \def\@idxitem{\par\hangindent 40pt} \def\subitem{\par\hangindent 40pt \hspace*{20pt}} \def\subsubitem{\par\hangindent 40pt \hspace*{30pt}} \def\endtheindex{\if@restonecol\onecolumn\else\clearpage\fi} \def\indexspace{\par \vskip 10pt plus 5pt minus 3pt\relax} % **************************************** % * FOOTNOTES * % **************************************** % \footnoterule is a macro to draw the rule separating the footnotes from % the text. It should take zero vertical space, so it needs a negative % skip to compensate for any positive space taken by the rule. (See % PLAIN.TEX.) \def\footnoterule{\kern-3\p@ \hrule width .4\columnwidth \kern 2.6\p@} % The \hrule has default height of .4pt . % \newcounter{footnote} \@addtoreset{footnote}{chapter} % Numbers footnotes within chapters % \@makefntext{NOTE} : % Must produce the actual footnote, using \@thefnmark as the mark % of the footnote and NOTE as the text. It is called when effectively % inside a \parbox of width \columnwidth (i.e., with \hsize = % \columnwidth). % The following macro indents all lines of the footnote by 10pt, and % indents the first line of a new paragraph by 1em. To change these % dimensions, just substitute the desired value for '10pt' [in both % places] or '1em'. The mark is flushright against the footnote. % \long\def\@makefntext#1{\@setpar{\@@par\@tempdima \hsize % \advance\@tempdima-10pt\parshape \@ne 10pt \@tempdima}\par % \parindent 1em\noindent \hbox to \z@{\hss$^{\@thefnmark}$}#1} % A simpler macro is used, in which the footnote text is % set like an ordinary text paragraph, with no indentation except % on the first line of a paragraph, and the first line of the % footnote. Thus, all the macro must do is set \parindent % to the appropriate value for succeeding paragraphs and put the % proper indentation before mark. \long\def\@makefntext#1{\parindent 1em\noindent \hbox to 1.8em{\hss$^{\@thefnmark}$}#1} % \@makefnmark : A macro to generate the footnote marker that goes % in the text. Default used. % **************************************** % * FIGURES AND TABLES * % **************************************** % Float placement parameters. See LaTeX manual for their definition. \setcounter{topnumber}{2} \def\topfraction{.7} \setcounter{bottomnumber}{1} \def\bottomfraction{.3} \setcounter{totalnumber}{3} \def\textfraction{.2} \def\floatpagefraction{.5} \setcounter{dbltopnumber}{2} \def\dbltopfraction{.7} \def\dblfloatpagefraction{.5} % \@makecaption{NUMBER}{TEXT} : Macro to make a figure or table caption. % NUMBER : Figure or table number--e.g., 'Figure 3.2' % TEXT : The caption text. % Macro should be called inside a \parbox of right width, with \normalsize. % changed 25 Jun 86 to fix according to Howard Trickey: % instead of \unhbox\@tempboxa\par we do #1: #2\par \long\def\@makecaption#1#2{ \vskip 10pt \setbox\@tempboxa\hbox{#1: #2} \ifdim \wd\@tempboxa >\hsize % IF longer than one line: #1: #2\par % THEN set as ordinary paragraph. \else % ELSE center. \hbox to\hsize{\hfil\box\@tempboxa\hfil} \fi} % To define a float of type TYPE (e.g., TYPE = figure), the document style % must define the following. % \fps@TYPE : The default placement specifier for floats of type TYPE. % \ftype@TYPE : The type number for floats of type TYPE. Each TYPE has % associated a unique positive TYPE NUMBER, which is a power % of two. E.g., figures might have type number 1, tables type % number 2, programs type number 4, etc. % \ext@TYPE : The file extension indicating the file on which the % contents list for float type TYPE is stored. For example, % \ext@figure = 'lof'. % \fnum@TYPE : A macro to generate the figure number for a caption. % For example, \fnum@TYPE == Figure \thefigure. % The actual float-making environment commands--e.g., the commands % \figure and \endfigure--are defined in terms of the macros \@float % and \end@float, which are described below. % \@float{TYPE}[PLACEMENT] : Macro to begin a float environment for a % single-column float of type TYPE with PLACEMENT as the placement % specifier. The default value of PLACEMENT is defined by \fps@TYPE. % The environment is ended by \end@float. % E.g., \figure == \@float{figure}, \endfigure == \end@float. % FIGURE \newcounter{figure}[chapter] \def\thefigure{\thechapter.\@arabic\c@figure} \def\fps@figure{tbp} \def\ftype@figure{1} \def\ext@figure{lof} \def\fnum@figure{Figure \thefigure} \def\figure{\@float{figure}} \let\endfigure\end@float \@namedef{figure*}{\@dblfloat{figure}} \@namedef{endfigure*}{\end@dblfloat} % TABLE \newcounter{table}[chapter] \def\thetable{\thechapter.\@arabic\c@table} \def\fps@table{tbp} \def\ftype@table{2} \def\ext@table{lot} \def\fnum@table{Table \thetable} \def\table{\@float{table}} \let\endtable\end@float \@namedef{table*}{\@dblfloat{table}} \@namedef{endtable*}{\end@dblfloat} % **************************************** % * TITLE * % **************************************** % Uses same title format as the article style's % titlepage option. \def\maketitle{\begin{titlepage} \let\footnotesize\small % Local definitions to make \thanks produce \let\footnoterule\relax % \normalsize footnotes with no separating rule. \setcounter{page}{0} \null \vfil \vskip 60pt % To adjust centering. \begin{center} {\LARGE \@title \par} % Set title in \LARGE size. \vskip 3em % Vertical space after title. {\large % Set author in \large size. \lineskip .75em \begin{tabular}[t]{c}\@author \end{tabular}\par} \vskip 1.5em % Vertical space after author. {\large \@date \par} % Set date in \large size. \end{center} \par \@thanks \vfil \null \end{titlepage} \setcounter{footnote}{0} % Footnotes start at zero again. \let\thanks\relax \gdef\@thanks{}\gdef\@author{}\gdef\@title{}\let\maketitle\relax} % **************************************** % * PAGE STYLES * % **************************************** % The page style 'foo' is defined by defining the command \ps@foo. This % command should make only local definitions. There should be no stray % spaces in the definition, since they could lead to mysterious extra % spaces in the output. % The \ps@... command defines the macros \@oddhead, \@oddfoot, % \@evenhead, and \@evenfoot to define the running heads and % feet---e.g., \@oddhead is the macro to produce the contents of the % heading box for odd-numbered pages. It is called inside an \hbox of % width \textwidth. % To make headings determined by the sectioning commands, the page style % defines the commands \chaptermark, \sectionmark, ... , where % \chaptermark{TEXT} is called by \chapter to set a mark, and so on. % The \...mark commands and the \...head macros are defined with the % help of the following macros. (All the \...mark commands should be % initialized to no-ops.) % MARKING CONVENTIONS: % LaTeX extends TeX's \mark facility by producing two kinds of marks % a 'left' and a 'right' mark, using the following commands: % \markboth{LEFT}{RIGHT} : Adds both marks. % \markright{RIGHT} : Adds a 'right' mark. % \leftmark : Used in the \@oddhead, \@oddfoot, \@evenhead or \@evenfoot % macro, gets the current 'left' mark. Works like TeX's % \botmark command. % \rightmark : Used in the \@oddhead, \@oddfoot, \@evenhead or \@evenfoot % macro, gets the current 'right' mark. Works like TeX's % \firstmark command. % The marking commands work reasonably well for right marks 'numbered % within' left marks--e.g., the left mark is changed by a \chapter command and % the right mark is changed by a \section command. However, it does % produce somewhat anomalous results if two \bothmark's occur on the same page. % Commands like \tableofcontents that should set the marks in some page styles % use a \@mkboth command, which is \let by the pagestyle command (\ps@...) % to \markboth for setting the heading or \@gobbletwo to do nothing. \mark{{}{}} % Initializes TeX's marks % \ps@empty and \ps@plain defined in LATEX.TEX % Definition of 'headings' page style % Note the use of ##1 for parameter of \def\chaptermark inside the % \def\ps@headings. \def\ps@headings{\let\@mkboth\markboth \def\@oddfoot{}\def\@evenfoot{}% No feet. \def\@evenhead{\rm \thepage\hfil \sl \leftmark}% Left heading. \def\@oddhead{\hbox{}\sl \rightmark \hfil \rm\thepage}% Right heading. \def\chaptermark##1{\markboth {\uppercase{\ifnum \c@secnumdepth >\m@ne \@chapapp\ \thechapter. \ \fi ##1}}{}}% \def\sectionmark##1{\markright {\uppercase{\ifnum \c@secnumdepth >\z@ \thesection. \ \fi ##1}}}} % Definition of 'myheadings' page style. \def\ps@myheadings{\let\@mkboth\@gobbletwo \def\@oddhead{\hbox{}\sl\rightmark \hfil \rm\thepage}% \def\@oddfoot{}\def\@evenhead{\rm \thepage\hfil\sl\leftmark\hbox {}}% \def\@evenfoot{}\def\chaptermark##1{}\def\sectionmark##1{}% \def\subsectionmark##1{}} % **************************************** % * MISCELLANEOUS * % **************************************** % DATE \def\today{\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 \space\number\day, \number\year} % EQUATION and EQNARRAY -- put here because it must follow \chapter definition % \newcounter{equation} \@addtoreset{equation}{chapter} % Makes \chapter reset 'equation' counter. \def\theequation{\thechapter.\arabic{equation}} % \jot = 3pt % Extra space added between lines of an eqnarray environment % The macro \@eqnnum defines how equation numbers are to appear in equations. % \def\@eqnnum{(\theequation)} % **************************************** % * INITIALIZATION * % **************************************** % Default initializations \ps@headings % `headings' page style \pagenumbering{arabic} % Arabic page numbers \onecolumn % Single-column.