% UCTHESIS DOCUMENT STYLE -- Released 10 Feb 93. % for LaTeX version 2.09 \typeout{Document Style `ucthesis' <10 Feb 93>.} %%% ==================================================================== %%% @LaTeX-style-file{ %%% filename = "ucthesis.sty", %%% version = "2.2", %%% date = "20 May 1993", %%% author = "Ethan V. Munson", %%% address = "Computer Science Division %%% 571 Evans Hall %%% UC Berkeley %%% Berkeley, CA 94720 %%% USA", %%% telephone = "(510) 643-7354", %%% email = "munson@cs.berkeley.edu (Internet)", %%% codetable = "ISO/ASCII", %%% keywords = "LaTeX, ucthesis", %%% supported = "until I graduate in 1993", %%% docstring = "This file is the main file for the ucthesis %%% style, which is intended to meet the requirements %%% for University of California Ph.D. dissertations. %%% It is based on the standard report.sty as %%% modified by Mittelbach and Schopf in Jan 1992. %%% The primary differences are (1) the use of pseudo- %%% double-spacing, except in certain special %%% environments; and (2) the use of a 6 inch line %%% with 4em paragraph indentation. %%% %%% I know of no bugs in this implementation, %%% but would be happy to hear of any problems %%% that arise with it. %%% %%% This version fixes a bug in the previous %%% version of 20 Jun 1988. The bug was that %%% "draft" optional mode didn't work because of %%% problems in handling optional arguments. %%% This file does not seem to work with earlier %%% versions of LaTeX (pre-Jan 1992). %%% %%% } %%% ==================================================================== \def\contentsname{Contents} \def\listfigurename{List of Figures} \def\listtablename{List of Tables} \def\bibname{Bibliography} \def\indexname{Index} \def\figurename{Figure} \def\tablename{Table} \def\chaptername{Chapter} \def\appendixname{Appendix} \def\partname{Part} \def\abstractname{Abstract} %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% % This section modified by TCI Software Research % Scientific Word always uses no option for 10pt and uses 11pt or 12pt % in the documentstyle statement for those size options. The default % style selected by Scientific Word is 11pt. % Original macros follow: %\def\@ptsize{1} % Default is UCT10.STY %\@namedef{ds@10pt}{\def\@ptsize{0}} % 11pt option reads in UCT11.STY %\@namedef{ds@12pt}{\def\@ptsize{2}} % 12pt option reads in UCT12.STY % Modified macros follow: \def\@ptsize{0} \@namedef{ds@11pt}{\def\@ptsize{1}} \@namedef{ds@12pt}{\def\@ptsize{2}} % End of section modified by TCI Software Research %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% \def\ds@twoside{\@twosidetrue % Defines twoside option. \@mparswitchtrue} % Marginpars go on outside of page. \def\@draftmark{0} \def\ds@draft{\def\@draftmark{1}} \def\ds@twocolumn{\@twocolumntrue} \@options \input uct1\@ptsize.sty\relax \def\ssp{\def\baselinestretch{1.0}\large\normalsize} \def\dsp{\def\baselinestretch{1.37}\large\normalsize} \ifnum \@draftmark = 1 \ssp % Single-spaces and \overfullrule 5pt % causes overfull hboxes to be marked. \fi \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} \def\labelitemi{$\m@th\bullet$} \def\labelitemii{\bf --} \def\labelitemiii{$\m@th\ast$} \def\labelitemiv{$\m@th\cdot$} \def\verse{\par\let\\=\@centercr \list{}{\ssp\itemsep\z@ \itemindent -1.5em\listparindent \itemindent \rightmargin\leftmargin\advance\leftmargin 1.5em}\item[]} \let\endverse\endlist \def\quotation{\par\list{}{\ssp\listparindent 1.5em \itemindent\listparindent \rightmargin\leftmargin\parsep \z@ plus\p@}\item[]} \let\endquotation=\endlist \def\quote{\par\list{}{\ssp\rightmargin\leftmargin}\item[]} \let\endquote=\endlist \def\descriptionlabel#1{\hspace\labelsep \bf #1} \def\description{\list{}{\labelwidth\z@ \itemindent-\leftmargin \let\makelabel\descriptionlabel}} \let\enddescription\endlist \newdimen\descriptionmargin \descriptionmargin=3em \def\titlepage{\@restonecolfalse\if@twocolumn\@restonecoltrue\onecolumn \else \newpage \fi \thispagestyle{empty}\c@page\@ne} \def\endtitlepage{\if@restonecol\twocolumn \else \newpage \fi} \def\copyrightpage{\@restonecolfalse\if@twocolumn\@restonecoltrue\onecolumn \else \newpage \fi\thispagestyle{empty}} \def\endcopyrightpage{\if@restonecol\twocolumn \else \newpage \fi} \def\signaturepage{\@restonecolfalse\if@twocolumn\@restonecoltrue\onecolumn \else \newpage \fi} \def\endsignaturepage{\if@restonecol\twocolumn \else \newpage \fi} \def\abstract{\titlepage\null\vfil \begin{center} {\large\bf \abstractname} \end{center}} \def\endabstract{\par\vfil\null\endtitlepage} \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 % environment. \def\array{\let\@acol\@arrayacol \let\@classz\@arrayclassz \let\@classiv\@arrayclassiv \let\\\@arraycr\let\@halignto\@empty\@tabarray} \tabbingsep \labelsep % Space used by the \' command. % (See LaTeX manual.) \def\tabular{\par\ssp\let\@halignto\@empty\@tabular} \skip\@mpfootins = \skip\footins \fboxsep = 3pt % Space left between box and text by \fbox and % \framebox. \fboxrule = .4pt % Width of rules in box made by \fbox and \framebox. % COMMITTEE % for the titlepage environment % \def\committeelabel{\hspace\labelsep} \def\committee{Committee in charge:\par \list{}{\itemindent 0.25in \let\makelabel\relax}} \let\endcommittee\endlist % Must redefine @startsection so that we always get indentation. \def\@startsection#1#2#3#4#5#6{\if@noskipsec \leavevmode \fi \par \@tempskipa #4\relax \@afterindenttrue \ifdim \@tempskipa <\z@ \@tempskipa -\@tempskipa \relax\fi \if@nobreak \everypar{}\else \addpenalty{\@secpenalty}\addvspace{\@tempskipa}\fi \@ifstar {\@ssect{#3}{#4}{#5}{#6}}{\@dblarg{\@sect{#1}{#2}{#3}{#4}{#5}{#6}}}} \newcounter {part} \newcounter {chapter} \newcounter {section}[chapter] \newcounter {subsection}[section] \newcounter {subsubsection}[subsection] \newcounter {paragraph}[subsubsection] \newcounter {subparagraph}[paragraph] \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}} \def\@chapapp{\chaptername} \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 % unnumb. line \addcontentsline{toc}{part}{#1}\fi % FI \markboth{}{}% {\centering % %% added 19 Jan 88 \interlinepenalty \@M %% RmS added 11 Nov 91 \ifnum \c@secnumdepth >-2\relax % IF secnumdepth > -2 \huge\bf \partname~\thepart % THEN Print '\partname' and \par % number in \huge bold. \vskip 20\p@\fi % Add space before title. \Huge \bf % FI #2\par}\@endpart} % Print Title in \Huge bold. % Bug Fix 13 Nov 89: #1 -> #2 \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 \interlinepenalty \@M %% RmS added 11 Nov 91 \Huge \bf % Print title in \Huge boldface #1\par}\@endpart} \def\@pnumwidth{1.55em} \def\@tocrmarg {2.55em} \def\@dotsep{4.5} \setcounter{tocdepth}{2} % TABLEOFCONTENTS % In ucthesis style, \tableofcontents, \listoffigures, etc. are always % set in single-column style. @restonecol \def\tableofcontents{\@restonecolfalse \if@twocolumn\@restonecoltrue\onecolumn\fi \chapter*{\contentsname \@mkboth{\uppercase{\contentsname}}{\uppercase{\contentsname}}}% {\ssp\@starttoc{toc}}\if@restonecol\twocolumn\fi} \def\l@part#1#2{\addpenalty{-\@highpenalty}% \addvspace{2.25em plus\p@}% 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} \def\l@chapter#1#2{\addpenalty{-\@highpenalty}% \vskip 1.0em plus\p@ % 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, 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}} % Single-space list of figures, add it to the table of contents. \def\listoffigures{\@restonecolfalse \if@twocolumn\@restonecoltrue\onecolumn\fi \chapter*{\listfigurename\@mkboth{\uppercase{\listfigurename}}{\uppercase{\listfigurename}}} \addcontentsline{toc}{chapter}{\listfigurename} {\ssp\@starttoc{lof}}\if@restonecol \twocolumn\fi} \def\l@figure{\@dottedtocline{1}{1.5em}{2.3em}} \def\listoftables{\@restonecolfalse \if@twocolumn\@restonecoltrue\onecolumn\fi \chapter*{\listtablename\@mkboth{\uppercase{\listtablename}}% {\uppercase{\listtablename}}}\@starttoc{lot}\if@restonecol \twocolumn\fi} \def\listoftables{\@restonecolfalse \if@twocolumn\@restonecoltrue\onecolumn\fi \chapter*{\listtablename\@mkboth{\uppercase{\listtablename}}{\uppercase{\listtablename}}} \addcontentsline{toc}{chapter}{\listtablename} {\ssp\@starttoc{lot}}\if@restonecol \twocolumn\fi} \let\l@table\l@figure \def\thebibliography#1{\chapter*{\bibname\@mkboth {\uppercase{\bibname}}{\uppercase{\bibname}}} \addcontentsline{toc}{chapter}{\bibname} \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}% \sloppy\clubpenalty4000\widowpenalty4000 \sfcode`\.=\@m} \def\endthebibliography{% \def\@noitemerr{\@warning{Empty `thebibliography' environment}}% \endlist} \newif\if@restonecol \def\theindex{\@restonecoltrue\if@twocolumn\@restonecolfalse\fi \columnseprule \z@ \columnsep 35\p@\twocolumn[\@makeschapterhead{\indexname}]% \@mkboth{\uppercase{\indexname}}{\uppercase{\indexname}}% \thispagestyle{plain}\parindent\z@ \parskip\z@ plus .3\p@\relax\let\item\@idxitem} \def\@idxitem{\par\hangindent 40\p@} \def\subitem{\par\hangindent 40\p@ \hspace*{20\p@}} \def\subsubitem{\par\hangindent 40\p@ \hspace*{30\p@}} \def\endtheindex{\if@restonecol\onecolumn\else\clearpage\fi} \def\indexspace{\par \vskip 10\p@ plus5\p@ minus3\p@\relax} \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 \long\def\@makefntext#1{\parindent 1em\noindent \hbox to 1.8em{\hss$\m@th^{\@thefnmark}$}#1} % Single-space footnotes. \long\def\@footnotetext#1{\insert\footins{\ssp\reset@font\footnotesize \interlinepenalty\interfootnotelinepenalty \splittopskip\footnotesep \splitmaxdepth \dp\strutbox \floatingpenalty \@MM \hsize\columnwidth \@parboxrestore \edef\@currentlabel{\csname p@footnote\endcsname\@thefnmark}\@makefntext {\rule{\z@}{\footnotesep}\ignorespaces #1\strut}}} \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} \long\def\@makecaption#1#2{% \vskip 10\p@ \setbox\@tempboxa\hbox{#1: #2}% \ifdim \wd\@tempboxa >\hsize % IF longer than one line: {\ssp#1: #2}\par % THEN set as ordinary paragraph. \else % ELSE center. \hbox to\hsize{\hfil\box\@tempboxa\hfil}% \fi} % 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{\figurename~\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{\tablename~\thetable} \def\table{\@float{table}} \let\endtable\end@float \@namedef{table*}{\@dblfloat{table}} \@namedef{endtable*}{\end@dblfloat} \mark{{}{}} % Initializes TeX's marks \if@twoside % If two-sided printing. \def\ps@headings{\let\@mkboth\markboth \def\@oddfoot{}\def\@evenfoot{}% No feet. \def\@evenhead{\rm \thepage\hfil \sl \leftmark}% Left heading. \def\@oddhead{{\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}}}} \else % If one-sided printing. \def\ps@headings{\let\@mkboth\markboth \def\@oddfoot{}\def\@evenfoot{}% No feet. \def\@oddhead{{\sl \rightmark}\hfil \rm\thepage}% Heading. \def\chaptermark##1{\markright {\uppercase{\ifnum \c@secnumdepth >\m@ne \@chapapp\ \thechapter. \ \fi ##1}}}} \fi \def\ps@myheadings{\let\@mkboth\@gobbletwo \def\@oddhead{{\sl\rightmark}\hfil \rm\thepage}% \def\@oddfoot{}\def\@evenhead{\rm \thepage\hfil\sl\leftmark}% \def\@evenfoot{}\def\chaptermark##1{}\def\sectionmark##1{}% \def\subsectionmark##1{}} \def\ps@plain{\let\@mkboth\markboth \def\@oddfoot{}\def\@evenfoot{} % no feet \def\@oddhead{\hbox{}\hfil\rm\thepage} % heading (right) \def\@evenhead{\rm\thepage\hfil\hbox{}}} % heading (left) % 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} \@addtoreset{equation}{chapter} % Makes \chapter reset 'equation' % counter. \def\theequation{\thechapter.\arabic{equation}} % \jot = 3pt % Extra space added between lines of an eqnarray % environment % Default initializations \ps@plain % 'plain' page style \pagenumbering{arabic} % Arabic page numbers \if@twoside\else\raggedbottom\fi % Ragged bottom unless twoside % option. \if@twocolumn \@@input twocolum.sty\relax \else \onecolumn % Single-column. \fi \endinput