diff options
author | Karl Berry <karl@freefriends.org> | 2006-01-11 23:58:41 +0000 |
---|---|---|
committer | Karl Berry <karl@freefriends.org> | 2006-01-11 23:58:41 +0000 |
commit | 61f0745791ae9c7baef406e9fd3c94b8a2615792 (patch) | |
tree | 29b360ea026d7f72251a9454dff3d085e8a1d503 /Master/texmf-dist/source/latex/uaclasses | |
parent | ba8b0fca8d44298ddfd3824cb7ebc867cafee589 (diff) |
trunk/Master/texmf-dist/source/latex/uaclasses
git-svn-id: svn://tug.org/texlive/trunk@568 c570f23f-e606-0410-a88d-b1316a301751
Diffstat (limited to 'Master/texmf-dist/source/latex/uaclasses')
-rw-r--r-- | Master/texmf-dist/source/latex/uaclasses/README | 48 | ||||
-rw-r--r-- | Master/texmf-dist/source/latex/uaclasses/ua-classes.dtx | 1403 | ||||
-rw-r--r-- | Master/texmf-dist/source/latex/uaclasses/ua-classes.ins | 22 |
3 files changed, 1473 insertions, 0 deletions
diff --git a/Master/texmf-dist/source/latex/uaclasses/README b/Master/texmf-dist/source/latex/uaclasses/README new file mode 100644 index 00000000000..ee2eb48e0a7 --- /dev/null +++ b/Master/texmf-dist/source/latex/uaclasses/README @@ -0,0 +1,48 @@ +Readme file for the package "ua-classes". Date: 1997/03/08 +----------------------------------------------------------- + +This package provides a LaTeX2e document class named 'ua-thesis' for +typesetting theses and dissertations in the official format required by the +University of Arizona. Moreover, there is a fully compatible alternative +document class 'my-thesis' for private "nice" copies of the dissertation, +and the respective title pages are available as separate packages to work +with "any" document class. + + +The distribution contains the following files: + +README This file. + +ua-classes.dtx User guide and documented source code. + Run 'latex ua-classes.dtx' to obtain user documentation. + +ua-classes.ins Installation file. + Run 'latex ua-classes.ins' to install the package. + Generates the following files: + ua-thesis.cls, my-thesis.cls, ua-title.sty, my-title.sty + +ua-example.tex An example dissertation generated from the University + of Arizona Manual for Theses and Dissertations. + +ua-example.dvi Example output formatted with ua-thesis.cls + and the draft option (from 'ua-example.tex') + +my-example.dvi Example output formatted with my-thesis.cls + + +The following software needs to be installed on the user's system: + +LaTeX version 2e, December 1994 or later +AMS-LaTeX version 1.2, October 1996 or later +AMSFonts version 2.0, January 1995 or later + + +Changes from release 1996/12/05: + + Fixed placement and fonts of captions in my-thesis.cls + Fixed required release date of AMS macros + + +Send comments to: + +Marcel Oliver moliver@math.uci.edu
\ No newline at end of file diff --git a/Master/texmf-dist/source/latex/uaclasses/ua-classes.dtx b/Master/texmf-dist/source/latex/uaclasses/ua-classes.dtx new file mode 100644 index 00000000000..114672bc187 --- /dev/null +++ b/Master/texmf-dist/source/latex/uaclasses/ua-classes.dtx @@ -0,0 +1,1403 @@ +% \iffalse +%% +%% File ua-classes.dtx by Marcel Oliver +%% +%% Documentation can be obtained by running "latex labels.dtx" +%% +%<*dtx> +\ProvidesFile{ua-classes.dtx} +%</dtx> +%<driver>\ProvidesFile{ua-classes.drv} +% +%<*driver> +\documentclass{ltxdoc} +\begin{document} +\DocInput{ua-classes.dtx} +\end{document} +%</driver> +% \fi +% +% \title{Document Classes for \\ +% Writing Theses and Dissertations \\ +% for Submission at the University of Arizona} +% \author{Marcel Oliver} +% \date{1996/05/09} +% \maketitle +% +% \begin{abstract} +% This package provides a \LaTeXe\ document class named |ua-thesis| +% for typesetting theses and dissertations in the official format required +% by the University of Arizona. +% Moreover, there is a fully compatible alternative document class +% |my-thesis| for private copies of the dissertation, and the respective +% title pages are available as separate packages to work with ``any'' +% document class. +% \end{abstract} +% +% +% \section{User Documentation} +% +% \subsection{Introduction} +% +% The |ua-thesis| document class is designed to conform with the official +% requirements of the Graduate College of the University of Arizona. It is +% based on the |report| class which comes with the standard \LaTeX\ +% distribution, and all commands are upward compatible with |report| +% and to a large extend with the |amsbook| class. In other words, any +% document which works error free in those two classes should run with +% |ua-thesis|, too. To automatically typeset all the required information, +% a few new commands are defined, which are explained below. +% +% +% \subsection{Classes and Options} +% +% The following classes and packages are provided: +% +% \begin{description} +% +% \item[\texttt{ua-thesis}] +% The official University of Arizona thesis document class. The |draft| +% option is a paper saver---the automatic generation of front matter pages +% other than the title page will be suppressed, and single spaced printing +% will be used throughout the document. The |final| option activates +% ``double spaced'' layout at the required places and creates the full set +% of front matter pages. The default is |draft|. +% +% Note that the draft option is passed through to the underlying |report| +% class, i.e.\ thick black rules will indicate the location of overfull +% |hbox|es. +% +% The |ua-thesis| class automatically loads the |amsmath|, |amssymb| and +% |amsthm| packages which considerably improve the mathematical +% typesetting capabilities of \LaTeX. The use of these macros is strongly +% recommended. +% +% The default type-size in this document class is 12pt and should not be +% changed. Subsubsections +% produce unnumbered run-in headings which do not appear in the Table of +% Contents, therefore their use is discouraged. +% +% \item[\texttt{my-thesis}] +% An alternative to |ua-thesis| to produce private copies of your +% dissertation which don't look so reminiscent of the typewriter age. It +% is based on the |pcms-l| document class by the American Mathematical +% Society, which was designed to typeset monographs for the Park City/IAS +% Mathematics Series. It is similar to |amsbook|, but has a less crowded +% look. +% +% \item[\texttt{ua-title}] +% The official University of Arizona title page as a separate package. +% Useful if you want to build your own private thesis class, but want to +% use the official title page. It redefines the |\maketitle| command and +% also provides (potentially useless) definitions for all the commands +% described in the next section. +% +% The package is neither guaranteed nor tested to work with any specific +% document class. You have to try and see. +% +% \item[\texttt{my-title}] +% The equivalent to |ua-title|, but with the title page of the |my-thesis| +% class. +% +% \end{description} +% So, the first line in your dissertation file should be +% \begin{verbatim} +% \documentclass{ua-thesis} +% \end{verbatim} +% or, for the final printout, +% \begin{verbatim} +% \documentclass[final]{ua-thesis} +% \end{verbatim} +% If you change the document class from |ua-thesis| to |my-thesis| or vice +% versa, the +% first \LaTeX\ run might produce error messages because the format of the +% auxiliary files (|.aux|, |.toc| etc.) is incompatible between the two. +% Type |s| or |q| to ignore all error messages and run \LaTeX\ a second +% time, or manually delete all auxiliary +% files before changing the document class. +% +% +% \subsection{Commands for Specifying the Front Matter} +% +% As in the standard document classes, the title of your thesis is +% specified by +% \begin{verbatim} +% \title{This is the Title of my Dissertation \\ +% and This is the Second Line} +% \end{verbatim} +% where line breaks can be forced with |\\| if the automatic line +% breaking does not give a satisfactory result. But remember, the Graduate +% College imposes a maximum of three lines in the title---\LaTeX\ does not +% check this for you. An optional argument can be given for reasons of +% compatibility with the AMS classes, but will be ignored. +% +% Your name is specified with +% \begin{verbatim} +% \author{Firstname Lastname} +% \end{verbatim} +% again, an optional argument will be ignored. Use +% \begin{verbatim} +% \date{1996} +% \end{verbatim} +% set the year of your graduation. If you omit this command, the current +% day, month and year will be printed, which may be useful for keeping +% track of different draft versions. +% The only other command that is required for the final version of every +% dissertation is +% \begin{verbatim} +% \director{Firstname Lastname} +% \end{verbatim} +% to specify the name of your dissertation advisor. It will appear on the +% Special Abstract which is automatically generated. +% +% Now the optional commands. The name of your department is set with +% \begin{verbatim} +% \department{Department of Metaphysics} +% \end{verbatim} +% The default is ``Graduate Interdisciplinary Program in Applied +% Mathematics''. If you are in the ``Department of Metaphysics'', you have +% to use this command. +% +% If you are writing a Masters thesis, you have to explicitly specify the +% name of your degree. Use +% \begin{verbatim} +% \degree{Masters of Arts} +% \end{verbatim} +% The default is ``Doctor of Philosophy''. The abbreviation of the +% degree is needed for the Special Abstract and can be with +% \begin{verbatim} +% \degreeabbrev{M.A.} +% \end{verbatim} +% The default is ``Ph.D.''. Moreover, for Masters theses, the Copyright +% Page will have an additional part for the approval signature of your +% advisor. It will be automatically generated whenever you specify your +% advisor's title with +% \begin{verbatim} +% \directortitle{Professor of Mathematics} +% \end{verbatim} +% The default is empty and \emph{must not be changed for doctoral +% dissertations}. +% +% If you have to specify a major department +% different from the department above, use +% \begin{verbatim} +% \major{Agriculture} +% \end{verbatim} +% The default is empty. +% +% You can copyright your dissertation or thesis by writing +% \begin{verbatim} +% \copyrightholder{Firstname Lastname Year} +% \end{verbatim} +% The default is empty. If you use this command, the +% Copyright Page will automatically change to the required +% legalese for copyrighted dissertations or theses. +% +% +% \subsection{Examples for the Root File} +% +% For long documents such as theses, it is useful to split the \LaTeX\ +% source code into several files. The root file is the file that you run +% \LaTeX\ on. Subordinate files are included with |\include|. +% +% \subsubsection{A Doctoral Dissertation} +% +% The example below also shows how to load the |graphics| package, which in +% particular supports the inclusion of postscript images. Note that you +% can specify the |draft| or |final| option for the graphics package +% separate from the global options of the document class. +% +% The |ua-thesis| class is designed to create a |.dvi| file that strictly +% adheres to the required page margins. The printer hardware or the +% driver implementation, however, may have tolerances that cause the image +% to shift on the page. This can be corrected by using |\hoffset| +% and |\voffset|. The example below works well with the current printers +% in the Math Department. +% +% You don't need to use |\chapter*{Dedication}| for the Dedication if you +% don't like the heading. You can simply start a new page with |\newpage|, +% but then you are completely responsible for the formatting of that page, +% including the switch to double-spaced printing as is officially required +% (this can be done, for example, by using |\doublespaced|). +% +% \begin{verbatim} +% \documentclass[draft]{ua-thesis} +% \usepackage[final]{graphics} +% +% \hoffset -2.1mm +% +% \director{Advisor's Name} +% \date{1996} +% +% \title{This is a Doctoral Dissertation} +% \author{Your Name} +% +% \begin{document} +% +% \maketitle +% +% \chapter*{Acknowledgments} +% Acknowledgments go here. +% +% \chapter*{Dedication} +% Dedicated to the Fundamental Theorem of Calculus. +% +% \tableofcontents +% \listoffigures +% \listoftables +% +% \begin{abstract} +% This is the abstract. +% \end{abstract} +% +% \include{chapter1} +% \include{chapter2} +% \appendix +% \include{appendix} +% +% \begin{thebibliography}{99} +% And the bibliography goes here. +% \end{thebibliography} +% +% \end{document} +% \end{verbatim} +% +% \subsubsection{A Masters Thesis} +% +% This thesis is copyrighted, but does not have Acknowledgments or a +% Dedication. It is written by a student in the Department of +% Mathematics. +% +% \begin{verbatim} +% \documentclass[final]{ua-thesis} +% +% \hoffset -2.1mm +% +% \director{Advisor's Name} +% \directortitle{Professor of Mathematics} +% \degree{Master of Science} +% \degreeabbrev{M.S.} +% \department{Department of Mathematics} +% \date{1996} +% +% \title{This is a Masters Thesis} +% \author{Your Name} +% \copyrightholder{Your Name 1996} +% +% \begin{document} +% +% \maketitle +% \tableofcontents +% \listoffigures +% \listoftables +% +% \begin{abstract} +% This is the abstract. +% \end{abstract} +% +% \include{chapter1} +% \include{chapter2} +% \appendix +% \include{appendix} +% +% \begin{thebibliography}{99} +% And the bibliography goes here. +% \end{thebibliography} +% +% \end{document} +% \end{verbatim} +% +% \subsection{The Files and Further Documentation} +% +% Currently, the sources and all documentation are contained in the +% following three files. +% \begin{description} +% +% \item[\texttt{ua-classes.dtx}] +% User guide and documented source code. The document you are reading has +% been obtained by running |latex ua-classes.dtx|. +% +% \item[\texttt{ua-classes.ins}] +% The installation file. Running |latex ua-classes.ins| will +% generate the class files |ua-thesis.cls| and |my-thesis.cls| as well +% as the title page packages +% |ua-title.sty| and |my-title.sty| from the universal source file +% |ua-classes.dtx|. +% +% \item[\texttt{ua-example.tex}] +% An example dissertation generated from the official Manual for Theses and +% Dissertations by the Graduate College. The file has been obtained via +% the web and manually converted into \LaTeX. It both serves as an example +% and contains the official formating instructions as of May 1996. Be sure +% to check for changes before you submit your dissertation. +% +% \end{description} +% +% +% \subsection{Bugs and Changes} +% +% All changes and bug fixes must be done in the file |ua-classes.dtx|, +% and \emph{not} in the files generated by the docstrip utility. Moreover, +% they must be clearly annotated with a date, name and comments explaining +% each change. +% +% +% \section{The Code} +% +% This section contains a commented listing of the source code. +% It is intended for \TeX perts to facilitate alterations and +% debugging (hopefully the latter will not become necessary). +% +% \subsection{The Identification Part} +% +% \begin{macrocode} +\NeedsTeXFormat{LaTeX2e} +%<*ua-thesis> +\ProvidesClass{ua-thesis} + [1997/03/08 UA Thesis Class] +%</ua-thesis> +%<*my-thesis> +\ProvidesClass{my-thesis} + [1997/03/08 My Private Thesis Class] +%</my-thesis> +%<*ua-title> +\ProvidesPackage{ua-title}[1997/03/08] +%</ua-title> +%<*my-title> +\ProvidesPackage{my-title}[1997/03/08] +%</my-title> +% \end{macrocode} +% +% \subsection{Package Options} +% +% We pass the global package options through to the underlying +% document class. In the |ua-thesis| class we also keep track of +% whether the |draft| or |final| option is switched on because +% we will link certain document features (see Section 1) to +% this option. +% \begin{macrocode} +%<*ua-thesis> +\newif\iffinal@ +\DeclareOption{final}{% + \final@true + \PassOptionsToClass{final}{report}} +\DeclareOption{draft}{% + \final@false + \PassOptionsToClass{draft}{report}} +\ExecuteOptions{draft} +\DeclareOption*{\PassOptionsToClass{\CurrentOption}{report}} +\ProcessOptions +%</ua-thesis> +% \end{macrocode} +% In the |my-thesis| class, nothing particular happens. +% \begin{macrocode} +%<*my-thesis> +\DeclareOption*{\PassOptionsToClass{\CurrentOption}{amsbook}} +\ProcessOptions +%</my-thesis> +% \end{macrocode} +% +% \subsection{The Underlying Document Classes} +% +% The official |ua-thesis| class is based on the standard |report| +% document class. We load it with the |12pt| option as default, +% which is smallest size allowed. We have to load the +% packages of the AMS math bundle explicitly. +% Added 1997/3/8: In fact, even |ua-thesis| breaks with old versions +% of the AMS macros, so we add a release date to |\RequirePackage|. +% \begin{macrocode} +%<*ua-thesis> +\LoadClass[12pt]{report} +\RequirePackage[reqno]{amsmath}[1996/10/24] +\RequirePackage{amsfonts}[1996/10/24] +\RequirePackage{amsthm}[1996/10/24] +\RequirePackage{ua-title} +%</ua-thesis> +% \end{macrocode} +% We want the equation numbers on the right, thus the |reqno| option. +% +% The |my-thesis| class is based on the |amsbook| class +% with modifications adopted from the |pcms-l| package, also by the +% AMS. The packages of the AMS math bundle are loaded by default from +% within |amsbook|. Added 1996/12/05: The updated version works only +% with the new release of the AMS macros, dated 1996/10/24. +% \begin{macrocode} +%<*my-thesis> +\LoadClass[reqno]{amsbook}[1996/10/24] +\RequirePackage{my-title} +%</my-thesis> +% \end{macrocode} +% +% \subsection{General Style Settings for \texttt{ua-thesis}} +% +% Redefine the name of the Table of Contents and the References +% according to the Graduate College regulations. +% We also have to redefine |\listfigurename| and |\listtablename| with +% |\def| (although the names are not changed), +% otherwise they have the wrong status with respect to the \TeX +% internals |\outer| and |\long|, and the |\ifx| statements in the +% |\@chapterstar| macro won't work. +% \begin{macrocode} +%<*ua-thesis> +\def\contentsname{Table of Contents} +\def\bibname{References} +\def\dedicationname{Dedication} +\def\listfigurename{List of Figures} +\def\listtablename{List of Tables} +% \end{macrocode} +% Set the page margins as required by the Graduate College: Top margin is +% $1.5$in, bottom margin is $1$in, left margin is $1.5$in and the right +% margin is $1$in. We grant an extra $0.2$in to the bottom margin to allow +% for printer tolerances and to account for characters that extend below +% the base line (e.g.\ the character ``y''). +% \begin{macrocode} +\topmargin 0in +\headheight \baselineskip +\headsep 0.6in +\addtolength{\headsep}{-\headheight} +\footskip 0in +\textheight \paperheight +\addtolength{\textheight}{-2.7in} +\oddsidemargin 0.5in +\evensidemargin 0.5in +\marginparwidth 0in +\marginparsep 0in +\textwidth \paperwidth +\addtolength{\textwidth}{-2.5in} +% \end{macrocode} +% Macros to switch from single-spaced to double-spaced printing. +% The command |\doublespaced| takes only effect when it is used +% with the |final| option. +% \begin{macrocode} +\def\singlespaced{\baselineskip=\normalbaselineskip} +\def\doublespaced{\iffinal@ \baselineskip=1.5\normalbaselineskip \fi} +% \end{macrocode} +% Finally, we define the page styles as required. As we are modifying the +% |\topskip| when typesetting chapter headings and when selecting +% page style |continued|, we save the default value and restore +% it on ``normal'' pages. +% \begin{macrocode} +\newlength{\@topskipsave} +\@topskipsave\topskip +% \end{macrocode} +% The page style |topright| is used on normal pages. It puts +% the page number into the top +% header at the right margin of each page. +% \begin{macrocode} +\def\ps@topright{% + \let\@mkboth\@gobbletwo + \topskip\@topskipsave + \def\@oddhead{\normalfont\hfil\thepage} + \let\@evenhead\@oddhead + \def\@evenfoot{} + \def\@oddfoot{}} +% \end{macrocode} +% Page style |continued| is for the second and following pages of +% the Table of Contents, the List of Figures and the List of Tables. +% The macro |\@continued| contains the required heading for those +% pages, e.g.\ ``Table of Contents---Continued''. +% \begin{macrocode} +\def\ps@continued{% + \let\@mkboth\@gobbletwo + \topskip 0.5in + \def\@oddhead{\raisebox{-0.5in}{\@continued}% + \hfil\normalfont\thepage} + \let\@evenhead\@oddhead + \def\@evenfoot{} + \def\@oddfoot{}} +% \end{macrocode} +% The \TeX\ mechanism for starting pages is rather mysterious. There is +% some extra space associated with the variable |\topskip|. However, it +% is not sufficient to just set |\topskip| to zero. One moreover has to +% place a box of zero height onto the page, otherwise \TeX\ inserts extra +% vertical space, and we lose precise control over the placements +% of the layout elements. The following macro is called whenever a +% title page (main title, chapter title, etc.) is started. +% \begin{macrocode} +\def\@notopskip{\topskip\z@ \hrule height\z@} +%</ua-thesis> +% \end{macrocode} +% +% \subsection{Some Style Defaults of the \texttt{my-thesis} Class} +% +% We mostly follow the defaults given by the |amsbook| class, but there +% are few things worth changing. First we add some space between the items +% of a list---we don't have to be too stingy with vertical space. +% The next four lines are copied from |amsbook.cls| with changed definition +% for |\itemsep|. +% \begin{macrocode} +%<*my-thesis> +\def\@listI{\leftmargin\leftmargini \parsep\z@skip + \topsep\listisep \itemsep\topsep + \listparindent\normalparindent} +\let\@listi\@listI +% \end{macrocode} +% Moreover, sections are to be numbered within chapters, and we give the +% Abstract the appearance of an unnumbered chapter. +% \begin{macrocode} +\numberwithin{section}{chapter} +\renewenvironment{abstract}% + {\chapter*{Abstract}}{} +% \end{macrocode} +% We must define a bibliography style to avoid an error message. +% \begin{macrocode} +\bibliographystyle{amsplain} +%</my-thesis> +% \end{macrocode} +% +% \subsection{The Title Page Packages} +% +% The title page macros are put into separate files, so that they can +% be used in conjunction with other document classes, if this is +% desirable. +% +% First some common code that defines the macros for +% various layout elements in the title page(s). The |my-thesis| class +% will not use all of them, but their definition is required anyway to +% assure compatibility with |ua-thesis|. The defaults are set as follows: +% \begin{macrocode} +%<*ua-title|my-title> +\let\@title\@empty +\let\@author\@empty +\let\@copyright\@empty +\def\@thesis{Dissertation} +\def\@department{Graduate Interdisciplinary Program \\ + in Applied Mathematics} +\def\@degree{Doctor of Philosophy} +\def\@degreeabbrev{Ph.D.} +\let\@major\@empty +\let\@director\@empty +\let\@directortitle\@empty +% \end{macrocode} +% In the following, changed |\newcommand| to |\renewcommand| +% because the new release +% of the AMS classes seems to define |\copyrightholder| while the +% old release doesn't (1996/12/05). +% \begin{macrocode} +\def\copyrightholder#1{\gdef\@copyright{#1}} +\newcommand{\thesis} [1]{\gdef\@thesis{#1}} +\newcommand{\department} [1]{\gdef\@department{#1}} +\newcommand{\degree} [1]{\gedf\@degree{#1}} +\newcommand{\degreeabbrev} [1]{\gedf\@degreeabbrev{#1}} +\newcommand{\major} [1]{\gdef\@major{#1}} +\newcommand{\director} [1]{\gdef\@director{#1}} +\newcommand{\directortitle} [1]{\gdef\@directortitle{#1}} +% \end{macrocode} +% We redefine the |\title| and |\author| commands to follow the +% AMS syntax. The optional +% argument allowed in the AMS classes is simply ignored without +% an error message. +% \begin{macrocode} +\renewcommand{\title} [2][]{\gdef\@title{#2}} +\renewcommand{\author}[2][]{\gdef\@author{#2}} +%</ua-title|my-title> +% \end{macrocode} +% +% +% \subsubsection{The Official Title Page} +% +% This macro is largely self-explanatory \ldots +% +% \begin{macrocode} +%<*ua-title> +\def\@SetTitlePage{% + \thispagestyle{empty} + \begingroup + \centering + \@notopskip + \vspace*{1in} + \begingroup + \Large\scshape + \addtolength{\baselineskip}{8pt} + \@title \\ + \endgroup + \vspace*{\stretch{1}} + by \\[5pt] + \@author \\ + \hrule height\z@ + \vspace*{\stretch{2}} + \begingroup + \rule{2in}{0.7pt} \\ + \ifx\@empty\@copyright + \else Copyright \copyright\ \@copyright \\ + \fi + \endgroup + \vspace*{\stretch{2}} + \begingroup +% \end{macrocode} +% The following line sets the inter-word space to twice its original value. +% \begin{macrocode} + \spaceskip1.3\fontdimen2\font plus1.3\fontdimen3\font + A \@thesis\ Submitted to the Faculty of the \\[8pt] + \textsc{\large\@department} \\[8pt] + In Partial Fulfillment of the Requirements \\ + For the Degree of \\[8pt] + \textsc{\large\@degree} + \ifx\@empty\@major + \else \\ + \textsc{\large With a Major in \@major} + \fi \\[8pt] + In the Graduate College \\[8pt] + \textsc{\large The University of Arizona} \\ + \endgroup + \vspace*{\stretch{1}} + \spaced{\@date} + \vspace*{0.5in} + \newpage + \endgroup} +% \end{macrocode} +% To make |\@SetTitlePage| work with standard document classes, we redefine +% |\maketitle| to be |\@SetTitlePage|. This choice will later be +% overridden by the |ua-thesis| class. +% \begin{macrocode} +\let\maketitle\@SetTitlePage +%</ua-title> +% \end{macrocode} +% +% +% \subsubsection{My Title Page} +% +% Here we can simply redefine |\maketitle| directly without the help of +% an auxiliary macro. +% \begin{macrocode} +%<*my-title> +\def\maketitle{% + \cleardoublepage + \thispagestyle{empty} + \begingroup + \centering + \vspace*{\stretch{1}} + \hrule height 1pt + \begingroup + \Huge\bfseries + \addtolength{\baselineskip}{2pt} + \medskip + \@title \\ + \medskip + \endgroup + \hrule height 1pt + \vspace*{\stretch{1}} + \begingroup + \huge \@author \\ + \endgroup + \vspace*{\stretch{1.7}} + \begingroup + \Large + \spaceskip1.3\fontdimen2\font plus1.3\fontdimen3\font + A \@thesis\ Submitted to the Faculty of the \\[8pt] + \textsc{\LARGE\@department} \\[8pt] + In Partial Fulfillment of the Requirements \\ + For the Degree of \\[8pt] + \textsc{\LARGE\@degree} + \ifx\@empty\@major + \else \\ + \textsc{\LARGE With a Major in \@major} + \fi \\[8pt] + In the Graduate College \\[8pt] + \textsc{\LARGE The University of Arizona} \\ + \endgroup + \vspace*{0.8cm} + {\Large\spaced{\@date}} + \newpage + \endgroup} +%</my-title> +% \end{macrocode} +% +% +% \subsubsection{Setting the Date with Spaces Between Digits} +% +% In order to increase the inter-letter space in the date, we resort to +% a technique which is a simplified version of the +% |letterspace| package (by Philip Taylor, described in The +% \LaTeX\ Companion). The macro |\spaced| puts spaces between all the +% characters of its argument. +% \begin{macrocode} +%<*ua-title|my-title> +\def \spaced #1% + {\edef \3{#1}% + {\expandafter \insertsp@ces \3\@nd}% + } +\def \insertsp@ces #1#2\@nd + {\def \1{#1}% + \def \2{#2}% + \1% + \ifx \1\empty \else \ifx \2\empty \else \space \fi \fi + \ifx \2\empty + \let \n@xt = \relax + \else + \futurelet \2\m@kespaceexplicit #2\@nd + \def \n@xt {\expandafter \insertsp@ces \2\@nd}% + \fi + \n@xt + } +\def \m@kespaceexplicit #1#2\@nd % + {\if \2 \def \2{{ }#1#2}\else \def \2{#1#2}\fi} +%</ua-title|my-title> +% \end{macrocode} +% +% +% \subsubsection{Official Approval and Copyright Pages} +% +% This code is specific to the |ua-thesis| class. Here |\maketitle| +% has to invoke the automatic generation of the Approval and the Copyright +% Page, provided that the |final| option is set. +% \begin{macrocode} +%<*ua-thesis> +\def\maketitle{% + \cleardoublepage + \begingroup + \@SetTitlePage + \iffinal@ + \@SetApprovalForm + \@SetAuthorStatement + \fi + \endgroup + \let\maketitle\relax} +% \end{macrocode} +% Make an empty approval page which is eventually to be substituted by +% the official approval page from the Graduate College. This macro is +% only called if the |final| option is set. +% \begin{macrocode} +\def\@SetApprovalForm{% + \pagestyle{topright} + \@notopskip + \vspace*{\fill} + \begin{center} + \Large + Get the official approval page \\ + from the Graduate College \\ + \textsl{before} your final defense. + \end{center} + \vspace*{\fill} + \vspace*{0.5in} + \newpage} +% \end{macrocode} +% Now the Copyright page. The copyright page is also printed only +% with the |final| option in place. +% \begin{macrocode} +\def\@SetAuthorStatement{% + \begingroup + \pagestyle{topright} + \@notopskip + \vspace*{1in} + \begingroup + \centering\large\scshape + Statement by Author \\ + \endgroup + \bigskip\bigskip + \par + This \MakeLowercase{\@thesis} has been submitted in partial + fulfillment of requirements for an advanced degree at The + University of Arizona and is deposited in the University + Library to be made available to borrowers under rules + of the Library. + \bigskip + \par + Brief quotations from this \MakeLowercase{\@thesis} are + allowable without special permission, provided that accurate + acknowledgment of source is made. Requests for permission for + extended quotation from or reproduction of this manuscript in + whole or in part may be granted by the + \ifx\@empty\@copyright + head of the major department or the Dean of the Graduate + College when in his or her judgment the proposed use of + the material is in the interests of scholarship. + In all other instances, however, + permission must be obtained from the author. + \else + copyright holder. + \fi + \par + \vspace*{3\baselineskip} + \begin{flushright} + \scshape + Signed: \underline{\makebox[2.5in][r]{}} + \end{flushright} + \vspace*{\fill} + \ifx\@empty\@directortitle + \else + \begingroup + \centering + \large\scshape + Approval by \@thesis\ Director + \endgroup + \bigskip\bigskip\par + This \MakeLowercase{\@thesis} has been approved + on the date shown below: + \vspace*{3\baselineskip}\par\noindent + \begin{minipage}[t]{0.45\textwidth} + \begin{center} + \underline{\makebox[\textwidth][r]{}} \\ + \@director \\ + \@directortitle + \end{center} + \end{minipage}% + \hfill% + \begin{minipage}[t]{0.45\textwidth} + \begin{center} + \underline{\makebox[\textwidth][r]{}} \\ + Date + \end{center} + \end{minipage} + \fi + \vspace*{0.5in} + \newpage + \endgroup} +% \end{macrocode} +% +% \subsubsection{Abstract and Special Abstract} +% +% Setting the abstract in the official thesis class +% is tricky. Since we have to typeset it twice, for +% the regular and the special abstract, and we want to keep the regular +% \LaTeX\ syntax of having an |abstract| environment, we somehow have to +% save the body of the abstract environment for further processing. +% This is quite difficult to do in \TeX, but fortunately the |amsmath| +% package has solved this problem for us. It defines the internal macro +% |\collect@body| which takes a single argument, namely the name of +% a macro which does the processing. This macro is then called by +% |\collect@body|, and given the contents of the environment body as +% its argument. We redefine these macros here, mainly for the reason that +% we want the auxiliary macros |\collect@@body| +% and |\Addto@envbody| to be defined with +% |\long\def|, so that the abstract can have more than one paragraph. +% We capitalize all macros not to interfere with the |amsmath| package +% (actually, our change would only change |amsmath|s response to +% errors, not its behavior with correct code). +% \begin{macrocode} +\long\def\Addto@envbody#1{\@envbody\@xp{\the\@envbody#1}} +\def\Collect@body#1{% + \@envbody{}% + \def\process@envbody{% + \@xp#1\@xp{\the\@envbody}% + }% + \@xp\let\csname\@currenvir\endcsname\Collect@@body + \csname\@currenvir\endcsname +} +\long\def\Collect@@body#1\end#2{% + \def\@tempa{#2}% + \ifx\@tempa\@currenvir + \Addto@envbody{#1}% + \@xp\edef\csname\@currenvir\endcsname{% + \@nx\process@envbody\@nx\end{\@tempa}% + }% + \else + \Addto@envbody{#1\end{#2}}% + \fi + \csname\@currenvir\endcsname +} +% \end{macrocode} +% The details of the above are explained in |amsmath.dtx|. For us it +% is mainly a convenience, and the remainder of the abstract +% macro can be coded in a very elegant way. +% \begin{macrocode} +\renewenvironment{abstract}{% + \Collect@body\@SetAbstract}{} +% \end{macrocode} +% Now the macro |\@SetAbstract|, which actually does the work. First +% we typeset the regular abstract. +% \begin{macrocode} +\long\def\@SetAbstract#1{% + \chapter*{Abstract} + #1 + \clearpage +% \end{macrocode} +% Then the special abstract. We typeset it only in the final version. Note +% that we have to save the page counter at the beginning of the special +% abstract, so that it doesn't interfere with the page numbering of the +% main document. +% \begin{macrocode} + \iffinal@ + \begingroup + \clearpage + \newcounter{s@avepageno} + \setcounter{s@avepageno}{\value{page}} + \setcounter{page}{1} + \thispagestyle{empty} + \@notopskip + \begingroup + \centering + \large\textsc + \@title \\ + \bigskip + \normalfont\normalsize + \@author, \@degreeabbrev \\ + The University of Arizona, \@date \\ + \endgroup + \bigskip + \noindent Director: \@director \par + \bigskip\bigskip + #1 + \endgroup + \clearpage + \setcounter{page}{\value{s@avepageno}} + \fi} +% \end{macrocode} +% +% +% \subsection{The Sectioning Commands} +% +% \subsubsection{Chapter Headings in the Official Format} +% +% The |\chapter| macro is standard code. It calls |\@chapter| for +% numbered chapters, and |\@chapterstar| for unnumbered ones. +% \begin{macrocode} +\def\chapter{% + \clearpage + \global\@topnum\z@ + \@afterindentfalse + \secdef\@chapter\@chapterstar} +% \end{macrocode} +% For numbered chapters we do all the usual things: Set the page style in +% case it has been modified previously, increment the chapter counter, +% create the Table of Contents entry and add extra space into the +% List of Figures and List of Tables. +% \begin{macrocode} +\def\@chapter[#1]#2{% + \pagestyle{topright} + \refstepcounter{chapter}% + \typeout{\@chapapp \space \thechapter} + \addcontentsline{toc}{chapter}% + {\protect\chapterline{\@chapapp\ \thechapter}#1} + \addtocontents{lof}{\protect\addvspace{\medskipamount}} + \addtocontents{lot}{\protect\addvspace{\medskipamount}} +% \end{macrocode} +% Then we typeset the chapter heading. +% \begin{macrocode} + \begingroup + \@notopskip + \centering + \vspace*{0.25in} + \textbf{\@chapapp\ \thechapter} \\ + \medskip + \Large\textsc{#2} \par + \endgroup + \vspace*{2\normalbaselineskip} + \@afterheading + \doublespaced} +% \end{macrocode} +% Unnumbered chapters are more tricky. Several explicitly format decisions +% have to be made to typeset all the special ``chapters'' in the +% front matter of the dissertation according to the official requirements. +% +% The following rules are implemented: The Dedication is typeset +% double-spaced. The Table of Contents, List of Figures and List of Tables +% must be get pagestyle |continued| and be single-spaced. In all other +% cases pagestyle |topright| is selected. +% Only those unnumbered chapters that +% come after the Table of Contents will get an entry in the Table of +% Contents. An arbitrary unnumbered chapter that comes after the +% Table of Contents will be double-spaced, the exception is the References, +% which are single-spaced. If an unnumbered chapter comes before the +% Table of Contents, no explicit decision between single and double-spaced +% is made. The effect is that the Acknowledgments will be single-spaced, +% provided they are placed in the officially required order. +% \begin{macrocode} +\def\@chapterstar#1{% + \typeout{#1} + \edef\1{#1} + \ifx \dedicationname\1 + \doublespaced + \else + \ifx \contentsname\1 + \@specialhead\1 + \singlespaced + \let\tableofcontents\relax + \else + \ifx \listfigurename\1 + \@specialhead\1 + \@tocentry\1 + \singlespaced + \else + \ifx \listtablename\1 + \@specialhead\1 + \@tocentry\1 + \singlespaced + \else + \pagestyle{topright} + \ifx \tableofcontents\relax + \@tocentry\1 + \ifx \bibname\1 \singlespaced \else \doublespaced \fi + \fi\fi\fi\fi\fi +% \end{macrocode} +% And this is the code to typeset the heading. +% \begin{macrocode} + \begingroup + \@notopskip + \centering + \Large\textsc{#1} \par + \endgroup + \vspace*{2\normalbaselineskip} + \@afterheading} +% \end{macrocode} +% The following macro creates the Table of Contents entry for unnumbered +% chapters. +% \begin{macrocode} +\def\@tocentry#1{% + \addcontentsline{toc}{chapter}{#1} + \addtocontents{lof}{\protect\addvspace{\medskipamount}} + \addtocontents{lof}{\protect\addvspace{\medskipamount}}} +% \end{macrocode} +% And this one switches to pagestyle |continued| and defines the +% extra part of the page heading. +% \begin{macrocode} +\def\@specialhead#1{% + \gdef\@continued{\normalsize\scshape#1---\slshape Continued} + \pagestyle{continued} + \thispagestyle{topright}} +%</ua-thesis> +% \end{macrocode} +% +% \subsubsection{Chapter Headings in the Un-Official Format} +% +% The following code for chapter headings is taken from the +% |pcms-l| class by the AMS. It is slightly simplified +% because we don't have to deal with different ``lectures'' and +% multiple authors. +% \begin{macrocode} +%<*my-thesis> +\def\chapter{\cleardoublepage \pagestyle{headings}% + \setcounter{section}0\relax + \thispagestyle{plain}% + \global\@topnum\z@ + \@afterindentfalse \secdef\@chapter\@schapter} +% +\def\@chapter[#1]#2{\refstepcounter{chapter}% + \ifnum \c@secnumdepth <\z@ \let\thechapter\@empty\fi + \let\@secnumber\thechapter + \typeout{\chaptername\space\thechapter}% + \addcontentsline{toc}{chapter}{% + \protect\numberline{% + \ifx\thechapter\@empty\else\chaptername\ \thechapter.\fi}#1}% + \chaptermark{#1}% + \addtocontents{lof}{\protect\addvspace{10\p@}}% + \addtocontents{lot}{\protect\addvspace{10\p@}}% + \@makechapterhead{#2}\@afterheading} +% +\def\@schapter#1{\typeout{#1}% + \@ifnotempty{#1}{\addcontentsline{toc}{chapter}{#1}}% + \let\@secnumber\empty + \chaptermark{#1}% + \addtocontents{lof}{\protect\addvspace{10\p@}}% + \addtocontents{lot}{\protect\addvspace{10\p@}}% + \@makeschapterhead{#1}\@afterheading} +% \end{macrocode} +% For typesetting the chapter head we fixed one problem with +% |pcms-l|: The first |\vspace| was originally achieved +% through modifying |\topskip|. However, for mysterious reasons, +% the modification is reset to the default whenever floats are defined +% on the first page of a chapter. +% \begin{macrocode} +\def\@makechapterhead#1{\begingroup + \vspace*{37pt} + \ifodd\c@page\raggedleft\else\raggedright\fi + \ifnum\c@secnumdepth>\m@ne + \leavevmode + {\Large\bfseries + \uppercase\@xp{\chaptername}\enspace + {\LARGE\bfseries\thechapter\par}}\skip@34\p@ + \advance\skip@-\normalbaselineskip + \vskip\skip@ {\huge\bfseries #1\par}\fi + \endgroup + \skip@34\p@ \advance\skip@-\normalbaselineskip + \vskip\skip@ } +% \end{macrocode} +% And the chapter head for unnumbered chapters: +% \begin{macrocode} +% +\def\@makeschapterhead#1{% + \vtop to 8pc{\vfill + \ifodd\c@page\raggedleft\else\raggedright\fi + {\huge\bfseries #1\par}% +}%\endgroup +\skip@34\p@\advance\skip@-\normalbaselineskip + \vskip\skip@ } +%</my-thesis> +% \end{macrocode} +% +% \subsubsection{Section, Subsections etc.} +% +% Here we follow literally the |pcms-l| settings, both for |ua-thesis| and +% |my-thesis|. The appearance is similar to the |report| class, but the +% type sizes are scaled down one step, which looks less excessive. +% \begin{macrocode} +%<*ua-thesis|my-thesis> +\def\section{\@startsection{section}{1}% + \z@{-1\baselineskip\@plus-.75\baselineskip}{.5\baselineskip}% + {\large\bfseries}} +% +\def\subsection{\@startsection{subsection}{2}% + \z@{-.75\baselineskip\@plus-.5\baselineskip}{.5\baselineskip}% + {\normalfont\bfseries}} +% +\def\subsubsection{\@startsection{subsubsection}{3}% + \z@{.5\baselineskip\@plus.5\baselineskip}{-5\p@}% + {\normalfont\itshape}} +% \end{macrocode} +% The same for the appearance of theorems, remarks, definitions and +% proofs. Directly from |pcms-l|. +% +% Changed on 1996/12/05: +% The following four macros are all +% taken from the October 1996 release from |pcms-l|, because the +% new release of |amsthm| breaks these macros. No attempt is +% made to be compatible with the old version. +% \begin{macrocode} +\def\th@plain{% + \let\thm@indent\noindent + \thm@headfont{\bfseries}% heading font bold + \thm@notefont{\mdseries\upshape} + \thm@preskip.5\baselineskip\@plus.2\baselineskip + \@minus.2\baselineskip + \thm@postskip\thm@preskip + \itshape +} +\def\th@remark{% + \let\thm@indent\noindent + \thm@headfont{\bfseries}% heading font bold + \thm@notefont{\mdseries\upshape}% + \thm@preskip.5\baselineskip\@plus.2\baselineskip + \@minus.2\baselineskip + \thm@postskip\thm@preskip + \upshape +} +\def\th@definition{% + \let\thm@indent\noindent + \thm@headfont{\bfseries}% heading font bold + \thm@notefont{\mdseries\upshape}% + \thm@preskip.5\baselineskip\@plus.2\baselineskip + \@minus.2\baselineskip + \thm@postskip\thm@preskip + \upshape +} +\renewenvironment{proof}[1][\proofname]{\par \normalfont + \topsep6\p@\@plus6\p@ \trivlist \itemindent\z@ + \item[\hskip\labelsep\bfseries + #1\@addpunct{.}]\ignorespaces +}{% + \qed\endtrivlist +} +%</ua-thesis|my-thesis> +% \end{macrocode} +% +% +% \subsection{Captions, Headings etc.} +% +% In |ua-thesis| we redefine |\@makecaption| to change the font in captions +% for figures and tables. +% \begin{macrocode} +%<*ua-thesis> +\long\def\@makecaption#1#2{% + \vskip\abovecaptionskip + \sbox\@tempboxa{\textsc{#1}. #2}% + \ifdim \wd\@tempboxa >\hsize + \textsc{#1}. #2\par + \else + \global \@minipagefalse + \hb@xt@\hsize{\hfil\box\@tempboxa\hfil}% + \fi + \vskip\belowcaptionskip} +%</ua-thesis> +% \end{macrocode} +% The corresponding changes for |my-thesis|, taken from |pcms-l|. The +% internals work differently than with the |report| class. Changed +% 1997/3/8: The internal font names in the |amsthm| package have +% changed with the October 1996 release. Fixed the following two +% lines. +% \begin{macrocode} +%<*my-thesis> +\def\@captionheadfont{\bfseries} +\def\@captionfont{\footnotesize\mdseries} +% \end{macrocode} +% Added 1997/3/8: We assume that both table and figure captions are +% placed below the body of the figure/table. Thus we have to override +% amsbooks explicit assumption that table captions are placed above a +% table. The following code is copied from |amsbook| and modified +% accordingly. +% \begin{macrocode} +\long\def\@makecaption#1#2{% + \setbox\@tempboxa\vbox{\color@setgroup + \advance\hsize-2\captionindent\noindent + \@captionfont\@captionheadfont#1\@xp\@ifnotempty\@xp + {\@cdr#2\@nil}{.\@captionfont\upshape\enspace#2}% + \unskip\kern-2\captionindent\par + \global\setbox\@ne\lastbox\color@endgroup}% + \ifhbox\@ne % the normal case + \setbox\@ne\hbox{\unhbox\@ne\unskip\unskip\unpenalty\unkern}% + \fi + \ifdim\wd\@tempboxa=\z@ % this means caption will fit on one line + \setbox\@ne\hbox to\columnwidth{\hss\kern-2\captionindent\box\@ne\hss}% + \else % tempboxa contained more than one line + \setbox\@ne\vbox{\unvbox\@tempboxa\parskip\z@skip + \noindent\unhbox\@ne\advance\hsize-2\captionindent\par}% +\fi + \addvspace\abovecaptionskip + \moveright\captionindent\box\@ne +\relax +} +% \end{macrocode} +% In |my-thesis| we have page headers. Their format +% is again directly taken from the |pcms-l| class. +% \begin{macrocode} +\def\ps@plain{\ps@empty + \def\@oddfoot{\normalfont\footnotesize\bfseries \hfil\thepage\hfil}% + \let\@evenfoot\@oddfoot} +\def\ps@headings{\ps@empty + \def\@evenhead{\normalfont\footnotesize\bfseries + \rlap{\thepage}\hfil \leftmark{}{}\hfil}% + \def\@oddhead{\normalfont\footnotesize\bfseries \hfil + \rightmark{}{}\hfil \llap{\thepage}}% + \let\@mkboth\markboth + \def\partmark{\@secmark\markboth\partrunhead\partname}% + \def\chaptermark{% + \@secmark\markboth\chapterrunhead{}}% + \def\sectionmark{% + \@secmark\markright\sectionrunhead\sectionname}% +} +% \end{macrocode} +% Added following two lines on 1996/12/05 to have the page number on the +% second page, which is otherwise empty, appear in bold face. +% \begin{macrocode} +\pagestyle{headings} +\chaptermark{} +\def\partrunhead#1#2#3{% + \@ifnotempty{#2}{{#1 #2}\@ifnotempty{#3}{. }}% + \def\@tempa{#3}% + \ifx\@empty\@tempa\else\@tempa\fi} +\let\chapterrunhead\partrunhead +\let\sectionrunhead\partrunhead +% \end{macrocode} +% The Bibliography style from |pcms-l|, it is less crowded than the +% original |amsbook| format. +% \begin{macrocode} +\def\thebibliography#1{ + \chapter*\bibname + \markboth{\bibname}{\bibname}% + \normalsize\labelsep .5em\relax + \list{\@arabic\c@enumi.}{\settowidth\labelwidth{\@biblabel{#1}}% + \leftmargin\labelwidth + \advance\leftmargin\labelsep + \bibsetup\relax + \usecounter{enumi}}\sloppy + \clubpenalty9999 \widowpenalty\clubpenalty \sfcode`\.\@m} +% \end{macrocode} +% And, lastly, the index macro from |pcms-l|, which I haven't +% tested yet. Let's hope it works. +% \begin{macrocode} +\def\theindex{\cleardoublepage +\@restonecoltrue\if@twocolumn\@restonecolfalse\fi +\columnseprule \z@ \columnsep 35pt +\def\indexchap{\@startsection + {chapter}{1}{\z@}{8pc}{34pt}% + {\raggedright + \huge\bfseries}}% + \twocolumn[\indexchap*{\indexname}] + \@mkboth{{\indexname}}{{\indexname}}% + \thispagestyle{plain}\let\item\@idxitem\parindent\z@ + \footnotesize\parskip\z@ plus .3pt\relax\let\item\@idxitem} +%</my-thesis> +% \end{macrocode} +% +% +% \subsection{The Table of Contents} +% +% Modifying the design of the Table of Contents is slightly tricky. An +% additional complication on our case is that the |amsbook| class which is +% the base for |my-thesis| considerably modifies the internals of the +% contents mechanism. Therefore the code for the two classes is quite +% different. +% +% \subsubsection{The Official Table of Contents} +% +% At the beginning of the Document we compute the width of the boldfaced +% number 999 which we take as the maximum width of a page number in the +% Table of Contents. Note that we have to use |\AtBeginDocument| to avoid +% typesetting anything in the preamble of the document as this will +% potentially interfere with packages that modify fonts. +% \begin{macrocode} +%<*ua-thesis> +\newlength{\@auxlength} +\AtBeginDocument{% + \settowidth{\@auxlength}{\textbf{999}} + \renewcommand{\@pnumwidth}{\@auxlength}} +% \end{macrocode} +% We want all section numbers to end with a period, and modify the +% definition of |\numberline| accordingly. +% \begin{macrocode} +\def\numberline#1{\hb@xt@\@tempdima{#1.\hfil}} +% \end{macrocode} +% The same for chapter entries; in case the chapter heading takes more than +% one line, we set |\hangindent| to indent the second and following lines. +% \begin{macrocode} +\def\chapterline#1{% + \advance\hangindent\@tempdima + \hbox{#1.\space\space\hfil}} +% \end{macrocode} +% The macro |\l@chapter| is called to set the Table of Contents line for a +% chapter entry. +% \begin{macrocode} +\renewcommand*\l@chapter[2]{% + \addpenalty{-\@highpenalty}% + \vskip 1.0em \@plus\p@ + \begingroup + \advance\hangindent 1.5em + \@dottedtocline{0}{0pt}{0pt}{\scshape #1}{\bfseries #2} + \endgroup + \penalty\@highpenalty} +% \end{macrocode} +% And the corresponding macros for figures and tables. +% \begin{macrocode} +\renewcommand*\l@figure[2]{% + \@dottedtocline{1}{0pt}{30pt}{\textsc{Figure} #1}{#2}} +\renewcommand*\l@table[2]{% + \@dottedtocline{1}{0pt}{30pt}{\textsc{Table} #1}{#2}} +%</ua-thesis> +% \end{macrocode} +% +% +% \subsubsection{My Table of Contents} +% +% The |amsbook| class automatically calculates the width of the section +% numbers which go into the Table of Contents. Therefore we must +% manually compute the amount of indentation for subsection entries and +% subsubsection headings. This is done at the beginning of the document, +% after |amsbook| has read the number widths found in the previous +% \LaTeX\ run from the |.aux| file. +% \begin{macrocode} +%<*my-thesis> +\newlength{\@subsectionindent} +\newlength{\@subsubsectionindent} +\AtBeginDocument{% + \setlength{\@subsectionindent}{1pc} + \addtolength{\@subsectionindent}{\csname r@tocindent1\endcsname} + \setlength{\@subsubsectionindent}{\@subsectionindent} + \addtolength{\@subsubsectionindent}{\csname r@tocindent2\endcsname}} +% \end{macrocode} +% Now we modify some other style parameters. We want subsections, but +% not subsubsections to into the Table of Contents. If subsubsections +% should appear in the Table of Contents, the command +% |\setcounter{tocdepth}{4}| can be used in the preamble of the document. +% We also need to make some minor spacing modifications. +% \begin{macrocode} +\setcounter{tocdepth}{3} +\renewcommand{\@pnumwidth}{2em} +\def\numberline#1{\hbox{#1\quad}} +% \end{macrocode} +% Finally we change |\l@chapter| to get a boldface font for chapter +% entries, and redefine the subsection macros to use the indentation +% calculated above. +% \begin{macrocode} +\renewcommand*{\l@chapter}[2]{% + \@tocline{0}{10pt plus4pt}{0pt}{1pc}{\bfseries}{#1}{\bfseries #2}} +\def\l@subsection{\@tocline{2}{0pt}{\@subsectionindent}{}{}} +\def\l@subsubsection{\@tocline{3}{0pt}{\@subsubsectionindent}{}{}} +% \end{macrocode} +% We don't want a List of Figures or a List of Tables. +% \begin{macrocode} +\let\listoffigures\relax +\let\listoftables\relax +%</my-thesis> +% \end{macrocode} +% +% \Finale +\endinput diff --git a/Master/texmf-dist/source/latex/uaclasses/ua-classes.ins b/Master/texmf-dist/source/latex/uaclasses/ua-classes.ins new file mode 100644 index 00000000000..ae76a731131 --- /dev/null +++ b/Master/texmf-dist/source/latex/uaclasses/ua-classes.ins @@ -0,0 +1,22 @@ +%% +%% Installation file for UA Classes +%% +%% by Marcel Oliver, 1996/05/09 +%% +\def\batchfile{ua-classes.ins} +\input docstrip.tex +\preamble +\endpreamble +\keepsilent + +\generateFile{ua-thesis.cls}{t}{% + \from{ua-classes.dtx}{ua-thesis}} + +\generateFile{my-thesis.cls}{t}{% + \from{ua-classes.dtx}{my-thesis}} + +\generateFile{ua-title.sty}{t}{% + \from{ua-classes.dtx}{ua-title}} + +\generateFile{my-title.sty}{t}{% + \from{ua-classes.dtx}{my-title}}
\ No newline at end of file |