From e0c6872cf40896c7be36b11dcc744620f10adf1d Mon Sep 17 00:00:00 2001 From: Norbert Preining Date: Mon, 2 Sep 2019 13:46:59 +0900 Subject: Initial commit --- macros/latex/contrib/uwthesis/uwthesis.cls | 936 +++++++++++++++++++++++++++++ 1 file changed, 936 insertions(+) create mode 100644 macros/latex/contrib/uwthesis/uwthesis.cls (limited to 'macros/latex/contrib/uwthesis/uwthesis.cls') diff --git a/macros/latex/contrib/uwthesis/uwthesis.cls b/macros/latex/contrib/uwthesis/uwthesis.cls new file mode 100644 index 0000000000..0519360ef0 --- /dev/null +++ b/macros/latex/contrib/uwthesis/uwthesis.cls @@ -0,0 +1,936 @@ +% ======================================================================== +% Copyright (c) 1995-2008 The University of Washington +% +% Licensed under the Apache License, Version 2.0 (the "License"); +% you may not use this file except in compliance with the License. +% You may obtain a copy of the License at +% +% http://www.apache.org/licenses/LICENSE-2.0 +% +% Unless required by applicable law or agreed to in writing, software +% distributed under the License is distributed on an "AS IS" BASIS, +% WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +% See the License for the specific language governing permissions and +% limitations under the License. +% ======================================================================== +% +% +% University of Washington Thesis class +% by Jim Fox +% fox@washington.edu +% +% For the most recent edition of this class file see: +% http://staff.washington.edu/fox/tex/ +% Or the CTAN archive +% macros/latex/contrib/uwthesis +% +% +% Version history +% +% 6.12,04/15/08, Re-Fix first page bottom margin; raise quote slip +% 6.13,03/31/08, Fix first page bottom margin; +% 6.12,03/21/07, Better handling of label inside footnote with chapternotes +% 6.11,08/02/06, Bold "abstract", "Page" heading on toc +% 6.10,10/25/05, Fix co-chair lines +% 6.9, 10/25/05, Several small changes for 2005 style guide +% 6.8, 07/26/05, Add some single-spacing in prelim pages +% 6.7, 06/29/05, Remove "by" from abstract page +% 6.6, 06/08/05, Change signature page baseline to 1.0 +% 6.5, 03/10/05, Change bibliography baseline to 1.0 +% 6.4, 03/09/05, Quote slip copy to "Proquest Information and Learning" +% 6.3, 09/22/04, Add column titles to lof and lot +% 6.2, 07/23/04, Lowercase 'doctoral' in quote slip +% 6.1, 07/08/04, Allow option 'natbib' to load natbib package correctly +% 6.0, 07/14/03, Change names: thesis.xxx -> uwthesis.xxx +% 5.8, 06/12/03, Minor changes to the endnotes pagenation +% 5.7, 08/14/00, Minor changes to the quote slip +% 5.6, 06/19/00, 'Doctorial' -> 'Doctoral' +% 5.5, 05/30/00, New text for quote slips (and 'doctorial' -> 'doctoral') +% 5.4, 10/29/99, Add \xtrafullpage for oneside fullpage figures +% 5.3, 08/09/99, Correct spelling errors in quote slips +% 5.2, 07/20/99, Allow 10pt, 11pt, and 12pt class options +% 5.1, 02/08/99, Add \thesissignaturepage +% 5.0, 01/05/99, Modify for revised uw grad school guidelines +% +% 4.8, 10/22/98, Allow multi-page abstract +% Allow co-chairs +% Fix single-sided facing pages (for new latex) +% 4.7, 8/19/98, Set caption text back to normal size +% 4.6, 3/11/98, Add default-text quoteslip macros +% 4.5, 7/14/97, fix \@makefntext to work in math mode +% 4.4, 5/13/97, change margin calculations (allows non-letter paper) +% minor reformatting of abstract +% provide single-spaced captions, footnotes, and quotes +% 4.3, 2/13/97, allow \\ in text (bug fix) +% 4.2, 8/12/96, added \@normalsize for setspace.sty (and others?) +% 4.1, 11/6/95, no page numbers on chapter start for oneside printing +% +% Documentation is in the companion document (uwthesis.tex) +% + +\ProvidesClass{uwthesis}[2008/04/15] +\NeedsTeXFormat{LaTeX2e} + +% +% footnote stuff for option processing +% + +\newwrite\tf@not + +\newif\ifendnotes % true if doing endnotes + \endnotesfalse +\newif\ifchapternotes % true if doing chapternotes + \chapternotesfalse +\let\printchapternotes\relax +\let\printendnotes\relax + +\DeclareOption{footnotes}% selects bottom-of-page notes (default) + {} +\DeclareOption{chapternotes}% selects end-of-chapter notes + {\chapternotestrue} +\DeclareOption{endnotes}% selects end-of-thesis notes + {\endnotestrue} + +% +% ---- Timely loading of specific packages ----------------------------- +% +\newif\if@natbib % true if including natbib + \@natbibfalse +\DeclareOption{natbib}% includes natbib package + {\@natbibtrue} + +% +% ---- Thesis is a modified (default 12pt) book style ----------------- +% + +\def\@f@ntsize{12pt} +\DeclareOption{10pt}{\def\@f@ntsize{10pt}} +\DeclareOption{11pt}{\def\@f@ntsize{11pt}} +\DeclareOption{12pt}{\def\@f@ntsize{12pt}} +\DeclareOption*{\PassOptionsToClass{\CurrentOption}{book}} +\ProcessOptions +\PassOptionsToClass{\@f@ntsize}{book} +\PassOptionsToClass{openany}{book} +\ProcessOptions +\LoadClass{book} + +\if@natbib + \usepackage{natbib} +\fi + +% +% ---- page sizes ---------------------------------------------- +% +% margins are 1 inch (72pt) all around, +% except 1.5 inch (108pt) at the binding +% +% text size computed from paper size +% + +\voffset -1in % undo primitive default margins +\hoffset -1in + +\topmargin 72\p@ +\headheight 12\p@ +\headsep 36\p@ +\oddsidemargin 108\p@ +\evensidemargin 72\p@ +\newdimen\botmargin +\botmargin 72\p@ +\marginparwidth 72\p@ +\marginparsep 7\p@ +\footskip \z@ % set later +\footnotesep 14\p@ +\parindent 1.5em + +\textheight\paperheight + \advance\textheight by-\topmargin + \advance\textheight by-\headheight + \advance\textheight by-\headsep + % \advance\textheight by-\footskip + \advance\textheight by-\botmargin +\textwidth\paperwidth + \advance\textwidth by-\oddsidemargin + \advance\textwidth by-\evensidemargin + +% --------------- + +\def\baselinestretch{1.5} % not quite doublespaced + +\setcounter{totalnumber}{5} +\setcounter{topnumber}{5} +\renewcommand\topfraction{.7} +\renewcommand\textfraction{.2} +\setlength\floatsep {18\p@ \@plus 2\p@ \@minus 4\p@} +\setlength\textfloatsep{30\p@ \@plus 2\p@ \@minus 4\p@} +\setlength\intextsep {20\p@ \@plus 4\p@ \@minus 4\p@} +\let\@normalsize\normalsize % retain old definition +\setlength\abovecaptionskip{10\p@} +\setlength\belowcaptionskip{10\p@} + + +% +% ---- Footnotes ------------------------------------------ +% +% Footnote placement option +% +% [endnotes] put the references at the thesis end +% [chapternotes] put the references at the chapter end +% [footnotes] put the references at the page bottom +% +% When text is written to file (.not) the source linebreaks +% are maintained. This keeps the individual lines in the file short. +% Control sequences in the note text are not expanded. +% + +\let\n@teitem\relax +\def\@n@teitem#1{\def\@currentlabel{#1}\item[#1]} + +\def\@chapternotetext{\begingroup + \catcode`\^^M=12\newlinechar=`\^^M + \catcode`\\=12 + \d@chapternote} + +\long\def\d@chapternote#1{% + \immediate \write\tf@not + {\n@teitem{\note@label} #1\relax}% + \endgroup} + +% +\def\@startnotes{% opens the .not file + \immediate \openout\tf@not\jobname.not\relax + \immediate \write\tf@not{\relax} + \setcounter{footnote}{0}} + +% +% chapternotes +% + +\ifchapternotes + % \typeout{Doing chapternotes} + \let\@footnotetext\@chapternotetext + \@startnotes + \def\note@label{\arabic{footnote}} + \def\printchapternotes{% Prints the accumulated notes + \ifnum\c@footnote>0 + \clearpage + \begin{center} Notes to Chapter \arabic{chapter} \end{center}\par + \addcontentsline{toc}{section}{\protect + \numberline{}{Notes to Chapter \arabic{chapter}}} + \begin{description} + \immediate\closeout\tf@not + \catcode`@=11 + \let\n@teitem\@n@teitem + \@input{\jobname.not} + \end{description} + \clearpage + \@startnotes + \fi + } + \let\old@enddocument\enddocument + \def\enddocument{\printchapternotes\old@enddocument} +\fi + +% +% endnotes +% + +\ifendnotes + % \typeout{Doing endnotes} + \let\@footnotetext\@chapternotetext + \@startnotes + \def\note@label{\arabic{chapter}.\arabic{footnote}} + \def\printendnotes{% Prints the accumulated notes + \chapter*{Notes} + \addcontentsline{toc}{chapter}{Notes} + \thispagestyle{empty} + \begin{description} + \immediate\closeout\tf@not + \catcode`@=11 + \let\n@teitem\@n@teitem + \@input{\jobname.not} + \end{description} + \@startnotes % allows multiple endnotes + } +\fi + +% +% bottom-of-page footnotes format +% full width line and hanging indent +% +\def\footnoterule{\kern-3\p@ + \hrule width \columnwidth \kern 2.6\p@} +\long\def\@makefntext#1{\parindent 1em\noindent \hangindent\parindent + \def\baselinestretch{1.0}\normalfont + \hb@xt@1.8em{\hss\@makefnmark}#1} + +% +% ---- Text pages ---------------------------------- +% +% In two-sided style Chapter 1 is right handed +% +\def\textofChapter#1{\gdef\@textofChapter{#1}} \textofChapter{Chapter} +\def\textofAppendix#1{\gdef\@textofAppendix{#1}} \textofAppendix{Appendix} + +\def\textpages{% Start of text pages + \advance\textheight by\footskip % has to be done before the clearpage + \clearpage + \pagestyle{empty} + \cleardoublepage + \pagestyle{myheadings}\markboth{}{} + \def\@chapapp{\protect\@textofChapter} + \def\Thechapter{\arabic{chapter}} + \pagenumbering{arabic} + \footskip\z@ + } + +\def\appendix{\par + \setcounter{chapter}{0} + \setcounter{section}{0} + \def\@chapapp{\protect\@textofAppendix} + \def\Thechapter{\Alph{chapter}} + \def\thechapter{\Alph{chapter}}} + + +% +% Parts +% +\def\@makeparthead#1{ \vspace*{2pc} {\centering + \ifnum \c@secnumdepth >\m@ne \large Part \thepart \par + \vspace{10\p@} \fi + \def\baselinestretch{1.0}\normalfont + \large\bf \uppercase\expandafter{#1}\par + \nobreak \vspace{20\p@}} } +% +\def\@makesparthead#1{ \vspace*{2pc} {\centering + \large\bf \uppercase\expandafter{#1}\par + \nobreak \vspace{20\p@}} } +% +\def\part{% + \printchapternotes + \if@openright\cleardoublepage\else\clearpage\fi + % \thispagestyle{empty}% + \global\@topnum\z@ + \@afterindenttrue + % \let\\\relax + \secdef\@part\@spart} +% +% Complication is added here to allow line breaks +% in the part titles (via \\). +% +\def\@part[#1]#2{ + \ifnum \c@secnumdepth >\m@ne + \refstepcounter{part} + \typeout{<<\thepart>>} + {\def\\{ } % allow \\ in title + \addcontentsline{toc}{part}{\protect + \numberline{Part\ \thepart:}#1}}\else + {\def\\{ } % allow \\ in title + \addcontentsline{toc}{part}{#1}}\fi + \addtocontents{lof}{\protect\addvspace{5\p@}} + \addtocontents{lot}{\protect\addvspace{5\p@}} + \if@twocolumn + \@topnewpage[\@makeparthead{#2}] + \else \@makeparthead{#2} + \@afterheading \fi} +\def\@spart#1{\if@twocolumn \@topnewpage[\@makesparthead{#1}] + \else \@makesparthead{#1} + \@afterheading\fi} + + +% +% Chapter headings +% +\def\@makechapterhead#1{ \vspace*{2pc} {\centering + \ifnum \c@secnumdepth >\m@ne \large \@chapapp{} \Thechapter \par + \vspace{10\p@} \fi + \def\baselinestretch{1.0}\normalfont + \large\bf \uppercase\expandafter{#1}\par + \nobreak \vspace{20\p@}} } +% +\def\@makeschapterhead#1{ \vspace*{2pc} {\centering + \large\bf \uppercase\expandafter{#1}\par + \nobreak \vspace{20\p@}} } +% +\def\chapter{% + \printchapternotes + \if@openright\cleardoublepage\else\clearpage\fi + % \thispagestyle{empty}% + \global\@topnum\z@ + \@afterindenttrue + % \let\\\relax + \secdef\@chapter\@schapter} +% +% Complication is added here to allow line breaks +% in the chapter titles (via \\). +% +\def\@chapter[#1]#2{ + \ifnum \c@secnumdepth >\m@ne + \refstepcounter{chapter} + \typeout{<<\thechapter>>} + {\def\\{ } % allow \\ in title + \addcontentsline{toc}{chapter}{\protect + \numberline{\@chapapp\ \thechapter:}#1}}\else + {\def\\{ } % allow \\ in title + \addcontentsline{toc}{chapter}{#1}}\fi + \addtocontents{lof}{\protect\addvspace{5\p@}} + \addtocontents{lot}{\protect\addvspace{5\p@}} + \if@twocolumn + \@topnewpage[\@makechapterhead{#2}] + \else \@makechapterhead{#2} + \@afterheading \fi} +\def\@schapter#1{\if@twocolumn \@topnewpage[\@makeschapterhead{#1}] + \else \@makeschapterhead{#1} + \@afterheading\fi} +% +% Section headings +% +\renewcommand\section{% + \@startsection {section}{1}{\z@}% + {-3.5ex \@plus -1ex \@minus -.2ex}% + {2.3ex \@plus.2ex}% + {\def\baselinestretch{1.0}\reset@font\normalsize\bfseries\slshape}} +\renewcommand\subsection{% + \@startsection{subsection}{2}{\z@}% + {-3.25ex\@plus -1ex \@minus -.2ex}% + {1.5ex \@plus .2ex}% + {\reset@font\normalsize\mdseries\itshape}} +\renewcommand\subsubsection{% + \@startsection{subsubsection}{3}{\z@}% + {-3.25ex\@plus -1ex \@minus -.2ex}% + {1.5ex \@plus .2ex}% + {\reset@font\normalsize\mdseries\itshape}} + +% part +\renewcommand\l@part[2]{% + \ifnum \c@tocdepth >\m@ne + \addpenalty{-\@highpenalty}% + \vskip 1.0em \@plus\p@ + \setlength\@tempdima{75\p@}% + \@dottedtocline{0}{\z@}{\@tempdima}{#1}{#2}% + \fi} + +% +% Provide for `Chapter ' in the toc +% (increase \@tempdima) +% +\renewcommand\l@chapter[2]{% + \ifnum \c@tocdepth >\m@ne + \addpenalty{-\@highpenalty}% + \vskip 1.0em \@plus\p@ + \setlength\@tempdima{75\p@}% + \@dottedtocline{0}{\z@}{\@tempdima}{#1}{#2}% + \fi} + +% +% extra space between toc entries +% +\def\@dottedtocline#1#2#3#4#5{% + \ifnum #1>\c@tocdepth \else + \vskip -\baselineskip % \@plus.2\p@% + \vskip 1.2\baselineskip + {\leftskip #2\relax \rightskip \@tocrmarg \parfillskip -\rightskip + \parindent #2\relax\@afterindenttrue + \interlinepenalty\@M + \leavevmode + \@tempdima #3\relax + \advance\leftskip \@tempdima \null\nobreak\hskip -\leftskip + {#4}\nobreak + \leaders\hbox{$\m@th + \mkern \@dotsep mu\hbox{.}\mkern \@dotsep + mu$}\hfill + \nobreak + \hb@xt@\@pnumwidth{\hfil\normalfont \normalcolor #5}% + \par}% + \fi} + +% +% ------ Special captions --------------------- +% +% \caption[]{text} produces normal caption and numbering +% \caption(-){(continued)} produces `(continued)' caption and +% same-as-last caption number +% \caption(x)[]{text} produces lettered caption. 1.1a, 1.1b, ... +% If (x) is (a) or (A) then caption number is incremented, +% else it is same numbered. + +\def\thecaptionletter{} +\newif\ifcaptiontotoc\captiontotoctrue + +\def\caption{\@ifnextchar({\@specialcaption}{\@normalcaption}} + +\def\@normalcaption{\refstepcounter\@captype \@dblarg{\@caption\@captype}} +\def\@specialcaption(#1){% + \def\thecaptionletter{#1}% + \captiontotocfalse + \if#1-\def\thecaptionletter{}\fi + \if#1a\refstepcounter\@captype\captiontotoctrue\fi + \if#1A\refstepcounter\@captype\captiontotoctrue\fi + \@dblarg{\@caption\@captype}} + +\long\def\@caption#1[#2]#3{\par + \ifcaptiontotoc + \addcontentsline{\csname + ext@#1\endcsname}{#1}{\protect\numberline{\csname + the#1\endcsname}{\ignorespaces #2}}% + \fi + \begingroup + \@parboxrestore + \def\baselinestretch{1.0} + \normalsize % UW grad school doesn't allow \footnotesize + \@makecaption{\csname fnum@#1\endcsname + \thecaptionletter}{\ignorespaces #3}\par + \endgroup} + +\def\@listI{\leftmargin\leftmargini \parsep 7\p@ plus 3\p@ minus 1\p@\topsep + 12\p@ plus 5\p@ minus 6\p@\itemsep 7\p@ plus 3\p@ minus 1\p@} + + +% +% ---- Facing pages and double-page figures and tables +% +% \begin{fullpage} ... \end{fullpage} +% \begin{leftfullpage} ... \end{leftfullpage} +% \begin{xtrafullpage} ... \end{xtrafullpage} + +\newif\if@LP \@LPfalse +\newif\if@XP \@XPfalse + +\newbox\@@wholepage +\def\fullpage{\setbox\@@wholepage=\vbox\bgroup} +\def\endfullpage{\egroup\dp\@@wholepage\z@ + \vbox to\textheight{\vss\unvbox\@@wholepage\vss}} +\def\leftfullpage{\setbox\@@wholepage=\vbox\bgroup} +\def\endleftfullpage{\egroup\dp\@@wholepage\z@ + \vbox to\textheight{\vss\unvbox\@@wholepage\vss}\global\@LPtrue} + +\if@twoside + \typeout{Formatting for twoside printing.} + \let\xtrafullpage\fullpage + \let\endxtrafullpage\endfullpage +\else + \typeout{Formatting for oneside printing.} + \def\xtrafullpage{\setbox\@@wholepage=\vbox\bgroup} + \def\endxtrafullpage{\egroup\dp\@@wholepage\z@ + \vbox to\textheight{\vss\unvbox\@@wholepage\vss}\global\@XPtrue} +\fi + +\let\oldend@float\end@float +\def\end@float{% + \if@LP\global\@namedef{LP:\expandafter\string\@currbox}{L}% + \else \global\@namedef{LP:\expandafter\string\@currbox}{z}% + \fi + \if@XP\global\@namedef{XP:\expandafter\string\@currbox}{X}% + \else \global\@namedef{XP:\expandafter\string\@currbox}{z}% + \fi + \global\@LPfalse + \global\@XPfalse + \oldend@float +} + + +\if@twoside + +% reject a left-side float that appears on an odd page + \let\old@xtryfc\@xtryfc + \def\@xtryfc #1{% + \expandafter\if\csname LP:\string#1\endcsname L% + % \typeout{facing page in xtryfc}% + \ifodd\count0\global\@colht\z@ + \typeout{I moved a leftpage float from page \the\count0.}% + \fi\fi + \old@xtryfc #1} + +\else + +\def\unstep@page{\addtocounter{page}{-1}} + +% flip a facing page caption + \let\@oldwtryfc\@wtryfc + \def\@wtryfc #1{% + \expandafter\if\csname LP:\string#1\endcsname L\gdef\LP@page{}% + \typeout{Encountered a facing page.}% + \fi + \expandafter\if\csname XP:\string#1\endcsname X\gdef\XP@page{}% + \typeout{Encountered an extra page.}% + \fi + \@oldwtryfc #1} + + \let\old@outputpage\@outputpage + \def\@outputpage{% + \begingroup + \@ifundefined{LP@page} + {\let\@themargin\oddsidemargin \let\@thehead\@oddhead} + {\let\@themargin\evensidemargin \let\@thehead\@evenhead + \typeout{Printing a left-hand one-side page.}% + \global\let\LP@page\relax + } + \@ifundefined{XP@page} + {} + {\let\@thehead\@empty \let\@thefoot\@empty + \typeout{Printing an extra page.}% + \global\let\XP@page\relax + \aftergroup\unstep@page + } + \old@outputpage\endgroup + } +\fi + +% +% ---- Preliminary pages --------------------------- +% +\def\prelimpages{ % sets page numbering for the preliminary pages + \pagestyle{empty} % will be {plain} at start of toc + \pagenumbering{roman} + \setcounter{page}{1} + \footskip 30\p@ % allowance for the roman page numbers + \advance\textheight by-\footskip + } +% +% (The following macros are used once and discarded) +% +% Title page +% +% (Defaults are for dissertation. See \MasterThesis below.) +% +\def\Title#1{\gdef\@Title{#1}} +\def\Author#1{\gdef\@Author{#1}} +\def\Year#1{\gdef\@Year{#1}} \Year{\year} +\def\Degree#1{\gdef\@Degree{#1}} \Degree{Doctor of Philosophy} +\def\Program#1{\gdef\@Program{#1}} \Program{your program here} +% +\def\School#1{\gdef\@School{#1}} \School{University of Washington} +\def\GSchool#1{\gdef\@GSchool{#1}} \GSchool{Graduate School} +\def\Degreetext#1{\gdef\@Degreetext{#1}} + \Degreetext{A dissertation submitted in partial fulfillment\\ + of the requirements for the degree of} +\def\Programtext#1{\gdef\@Programtext{#1}} + \Programtext{Program Authorized to Offer Degree:\ \ } + +\def\titlepage{ % Prints the title page + \vspace{7pc} + \begin{center} + {\def\baselinestretch{1.0}\normalfont\Large + \lineskip 3ex + \@Title\par} + \par\vskip\z@ plus4fill\relax + \@Author + \par\vskip\z@ plus4fill\relax + {\def\baselinestretch{1.0}\normalfont + \@Degreetext\par} + \par\vskip\z@ plus2fill\relax + \@Degree + \par\vskip\z@ plus2fill\relax + \@School + \par\vskip\z@ plus1fill\relax + \@Year + \par\vskip\z@ plus4fill\relax + {\def\baselinestretch{1.0}\normalfont + \@Programtext \@Program\par} + \par\vskip\z@ plus1fill\relax + \end{center} + \vspace{2pc}\relax + \let\titlepage\relax} + +% +% Signature page +% + +\def\textofChair#1{\gdef\@textofChair{#1}} + \textofChair{Chair of the Supervisory Committee} +\def\textofDate#1{\gdef\@textofDate{#1}} \textofDate{Date} + +\newcount\@Chair \@Chair0 +\def\Chair#1#2#3{ + \global\@namedef{C:\expandafter\the\@Chair}{#1} + \global\@namedef{T:\expandafter\the\@Chair}{#2} + \global\@namedef{D:\expandafter\the\@Chair}{#3} + \ifnum\@Chair>0\textofChair{Co-Chairs of the Supervisory Committee}\fi + \global\advance\@Chair by1} + + +\newcount\@Sign\@Sign0 +\def\Signature#1{ + \global\@namedef{S:\expandafter\the\@Sign}{#1} + \global\advance\@Sign by1} + +\def\signaturepage{ % Prints the dissertation signature page + \cleardoublepage + \begin{center} + \def\baselinestretch{1.0}\normalfont + \@School + \par + \@GSchool + \vskip24\p@ plus4fill\relax + This is to certify that I have examined this copy of a doctoral + dissertation by + \vskip\z@ plus2fill\relax + \@Author + \par\vskip\z@ plus2fill\relax + and have found that it is complete and satisfactory in all respects, + \par + and that any and all revisions required by the final \par + examining committee have been made. + \par\vskip12\p@ plus4fill\relax + \makebox[\textwidth]{\@textofChair:\hfill} + \par\vskip8\p@ plus1fill\relax + \count1=0 + \@whilenum \count1<\@Chair \do + {\vskip12\p@ \baselineskip12pt + \makebox[\textwidth]{\hspace{4pc}\hrulefill\hspace{4pc}} + \csname C:\the\count1\endcsname + \advance\count1 by1} + \par\vskip12\p@ plus4fill\relax + \makebox[\textwidth]{Reading Committee:\hfill} + \par\vskip8\p@ plus1fill\relax + \count1=0 + \@whilenum \count1<\@Sign \do + {\vskip12\p@ \baselineskip12pt + \makebox[\textwidth]{\hspace{4pc}\hrulefill\hspace{4pc}} + \csname S:\the\count1\endcsname + \advance\count1 by1} + \par\vskip12\p@ plus4fill\relax + \makebox[\textwidth]{\hbox to 4pc{\@textofDate:\hfill}% + \hbox to3in{\hrulefill}\hfill} + \par + \end{center} + \let\signaturepage\relax\let\thesissignaturepage\relax} + +\def\thesissignaturepage{ % Prints the masters thesis signature page + \cleardoublepage + \begin{center} + \def\baselinestretch{1.0}\normalfont + \@School + \par + \@GSchool + \vskip24\p@ plus4fill\relax + This is to certify that I have examined this copy of a master's + thesis by + \vskip\z@ plus2fill\relax + \@Author + \par\vskip\z@ plus2fill\relax + and have found that it is complete and satisfactory in all respects, + \par + and that any and all revisions required by the final \par + examining committee have been made. + \par\vskip12\p@ plus4fill\relax + \makebox[\textwidth]{Committee Members:\hfill} + \par\vskip8\p@ plus1fill\relax + \count1=0 + \@whilenum \count1<\@Sign \do + {\vskip12\p@ \baselineskip12pt + \makebox[\textwidth]{\hspace{4pc}\hrulefill\hspace{4pc}} + \csname S:\the\count1\endcsname + \advance\count1 by1} + \par\vskip12\p@ plus4fill\relax + \makebox[\textwidth]{\hbox to 4pc{\@textofDate:\hfill}% + \hbox to3in{\hrulefill}\hfill} + \par + \end{center} + \let\signaturepage\relax\let\thesissignaturepage\relax} + +% Quote slip +% +\def\textofSignature#1{\gdef\@textofSignature{#1}} \textofSignature{Signature} +\long\def\quoteslip#1{ + \cleardoublepage + % \null + {\hyphenpenalty1000 + % \vskip\z@ plus1fill\relax + \def\baselinestretch{1.0}\normalfont + \noindent #1\par + } + \vskip3pc + \begin{flushright} + \makebox[3in]{\@textofSignature\hrulefill} + \par\vskip2pc + \makebox[3in]{\@textofDate\hrulefill} + \end{flushright} + \vskip\z@ plus2fill\relax + \let\quoteslip\relax + \let\thesisquoteslip\relax + \let\doctoralquoteslip\relax + \let\doctoralabstractquoteslip\relax + \let\doctorialquoteslip\relax + \let\doctorialabstractquoteslip\relax + } + +\long\def\thesisquoteslip{% + \quoteslip{% + In presenting this thesis in partial fulfillment of the requirements + for a master's degree at the University of Washington, I agree + that the Library shall make its copies freely available for inspection. + I further agree that extensive copying of this thesis is allowable + only for scholarly purposes, consistent with ``fair use'' as prescribed + in the U.S. Copyright Law. Any other reproduction for any purpose + or by any means shall not be allowed without my written permission. + }} +\long\def\doctoralquoteslip{% + \quoteslip{% + In presenting this dissertation in partial fulfillment of the requirements + for the doctoral degree at the University of Washington, I agree + that the Library shall make its copies freely available for inspection. + I further agree that extensive copying of this dissertation is allowable + only for scholarly purposes, consistent with ``fair use'' as prescribed + in the U.S. Copyright Law. Requests for copying or reproduction + of this dissertation may be referred to Proquest Information and Learning, + 300 North Zeeb Road, Ann Arbor, MI 48106-1346, 1-800-521-0600, to whom + the author has granted ``the right to reproduce and sell (a) copies + of the manuscript in microform and/or (b) printed copies of + the manuscript made from microform.'' + }} +\long\def\doctoralabstractquoteslip{% + \quoteslip{% + In presenting this dissertation in partial fulfillment of the requirements + for the doctoral degree at the University of Washington, I agree + that the Library shall make its copies freely available for inspection. + I further agree that extensive copying of this dissertation is allowable + only for scholarly purposes, consistent with ``fair use'' as prescribed + in the U.S. Copyright Law. Requests for copying or reproduction + of this dissertation may be referred to Proquest Information and Learning, + 300 North Zeeb Road, Ann Arbor, MI 48106-1346, 1-800-521-0600, + or to the author. + }} + +% keep mispelled names for backward compatibility +\let\doctorialquoteslip\doctoralquoteslip +\let\doctorialabstractquoteslip\doctoralabstractquoteslip + +% +% Abstract +% +% normal parameters +\def\textofAbstract#1{\gdef\@textofAbstract{#1}} \textofAbstract{Abstract} + +\long\def\abstract#1{ + \cleardoublepage + \begin{center} + \@School + \par\vskip1pc + {\bf\@textofAbstract}% + \par\vskip1pc + {\def\baselinestretch{1.0}\normalfont\large \@Title \par} + \par\vskip1pc + \@Author + \par\vskip1pc + {\def\baselinestretch{1.0}\normalfont + \@textofChair: + \par + \count1=0 + \@whilenum \count1<\@Chair \do + {% \vskip12\p@ \baselineskip12pt + \csname T:\the\count1\endcsname\ \csname C:\the\count1\endcsname + \par \csname D:\the\count1\endcsname\par\vskip6\p@ + \advance\count1 by1} + \par} + \par\vskip1pc + \end{center} + \if@twoside + \begingroup % have to set multiple abstract pages 1-sided + \def\@blankpage{\if\@@blankpage B + \shipout\vbox{}\global\advance\count\z@ by1\fi + \global\def\@@blankpage{B}} + \def\@@blankpage{A} + \output=\expandafter{\expandafter\@blankpage\the\output} + \fi + #1 + \vfill\clearpage + \if@twoside\endgroup\fi + \let\abstract\relax} +% +% +% Table of contents (right side page) (always page `i') +% +% +\def\textofToC#1{\gdef\@textofToC{#1}} \textofToC{Table of Contents} +\def\tableofcontents{\cleardoublepage + \chapter*{\@textofToC\@mkboth{}{}} + \pagestyle{plain} + \thispagestyle{plain} + \setcounter{page}{1} + \hbox to\textwidth{\hfill Page} + {\let\footnotemark\relax % in case one is in the title + \def\baselinestretch{1.0}\normalfont + \@starttoc{toc} + } + } +% +% List of figures +% + +\def\textofLoF#1{\gdef\@textofLoF{#1}} \textofLoF{List of Figures} +\def\listoffigures{\chapter*{\@textofLoF\@mkboth{}{}} + \thispagestyle{plain} + \addcontentsline{toc}{chapter}{\protect\@textofLoF} + \hbox to\textwidth{Figure Number \hfill Page} + {\let\footnotemark\relax % in case one is in the title + \def\baselinestretch{1.0}\normalfont + \@starttoc{lof} + } + } +% +% List of tables +% +\def\textofLoT#1{\gdef\@textofLoT{#1}} \textofLoT{List of Tables} +\def\listoftables{\chapter*{\@textofLoT\@mkboth{}{}} + \thispagestyle{plain} + \addcontentsline{toc}{chapter}{\protect\@textofLoT} + \hbox to\textwidth{Table Number \hfill Page} + {\let\footnotemark\relax % in case one is in the title + \def\baselinestretch{1.0}\normalfont + \@starttoc{lot} + } + } +% +% Bibliography +% +\def\textofBIB#1{\gdef\@textofBIB{#1}} \textofBIB{Bibliography} +\def\thebibliography#1{\chapter*{\@textofBIB\@mkboth{}{}} + \addcontentsline{toc}{chapter}{\protect\@textofBIB} + \list + {[\arabic{enumi}]}{\settowidth\labelwidth{[#1]}\leftmargin\labelwidth + \advance\leftmargin\labelsep + \usecounter{enumi}} + \def\newblock{\hskip .11em plus .33em minus .07em} + \sloppy\clubpenalty4000\widowpenalty4000 + \def\baselinestretch{1.0}\normalfont + \sfcode`\.=1000\relax} + +% +% Acknowledgments +% +\def\textofAck#1{\gdef\@textofAck{#1}} \textofAck{Acknowledgments} +\long\def\acknowledgments#1{\chapter*{\@textofAck\@mkboth{}{}} + \thispagestyle{plain} + #1\par + \vfill + \let\acknowledgments\relax} + +% +% Dedication +% +\def\textofDed#1{\gdef\@textofDed{#1}} \textofDed{Dedication} +\long\def\dedication#1{\chapter*{\@textofDed\@mkboth{}{}} + \thispagestyle{plain} + #1\par + \vfill + \let\dedication\relax} + +% +% Vita +% +\def\textofVita#1{\gdef\@textofVita{#1}} \textofVita{Vita} +\long\def\vita#1{\chapter*{\@textofVita\@mkboth{}{}} + #1\par + \vfill + \let\vita\relax} + +% +% Gratis definition of a glossary environment +% +\renewenvironment{glossary} + {\begin{list}{}{\setlength\itemindent{\parindent} + \def\makelabel##1{\footnotesize\uppercase{##1:}\hfill}}} + {\end{list}} + +% End of the thesis style -- cgit v1.2.3