41d499fc67060c2afb085da383cc1afa223008f1
[drexel-thesis.git] / drexel-thesis.dtx
1 % \def\fileversion{0.12}
2 % \def\filedate{2010/06/17}
3 % \iffalse meta-comment
4 %<*driver>
5 \ProvidesFile{drexel-thesis.dtx}
6 \documentclass{ltxdoc}
7 %</driver>
8 %<*class|driver>
9 \def\fileversion{0.12}
10 \def\filedate{2010/06/17}
11 %</class|driver>
12 %
13 % Copyright (C) 2010  C.Y. Ip
14 %                     Christopher D. Cera
15 %                     Christopher S. Dahn
16 %                     Daniel J. Cross
17 %                     David T. McWherter
18 %                     Evan Sultanik
19 %                     Jeff Arahamson
20 %                     Mitchell Peabody
21 %                     R. Rojas, E
22 %                     Robert Bernecky
23 %                     T. Tsankov
24 %                     Vincent A. Cicirello
25 %                     W. Trevor King
26 % -------------------------------------------------------
27
28 % This file may be distributed and/or modified under the
29 % conditions of the LaTeX Project Public License, either version 1.3
30 % of this license or (at your option) any later version.
31 % The latest version of this license is in:
32 %
33 %    http://www.latex-project.org/lppl.txt
34 %
35 % and version 1.3 or later is part of all distributions of LaTeX 
36 % version 2003/12/01 or later.
37 %
38 % Docstrip formatting initially based on Scott Pakin's
39 % dtxtut/cskeleton.dtx
40 %   http://www.ctan.org/tex-archive/info/dtxtut/
41 %
42 % \fi
43 %
44 % \iffalse meta-comment
45 %<class>\NeedsTeXFormat{LaTeX2e}
46 %<class>\ProvidesClass{drexel-thesis}
47 %<class> [\filedate\ \fileversion\ Drexel Thesis]
48 %
49 % Code for the .ini driver, see \S 2.1 ``The driver file'' of doc.dtx.
50 %<*driver>
51 \usepackage[colorlinks=true,]{hyperref}
52 \hypersetup{pdfauthor={W. Trevor King et al.}}
53 \hypersetup{pdftitle={drexel-thesis \fileversion\ documentation}}
54 %</driver>
55 % Include some useful commands from |xkeyval|'s |<preamble>|.
56 %<*driver>
57 \usepackage{xcolor}
58 \usepackage{listings}
59 \lstnewenvironment{command}{%
60   \lstset{columns=flexible,frame=single,backgroundcolor=\color{blue!20},%
61     xleftmargin=\fboxsep,xrightmargin=\fboxsep,escapeinside=`',gobble=1}}{}
62 \lstnewenvironment{example}{%
63   \lstset{basicstyle=\footnotesize\ttfamily,columns=flexible,frame=single,%
64     backgroundcolor=\color{yellow!20},xleftmargin=\fboxsep,%
65     xrightmargin=\fboxsep,gobble=1}}{}
66 %</driver>
67 % Define a quick and dirty version of |xkeyval|'s |\DescribeOptions|.
68 %<*driver>
69 \newenvironment{option}[1]{\begin{macro}{#1}}
70                           {\end{macro}}
71 %</driver>
72 % Some commonly used abbreviations from |classes.dtx|.
73 %<*driver>
74 \newcommand*{\Lopt}[1]{\textsf {#1}}
75 \newcommand*{\file}[1]{\texttt {#1}}
76 \newcommand*{\Lcount}[1]{\textsl {\small#1}}
77 \newcommand*{\pstyle}[1]{\textsl {#1}}
78 %</driver>
79 % Provide easy access to the @ character.  Note that this, like the
80 % short-verbatim markers ||, does not work in |\changes| sections
81 % because of the way they are cached to the glossary file.  If you
82 % find a way to make them work there, let me know :).
83 %<*driver>
84 \newcommand*{\textat}{\makeatletter @ \makeatother}
85 %</driver>
86 %<*driver>
87 \makeatletter
88 \def\DescribeOption#1{\leavevmode\@bsphack
89               \marginpar{\raggedleft\PrintDescribeOption{#1}}%
90               \SpecialOptionIndex{#1}\@esphack\ignorespaces}
91 \def\PrintDescribeOption#1{\strut\emph{option}\\\MacroFont #1\ }
92 \def\SpecialOptionIndex#1{\@bsphack
93     \index{#1\actualchar{\protect\ttfamily#1}
94            (option)\encapchar usage}%
95     \index{options:\levelchar#1\actualchar{\protect\ttfamily#1}\encapchar
96            usage}\@esphack}
97 \def\DescribeOptions#1{\leavevmode\@bsphack
98   \marginpar{\raggedleft\strut\emph{options}%
99   \@for\@tempa:=#1\do{%
100     \\\strut\MacroFont\@tempa\SpecialOptionIndex\@tempa
101   }}\@esphack\ignorespaces}
102 \makeatother
103 %</driver>
104 %<*driver>
105 \EnableCrossrefs
106 \RecordChanges
107 \EnableCrossrefs         
108 \begin{document}
109   \DocInput{drexel-thesis.dtx}
110 \end{document}
111 %</driver>
112 % \fi
113 %
114 % \CheckSum{0}
115 %
116 % \CharacterTable
117 %  {Upper-case    \A\B\C\D\E\F\G\H\I\J\K\L\M\N\O\P\Q\R\S\T\U\V\W\X\Y\Z
118 %   Lower-case    \a\b\c\d\e\f\g\h\i\j\k\l\m\n\o\p\q\r\s\t\u\v\w\x\y\z
119 %   Digits        \0\1\2\3\4\5\6\7\8\9
120 %   Exclamation   \!     Double quote  \"     Hash (number) \#
121 %   Dollar        \$     Percent       \%     Ampersand     \&
122 %   Acute accent  \'     Left paren    \(     Right paren   \)
123 %   Asterisk      \*     Plus          \+     Comma         \,
124 %   Minus         \-     Point         \.     Solidus       \/
125 %   Colon         \:     Semicolon     \;     Less than     \<
126 %   Equals        \=     Greater than  \>     Question mark \?
127 %   Commercial at \@     Left bracket  \[     Backslash     \\
128 %   Right bracket \]     Circumflex    \^     Underscore    \_
129 %   Grave accent  \`     Left brace    \{     Vertical bar  \|
130 %   Right brace   \}     Tilde         \~}
131 %
132 %
133 % \changes{0.1}{2006/01/18}{Rewrite by Daniel J.~Cross}
134 % \changes{0.2}{2010/01/09}{W.~Trevor King transitioned from thesis.cls
135 %   to drexel-thesis.dtx and did a good deal of reorganizing.}
136 % \changes{0.3}{2010/01/13}{W.~Trevor King merged drexelthesis.cls
137 %   developed in the Comp.~Sci.~Department by Jeff Abrahamson,
138 %   Evan Sultanik, C.Y.~Ip, Christopher S.~Dahn, Christopher D.~Cera,
139 %   Mitchell Peabody, David T.~McWherter, and Vincent A.~Cicirello.
140 %   Based on the University of Toronto Thesis \LaTeXe\ Class.  Also
141 %   greatly improved the documentation by incorperating bits of
142 %   the base/*.dtx files.}
143 % \changes{0.4}{2010/02/23}{W.~Trevor King repositioned hyperref
144 %   inclusion for proper hyperref overriding.  The previous
145 %   implementation couldn't handle $\backslash$label for
146 %   $\backslash$paragraph and some other section levels.  The page
147 %   number for the reference was correct, but the link went to the
148 %   label's parent chapter.}
149 % \changes{0.5}{2010/03/03}{W.~Trevor King use hypcap for better
150 %   caption hyperlink anchor placement.}
151 % \changes{0.6}{2010/03/11}{W.~Trevor King fixed
152 %   $\backslash$if$@$final handling.  Previous versions used
153 %   it more like a hypothetical $\backslash$if$@$finalspace.
154 %   Also adjusted theindex to use a listed$@$schapter.}
155 % \changes{0.10}{2010/05/21}{W.~Trevor King added $\backslash$DUT\*
156 %   aliases for all public macros and environments and renamed
157 %   $\backslash$defmonth and $\backslash$defyear to
158 %   $\backslash$DUTmonth and $\backslash$DUTyear for consistency with
159 %   the new aliases.}
160 %
161 % \MakeShortVerb{\|}
162 % \newcommand{\pkg}[1]{\textsf{#1}}
163 % \newcommand{\cls}[1]{\textsf{#1}}
164 % ^^A\newcommand{\BibTeX}{{\scshape Bib}\TeX}
165
166 % \title{The \textsf{drexel-thesis} class\thanks{This document
167 %   corresponds to \textsf{drexel-thesis}~\fileversion, dated \filedate.}}
168 % \author{W.~Trevor King \\\texttt{wking@drexel.edu}
169 %         \and Daniel J.~Cross \and T.~Tsankov \and R.~Rojas.}
170 % \date{\filedate}
171 %
172 % \maketitle
173 %
174 %
175 % \section{Introduction}
176 %
177 % This package defines a \LaTeX\ thesis class for Drexel University
178 % conforming to the
179 % \href{http://www.library.drexel.edu/files/services_documents/thesismanual.pdf}
180 %   {Drexel University Thesis Manual version 2009/06/01}.
181 %
182 % \section{Usage}
183 %
184 % To write a thesis, you load the Drexel thesis definitions by loading
185 % the \pkg{drexel-thesis} class at the beginning of your
186 % \LaTeX\ document with the |\documentclass| command.  For example,
187 % \begin{example}
188 %   \documentclass{drexel-thesis}
189 % \end{example}
190 %
191 % \subsection{Options}
192 %
193 % \DescribeOptions{final,draft}
194 % The default option (selected if not options are passed) is
195 % \Lopt{final} mode, which has all the proper formatting and spacing
196 % for your final product. The other main option is \Lopt{draft} mode,
197 % which reduces all the spacing in the document, so might be helpful
198 % when printing out drafts (saves paper).
199 %
200 % \Lopt{final} mode corresponds to (with Thesis Manual chapter and
201 % verse) \\
202 % \begin{tabular}{r p{0.8\textwidth}}
203 %   \Lopt{oneside} & 1.5 Library Submission Information, Print
204 %     Version: ``All copies must be: \ldots Typed/printed on only one
205 %     side of the page (not double-sided).'' \\
206 %   \Lopt{finalspace} & Assorted single, double, and triple spacing
207 %   directives. \\
208 %   \Lopt{dottedtoc} & From the example on p17.
209 % \end{tabular}
210 %
211 % \Lopt{draft} mode corresponds to \\
212 % \begin{tabular}{r p{0.8\textwidth}}
213 %   \Lopt{twoside} & Save space. \\
214 %   \Lopt{draftspace} & Save space. \\
215 %   \Lopt{dottedtoc} & Might as well be consistent with \Lopt{final}. \\
216 %   \Lopt{mydraftwatermark} & It's good to have a timestamp. \\
217 % \end{tabular}
218 %
219 % \DescribeOption{subfig}
220 % \href{http://www.ctan.org/tex-archive/macros/latex/contrib/subfig/}{\pkg{subfig}}
221 % makes it easy to include and caption multi-part figures.  However,
222 % getting \pkg{subfig} to cooperate with \pkg{floatrow} and
223 % \pkg{tocloft} can be tricky.  If you want to use \pkg{subfig}, just
224 % pass the \Lopt{subfig} option to \cls{drexel-thesis}, and all the
225 % pesky details will be taken care of.  See \S
226 % \ref{sec:better-example} for an example.
227 %
228 % \DescribeOption{finalspace}
229 % Loosen spacing.
230 %
231 % \DescribeOption{draftspace}
232 % Tighten spacing.
233 %
234 % \DescribeOptions{dottedtoc,boldtoc,
235 %                  dottedpart,boldpart,
236 %                  dottedchapter,boldchapter}
237 % These options change how the relevant table of contents lines are
238 % printed.  \LaTeX\ defaults to bold but not dots.  The \Lopt{*toc}
239 % options set all of the types.  For example, \Lopt{boldtoc} is
240 % equivalent to \Lopt{boldchapter,boldpart}.
241 %
242 % \DescribeOption{indenttoc}
243 % The example table of contents in the Manual p17 does not indent
244 % section entries, etc., so neither does \cls{drexel-thesis}.  If you
245 % \emph{do} want pretty, indented TOCs, like the \LaTeX\ defaults pass
246 % \Lopt{indenttoc} to \cls{drexel-thesis}.
247 %
248 % \DescribeOption{blackref}
249 % \Lopt{blackref} colors all \pkg{hyperref} links black, so they won't
250 % stand out in your printed document.
251 %
252 % \DescribeOption{draftwatermark}
253 % \Lopt{draftwatermark} adds ``DRAFT \meta{date}'' watermarks to each
254 % page.  A useful way to remember that the version you're looking at
255 % is not final.  Also helps reviewers tell you what version they're
256 % correcting.  Requires the \pkg{draftmark} package.
257 %
258 % \DescribeOption{mydraftwatermark}
259 % \Lopt{mydraftwatermark} is similar to \Lopt{draftwatermark} but
260 % depends on the possibly more common \pkg{xcolor}, \pkg{eso-pic},
261 % and \pkg{graphicx}.
262 %
263 % \DescribeOption{indentfirst}
264 % \Lopt{indentfirst} indents the first paragraph after sections etc.
265 %
266 %
267 % \subsubsection{Interesting \cls{book} options}
268
269 % \DescribeOption{oneside}
270 % Setup output for one-sided printing.
271 %
272 % \DescribeOption{twoside}
273 % Setup output for two-sided printing.
274 %
275 % \DescribeOption{leqno}
276 % \Lopt{leqno} places the numbering of formulae on the left hand side
277 % instead of the right.
278 %
279 % \DescribeOption{fleqn}
280 % \Lopt{fleqn} typesets displayed formulae left-aligned instead of
281 % centered.
282 %
283 % \DescribeOption{daring}
284 % \Lopt{daring} breaks the official thesis rules in pursuit of a nicer
285 % layout.
286 %
287 %
288 % \subsection{Macros}
289 %
290 % To help deal with name collisions, all \cls{drexel-thesis} macros
291 % have ``secret'' aliases.  For example, |\author| can also be used as
292 % |\DUTauthor|.  This is useful if one of your packages clobbers a
293 % \cls{drexel-thesis} macro, but you still want to use the original.
294 % \begin{example}
295 %   \documentclass{drexel-thesis}
296 %   \renewcommand{\author}[1]{I'm forgetting about your author! Muahahaha!}
297 %   \DUTauthor{Your Name Here}
298 %   ...
299 % \end{example}
300 %
301 % \begin{command}
302 %   `\cs{author}\marg{name}'
303 % \end{command}
304 % \DescribeMacro{\author}
305 % \DescribeMacro{\DUTauthor}
306 % Use this macro to set your full name to \meta{name}, including
307 % your middle initial or name.  For example
308 % \begin{example}
309 %   \name{Richard P. Feynman}
310 % \end{example}
311 % See the Manual \S 3.1 p8.
312 %
313 % \begin{command}
314 %   `\cs{title}\marg{title}'
315 % \end{command}
316 % \DescribeMacro{\title}
317 % \DescribeMacro{\DUTtitle}
318 % Use this macro to set your thesis title to \meta{name}.  For example
319 % \begin{example}
320 %   \title{A New Approach to Quantum Theory}
321 % \end{example}
322 % See the Manual p16.
323 %
324 % \begin{command}
325 %   `\cs{advisor}\marg{name}'
326 % \end{command}
327 % \DescribeMacro{\advisor}
328 % \DescribeMacro{\DUTadvisor}
329 % Use this macro to set your advisor's name to \meta{name}.  For
330 % example
331 % \begin{example}
332 %   \advisor{John A. Wheeler, Ph.D.}
333 % \end{example}
334 % You can set multiple advisors, if appropriate, by calling |\advisor|
335 % multiple times.
336 % \begin{example}
337 %   \advisor{John A. Wheeler, Ph.D.}
338 %   \advisor{Advisor 2}
339 % \end{example}
340 % See the Manual \S 3.1 p8.
341 %
342 % \begin{command}
343 %   `\cs{DUTmonth}\marg{month}'
344 %   `\cs{DUTyear}\marg{year}'
345 % \end{command}
346 % \DescribeMacro{\DUTmonth}
347 % \DescribeMacro{\DUTyear}
348 % Use these macros to set the month with \meta{month} (spelled out)
349 % and year with \meta{year} (four digits) of your thesis defense.  For
350 % example
351 % \begin{example}
352 %   \DUTmonth{June}
353 %   \DUTyear{1942}
354 % \end{example}
355 % See the Manual \S 3.1 p8.
356 % There are no non-|DUT| versions of these commands to avoid
357 % collisions with the plain \TeX\ |\month| and |\year| (see the
358 % \href{http://www.tug.org/utilities/plain/cseq.html#month-rp}{month}
359 % and
360 % \href{http://www.tug.org/utilities/plain/cseq.html#year-rp}{year}
361 % entries in the HTML version of David Bausum's \emph{TeX Reference
362 % Manual}).
363 %
364 % \begin{command}
365 %   `\cs{degree}\marg{degree}'
366 % \end{command}
367 % \DescribeMacro{\degree}
368 % \DescribeMacro{\DUTdegree}
369 % Set your target degree with \meta{degree}.  From the Manual \S 3.1
370 % p8.
371 % \begin{quote}
372 %   Write out the name of the degree for which you are a candidate.
373 %   All Ph.D.\ candidates must use |Doctor of Philosophy|.  All
374 %   Master's degree candidates should use the precise degree name
375 %   (e.g., |Master of Science in Mechanical Engineering|).
376 % \end{quote}
377 % So, for a Ph.D candidate,
378 % \begin{example}
379 %   \degree{Doctor of Philosophy}
380 % \end{example}
381 %
382 % \begin{command}
383 %   `\cs{copyrighttext}\marg{text}'
384 % \end{command}
385 % \DescribeMacro{\copyrighttext}
386 % \DescribeMacro{\DUTcopyrighttext}
387 % Use this macro to set the copyright text to \meta{text}.
388 % The default value is ``All Rights Reserved.''.
389 % \begin{example}
390 %   \copyrighttext{Released to the Public Domain.}
391 % \end{example}
392 % See the Manual \S 3.2 p9.
393 %
394 % \begin{command}
395 %   `\cs{copyrighttextCCBYSA}'
396 % \end{command}
397 % \DescribeMacro{\copyrighttextCCBYSA}
398 % \DescribeMacro{\DUTcopyrighttextCCBYSA}
399 % There are a number of predefined copyright messages for ease of use \\
400 % \begin{tabular}{l l}
401 %   |\copyrighttextCCBYSA| &
402 %     Creative Commons Attribution-ShareAlike License Version 3.0.\\
403 % \end{tabular}
404 %
405 % \begin{command}
406 %   `\cs{tableofcontents}'
407 % \end{command}
408 % \DescribeMacro{\tableofcontents}
409 % \DescribeMacro{\DUTtableofcontents}
410 % Write the table of contents (Manual \S 3.5 p9).  You can control the
411 % verbosity by setting |\tocdepth| according to the following table
412 % (\href{http://www.image.ufl.edu/help/latex/intext.shtml}{source}). \\
413 % \begin{tabular}{l l l}
414 %   Depth in document & Section Command & Depth for |\secnumdepth| Command \\
415 %   -1 & |\part| & 1 \\
416 %    0 & |\chapter| & 2 \\
417 %    1 & |\section| & 3 \\
418 %    2 & |\subsection| & 4 \\
419 %    3 & |\subsubsection| & 5 \\
420 %    4 & |\paragraph| & 6 \\
421 %    5 & |\subparagraph| & 7
422 % \end{tabular} \\
423 % For example, to expose everything down to and including the
424 % |\subsection| level, you would add
425 % \begin{example}
426 %   \setcounter{tocdepth}{2}
427 % \end{example}
428 % to your preamble (the section before |\begin{document}|, not the
429 % |preamble| environment discussed below).
430 %
431 % Note that the Manual \S 3.5 p9 requires ``List chapter titles and at
432 % least the first and second order subdivisions.'', which corresponds
433 % to a |\tocdepth| of at least 2.
434 %
435 % \begin{command}
436 %   `\cs{listoftables}'
437 % \end{command}
438 % \DescribeMacro{\listoftables}
439 % \DescribeMacro{\DUTlistoftables}
440 % Write the List of Tables page (Manual \S 3.6 p10).
441 % Skip if you have no tables in your thesis.
442 %
443 % \begin{command}
444 %   `\cs{listoffigures}'
445 % \end{command}
446 % \DescribeMacro{\listoffigures}
447 % \DescribeMacro{\DUTlistoffigures}
448 % Write the List of Figures page (Manual \S 3.7 p10).
449 % Skip if you have no figures in your thesis.
450 %
451 % \begin{command}
452 %   `\cs{blanklines}\marg{num}'
453 % \end{command}
454 % \DescribeMacro{\blanklines}
455 % \DescribeMacro{\DUTblanklines}
456 % Insert \meta{num} blank lines.  For example
457 % \begin{example}
458 %   \blanklines{2}
459 % \end{example}
460 % The skipped lines are always \emph{single spaced} lines, regardless
461 % of the current line spacing in the environment calling this macro.
462 %
463 % \begin{command}
464 %   `\cs{iffinal}\marg{final-mode-action}\marg{draft-mode-action}'
465 % \end{command}
466 % \DescribeMacro{\iffinal}
467 % \DescribeMacro{\DUTiffinal}
468 % Include \Lopt{final}- or \Lopt{draft}-specific code.
469 % \begin{example}
470 %   We're in \iffinal{final}{draft} mode!
471 % \end{example}
472 %
473 % \begin{command}
474 %   `\cs{ifdaring}\marg{daring-action}\marg{wimpy-action}'
475 % \end{command}
476 % \DescribeMacro{\ifdaring}
477 % \DescribeMacro{\DUTifdaring}
478 % Include \Lopt{daring}-specific code, with wimpy fallbacks.
479 % \begin{example}
480 %   \ifdaring{\singlespacing Muahahahaha!}{mumble mumble}.
481 % \end{example}
482 %
483 %
484 % \subsection{Environments}
485 %
486 % To help deal with name collisions, all \cls{drexel-thesis}
487 % environments have ``secret'' aliases.  For example, |preamble| can
488 % also be used as |DUTpreamble|.  This is useful if one of your
489 % packages clobbers a \cls{drexel-thesis} environment, but you still
490 % want to use the original.
491 % \begin{example}
492 %   \documentclass{drexel-thesis}
493 %   \renewenvironment{preamble}{%
494 %     What preamble?\begingroup\color{white}}{\endgroup}
495 %   \begin{document}
496 %   \begin{DUTpreamble}
497 %   Thwarted again, evil one!
498 %   ...
499 % \end{example}
500 %
501 %
502 % \DescribeEnv{preamble}
503 % \DescribeEnv{DUTpreamble}
504 % Generalize the |\frontmatter| for the thesis, setting up page
505 % numbering, including the title page, copyright page etc.  The
506 % |preamble| environment should contain the following elements
507 % (in order, see the Manual p8)
508 % \begin{itemize}
509 %   \item |dedication| environment (optional)
510 %   \item |acknowledgments| environment (optional)
511 %   \item |\tableofcontents|
512 %   \item |\listoftables|
513 %   \item |\listoffigures|
514 %   \item |abstract| environment
515 % \end{itemize}
516 % This will take care of everything from the title page (Manual \S 3.1),
517 % up through the blank page before the text (Manual \S 3.9).
518 %
519 % \DescribeEnv{dedications}
520 % \DescribeEnv{DUTdedications}
521 % Set the dedications text.
522 % Highlights from the Manual \S 3.3 p9:
523 % \begin{quote}
524 %   The |Dedications| page is optional.
525 % \end{quote}
526 %
527 % \DescribeEnv{acknowledgments}
528 % \DescribeEnv{DUTacknowledgments}
529 % Set the acknowledgments text.
530 % Highlights from the Manual \S 3.4 p9:
531 % \begin{quote}
532 %   The |Acknowledgments| page is optional, but most theses do
533 %   include a brief statement of thanks or recognition of any special
534 %   assistance.
535 % \end{quote}
536 %
537 % \DescribeEnv{abstract}
538 % \DescribeEnv{DUTabstract}
539 % Set the thesis abstract text.  In the Thesis Manual, see \S 3.8
540 % Abstract (p10) for details, p20 for an example.
541 %
542 % Highlights from the Manual:
543 % \begin{quote}
544 %   The abstract is a summary that allows readers to determine the
545 %   value of reading the full thesis.  It should include a statement
546 %   of the problem, an outline of procedures or methods, and a summary
547 %   of results and conclusions.
548 % \end{quote}
549 % \begin{itemize}
550 %   \item Word limits: 600 for a Master's thesis, 350 for a Ph.D.\ thesis.
551 % \end{itemize}
552 %
553 % \DescribeEnv{thesis}
554 % \DescribeEnv{DUTthesis}
555 % Set the thesis text.  In the Thesis Manual, see \S 3.10 Thesis (p11)
556 % for details.
557 %
558 % Highlights from the Manual:
559 % \begin{quote}
560 %   Divide the text into its major parts/chapters/subsections.  No
561 %   fixed arrangement is necessary.  The major parts may contain such
562 %   subjects as introduction, general argument, description of
563 %   experimental procedures, research methods, discussion, summary,
564 %   conclusions, recommendations, and other pertinent topics that are
565 %   necessary for a complete understanding on the part of a
566 %   sophisticated or professional reader.
567 % \end{quote}
568 %
569 % \DescribeEnv{vita}
570 % \DescribeEnv{DUTvita}
571 % Set the thesis vita text (Ph.D.\ only).  See the Manual \S 3.15 p12,
572 % ``Vita'', for details.
573 %
574 % Highlights from the Manual:
575 % \begin{quote}
576 %   The Vita is a biography of the student written in the third person
577 %   in either essay or outline form.  It should include the full name,
578 %   place and date of birth (optional), country of citizenship
579 %   (optional), institutions attended, degrees and honors received,
580 %   titles of publications, teaching and professional experience, and
581 %   other pertinent data.  The Vita must be one page or less.
582 % \end{quote}
583 %
584 %
585 % \subsection{Hints}
586 %
587 %
588 % \subsubsection{Package installation}
589 % \label{sec:dependencies}
590 %
591 % All the packages this class depends on must be installed somewhere
592 % in your texmf tree (they probably already are).  If not, you will
593 % recieve warning messages on compilation such as
594 % \begin{example}
595 %   ! LaTeX Error: File `missing-package.sty' not found.
596 % \end{example}
597 % You should then install the missing package(s) using your operating
598 % systems package manager, or grab the missing package from
599 % \href{http://www.ctan.org/}{CTAN}, and install them following TODO.
600 %
601 %
602 % \subsubsection{Tables and Figures}
603 %
604 % \pkg{drexel-thesis} loads
605 % \href{http://www.ctan.org/tex-archive/macros/latex/required/graphics/}{\pkg{graphicx}}
606 % to define the |\includegraphics| macro,
607 % \href{http://www.ctan.org/tex-archive/macros/latex/required/caption/}{\pkg{caption}}
608 % for pretty caption formatting,
609 % \href{http://www.ctan.org/tex-archive/macros/latex/required/floatrow/}{\pkg{floatrow}}
610 % for placing captions, and
611 % \href{http://www.ctan.org/tex-archive/macros/latex/contrib/oberdiek/}{\pkg{hypcap}}
612 % for placing caption anchors.
613 %
614 % Simple float definitions will look like
615 % \begin{example}
616 %   \begin{table}
617 %      \caption{Some caption text}
618 %      \begin{tabular}{...}
619 %        ...
620 %      \end{tabular}
621 %   \end{table}
622 % \end{example}
623 % or
624 % \begin{example}
625 %   \begin{float}
626 %      \includegraphics{...}
627 %      \caption{Some caption text}
628 %   \end{float}
629 % \end{example}
630 % For more useful float information, see the examples in \S
631 % \ref{sec:better-example-part} and the
632 % \href{http://en.wikibooks.org/wiki/LaTeX/Floats,_Figures_and_Captions}
633 %   {\LaTeX\ wikibook page}.
634 %
635 %
636 % \subsubsection{Citations}
637 %
638 % I highly recommend using \BibTeX\ and
639 % \href{http://www.ctan.org/tex-archive/macros/latex/contrib/natbib/}{\pkg{natbib}}.
640 % See \S \ref{sec:better-example} for a simple example.
641 %
642 % Suggested options:\\
643 % \begin{tabular}{r p{0.8\textwidth}}
644 %   |super| & selects citations in superscript mode. \\
645 %   |sort&compress| & automatically sorts and compresses compound
646 %     citations (|\pcite{a,b,...}|).
647 % \end{tabular}
648 %
649 %
650 % \subsubsection{References}
651 %
652 % Easier cross referencing with
653 % \href{http://www.ctan.org/tex-archive/macros/latex/contrib/cleveref/}{\pkg{cleveref}}.
654 % Is a wonderful tool for easy, consistent crosslinking via |\cref|,
655 % |\Cref|, etc..  The manual is also very good.
656 % Note that if you use |\part|s in your document, you need to tell
657 % \pkg{cleveref} how to deal with them:
658 % \begin{example}
659 %   \usepackage{cleveref}
660 %   \crefname{part}{part}{parts}
661 % \end{example}
662 %
663 %
664 % \subsubsection{Hyperlinks}
665 %
666 % \cls{drexel-thesis} loads
667 % \href{http://www.ctan.org/tex-archive/macros/latex/contrib/hyperref/}{%
668 %   \pkg{hyperref}}.
669 % with the options:\\
670 % \begin{tabular}{r p{0.8\textwidth}}
671 %   |colorlinks| & color the link letters instead of drawing colored boxes. \\
672 % \end{tabular}
673 %
674 % The default \pkg{hyperref} colors can be a bit jarring.  Feel free
675 % to use \Lopt{blackref} or override them yourself:
676 % \begin{example}
677 %   \usepackage{xcolor}
678 %   \definecolor{dark-gray}{gray}{0.3}
679 %   \hypersetup{citecolor=dark-gray}
680 % \end{example}
681 % See
682 % \href{http://mirror.ctan.org/macros/latex/contrib/hyperref/doc/manual.pdf}{%
683 %   the hyperref manual} (\S 3.4 Extension options)
684 % for a list of |*color| options.
685 %
686 % If running with a pdftex-based driver, |\author|, |\title|, and
687 % |\degree| automatically set |pdfauthor|, |pdftitle|, and
688 % |pdfsubject| respectively.  You can use the |\hypersetup| macro to
689 % set options overriding these defaults.
690 %
691 %
692 % \subsubsection{Developing large \LaTeX\ documents}
693 %
694 % A thesis may take a while to compile, especially if it contains
695 % lots of images, etc..  One way to save time, is to use |\includeonly|
696 % when including chapter \file{*.tex} files (see
697 % \href{http://en.wikibooks.org/wiki/TeX/includeonly}{the \TeX\ Wikibook}).
698 % Usage would be something like
699 % \begin{example}
700 % \documentclass{drexel-thesis}
701 % ...
702 % \includeonly{chapter2.tex,chapter3.tex}
703 % \begin{document}
704 % ...
705 % \begin{thesis}
706 % \include{chapter1.tex}
707 % \include{chapter2.tex}
708 % \include{chapter3.tex}
709 % \include{chapter4.tex}
710 % \end{thesis}
711 % ...
712 % \end{document}
713 % \end{example}
714 % which would only compile chapters two and three.  Don't confuse the
715 % similar commands |\include| and |\input|.  The more fundamental
716 % |\input| just inserts the file contents at that point, while
717 % |\include|
718 % \begin{itemize}
719 %   \item may only be used after |\begin{document}|
720 %   \item acts like |\clearpage \input{} \clearpage|
721 %   \item will not crash on nonexistent files
722 % \end{itemize}
723 %
724 %
725 % \StopEventually{\pagebreak\PrintChanges}
726 %
727 %
728 % \section{Implementation}
729 %    \begin{macrocode}
730 %<*class>
731 %    \end{macrocode}
732 %
733 % For simplicity, we'll derive everything from the standard \cls{book}
734 % class.
735 %
736 %
737 % \subsection{Option Processing}
738 %
739 % Include
740 % \href{http://www.ctan.org/tex-archive/macros/latex/contrib/xkeyval/}{\pkg{xkeyval}}
741 % for easier option parsing.  If the package is not installed on your system,
742 % see \S \ref{sec:dependencies} for installation instructions.
743 %    \begin{macrocode}
744 \RequirePackage{xkeyval}
745 %    \end{macrocode}
746 %
747 % Define some booleans to store option states
748 %    \begin{macrocode}
749 \newif\if@mainmatter \@mainmattertrue
750 \newif\if@DUT@subfigopt
751 \newif\if@dottedchapter 
752 \newif\if@boldchapter
753 \newif\if@boldpart
754 \newif\if@dottedpart
755 \newif\if@indenttoc
756 \newif\if@blackref
757 \newif\if@draftwatermark
758 \newif\if@mydraftwatermark
759 \newif\if@indentfirst
760 \newif\if@final
761 \newif\if@daring
762 %    \end{macrocode}
763 %
764 % \begin{macro}{\iffinal}
765 % Setup a user-friendly means for including \Lopt{final}- or
766 % \Lopt{draft}-specific code.
767 % \changes{0.7}{2010/03/14}{W.~Trevor King added macro.}
768 %    \begin{macrocode}
769 \newcommand\iffinal[2]{\if@final #1\else #2\fi}
770 %    \end{macrocode}
771 % \end{macro}
772 %
773 % \begin{macro}{\ifdaring}
774 % Setup a user-friendly means for including \Lopt{daring}-specific
775 % code.
776 % \changes{0.11}{2010/06/04}{W.~Trevor King added macro.}
777 %    \begin{macrocode}
778 \newcommand\ifdaring[2]{\if@daring #1\else #2\fi}
779 %    \end{macrocode}
780 % \end{macro}
781 %
782 % \begin{option}{subfig}
783 % Set \Lopt{subfig} flag
784 %    \begin{macrocode}
785 \DeclareOptionX{subfig}{\@DUT@subfigopttrue}
786 %    \end{macrocode}
787 % \end{option}
788 %
789 % \begin{option}{finalspace}
790 %    \begin{macrocode}
791 \DeclareOptionX{finalspace}{
792   \setlength\overfullrule{0pt}
793   \def\@cont@sep{1} % content page separation (# blanklines between entries)
794   \def\@ssp{1} % single space
795   \def\@dsp{2} % double space
796   \def\@tsp{3} % triple space
797 }
798 %    \end{macrocode}
799 % \end{option}
800 % \begin{option}{draftspace}
801 %    \begin{macrocode}
802 \DeclareOptionX{draftspace}{
803   \setlength\overfullrule{5pt}
804   \def\@cont@sep{0} % content page separation (# blanklines between entries)
805   \def\@ssp{1} % single space
806   \def\@dsp{1} % double space
807   \def\@tsp{2} % triple space
808 %    \end{macrocode}
809 %  Don't force chapters onto right-hand pages.
810 %    \begin{macrocode}
811   \PassOptionsToClass{openany}{book}
812 }
813 %    \end{macrocode}
814 % \end{option}
815 %
816 % \begin{option}{dottedpart}
817 %    \begin{macrocode}
818 \DeclareOptionX{dottedpart}{\@dottedparttrue}
819 %    \end{macrocode}
820 % \end{option}
821 % \begin{option}{dottedchapter}
822 %    \begin{macrocode}
823 \DeclareOptionX{dottedchapter}{\@dottedchaptertrue}
824 %    \end{macrocode}1
825 % \end{option}
826 % \begin{option}{boldpart}
827 %    \begin{macrocode}
828 \DeclareOptionX{boldpart}{\@boldparttrue}
829 %    \end{macrocode}
830 % \end{option}
831 % \begin{option}{boldchapter}
832 %    \begin{macrocode}
833 \DeclareOptionX{boldchapter}{\@boldchaptertrue}
834 %    \end{macrocode}
835 % \end{option}
836 % \begin{option}{dottedtoc}
837 %    \begin{macrocode}
838 \DeclareOptionX{dottedtoc}{
839   \setkeys{drexel-thesis.cls}{dottedpart}
840   \setkeys{drexel-thesis.cls}{dottedchapter}
841 }
842 %    \end{macrocode}
843 % \end{option}
844 % \begin{option}{boldtoc}
845 %    \begin{macrocode}
846 \DeclareOptionX{boldtoc}{
847   \setkeys{drexel-thesis.cls}{boldpart}
848   \setkeys{drexel-thesis.cls}{boldchapter}
849 }
850 %    \end{macrocode}
851 % \end{option}
852 %
853 % \begin{option}{indenttoc}
854 % Set \Lopt{indenttoc} flag
855 %    \begin{macrocode}
856 \DeclareOptionX{indenttoc}{\@indenttoctrue}
857 %    \end{macrocode}
858 % \end{option}
859 %
860 % \begin{option}{blackref}
861 % Set \Lopt{blackref} flag
862 % \changes{0.13}{2010/06/17}{W.~Trevor King added blackref option.}
863 %    \begin{macrocode}
864 \DeclareOptionX{blackref}{\@blackreftrue}
865 %    \end{macrocode}
866 % \end{option}
867 %
868 % \begin{option}{draftwatermark}
869 % Set \Lopt{draftwatermark} flag
870 %    \begin{macrocode}
871 \DeclareOptionX{draftwatermark}{%
872   \@draftwatermarktrue
873   \@mydraftwatermarkfalse}
874 %    \end{macrocode}
875 % \end{option}
876 %
877 % \begin{option}{mydraftwatermark}
878 % Set \Lopt{mydraftwatermark} flag
879 %    \begin{macrocode}
880 \DeclareOptionX{mydraftwatermark}{%
881   \@mydraftwatermarktrue
882   \@draftwatermarkfalse}
883 %    \end{macrocode}
884 % \end{option}
885 %
886 % \begin{option}{indentfirst}
887 % Set \Lopt{indentfirst} flag
888 %    \begin{macrocode}
889 \DeclareOptionX{indentfirst}{\@indentfirsttrue}
890 %    \end{macrocode}
891 % \end{option}
892 %
893 % Define the book options that \Lopt{final} and \Lopt{draft} need to
894 % access.
895 % \begin{option}{oneside}
896 %    \begin{macrocode}
897 \DeclareOptionX{oneside}{\PassOptionsToClass{oneside}{book}}
898 %    \end{macrocode}
899 % \end{option}
900 %
901 % \begin{option}{twoside}
902 %    \begin{macrocode}
903 \DeclareOptionX{twoside}{\PassOptionsToClass{twoside}{book}}
904 %    \end{macrocode}
905 % \end{option}
906 %
907 % \begin{option}{final}
908 %    \begin{macrocode}
909 \DeclareOptionX{final}{
910   \@finaltrue
911   \setkeys{drexel-thesis.cls}{oneside}
912   \setkeys{drexel-thesis.cls}{finalspace}
913   \setkeys{drexel-thesis.cls}{dottedtoc}
914 }
915 %    \end{macrocode}
916 % \end{option}
917 %
918 % \begin{option}{draft}
919 %    \begin{macrocode}
920 \DeclareOptionX{draft}{
921   \@finalfalse
922   \setkeys{drexel-thesis.cls}{twoside}
923   \setkeys{drexel-thesis.cls}{draftspace}
924   \setkeys{drexel-thesis.cls}{dottedtoc}
925   \setkeys{drexel-thesis.cls}{mydraftwatermark}
926 }
927 %    \end{macrocode}
928 % \end{option}
929 %
930 % \begin{option}{daring}
931 %    \begin{macrocode}
932 \DeclareOptionX{daring}{
933   \@daringtrue
934 }
935 %    \end{macrocode}
936 % \end{option}
937 %
938 % Use the default \cls{book} implementation for any remaining options
939 % including \Lopt{oneside}, \Lopt{twoside}, \Lopt{leqno}, \Lopt{fleqn},
940 % \ldots.
941 %    \begin{macrocode}
942 \DeclareOptionX*{\PassOptionsToClass{\CurrentOption}{book}}
943 %    \end{macrocode}
944 %
945 % Execute the default options
946 %    \begin{macrocode}
947 \ExecuteOptionsX{final}
948 %    \end{macrocode}
949 %
950 % Process options and load the book class
951 %    \begin{macrocode}
952 \ProcessOptionsX\relax
953 \LoadClass{book}
954 %    \end{macrocode}
955 %
956 %
957 % \subsection{Internal package includes}
958 %
959 %
960 % Include some other packages we'll need.  If the package is not
961 % installed on your system, see \S \ref{sec:dependencies} for
962 % installation instructions.
963 %
964 % For many packages, we want the same functionality for both
965 % \Lopt{final} and \Lopt{draft} modes.  We pass \Lopt{final} to most
966 % of those packages to override a possible \Lopt{draft} option passed
967 % to \pkg{drexel-thesis}.
968 %
969 %
970 % \subsubsection{\pkg{setspace}}
971 %
972 % \href{http://www.ctan.org/tex-archive/macros/latex/contrib/setspace/}{\pkg{setspace}}
973 % for double spacing.
974 %    \begin{macrocode}
975 \RequirePackage{setspace}
976 %    \end{macrocode}
977 %
978 %
979 % \subsubsection{\pkg{calc}}
980 %
981 % \href{http://www.ctan.org/tex-archive/macros/latex/required/tools/}{\pkg{calc}}
982 % for |\set@lines@length| macro (page
983 %   \pageref{sec:implement-line-spacing}).
984 %    \begin{macrocode}
985 \RequirePackage{calc}
986 %    \end{macrocode}
987 %
988 %
989 % \subsubsection{\pkg{graphicx}}
990 %
991 % \href{http://www.ctan.org/tex-archive/macros/latex/required/graphics/}{\pkg{graphicx}}
992 % for |\includegraphics|.  Not strictly necessary, but I can't imagine
993 % a thesis without figures.
994 %    \begin{macrocode}
995 \RequirePackage[final]{graphicx}
996 %    \end{macrocode}
997 %
998 % We include the graphicx package now so we can
999 % pass \Lopt{final}, because some later packages include it with no options,
1000 % and a \Lopt{final} include after that produces errors like
1001 % \begin{example}
1002 %   l.104 \RequirePackage
1003 %                        [final]{ifpdf}
1004 %   The package graphicx has already been loaded with options:
1005 %     []
1006 %   There has now been an attempt to load it with options
1007 %     [final]
1008 % \end{example}
1009 %
1010 %
1011 % \subsubsection{\pkg{draftmark}}
1012 %
1013 % The Comp.~Sci.\ class used
1014 % \href{http://www.ctan.org/tex-archive/macros/latex/contrib/draftcopy/}{\pkg{draftcopy}}
1015 % to add their watermarks, but as of the current 2002/02/25 v2.16, it
1016 % uses postscript specials, and so doesn't work with pdf\LaTeX.
1017 % Instead we use the recent (catalogued 2009/11/03)
1018 % \href{http://www.ctan.org/tex-archive/macros/latex/contrib/draftmark/}{\pkg{draftmark}}
1019 % which unfortunately has a number of apparently non-standard dependencies
1020 % (\href{http://www.ctan.org/tex-archive/macros/latex/contrib/etextools/}{\pkg{etextools}},
1021 %  \href{http://www.ctan.org/tex-archive/macros/latex/contrib/etoolbox/}{\pkg{etoolbox}},
1022 %  \href{http://www.ctan.org/tex-archive/macros/latex/contrib/lastpage/}{\pkg{lastpage}},
1023 %  \href{http://www.ctan.org/tex-archive/macros/latex/contrib/ltxnew/}{\pkg{ltxnew}},
1024 %  \href{http://www.ctan.org/tex-archive/macros/latex/contrib/pagerange/}{\pkg{pagerange}},
1025 %  \href{http://www.ctan.org/tex-archive/macros/latex/contrib/xifthen/}{\pkg{xifthen}},
1026 %  if only I had the space to install |texlive-latexextra| |:p|).
1027 % The output is, however, very flexible, and it \emph{does} work with
1028 % both \LaTeX\ and pdf\LaTeX.  If you don't like the default watermark,
1029 % you can also adjust the particulars with |\draftmarksetup|.
1030 %    \begin{macrocode}
1031 \if@draftwatermark
1032   \RequirePackage[draft,allpages,mark={DRAFT \today},
1033                   fontsize=2cm,grayness=0.9]{draftmark}
1034 \fi
1035 %    \end{macrocode}
1036 %
1037 % Here is Evan's alternative implementation This will not look right
1038 % as a DVI, but it'll look fine once rendered to either a PS or PDF.
1039 %    \begin{macrocode}
1040 \if@mydraftwatermark
1041 %    \end{macrocode}
1042 % Use \pkg{eso-pic} for |\AddToShipoutPicture|.
1043 %    \begin{macrocode}
1044   \RequirePackage{eso-pic}
1045 %    \end{macrocode}
1046 % Use \pkg{xcolor} for |\definecolor|.
1047 %    \begin{macrocode}
1048   \RequirePackage{xcolor}
1049   \definecolor{watermark}{rgb}{0.9,0.9,0.9}
1050 %    \end{macrocode}
1051 % Set the font explicitly to avoid being effected by the last text on
1052 % the page having some strange font.  |\sffamily| sets a sans serif
1053 % font.
1054 %    \begin{macrocode}
1055   \newcommand{\watermarkfont}{%
1056     \color{watermark}}%\fontfamily{phv}\selectfont\sffamily}
1057   \newcommand{\watermark}{%
1058     \rule{4.25in}{0pt}\raisebox{5.5in}{%
1059       \makebox[0pt]{%
1060 %    \end{macrocode}
1061 % |\rotatebox| and |\resizebox| from \pkg{graphicx}.
1062 %    \begin{macrocode}
1063         \rotatebox[origin=c]{45}{%
1064           \resizebox{!}{1.5in}{%
1065             {\watermarkfont DRAFT}%
1066     }}}}
1067     \raisebox{4.2in}{%
1068       \makebox[0pt]{%
1069         \rotatebox[origin=c]{45}{%
1070           \resizebox{!}{.6in}{%
1071             {\watermarkfont \qquad\today}%
1072     }}}}}
1073   \AddToShipoutPicture{\watermark{}}
1074 \fi
1075 %    \end{macrocode}
1076 %
1077 %
1078 % \subsubsection{\pkg{indentfirst}}
1079 %
1080 % Indent the first paragraph after sections etc.\ with
1081 % \href{http://www.ctan.org/tex-archive/macros/latex/required/tools/}{\pkg{indentfirst}}.
1082 %    \begin{macrocode}
1083 \if@indentfirst
1084   \RequirePackage{indentfirst}
1085 \fi
1086 %    \end{macrocode}
1087 %
1088 %
1089 % \subsubsection{\pkg{geometry}}
1090 %
1091 % Setup page margins with
1092 % \href{http://www.ctan.org/tex-archive/macros/latex/contrib/geometry/}{\pkg{geometry}}.
1093 % From the Manual p5:
1094 % \begin{itemize}
1095 %   \item The left margin must be at least 1 1/2'' (1.5 inches)
1096 %   throughout the document.
1097 %   \item All other margins (top, bottom, and right) must be at least 1''.
1098 % \end{itemize}
1099 % And from the Manual \S 1.5 p4, Print Version:
1100 % \begin{quote}
1101 %   The paper size must be 8 1/2'' x 11''.
1102 % \end{quote}
1103 %    \begin{macrocode}
1104 \RequirePackage[letterpaper,margin=1in,bindingoffset=0.5in]{geometry}
1105 %    \end{macrocode}
1106 % Note that we include the \pkg{geometry} package after loading \cls{book} to
1107 % override the margin manipulation that takes place in \cls{book}.
1108 %
1109 %
1110 % \subsubsection{\pkg{tocloft}}
1111 %
1112 % Typeset the table of contents, etc., with
1113 % \href{http://www.ctan.org/tex-archive/macros/latex/contrib/tocloft/}{\pkg{tocloft}}.
1114 %    \begin{macrocode}
1115 \if@DUT@subfigopt
1116   \RequirePackage[subfigure]{tocloft}
1117 \else
1118   \RequirePackage{tocloft}
1119 \fi
1120 %    \end{macrocode}
1121 % The \Lopt{subfigure} option sets up \pkg{tocloft} for
1122 % \pkg{subfig}/\pkg{subfigure} compatibility. See the
1123 % \href{http://www.ctan.org/tex-archive/macros/latex/contrib/tocloft/tocloft.pdf}{%
1124 %   \pkg{tocloft} manual \S 2.1}
1125 % for details.
1126 %
1127 % The configuration of \pkg{tocloft} takes place in \S
1128 % \ref{sec:implement-toc}, \S \ref{sec:implement-lof}, and \S
1129 % \ref{sec:implement-lot}.
1130 %
1131 %
1132 % \subsubsection{\pkg{caption}}
1133 %
1134 % Get nice caption formatting with
1135 % \href{http://www.ctan.org/tex-archive/macros/latex/contrib/caption/}{\pkg{caption}}.
1136 % From the Manual p5:
1137 % \begin{itemize}
1138 %   \item The left margin must be at least 1 1/2'' (1.5 inches)
1139 %   throughout the document.
1140 %   \item All other margins (top, bottom, and right) must be at least 1''.
1141 % \end{itemize}
1142 %    \begin{macrocode}
1143 \RequirePackage[margin=10pt,labelfont=bf,labelsep=colon]{caption}
1144 %    \end{macrocode}
1145 % You can change these settings if you like using |\captionsetup|.
1146 %
1147 %
1148 % \subsubsection{\pkg{floatrow}}
1149 % \label{sec:floatrow}
1150 %
1151 % Enforce caption placement with
1152 % \href{http://www.ctan.org/tex-archive/macros/latex/contrib/floatrow/}{\pkg{floatrow}}.
1153 % From the Manual \S 2.3 p6, ``Tables and Figures'', 
1154 % \begin{quote}
1155 %   \begin{itemize}
1156 %     \item Place figure captions below figures.
1157 %     \item Place table captions above tables.
1158 %   \end{itemize}
1159 % \end{quote}
1160 %    \begin{macrocode}
1161 \RequirePackage{floatrow}
1162 \floatsetup[table]{style=plaintop}
1163 \floatsetup{captionskip=10pt}
1164 \floatsetup[table]{captionskip=10pt}
1165 %    \end{macrocode}
1166 % Use \pkg{fr-subfig} for \pkg{floatrow}/\pkg{subfig} compatibility.
1167 % See the \pkg{floatrow} documentation (Sec.~7.1, ``The \pkg{subfig}
1168 % package'') and \pkg{subfig} documentation (Sec.~4.3,
1169 % ``\pkg{FloatRow} Package'') for details.
1170 %    \begin{macrocode}
1171 \if@DUT@subfigopt
1172   \RequirePackage{fr-subfig}
1173 \fi
1174 %    \end{macrocode}
1175 % We set up the three-line surrounding spaces in \S
1176 % \ref{sec:implement-floats}.
1177 %
1178 % You can change these settings using |\floatsetup|, but you probably
1179 % won't need to.
1180 %
1181 %
1182 % \subsubsection{\pkg{subfig}}
1183 % \label{sec:subfig}
1184 %
1185 % Allow multi-part figures with
1186 % \href{http://www.ctan.org/tex-archive/macros/latex/contrib/subfig/}{\pkg{subfig}}.
1187 %    \begin{macrocode}
1188 \if@DUT@subfigopt
1189   \RequirePackage{subfig}
1190 \fi
1191 %    \end{macrocode}
1192 %
1193 %
1194 % \subsubsection{\pkg{fancyhdr}}
1195 % \label{sec:fancyhdr}
1196 %
1197 % \href{http://www.ctan.org/tex-archive/macros/latex/contrib/fancyhdr/}{\pkg{fancyhdr}}
1198 % for correct page numbering and fancy headers.
1199 % From the Manual \S 2.3 p5, ``Pagination''
1200 % \begin{quote}
1201 %   Place page numbers in the upper right-hand corner of the page,
1202 %   3/4'' from the top.
1203 % \end{quote}
1204 %    \begin{macrocode}
1205 \RequirePackage{fancyhdr}
1206 %    \end{macrocode}
1207 % Setup the standard |fancy| format.
1208 %    \begin{macrocode}
1209 \pagestyle{fancy}
1210 \fancyhf{}
1211 %    \end{macrocode}
1212 % Turn off the header rule by setting its width to $0$.
1213 %    \begin{macrocode}
1214 \renewcommand{\headrulewidth}{0pt}
1215 %    \end{macrocode}
1216 % 0.4 pt is \pkg{fancyhdr}'s default |\headrulewidth|, so we'll
1217 % recycle the value.
1218 %    \begin{macrocode}
1219 \renewcommand{\footrulewidth}{0.4pt}
1220 %    \end{macrocode}
1221 % |\leftmark| is the higher level mark, see |\chaptermark| below.
1222 % |\rightmark| is the lower level mark, see |\sectionmark| below.
1223 % We put the lower level mark to the outside because it changes more
1224 % often.  Page numbers also go on the outside.
1225 %    \begin{macrocode}
1226 \fancyfoot[RE,LO]{\scshape\leftmark}
1227 \fancyfoot[LE,RO]{\scshape\rightmark}
1228 \fancyhead[LE,RO]{\thepage}
1229 %    \end{macrocode}
1230 % Override the |plain| format (for part pages, etc.).
1231 %    \begin{macrocode}
1232 \fancypagestyle{plain}{
1233   \fancyhf{}
1234   \renewcommand{\footrulewidth}{0pt}
1235   \fancyhead[LE,RO]{\thepage}
1236 }
1237 %    \end{macrocode}
1238 % Keep the |empty| format at its default.
1239 %    \begin{macrocode}
1240 \fancypagestyle{empty}{
1241   \fancyhf{}
1242   \renewcommand{\footrulewidth}{0pt}
1243 }
1244 %    \end{macrocode}
1245 %
1246 % Note that the chapter/section footer is not required.  You can
1247 % remove the footer text and rule entirely with.
1248 % \begin{example}
1249 %   \renewcommand{\footrulewidth}{0pt}
1250 %   \fancyfoot[RE,LO]{}
1251 %   \fancyfoot[LE,RO]{}
1252 % \end{example}
1253 %
1254 %
1255 % \subsubsection{\pkg{ifpdf}}
1256 %
1257 % \href{http://www.ctan.org/tex-archive/macros/latex/contrib/oberdiek/}{\pkg{ifpdf}}
1258 % for detecting PDF drivers.  We use it to configure \pkg{hyperref} below.
1259 %    \begin{macrocode}
1260 \RequirePackage{ifpdf}
1261 %    \end{macrocode}
1262
1263 % \subsubsection{\pkg{hyperref}}
1264 % \label{sec:hyperref}
1265 %
1266 % \href{http://www.ctan.org/tex-archive/macros/latex/contrib/hyperref/}{\pkg{hyperref}}
1267 % for hyperlinks.  Not strictly necessary, but I can't imagine a
1268 % thesis without it.  We actually include this later (\S
1269 % \ref{sec:hyperref-inclusion}), because \pkg{hyperref} sticks its
1270 % fingers into \emph{everything} and we want it to use our versions of
1271 % some macros (e.g., |\@sect|) but not others (e.g., |thebibliography|).
1272 %
1273 %
1274 % \subsubsection{\pkg{hypcap}}
1275 % \label{sec:hypcap}
1276 %
1277 % \href{http://www.ctan.org/tex-archive/macros/latex/contrib/oberdiek/}{\pkg{hypcap}}
1278 % for placing caption hyperlink anchors.  Must be included after
1279 % \pkg{hypercap}, so the actual inclusion is in \S
1280 % \ref{sec:hypcap-inclusion}).
1281 %
1282 %
1283 % \subsection{\LaTeX\ overrides and extensions}
1284 %
1285 % Here we change the behavior of a bunch of macros and environments
1286 % from \file{latex.ltx} (generated by \file{format.ins} in
1287 % \href{http://www.ctan.org/tex-archive/macros/latex/base/}{\pkg{base}}).
1288 % We'll copy in their original notes along with their code, following
1289 % the relevant documentation an order given in \file{format.ins} and
1290 % the associated \file{*.dtx} files.
1291 %
1292 %
1293 % \subsubsection{\file{ltsect.dtx}}
1294 %
1295 % \begin{macro}{\title}
1296 % \begin{macro}{\DUTtitle}
1297 % \begin{macro}{\@DUT@title}
1298 % |\title| for use in |\maketitle|. If not given |\maketitle| will
1299 % produce a warning message (\file{ltsect.dtx}, L117).
1300 %
1301 % We extend |\title| to set \pkg{hyperref}'s |pdftitle|.
1302 % (\file{ltsect.dtx}, L117).
1303 %    \begin{macrocode}
1304 \renewcommand{\title}[1]{
1305   \gdef\@DUT@title{#1}
1306   \ifpdf \hypersetup{pdftitle={\@DUT@title}} \fi
1307 }
1308 \let\DUTtitle\title
1309 \def\@DUT@title{\@latex@error{No \noexpand\title given}\@ehc}
1310 %    \end{macrocode}
1311 % \end{macro}
1312 % \end{macro}
1313 % \end{macro}
1314 %
1315 % \begin{macro}{\author}
1316 % \begin{macro}{\DUTauthor}
1317 % \begin{macro}{\@DUT@author}
1318 % |\author| for use in |\maketitle|.  If not given |\maketitle| will
1319 % produce a warning message (\file{ltsect.dtx}, L129).
1320 %
1321 % We extend |\author| to set \pkg{hyperref}'s |pdfauthor| if we're
1322 % writing a PDF to avoid using |\AtBeginDocument| or some such.
1323 % (\file{ltsect.dtx}, L129).
1324 %    \begin{macrocode}
1325 \renewcommand{\author}[1]{
1326   \gdef\@DUT@author{#1}
1327   \ifpdf \hypersetup{pdfauthor={\protect\@DUT@author}} \fi
1328 }
1329 \let\DUTauthor\author
1330 \def\@DUT@author{\@latex@error{No \noexpand\author given}\@ehc}
1331 %    \end{macrocode}
1332 % \end{macro}
1333 % \end{macro}
1334 % \end{macro}
1335 %
1336 % In a similar vein, we some additional meta-info macros.
1337 %
1338 %  \begin{macro}{\DUTmonth}
1339 %  \begin{macro}{\@DUT@month}
1340 % |\DUTmonth| (defense month) for use in |\maketitle|.  If not given
1341 % |\maketitle| will produce an error message.
1342 %    \begin{macrocode}
1343 \def\DUTmonth#1{\gdef\@DUT@month{#1}}
1344 \def\@DUT@month{\@latex@error{No \noexpand\DUTmonth given}\@ehc}
1345 %    \end{macrocode}
1346 %  \end{macro}
1347 %  \end{macro}
1348 %
1349 %  \begin{macro}{\DUTyear}
1350 %  \begin{macro}{\@DUT@year}
1351 % |\DUTyear| (defense year) for use in |\maketitle|.  If not given
1352 % |\maketitle| will produce an error message.
1353 %    \begin{macrocode}
1354 \def\DUTyear#1{\gdef\@DUT@year{#1}}
1355 \def\@DUT@year{\@latex@error{No \noexpand\DUTyear given}\@ehc}
1356 %    \end{macrocode}
1357 %  \end{macro}
1358 %  \end{macro}
1359 %
1360 %  \begin{macro}{\degree}
1361 %  \begin{macro}{\DUTdegree}
1362 %  \begin{macro}{\@DUT@degree}
1363 % |\degree| for use in |\maketitle|.  If not given |\maketitle| will
1364 % produce an error message.
1365 %    \begin{macrocode}
1366 \def\degree#1{\gdef\@DUT@degree{#1}
1367   \ifpdf \hypersetup{pdfsubject={\@DUT@degree}} \fi}
1368 \let\DUTdegree\degree
1369 \def\@DUT@degree{\@latex@error{No \noexpand\degree given}\@ehc}
1370 %    \end{macrocode}
1371 %  \end{macro}
1372 %  \end{macro}
1373 %  \end{macro}
1374 %
1375 %  \begin{macro}{\copyrighttext}
1376 %  \begin{macro}{\DUTcopyrighttext}
1377 %  \begin{macro}{\@copyrighttext}
1378 % |\copyrighttext| for use in |\@DUT@makecopyright|.  There are a
1379 % number of blurbs predefined in \S \ref{sec:implement-copyright}.
1380 %    \begin{macrocode}
1381 \def\copyrighttext#1{\gdef\@DUT@copyrighttext{#1}}
1382 \let\DUTcopyrighttext\copyrighttext
1383 \def\@DUT@copyrighttext{All Rights Reserved.}
1384 %    \end{macrocode}
1385 %  \end{macro}
1386 %  \end{macro}
1387 %  \end{macro}
1388 %
1389 %  \begin{macro}{\advisor}
1390 %  \begin{macro}{\DUTadvisor}
1391 %  \begin{macro}{\@DUT@advisor}
1392 % |\advisor| stores advisor names, and |\@DUT@advisor| prints them out
1393 % nicely for the |abstract| environment.  If no advisors are given
1394 % |\@DUT@advisor| will produce an error message.  We get a bit fancier
1395 % here to support multiple advisors.
1396 %    \begin{macrocode}
1397 \newcounter{@DUT@advisors}
1398 \setcounter{@DUT@advisors}{0}
1399 %    \end{macrocode}
1400 % Store a new advisor name.
1401 %    \begin{macrocode}
1402 \newcommand\advisor[1]{%
1403   \ifx
1404 %    \end{macrocode}
1405 % If |#1| is |\empty|, this call is a no-op.
1406 %    \begin{macrocode}
1407     \empty{#1}
1408   \else
1409 %    \end{macrocode}
1410 % Save the advisors to |\@DUT@advisor@a|, |\@DUT@advisor@b|, \ldots.
1411 % |\alph{|\Lcount{COUNTER}|}| (\file{ltcounts.dtx}, L319) prints the
1412 %   value of \Lcount{COUNTER} as a lowercase letter: $1 =$~a, $2 =$~
1413 %   b, etc.
1414 %    \begin{macrocode}
1415     \stepcounter{@DUT@advisors}
1416     \expandafter\gdef\csname @DUT@advisor@\alph{@DUT@advisors}\endcsname{#1}
1417   \fi}
1418 %    \end{macrocode}
1419 % Format and print a list of advisor names.
1420 %    \begin{macrocode}
1421 \newcommand\@DUT@advisor{%
1422   \ifnum\c@@DUT@advisors=0%
1423     \@latex@error{No \noexpand\advisor given}\@ehc%
1424   \else%
1425 %    \end{macrocode}
1426 % Start a group so the scratch counter \Lcount{count\textat} is restored
1427 % afterwards\footnote{See the discussion in
1428 %   \href{http://www.ctan.org/tex-archive/macros/latex/contrib/localloc/}{%
1429 %     \pkg{localloc}}
1430 %   for some points on counter allocation.}.
1431 %    \begin{macrocode}
1432     \begingroup%
1433 %    \end{macrocode}
1434 % Because \Lcount{count\textat} is a \TeX\ counter register not
1435 % wrapped by \LaTeX's counter sugar, we don't use \LaTeX's
1436 % |\setcounter| to set \Lcount{count\textat} to one.
1437 %    \begin{macrocode}
1438       \count@\@ne
1439 %    \end{macrocode}
1440 % Print the first advisor, using \TeX's |\@alph| macro instead of
1441 % \LaTeX's |\alph|.
1442 %    \begin{macrocode}
1443 %    \begin{macrocode}
1444       \csname @DUT@advisor@\@alph\count@\endcsname\relax%
1445 %    \end{macrocode}
1446 % For any remaining advisors\ldots
1447 %    \begin{macrocode}
1448       \loop\ifnum\count@<\c@@DUT@advisors%
1449 %    \end{macrocode}
1450 % Advance \Lcount{count\textat} using \TeX's |\advance| macro instead
1451 % of \LaTeX's |\stepcounter|.
1452 %    \begin{macrocode}
1453         \advance\count@\@ne
1454 %    \end{macrocode}
1455 % Print the connecting text.
1456 %    \begin{macrocode}
1457         \ifnum\count@=\c@@DUT@advisors%
1458           \ifnum\c@@DUT@advisors=2%
1459 %    \end{macrocode}
1460 % The next advisor if the last of two.
1461 %    \begin{macrocode}
1462             {\ and\ }%
1463           \else%
1464 %    \end{macrocode}
1465 % The next advisor if the last of many.
1466 %    \begin{macrocode}
1467             {, and\ }%
1468           \fi%
1469         \else%
1470 %    \end{macrocode}
1471 % The next advisor is not the last.
1472 %    \begin{macrocode}
1473           {,\ }%
1474         \fi%
1475 %    \end{macrocode}
1476 % Print the advisor's name.
1477 %    \begin{macrocode}
1478         \csname @DUT@advisor@\@alph\count@\endcsname\relax%
1479       \repeat%
1480     \endgroup%
1481   \fi}
1482 %    \end{macrocode}
1483 %  \end{macro}
1484 %  \end{macro}
1485 %  \end{macro}
1486 %
1487 % \paragraph{baselineskip}
1488 % \label{sec:implement-line-spacing}
1489 %
1490 % \begin{macro}{\@DUT@baselineskip}
1491 % Since we'll be messing with the spacing, save the single-spaced
1492 % baseline.
1493 %   \changes{0.3}{2010/01/13}{Use $\backslash$setlength to store the
1494 %     value at the default font.  The previous version used
1495 %     $\backslash$let, which made $\backslash$DUT\@baselineskip a
1496 %     synonym for $\backslash$baselineskip that changed with font
1497 %     size.}
1498 %    \begin{macrocode}
1499 \newlength\@DUT@baselineskip
1500 \setlength\@DUT@baselineskip\baselineskip
1501 %    \end{macrocode}
1502 % \end{macro}
1503 %
1504 % \begin{command}
1505 %   `\cs{set@lines@length}\marg{length}\marg{N}'
1506 % \end{command}
1507 % \begin{macro}{\set@lines@length}
1508 % Many specifications in the Manual refer to ``\meta{N} blank lines''.
1509 % |\set@lines@length| allows you to set a length to a given number of
1510 % lines, protecting against external |spacing| environments.  It
1511 % requires \pkg{calc} for the multiplication.
1512 %    \begin{macrocode}
1513 \newcommand{\set@lines@length}[2]{%
1514   \setlength{#1}{\@DUT@baselineskip * {#2}}}
1515 %    \end{macrocode}
1516 % \end{macro}
1517 %
1518 %
1519 % Fix |\@ssect| and |\@sect| from \file{latex.ltx} to give single
1520 % spaced headings.
1521 %
1522 % \begin{macro}{\@sect}
1523 % Pseudocode for the |\@sect| command
1524 % \begin{example}
1525 % \@sect{NAME}{LEVEL}{INDENT}{BEFORESKIP}{AFTERSKIP}{STYLE}[ARG1]{ARG2}
1526 %           ==
1527 %   BEGIN
1528 %    IF LEVEL > \c@secnumdepth
1529 %      THEN \@svsec :=L null
1530 %      ELSE \refstepcounter{NAME}
1531 %           \@svsec :=L BEGIN \@seccntformat{#1}\relax END
1532 %    FI
1533 %    IF AFTERSKIP > 0
1534 %      THEN \begingroup
1535 %              STYLE
1536 %              \@hangfrom{\hskip INDENT\@svsec}
1537 %              {\interlinepenalty 10000 ARG2\par}
1538 %           \endgroup
1539 %           \NAMEmark{ARG1}
1540 %           \addcontentsline{toc}{NAME}
1541 %              { IF  LEVEL > \c@secnumdepth
1542 %                  ELSE \protect\numberline{\theNAME}  FI
1543 %                ARG1 }
1544 %      ELSE \@svsechd == BEGIN  STYLE
1545 %                               \hskip INDENT\@svsec
1546 %                               ARG2
1547 %                               \NAMEmark{ARG1}
1548 %                               \addcontentsline{toc}{NAME}
1549 %                                  { IF  LEVEL > \c@secnumdepth
1550 %                                      ELSE 
1551 %                                        \protect\numberline{\theNAME}
1552 %                                      FI
1553 %                                    ARG1 }
1554 %                        END
1555 %    FI
1556 %    \@xsect{AFTERSKIP}
1557 % END
1558 % \end{example}
1559 % (\file{ltsect.dtx}, L295).
1560 %    \begin{macrocode}
1561 \def\@sect#1#2#3#4#5#6[#7]#8{%
1562   \ifnum #2>\c@secnumdepth
1563     \let\@svsec\@empty
1564   \else
1565     \refstepcounter{#1}%
1566     \protected@edef\@svsec{\@seccntformat{#1}\relax}%
1567   \fi
1568   \@tempskipa #5\relax
1569   \ifdim \@tempskipa>\z@
1570     \begingroup
1571 %    \end{macrocode}
1572 % Here we deviate from \file{ltsect.dtx} to ensure single spacing for
1573 % the section title.
1574 %    \begin{macrocode}
1575       \setstretch{\@ssp}%
1576       #6{%
1577         \@hangfrom{\hskip #3\relax\@svsec}%
1578           \interlinepenalty \@M #8\@@par}%
1579     \endgroup
1580     \csname #1mark\endcsname{#7}%
1581     \addcontentsline{toc}{#1}{%
1582       \ifnum #2>\c@secnumdepth \else
1583         \protect\numberline{\csname the#1\endcsname}%
1584       \fi
1585       #7}%
1586   \else
1587     \def\@svsechd{%
1588       #6{\hskip #3\relax
1589       \@svsec #8}%
1590       \csname #1mark\endcsname{#7}%
1591       \addcontentsline{toc}{#1}{%
1592         \ifnum #2>\c@secnumdepth \else
1593           \protect\numberline{\csname the#1\endcsname}%
1594         \fi
1595         #7}}%
1596   \fi
1597   \@xsect{#5}}
1598 %    \end{macrocode}
1599 % \end{macro}
1600 %
1601 % \begin{macro}{\@ssect}
1602 % Pseudocode for the |\@ssect| command
1603 % \begin{example}
1604 % \@ssect{INDENT}{BEFORESKIP}{AFTERSKIP}{STYLE}{ARG} ==
1605 %   BEGIN
1606 %    IF AFTERSKIP > 0
1607 %      THEN \begingroup
1608 %             STYLE
1609 %             \@hangfrom{\hskip INDENT}{\interlinepenalty 10000 ARG\par}
1610 %           \endgroup
1611 %      ELSE \@svsechd == BEGIN STYLE
1612 %                              \hskip INDENT
1613 %                              ARG
1614 %                        END
1615 %    FI
1616 %    \@xsect{AFTERSKIP}
1617 %   END
1618 % \end{example}
1619 % (\file{ltsect.dtx}, L521).
1620 %    \begin{macrocode}
1621 \def\@ssect#1#2#3#4#5{%
1622   \@tempskipa #3\relax
1623   \ifdim \@tempskipa>\z@
1624     \begingroup
1625 %    \end{macrocode}
1626 % Here we deviate from \file{ltsect.dtx} to ensure single spacing for
1627 % the section title.
1628 %    \begin{macrocode}
1629       \setstretch{\@ssp}%
1630       #4{%
1631         \@hangfrom{\hskip #1}%
1632           \interlinepenalty \@M #5\@@par}%
1633     \endgroup
1634   \else
1635     \def\@svsechd{#4{\hskip #1\relax #5}}%
1636   \fi
1637   \@xsect{#3}}
1638 %    \end{macrocode}
1639 % \end{macro}
1640 %
1641 %
1642 % \subsubsection{\file{ltbibl.dtx}}
1643 %
1644 % \DescribeMacro{\bibliography}
1645 % \DescribeEnv{thebibliography}
1646 % A bibliography is created by the |thebibliography| environment, which
1647 % generates a title such as ``Bibliography'', and a list of entries.
1648 % The \BibTeX\ program will create a file containing such an
1649 % environment, which will be read in by the |\bibliography| command.
1650 % With \BibTeX, the following commands will be used.
1651 %
1652 % The document class must define the thebibliography environment.  This
1653 % environment has a single argument, which is the widest bibliography
1654 % label-- e.g., if the [Knuth67] is the widest entry, then this
1655 % argument will be Knuth67.  The |\thebibliography| command must begin
1656 % a list  environment, which the |\endthebibliography| command ends.
1657 %
1658 % \begin{macro}{\bibliography}
1659 % |\bibliography|\marg{file1,file2,\ldots,filen} : specifies
1660 %   the bibdata files.  Writes a |\bibdata| entry on the |.aux| file
1661 %   and tries to read in |mainfile.bbl|.
1662 %
1663 % We don't need to change it, but it explains why we need to override
1664 % |thebibliography| even when we don't use it directly.
1665 % (\file{ltbibl.dtx}, L284).
1666 %    \begin{macrocode}
1667 %\def\bibliography#1{%
1668 %  \if@filesw
1669 %    \immediate\write\@auxout{\string\bibdata{#1}}%
1670 %  \fi
1671 %  \@input@{\jobname.bbl}
1672 %}
1673 %    \end{macrocode}
1674 % \end{macro}
1675 %
1676 %
1677 % \subsubsection{\file{ltoutput.dtx}}
1678 %
1679 % \begin{macro}{\@DUT@clearpage}
1680 % \begin{macro}{\@DUT@cleardoublepage}
1681 % Versions of |\clear*page| that only work when |\if@final| is true
1682 % (\file{ltoutput.dtx}, L877 and L904).
1683 %    \begin{macrocode}
1684 \newcommand\@DUT@clearpage{\if@final \clearpage \fi}
1685 \newcommand\@DUT@cleardoublepage{\if@final \cleardoublepage \fi}
1686 %    \end{macrocode}
1687 % \end{macro}
1688 % \end{macro}
1689 %
1690 % \begin{macro}{\@DUT@blankpage}
1691 % Add a useful extension to insert a blank page without numbering.
1692 % In draft mode, this macro is a no-op.
1693 %    \begin{macrocode}
1694 \newcommand\@DUT@blankpage{%
1695   \if@final
1696     \@DUT@clearpage
1697     \thispagestyle{empty}
1698     \hphantom{0}
1699     \@DUT@clearpage
1700   \else\fi
1701 }
1702 %    \end{macrocode}
1703 % \end{macro}
1704 %
1705 %
1706 % \begin{command}
1707 %   `\cs{blanklines}\marg{N}'
1708 %   `\cs{blanklines*}\marg{N}'
1709 % \end{command}
1710 % \begin{macro}{\blanklines}
1711 % Insert \meta{N} blank lines.  The starred forms use |\vspace|, which
1712 % inserts space even at the start and end of pages.  The |p| forms
1713 % add a trailing |\par|.  \emph{I'm still trying to get this part working
1714 % cleanly\ldots}
1715 %    \begin{macrocode}
1716 \newlength\@DUT@blanklines@length
1717 \newcommand{\@blanklines@setup}[1]{%
1718   \set@lines@length{\@DUT@blanklines@length}{#1}%
1719   %\typeout{BLANKLINES -- #1}%
1720   %\showthe\@DUT@blanklines@length
1721 }
1722 \newcommand{\blanklines}{\@ifstar\@sblanklines\@blanklines}
1723 \newcommand{\@blanklines}[1]{%
1724   \@blanklines@setup{#1}%
1725   \vspace{\@DUT@blanklines@length}}
1726 \newcommand{\@sblanklines}[1]{%
1727   \@blanklines@setup{#1}%
1728   \vspace*{\@DUT@blanklines@length}}
1729 \newcommand{\blanklinesp}{\@ifstar\@sblanklines\@blanklines}
1730 \newcommand{\@blanklinesp}[1]{%
1731   \@blanklines@setup{#1}%
1732   \vspace{\@DUT@blanklines@length}\par}
1733 \newcommand{\@sblanklinesp}[1]{%
1734   \@blanklines@setup{#1}%
1735   \vspace*{\@DUT@blanklines@length}\par}
1736 %    \end{macrocode}
1737 % \end{macro}
1738 %
1739 %
1740 % \subsection{\pkg{hyperref} inclusion}
1741 % \label{sec:hyperref-inclusion}
1742 %
1743 % This is the awkward \pkg{hyperref} inclusion.  See \S
1744 % \ref{sec:hyperref} for an explanation of why we stash it here.
1745 %    \begin{macrocode}
1746 \RequirePackage[final]{hyperref}
1747 %    \end{macrocode}
1748 % Nobody likes the default colored boxes.  Color the text itself.
1749 %    \begin{macrocode}
1750 \hypersetup{colorlinks}
1751 %    \end{macrocode}
1752 % If \Lopt{blackref} is set, set all \pkg{hyperref} colors to black.
1753 %    \begin{macrocode}
1754 \if@blackref
1755   \hypersetup{linkcolor=black}
1756   \hypersetup{anchorcolor=black}
1757   \hypersetup{citecolor=black}
1758   \hypersetup{filecolor=black}
1759   \hypersetup{menucolor=black}
1760   \hypersetup{runcolor=black}
1761   \hypersetup{urlcolor=black}
1762 \fi
1763 %    \end{macrocode}
1764 %
1765 % \subsubsection{\pkg{hypcap}}
1766 % \label{sec:hypcap-inclusion}
1767 %
1768 % \href{http://www.ctan.org/tex-archive/macros/latex/contrib/oberdiek/}{\pkg{hypcap}}
1769 % for placing caption hyperlink anchors.  Not strictly necessary, but
1770 % we're using \pkg{hyperref}, and the poor link targets are annoying.
1771 %    \begin{macrocode}
1772 \RequirePackage[all]{hypcap}
1773 %    \end{macrocode}
1774 % \Lopt{all} redefines the figure and table environments to
1775 % place the anchor at the start of the float.
1776 %
1777 %
1778 % \subsection{\cls{book} overrides and extensions}
1779 %
1780 % Here we change the behavior of a bunch of macros and environments from
1781 % \cls{book} (generated by \file{classes.ins} from \file{classes.dtx}) in
1782 % \href{http://www.ctan.org/tex-archive/macros/latex/base/}{\pkg{base}}).
1783 % We'll copy in their original notes along with their code, following
1784 % the relevant documentation an order given in \file{classes.dtx}.
1785 %
1786 %
1787 % \subsubsection{Floats on a text page}
1788 % \label{sec:implement-floats}
1789 %
1790 % \begin{macro}{\floatsep}
1791 % \begin{macro}{\textfloatsep}
1792 % When a floating object is placed on a page with text, these
1793 % parameters control the separation between the float and the other
1794 % objects on the page.
1795 %
1796 % |\floatsep| is the space between adjacent floats that are moved
1797 % to the top or bottom of the text page.
1798 %
1799 % |\textfloatsep| is the space between the main text and floats
1800 % at the top or bottom of the page.
1801 %
1802 % |\intextsep| is the space between in-text floats and the text.  We
1803 % don't bother overriding this one, because we've handled it with
1804 % \pkg{floatrow} in \S \ref{sec:floatrow}.
1805 %
1806 % From the Manual \S 2.3 p6, ``Tables and Figures''
1807 % \begin{quote}
1808 %   Insert at least 3 single-spaced lines of space above table
1809 %   captions and figures and below figure captions, tables, and other
1810 %   graphics.
1811 % \end{quote}
1812 % (\file{classes.dtx}, L1426)
1813 %    \begin{macrocode}
1814 \set@lines@length{\floatsep}{\@ssp}
1815 \set@lines@length{\textfloatsep}{\@tsp}
1816 %    \end{macrocode}
1817 % \end{macro}
1818 % \end{macro}
1819 %
1820 %
1821 % \subsubsection{The title}
1822 %
1823 % \begin{macro}{\maketitle}
1824 % Automate the creation of the title page.
1825 % From Manual \S 3.1 p8, ``Title Page'', and the example on p16.
1826 % \begin{itemize}
1827 %   \item This page is counted but not numbered (it counts as page i,
1828 %   but should not have a page number).  TODO: How is this implemented?
1829 % \end{itemize}
1830 % Our definition simplifies \cls{book}'s by ignoring footnotes.
1831 % (\file{classes.dtx}, L1796)
1832 %    \begin{macrocode}
1833 \newcommand\@DUT@maketitle{
1834   \begin{@DUT@titlepage}%
1835 %    \end{macrocode}
1836 % Add some bookmarks if we're using pdf\LaTeX.  The |frontmatter|
1837 % bookmark is set at the \emph{part} level (-1) to hold all bookmarks
1838 % from the |preamble| environment, since those entries are all
1839 % chapters.
1840 % \changes{0.8}{2010/05/20}{W.~Trevor King replaced Frontmatter with
1841 %   Front Matter and Titlepage with Title Page for consistency with
1842 %   \LaTeX's book class.}
1843 %    \begin{macrocode}
1844     \ifpdf
1845       \pdfbookmark[-1]{Front Matter}{Front Matter}
1846       \pdfbookmark[0]{Title Page}{Title Page}
1847     \fi
1848 %    \end{macrocode}
1849 % Add some stretchy space to center the title vertically if we're not
1850 % in draft mode.
1851 %    \begin{macrocode}
1852     \if@final \vspace*{\fill} \fi
1853 %    \end{macrocode}
1854 % Here is the title text itself.
1855 %    \begin{macrocode}
1856     \begin{center}%
1857       {\setstretch{\@tsp} \bfseries \@DUT@title \par}%
1858 %    \end{macrocode}
1859 % We want two blank lines (triple spacing) between the title and the
1860 % remaining material, so add three but don't end the paragraph.
1861 %    \begin{macrocode}
1862       \blanklines{\@tsp}%
1863       \setstretch{\@dsp}%
1864       A Thesis\\
1865       Submitted to the Faculty\\
1866       of\\
1867       Drexel University\\
1868       by\\
1869       \@DUT@author\\
1870       in partial fulfillment of the\\
1871       requirements for the degree\\
1872       of\\
1873       \@DUT@degree\\
1874       \@DUT@month\ \@DUT@year
1875     \end{center}\par
1876 %    \end{macrocode}
1877 % Some more stretchy space for the bottom if we're not in draft mode.
1878 %    \begin{macrocode}
1879 %    \end{macrocode}
1880 % Add some stretchy space to center the title vertically if we're not
1881 % in draft mode.
1882 %    \begin{macrocode}
1883     \if@final \vspace*{\fill} \fi
1884   \end{@DUT@titlepage}%
1885 %    \end{macrocode}
1886 % And that's it.  We reset the footnote counter for the rest of the
1887 % document and save space by freeing the memory associated with the
1888 % |\maketitle| and |\and| macros (by setting them equal to |\relax|).
1889 %    \begin{macrocode}
1890   \setcounter{footnote}{0}%
1891   \global\let\maketitle\relax
1892   \global\let\and\relax
1893 }
1894 %    \end{macrocode}
1895 % \end{macro}
1896 %
1897 %
1898 % \subsubsection{Copyright pages}
1899 % \label{sec:implement-copyright}
1900 %
1901 % \begin{macro}{\@DUT@makecopyright}
1902 % The Manual allows for the selection of different copyrights, so we
1903 % define a base macro that generates a proper copyright page
1904 % containing |\@copyrighttext|, which the user can set with
1905 % |\copyrighttext|.
1906 % From Manual \S 3.2 p9, ``Copyright Page''.
1907 % \begin{itemize}
1908 %   \item Include a copyright page with the following information: a
1909 %   copyright notice, full legal name of author, and date of
1910 %   publication on file.
1911 %   \item This page is neither counted nor numbered.
1912 % \end{itemize}
1913 % In final mode, we start off on a new page and center the blurb.
1914 % In draft mode, we dive right into the text.
1915 %    \begin{macrocode}
1916 \newcommand\@DUT@makecopyright{%
1917   \@DUT@clearpage
1918 %    \end{macrocode}
1919 % If we're using pdf\LaTeX, add a bookmark.
1920 %    \begin{macrocode}
1921   \ifpdf \pdfbookmark[0]{Copyright Page}{Copyright Page} \fi
1922   \if@final \vspace*{\fill} \fi
1923   \begin{center}
1924     \copyright~Copyright \@DUT@year\\
1925     \@DUT@author.  \@DUT@copyrighttext
1926   \end{center}
1927   \if@final \vspace*{\fill} \else \blanklinesp{2} \fi
1928 %    \end{macrocode}
1929 % Turn off page numbering for this page.
1930 %    \begin{macrocode}
1931   \thispagestyle{empty}
1932 }
1933 %    \end{macrocode}
1934 % \end{macro}
1935 %
1936 % \begin{macro}{\copyrighttextCCBYSA}
1937 % \begin{macro}{\DUTcopyrighttextCCBYSA}
1938 % The Creative Commons Attribution-ShareAlike License.
1939 % \changes{0.4}{2010/02/23}{W.~Trevor King renamed from
1940 % $\backslash$copyrighttextCC, and made specific to Creative Commons
1941 % Attribution-ShareAlike Version 3.0.}
1942 %    \begin{macrocode}
1943 \newcommand\copyrighttextCCBYSA{
1944   \begin{quote}
1945     This work is licensed under the terms of the Creative Commons
1946     Attribution-ShareAlike license Version 3.0.  The license is
1947     available at \\
1948     \url{http://creativecommons.org/licenses/by-sa/3.0/}.
1949   \end{quote}
1950 }
1951 \let\DUTcopyrighttextCCBYSA\copyrighttextCCBYSA
1952 %    \end{macrocode}
1953 % \end{macro}
1954 % \end{macro}
1955 %
1956 %
1957 % \subsubsection{Mark commands}
1958 %
1959 % Default initializations of |\*mark| commands.  These commands
1960 % are used in the definition of the page styles.
1961 %
1962 % \begin{macro}{\chaptermark}
1963 % Setup colon rather than period separated chapter marks.
1964 % (\file{classes.dtx}, L2053)
1965 %    \begin{macrocode}
1966 \renewcommand\chaptermark[1]{%
1967   \markboth {%
1968     \ifnum \c@secnumdepth >\m@ne
1969       \if@mainmatter
1970         \@chapapp\ \thechapter: \ %
1971       \fi
1972     \fi
1973     #1}{}}
1974 %    \end{macrocode}
1975 % \end{macro}
1976 %
1977 % \begin{macro}{\schaptermark}
1978 % Setup unnumbered chapter marks for \pkg{fancyhdr}.
1979 %    \begin{macrocode}
1980 \newcommand\schaptermark[1]{\markboth{#1}{}}
1981 %    \end{macrocode}
1982 % \end{macro}
1983 %
1984 % \begin{macro}{\sectionmark}
1985 % Setup space rather than period separated section marks.
1986 % (\file{classes.dtx}, L2054)
1987 %    \begin{macrocode}
1988 \renewcommand{\sectionmark}[1]{%
1989   \markright {%
1990     \ifnum \c@secnumdepth >\z@
1991       \thesection \ %
1992     \fi
1993     #1}}
1994 %    \end{macrocode}
1995 % \end{macro}
1996 %
1997 %
1998 % \subsubsection{Front Matter, Main Matter, and Back Matter}
1999 %
2000 % A book contains these three (logical) sections. The switch
2001 % |\@mainmatter| is true if and only if we are processing main
2002 % matter\footnote{%
2003 %   \href{http://en.wikipedia.org/wiki/Book_design}{Wikipedia}
2004 %   suggests \emph{body matter} for the main content, but
2005 %   \href{http://mirror.ctan.org/macros/latex/base/classes.dtx}{\LaTeX's
2006 %   \cls{book}} uses \emph{Main Matter}.  We're a \LaTeX\ class, so
2007 %   we'll stick with ``main matter'' for consistency.
2008 % }.  When this switch is false, the
2009 % |\chapter| command does not print chapter numbers.
2010 %
2011 % \begin{macro}{\mainmatter}
2012 % This command clears the page (in final mode), starts arabic page
2013 % numbering and turns on chapter numbering.  Since this restarts the
2014 % page numbering from 1, it should also ensure that a recto page is
2015 % used.
2016 %
2017 % We replace \cls{book}'s |\clear*page| calls with |\@DUT@clearpage| calls.
2018 % (\file{classes.dtx}, L2211)
2019 %    \begin{macrocode}
2020 \renewcommand\mainmatter{%
2021   \@DUT@cleardoublepage
2022   \@mainmattertrue
2023   \pagenumbering{arabic}}
2024 %    \end{macrocode}
2025 % \end{macro}
2026 %
2027 %
2028 % \subsubsection{Parts}
2029 %
2030 % \begin{macro}{\part}
2031 % The command to start a new part of our document.
2032 %
2033 % We start a new (righthand) page and use the \pstyle{plain}
2034 % pagestyle, replacing \cls{book}'s |\clear*page| calls with
2035 % |\@DUT@clearpage| calls and dropping twopage code.
2036 % (\file{classes.dtx}, L2249)
2037 %    \begin{macrocode}
2038 \renewcommand\part{%
2039   \if@openright
2040     \@DUT@cleardoublepage
2041   \else
2042     \@DUT@clearpage
2043   \fi
2044   \thispagestyle{plain}%
2045   \@tempswafalse
2046 %    \end{macrocode}
2047 % Add some stretchy space for vertical centering if we're in final mode.
2048 %    \begin{macrocode}
2049   \if@final \null\vfil \fi
2050 %    \end{macrocode}
2051 % Here we use |\secdef| to indicate which commands to use to make
2052 % the actual heading.
2053 %    \begin{macrocode}
2054   \secdef\@part\@spart}
2055 %    \end{macrocode}
2056 % \end{macro}
2057 %
2058 % \begin{macro}{\@part}
2059 % This macro does the actual formatting of the title of the part.  We
2060 % replace \cls{book}'s |\Huge| with |\large|, and make use of
2061 % |\numberline| for consistent spacing.
2062 %
2063 % When \Lcount{secnumdepth} is larger than $-2$, we have a numbered
2064 % part, otherwise it is unnumbered.
2065 % (\file{classes.dtx}, L2310)
2066 %    \begin{macrocode}
2067 \def\@part[#1]#2{%
2068     \ifnum \c@secnumdepth >-2\relax
2069       \refstepcounter{part}%
2070       \addcontentsline{toc}{part}%
2071         {\protect\numberline{\thepart}#1}%
2072     \else
2073       \addcontentsline{toc}{part}{#1}%
2074     \fi
2075 %    \end{macrocode}
2076 % We empty the mark registers and center the title on the page.
2077 % Also we prevent breaking between lines and reset the font.
2078 %    \begin{macrocode}
2079     \markboth{}{}%
2080     {\centering
2081      \interlinepenalty \@M
2082      \normalfont
2083 %    \end{macrocode}
2084 % When this is a numbered part we have to print the number.
2085 %    \begin{macrocode}
2086      \ifnum \c@secnumdepth >-2\relax
2087        \large\bfseries \partname\nobreakspace\thepart
2088        \par
2089 %    \end{macrocode}
2090 % We leave some space before we print the title and leave the
2091 % finishing up to |\@endpart|.
2092 %    \begin{macrocode}
2093        \vskip 20\p@
2094      \fi
2095      \large \bfseries #2\par}%
2096     \@endpart}
2097 %    \end{macrocode}
2098 % \end{macro}
2099 %
2100 % \begin{macro}{\@spart}
2101 % This macro does the actual formatting of the title of the part
2102 % when the star form of the user command was used. In this case we
2103 % \emph{never} print a number. Otherwise the formatting is the
2104 % same.
2105 % (\file{classes.dtx}, L2402)
2106 %    \begin{macrocode}
2107 \def\@spart#1{%
2108     {\centering
2109      \interlinepenalty \@M
2110      \normalfont
2111      \large \bfseries #1\par}%
2112     \@endpart}
2113 %    \end{macrocode}
2114 % \end{macro}
2115 %
2116 % \begin{macro}{\@endpart}
2117 % This macro finishes the part page, for both |\@part| and |\@spart|.
2118 % We drop \cls{book}'s twoside handling.
2119 % If |\if@final| is true, we fill the current page.
2120 % (\file{classes.dtx}, L2435)
2121 %    \begin{macrocode}
2122 \def\@endpart{
2123   \if@final \vfil\newpage \fi
2124 %    \end{macrocode}
2125 % Then, when we are in twosided mode and the chapters are supposed to
2126 % be on the right hand sides, we produce a completely blank page.  We
2127 % don't need to check |\if@final| here, because \Lopt{draftspace} set
2128 % |\@openrighttrue|.
2129 %    \begin{macrocode}
2130   \if@twoside
2131     \if@openright
2132       \null
2133       \thispagestyle{empty}%
2134       \newpage
2135     \fi
2136   \fi}
2137 %    \end{macrocode}
2138 % \end{macro}
2139 %
2140 %
2141 % \subsubsection{Chapters}
2142 % \label{sec:implement-chapters}
2143 %
2144 % \begin{macro}{\chapter}
2145 % \cls{book} always starts a chapter on a new page, but we don't want
2146 % to do that if we're in draft mode.
2147 % (\file{classes.dtx}, L2472).
2148 %    \begin{macrocode}
2149 \renewcommand\chapter{%
2150   \if@openright\@DUT@cleardoublepage\else\@DUT@clearpage\fi
2151   \thispagestyle{plain}%
2152 %    \end{macrocode}
2153 % Then we prevent floats from appearing at the top of this page
2154 % because it looks weird to see a floating object above a chapter
2155 % title.
2156 %    \begin{macrocode}
2157   \global\@topnum\z@
2158 %    \end{macrocode}
2159 % Then we suppress the indentation of the first paragraph by
2160 % setting the switch |\@afterindent| to false. We use |\secdef|
2161 % to specify the macros to use for actually setting the chapter
2162 % title.
2163 %    \begin{macrocode}
2164   \@afterindentfalse
2165   \secdef\@chapter\@schapter}
2166 %    \end{macrocode}
2167 % \end{macro}
2168 %
2169 % \begin{macro}{\listed@schapter}
2170 % |\chapter| declares numbered chapters, which are listed in the table
2171 % of contents.
2172 % |\chapter*| declares unnumbered chapters, which are \emph{not}
2173 % listed in the TOC.
2174 % |\listed@schapter| declares an unnumbered chapter that \emph{is}
2175 % listed in the TOC.
2176 %    \begin{macrocode}
2177 \newcommand\listed@schapter[1]{%
2178   \if@openright\@DUT@cleardoublepage\else\@DUT@clearpage\fi
2179   \thispagestyle{plain}%
2180   \global\@topnum\z@
2181   \phantomsection
2182   \addcontentsline{toc}{chapter}{#1}
2183   \@afterindentfalse
2184   \@schapter{#1}}
2185 %    \end{macrocode}
2186 % \end{macro}
2187 %
2188 % \begin{macro}{\@chapter}
2189 % This macro is called when we have a numbered chapter. When
2190 % \Lcount{secnumdepth} is larger than $-1$ and |\@mainmatter| is true,
2191 % we display the chapter number.
2192 % We drop \cls{book}'s \Lopt{twocolumn} code. 
2193 % (\file{classes.dtx}, L2496).
2194 %    \begin{macrocode}
2195 \def\@chapter[#1]#2{
2196 %    \end{macrocode}
2197 % Inform the user that a new chapter is about to be typeset by writing
2198 % a message to the terminal.
2199 % \changes{0.9}{2010/05/21}{W.~Trevor King disabled the label macro
2200 % for typeout.}
2201 % Some users place |\label| in their chapter argument:
2202 % \begin{example}
2203 %   \chapter{Bla bla\label{x}}
2204 % \end{example}
2205 % rather than after (as recommended by
2206 % \href{http://en.wikibooks.org/wiki/LaTeX/Labels_and_Cross-referencing#Sections}%
2207 %   {the \LaTeX\ Wikibook} and
2208 % \href{http://www.ctan.org/tex-archive/info/lshort/english/lshort.pdf}%
2209 %   {The Not So Short Introduction to \LaTeXe\ (\S 2.8, p36)}):
2210 % \begin{example}
2211 %   \chapter{Bla bla}
2212 %   \label{x}
2213 % \end{example}
2214 % The embedded |\label| chokes |\typeout| so we temporarily redefine
2215 % |\label| to just gobble its contents.  |\@DUT@label| stores the
2216 % original definition.
2217 %    \begin{macrocode}
2218   \let\@DUT@label=\label%
2219   \renewcommand{\label}[1]{}%
2220   \typeout{\@chapapp\space\thechapter. #1}%
2221 %    \end{macrocode}
2222 % Restore |\label| to its previous glory.
2223 %    \begin{macrocode}
2224   \let\label=\@DUT@label%
2225 %    \end{macrocode}
2226 % Now we can get on with the real work.
2227 %    \begin{macrocode}
2228   \ifnum \c@secnumdepth >\m@ne
2229     \if@mainmatter
2230       \refstepcounter{chapter}%
2231       \addcontentsline{toc}{chapter}{\protect\numberline{\thechapter}#1}%
2232     \else
2233       \addcontentsline{toc}{chapter}{#1}%
2234     \fi
2235   \else
2236     \addcontentsline{toc}{chapter}{#1}%
2237   \fi
2238 %    \end{macrocode}
2239 % After having written an entry to the table of contents we store
2240 % the (alternative) title of this chapter with |\chaptermark|.
2241 %    \begin{macrocode}
2242   \chaptermark{#1}%
2243 %    \end{macrocode}
2244 % For nicer lists of figures and tables, we could add some white space
2245 % to separate the chapters.  However, nice lists $\neq$~Manual
2246 % specifications.
2247 %    \begin{macrocode}
2248 %  \addtocontents{lof}{\protect\addvspace{10\p@}}%
2249 %  \addtocontents{lot}{\protect\addvspace{10\p@}}%
2250 %    \end{macrocode}
2251 % Then we call upon |\@makechapterhead| to format the actual chapter
2252 % title.  |\@afterheading| which takes care of suppressing the
2253 % indentation.
2254 %    \begin{macrocode}
2255   \@makechapterhead{#2}%
2256   \@afterheading}
2257 %    \end{macrocode}
2258 % \end{macro}
2259 %
2260 % \begin{macro}{\@makechapterhead}
2261 % The |\@chapter| macro uses |\@makechapterhead|\meta{text} to format
2262 % the heading of the chapter.
2263 % From the Manual \S 3.11 p11.
2264 % \begin{quote}
2265 %   Chapter headings must be bold and centered.
2266 %   The chapter number and title must be on the same line, separated
2267 %   by a colon or period, as shown in the example below:
2268 %   \begin{center}
2269 %     CHAPTER 1: INTRODUCTION
2270 %   \end{center}
2271 %   Headings must not be larger than 12 points.
2272 %   Headings must be single spaced.
2273 % \end{quote}
2274 % \cls{book} sets |\@chapapp| and |\thechapter| (e.g., ``Chapter 5'')
2275 % on a line above the chapter title, but that doesn't match the
2276 % Manual's specification.
2277 %
2278 % We begin by leaving some white space. The we open a group in which
2279 % we have a paragraph indent of 0pt, and in which we have the text set
2280 % ragged right. We also reset the font.
2281 % (\file{classes.dtx}, L2540).
2282 %    \begin{macrocode}
2283 \def\@makechapterhead#1{%
2284 %    \end{macro}
2285 % Adding even a \vspace*{0\p@} here seems to increase the vertical
2286 % space above the chapter heading by two lines.  I'm not sure why.
2287 % Workaround is to pass the ``value of blanklines you want minus two''
2288 % to |\blanklines*|.  HACK!
2289 %    \begin{macro}
2290   \blanklines*{-1}% HACK!
2291   {\parindent \z@ \raggedright \normalfont
2292 %    \end{macrocode}
2293 % Ensure single spacing.
2294 %    \begin{macrocode}
2295     \setstretch{\@ssp}%
2296 %    \end{macrocode}
2297 % Prevent a pagebreak from occuring in the middle of or after the title.
2298 %    \begin{macrocode}
2299     \interlinepenalty\@M
2300 %    \end{macrocode}
2301 % Check whether the number of the chapter has to be printed.
2302 %    \begin{macrocode}
2303     \ifnum \c@secnumdepth >\m@ne
2304 %    \end{macrocode}
2305 % Check whether there \emph{is} a number to be printed.
2306 %    \begin{macrocode}
2307       \if@mainmatter
2308 %    \end{macrocode}
2309 % Setup a ``Chapter \#: Title'' heading.
2310 %    \begin{macrocode}
2311         \center \large \bfseries \@chapapp{} \thechapter: #1\par\nobreak
2312       \else
2313 %    \end{macrocode}
2314 % Setup a ``Title'' heading.
2315 %    \begin{macrocode}
2316         \center \large \bfseries #1\par\nobreak
2317       \fi
2318     \else
2319       \center \large \bfseries #1\par\nobreak
2320     \fi
2321 %    \end{macrocode}
2322 % Put a little space before the chapter body.  We use four blank lines
2323 % to comply with the Manual \S 3.13 p12
2324 % \begin{quote}
2325 %   Begin the list of sources four spaces below the heading.
2326 % \end{quote}
2327 %    \begin{macrocode}
2328     \blanklines{4}
2329   }
2330 }
2331 %    \end{macrocode}
2332 % \end{macro}
2333 %
2334 % \begin{macro}{\@schapter}
2335 % This macro is called when we have an unnumbered chapter.  We drop
2336 % \file{classes.dtx}'s \Lopt{twocolumn} code and set marks for
2337 % \pkg{fancyhdr}.
2338 % (\file{classes.dtx}, L2582).
2339 %    \begin{macrocode}
2340 \def\@schapter#1{
2341 %    \end{macrocode}
2342 % Inform the user that a new chapter is about to be typeset by writing
2343 % a message to the terminal.
2344 %    \begin{macrocode}
2345   \typeout{\@chapapp\space #1}%
2346   \schaptermark{#1}%
2347   \@makeschapterhead{#1}%
2348   \@afterheading}
2349 %    \end{macrocode}
2350 % \end{macro}
2351 %
2352 % \begin{macro}{\@makeschapterhead}
2353 % The macro above uses |\@makeschapterhead|\meta{text} to format
2354 % the heading of the chapter. It is similar to |\@makechapterhead|
2355 % except that it never has to print a chapter number.
2356 % (\file{classes.dtx}, L2595).
2357 %    \begin{macrocode}
2358 \def\@makeschapterhead#1{%
2359   \blanklines*{-1}% HACK!
2360   {\parindent \z@ \raggedright \normalfont
2361     \setstretch{\@ssp}%
2362     \interlinepenalty\@M
2363     \center \large \bfseries  #1\par\nobreak
2364     \blanklines{4}%
2365   }
2366 }
2367 %    \end{macrocode}
2368 % \end{macro}
2369 %
2370 %
2371 % \subsubsection{Lower level headings}
2372 %
2373 % \begin{macro}{\section}
2374 % Setup section headings in |\large| rather than \cls{book}'s
2375 % |\Large|.
2376 % (\file{classes.dtx}, L2623).
2377 %    \begin{macrocode}
2378 \renewcommand\section{%
2379   \@startsection {section}{1}{\z@}%
2380     {-3.5ex \@plus -1ex \@minus -.2ex}%
2381     {2.3ex \@plus.2ex}%
2382     {\normalfont\large\bfseries}}
2383 %    \end{macrocode}
2384 % \end{macro}
2385 %
2386 %
2387 % \subsubsection{Defining new environments}
2388 %
2389 % We don't override any of \cls{book}'s environments, but this is
2390 % where \file{classes.dtx} defines its environments (L2996), so we'll put
2391 % ours here too.
2392 %
2393 % \begin{environment}{preamble}
2394 % \begin{environment}{DUTpreamble}
2395 %    \begin{macrocode}
2396 \newenvironment{preamble}{%
2397   \cleardoublepage
2398   \@mainmatterfalse
2399   \pagenumbering{roman}
2400 %    \end{macrocode}
2401 % From Manual \S 3.1 p8, ``Title Page''.
2402 %    \begin{macrocode}
2403   \@DUT@maketitle
2404 %    \end{macrocode}
2405 % From Manual \S 3.2 p9, ``Copyright Page''.
2406 %    \begin{macrocode}
2407   \@DUT@makecopyright
2408 }{%
2409 %    \end{macrocode}
2410 % From the Manual \S 3.9, p11:
2411 % \begin{quote}
2412 %   Include a blank page (with no page number) before the first page
2413 %   of text.  The blank page is neither numbered nor counted.
2414 % \end{quote}
2415 %    \begin{macrocode}
2416   \@DUT@blankpage
2417 }
2418 %    \end{macrocode}
2419 % \LaTeX's |\newenvironment| and company work by defining |\X| and
2420 % |\endX| for the environment |X|.  We can alias the preamble
2421 % environment by saving these macros.
2422 %    \begin{macrocode}
2423 \let\DUTpreamble\preamble
2424 \let\endDUTpreamble\endpreamble
2425 %    \end{macrocode}
2426 % \end{environment}
2427 % \end{environment}
2428 %
2429 % \begin{environment}{dedications}
2430 % \begin{environment}{DUTdedications}
2431 % From the Manual \S 3.3 p9
2432 % \begin{itemize}
2433 %   \item The heading |Dedications| must appear at the top of the
2434 %   page.  The heading must be bold, centered, and without
2435 %   punctuation.
2436 %   \item This page is counted and numbered in lowercase Roman numerals.
2437 % \end{itemize}
2438 % \changes{0.12}{2010/06/17}{W.~Trevor King added $\backslash$par to
2439 %   detach the single space $\backslash$setstretch from the from the
2440 %   final paragraph.}
2441 %    \begin{macrocode}
2442 \newenvironment{dedications}{%
2443   \@DUT@clearpage
2444   \ifpdf
2445     \phantomsection
2446     \pdfbookmark[0]{\DUTdedicationsname}{\DUTdedicationsname}
2447   \fi
2448   \chapter*{\DUTdedicationsname}
2449   \setstretch{\@dsp}%
2450 }{%
2451   \par\setstretch{\@ssp}%
2452 }
2453 \let\DUTdedications\dedications
2454 \let\endDUTdedications\enddedications
2455 %    \end{macrocode}
2456 % \end{environment}
2457 % \end{environment}
2458 %
2459 % \begin{environment}{acknowledgments}
2460 % \begin{environment}{DUTacknowledgments}
2461 % From the Manual \S 3.4 p9
2462 % \begin{itemize}
2463 %   \item The heading |Acknowledgments| must appear at the top of the
2464 %   page.  The heading must be bold, centered, and without
2465 %   punctuation.
2466 %   \item This page is counted and numbered in lowercase Roman numerals.
2467 % \end{itemize}
2468 % \changes{0.12}{2010/06/17}{W.~Trevor King added $\backslash$par to
2469 %   detach the single space $\backslash$setstretch from the from the
2470 %   final paragraph.}
2471 %    \begin{macrocode}
2472 \newenvironment{acknowledgments}{%
2473   \@DUT@clearpage
2474   \ifpdf
2475     \phantomsection
2476     \pdfbookmark[0]{\DUTacknowledgmentsname}{\DUTacknowledgmentsname}
2477   \fi
2478   \chapter*{\acknowledgmentsname}
2479   \setstretch{\@dsp}%
2480 }{%
2481   \par\setstretch{\@ssp}%
2482 }
2483 %    \end{macrocode}
2484 \let\DUTacknowledgments\acknowledgments
2485 \let\endDUTacknowledgments\endacknowledgments
2486 % \end{environment}
2487 % \end{environment}
2488 %
2489 % \begin{environment}{abstract}
2490 % \begin{environment}{DUTabstract}
2491 %    \begin{macrocode}
2492 \newenvironment{abstract}{%
2493   \listed@schapter{\abstractname}%
2494 %    \end{macrocode}
2495 % Suck up some blank space to position the rest of the header right
2496 % under the chapter title.
2497 %    \begin{macrocode}
2498   \blanklines{-4}%
2499 %    \end{macrocode}
2500 % From the Manual \S 3.9 p10
2501 % \begin{quote}
2502 %   \begin{itemize}
2503 %     \item The following heading must be centered at the top of the page
2504 %       \begin{center}
2505 %         Abstract \\
2506 %         Full Title of Dissertation or Thesis \\
2507 %         Author's Name as it appears on the Dissertation or Thesis
2508 %       \end{center}
2509 %       In the example on p20, they list the advisor's name after the
2510 %       author, but that is not specified in the text on p10.
2511 %     \item The text begins four lines below this heading.
2512 %   \end{itemize}
2513 % \end{quote}
2514 % On p20
2515 % \begin{quote}
2516 %   \begin{itemize}
2517 %     \item These pages are numbered using lowercase Roman numerals.
2518 %     \item Note that the heading is single spaced, but the abstract
2519 %       is double spaced.
2520 %   \end{itemize}
2521 % \end{quote}
2522 % \changes{0.12}{2010/06/17}{W.~Trevor King added $\backslash$par to
2523 %   detach the single space $\backslash$setstretch from the from the
2524 %   final paragraph.}
2525 %    \begin{macrocode}
2526     \begin{center}
2527       \setstretch{\@ssp}%
2528       \@DUT@title\\
2529       \@DUT@author\\
2530 %    \end{macrocode}
2531 % If you're feeling daring, break the rules and add ``Advisor(s):'' to
2532 % set off your list of advisor names.
2533 % \changes{0.11}{2010/06/04}{W.~Trevor King added ``Advisor(s):'' for
2534 % daring users.}
2535 %    \begin{macrocode}
2536       \ifdaring{%
2537         \ifnum\c@@DUT@advisors=\@ne%
2538         Advisor:
2539         \else%
2540         Advisors:
2541         \fi}{}
2542       \@DUT@advisor\\
2543     \end{center}
2544   \blanklines{4}%
2545   \setstretch{\@dsp}%
2546   \@nobreaktrue
2547   \@afterindentfalse
2548   \@afterheading
2549 }{%
2550   \par\setstretch{\@ssp}%
2551 }
2552 \let\DUTabstract\abstract
2553 \let\endDUTabstract\endabstract
2554 %    \end{macrocode}
2555 % \end{environment}
2556 % \end{environment}
2557 %
2558 % \begin{environment}{thesis}
2559 % \begin{environment}{DUTthesis}
2560 % From the Manual \S 3.10 p11
2561 % \begin{itemize}
2562 %   \item The pages are counted and numbered in Arabic numerals.
2563 % \end{itemize}
2564 % \changes{0.8}{2010/05/20}{W.~Trevor King replaced Backmatter with
2565 %   Back Matter for consistency with \LaTeX's book class.}
2566 %    \begin{macrocode}
2567 \newenvironment{thesis}{%
2568   \mainmatter
2569   \setstretch{\@dsp}%
2570 }{%
2571   \setstretch{\@ssp}%
2572   \@DUT@clearpage
2573   \ifpdf
2574     \phantomsection
2575     \pdfbookmark[-1]{Back Matter}{Back Matter}
2576   \fi
2577 }
2578 \let\DUTthesis\thesis
2579 \let\endDUTthesis\endthesis
2580 %    \end{macrocode}
2581 % \end{environment}
2582 % \end{environment}
2583 %
2584 % \paragraph{Vita}
2585 % \label{sec:implement-vita}
2586
2587 % \begin{environment}{vita}
2588 % \begin{environment}{DUTvita}
2589 % From the Manual \S 3.15 p13
2590 % \begin{itemize}
2591 %   \item The heading |Vita| must appear at the top of the page.  The
2592 %   heading must be bold, centered, and without punctuation.
2593 %   \item The Vita text should begin four spaces below the heading.
2594 %   \item List the Vita separately in the Table of Contents.
2595 %   \item The page is counted and numbered in Arabic numerals.
2596 % \end{itemize}
2597 % \changes{0.12}{2010/06/17}{W.~Trevor King added $\backslash$par to
2598 %   detach the single space $\backslash$setstretch from the from the
2599 %   final paragraph.}
2600 %    \begin{macrocode}
2601 \newenvironment{vita}{%
2602   \listed@schapter{\vitaname}
2603   \setstretch{\@dsp}%
2604 }{%
2605   \par\setstretch{\@ssp}%
2606 }
2607 \let\DUTvita\vita
2608 \let\endDUTvita\endvita
2609 %    \end{macrocode}
2610 % \end{environment}
2611 % \end{environment}
2612 %
2613 %
2614 % \subsubsection{Titlepage}
2615 %
2616 % \begin{environment}{titlepage}
2617 % In the normal environments, the titlepage environment does nothing
2618 % but start and end a page, and inhibit page numbers.  We inhibit the
2619 % paging in draft mode, since it seems silly to waste a whole page on
2620 % the title.  We also drop the \Lopt{twocolumn} code.
2621 % (\file{classes.dtx}, L3111)
2622 %    \begin{macrocode}
2623 \renewenvironment{titlepage}%
2624   {\thispagestyle{empty}%
2625     \setcounter{page}\z@}%
2626   {\if@final \newpage \else \blanklinesp{2} \par \fi}
2627 \let\@DUT@titlepage\titlepage
2628 \let\end@DUT@titlepage\endtitlepage
2629 %    \end{macrocode}
2630 % \end{environment}
2631 %
2632 %
2633 % \subsubsection{Appendix}
2634 % \label{sec:implement-appendix}
2635 %
2636 % \begin{macro}{\appendix}
2637 % \begin{macro}{\DUTappendix}
2638 % The |\appendix| command is not really an environment, it is a
2639 % macro that makes some changes in the way things are done.
2640 %
2641 % In the article document class the |\appendix| command must do the
2642 % following:
2643 % \begin{itemize}
2644 %   \item reset the section and subsection counters to zero,
2645 %   \item redefine |\thesection| to produce alphabetic appendix
2646 %         numbers. This redefinition is done globally to ensure that it 
2647 %         survives even if |\appendix| is issued within an environment such
2648 %         as \texttt{multicols}.
2649 % \end{itemize}
2650 %
2651 % In addition to \cls{book}'s (or \pkg{hyperref}'s) activity, we
2652 % fiddle with the \pkg{tocloft} chapter settings add switch to global
2653 % double-spacing.
2654 % (\file{classes.dtx}, L3177)
2655 %    \begin{macrocode}
2656 \let\@DUT@appendix\appendix
2657 \renewcommand\appendix{%
2658   \@DUT@appendix%
2659 %    \end{macrocode}
2660 % Setup TOC entries like
2661 % \begin{center}
2662 %   Appendix A: Chapter Title
2663 % \end{center}
2664 % We don't need to worry about the |vita| environment (page
2665 % \pageref{sec:implement-vita}), because it is a |\listed@schapter|,
2666 % and therefore lacks a |\numberline| section in its \file{*.toc}
2667 % entry.
2668 %
2669 % We increase |numwidth| to 6.5em to make room for |Appendix~| before
2670 % the chapter number/letter, and add a colon after it.
2671 %
2672 % The |\protect| calls get the macros into \file{*.toc} unexpanded, so
2673 % they function correctly when \LaTeX\ parses \file{*.toc}.
2674 %    \begin{macrocode}
2675   \addtocontents{toc}{%
2676     \protect\cftsetindents{chapter}{0pt}{6.5em}
2677     \protect\renewcommand{\protect\cftchappresnum}{\protect\appendixname~}
2678     \protect\renewcommand{\protect\cftchapaftersnum}{:}}
2679 %    \end{macrocode}
2680 % We also turn on double spacing by default, since we're no longer
2681 % wrapped in the |thesis| environment.
2682 %    \begin{macrocode}
2683   \setstretch{\@dsp}%
2684 }
2685 \let\DUTappendix\appendix
2686 %    \end{macrocode}
2687 % \end{macro}
2688 % \end{macro}
2689 %
2690 %
2691 % \subsubsection{Table of Contents}
2692 % \label{sec:implement-toc}
2693 %
2694 % From Manual \S 3.5 p9, ``Table of Contents'', and the example on p17.
2695 % \begin{quote}
2696 %   \begin{itemize}
2697 %     \item Do not list any sections that precede the
2698 %     |Table of Contents| (e.g., |Dedications|, |Acknowledgments|).  Do
2699 %     not list the |Table of Contents| itself.
2700 %     \item These pages are counted and numbered in lowercase Roman numerals.
2701 %   \end{itemize}
2702 % \end{quote}
2703 %
2704 % \begin{macro}{\cfttoctitlefont}
2705 % Take advantange of \pkg{tocloft}'s TOC title code.
2706 % (\file{tocloft.dtx}, L1501)
2707 % \begin{example}
2708 %   \cfttoctitlefont\contentsname}{\cftaftertoctitle}
2709 % \end{example}
2710 % by setting it equal to something ending in |\chapter*|.  That way
2711 % \LaTeX parses the whole thing as
2712 % \begin{example}
2713 %   ...\chapter*\contentsname}{\cftaftertoctitle}
2714 % \end{example}
2715 % which will set up the TOC page correctly.
2716 %    \begin{macrocode}
2717 \renewcommand\cfttoctitlefont{%
2718 %    \end{macrocode}
2719 % Start a new page in \Lopt{final} mode
2720 %    \begin{macrocode}
2721   \@DUT@clearpage
2722 %    \end{macrocode}
2723 % Add a bookmark if we're using pdf\LaTeX.
2724 %    \begin{macrocode}
2725   \ifpdf
2726     \phantomsection
2727     \pdfbookmark[0]{\contentsname}{\contentsname}
2728   \fi
2729 %    \end{macrocode}
2730 % |\chapter*| to gobble and format the next token (|\contentsname|).
2731 %    \begin{macrocode}
2732   \chapter*}
2733 %    \end{macrocode}
2734 % \end{macro}
2735 %
2736 % \begin{macro}{\aftertoctitleskip}
2737 % Don't add any extra space after the title (the chapter will take
2738 % care of that).
2739 %    \begin{macrocode}
2740 \setlength\cftaftertoctitleskip{0pt}
2741 %    \end{macrocode}
2742 % \end{macro}
2743 %
2744 % \begin{macro}{\l@cont@sep}
2745 % Define a length for TOC/LOF/LOT spacing.
2746 %    \begin{macrocode}
2747 \newlength\l@cont@sep
2748 \set@lines@length{\l@cont@sep}{\@cont@sep}
2749 %    \end{macrocode}
2750 % \end{macro}
2751 %
2752 % \begin{macro}{\@cont@font}
2753 % Define a font for high level (part, chapter) entries.
2754 %    \begin{macrocode}
2755 \newcommand{\@cont@font}{\normalsize\scshape}
2756 %    \end{macrocode}
2757 % \end{macro}
2758 %
2759 % \begin{macro}{\cftbeforepartskip}
2760 % \begin{macro}{\cftpartfont}
2761 % \begin{macro}{\cftpartleader}
2762 % \begin{macro}{\cftpartdotsep}
2763 % \begin{macro}{\cftpartpagefont}
2764 % Setup parts.  See the \pkg{tocloft} manual for a description of the
2765 % commands.
2766 %    \begin{macrocode}
2767 \setlength\cftbeforepartskip{\l@cont@sep}
2768 \cftsetindents{part}{0pt}{3em}
2769 \if@boldpart   \renewcommand{\cftpartfont}{\bfseries\@cont@font}
2770 \else          \renewcommand{\cftpartfont}{\@cont@font}
2771 \renewcommand{\cftpartleader}{\cftdotfill{\cftpartdotsep}}
2772 \if@dottedpart \renewcommand{\cftpartdotsep}{\cftdotsep}
2773 \else          \renewcommand{\cftpartdotsep}{\cftnodots} \fi
2774 \renewcommand{\cftpartpagefont}{\normalfont}
2775 %    \end{macrocode}
2776 % \end{macro}
2777 % \end{macro}
2778 % \end{macro}
2779 % \end{macro}
2780 % \end{macro}
2781 %
2782 % \begin{macro}{\cftbeforechapskip}
2783 % \begin{macro}{\cftchapaftersnum}
2784 % \begin{macro}{\cftchapfont}
2785 % \begin{macro}{\cftchapleader}
2786 % \begin{macro}{\cftchapdotsep}
2787 % \begin{macro}{\cftchappagefont}
2788 % Setup chapters and appendicies.  Some of these settings are adjusted
2789 % for appendicies in particular by |\appendix|
2790 % (Sec.~\ref{sec:implement-appendix}).
2791 %    \begin{macrocode}
2792 \setlength\cftbeforechapskip{\l@cont@sep}
2793 \cftsetindents{chapter}{0pt}{1.5em}
2794 \renewcommand{\cftchapaftersnum}{.}
2795 \if@boldchapter   \renewcommand{\cftchapfont}{\bfseries\@cont@font}
2796 \else             \renewcommand{\cftchapfont}{\@cont@font} \fi
2797 \renewcommand{\cftchapleader}{\cftdotfill{\cftchapdotsep}}
2798 \if@dottedchapter \renewcommand{\cftchapdotsep}{\cftdotsep}
2799 \else             \renewcommand{\cftchapdotsep}{\cftnodots} \fi
2800 \renewcommand{\cftchappagefont}{\normalfont}
2801 %    \end{macrocode}
2802 % \end{macro}
2803 % \end{macro}
2804 % \end{macro}
2805 % \end{macro}
2806 % \end{macro}
2807 % \end{macro}
2808 %
2809 % \begin{macro}{\cftbeforesecskip}
2810 % \begin{macro}{\cftsecfont}
2811 % \begin{macro}{\cftbeforesubsecskip}
2812 % \begin{macro}{\cftsubsecfont}
2813 % \begin{macro}{\cftbeforesubsubsecskip}
2814 % \begin{macro}{\cftsubsubsecfont}
2815 % Setup sections, subsections, etc.
2816 %    \begin{macrocode}
2817 %\cftsetindents{chap}{0pt}{1.5em}
2818 \setlength\cftbeforesecskip{\l@cont@sep}
2819 \cftsetindents{section}{0pt}{3em}
2820 \renewcommand{\cftsecfont}{\normalsize}
2821 \setlength\cftbeforesubsecskip{\l@cont@sep}
2822 \cftsetindents{subsection}{0pt}{4.5em}
2823 \renewcommand{\cftsubsecfont}{\cftsecfont}
2824 \setlength\cftbeforesubsubsecskip{\l@cont@sep}
2825 \cftsetindents{subsubsection}{0pt}{6em}
2826 \renewcommand{\cftsubsubsecfont}{\cftsecfont}
2827 %    \end{macrocode}
2828 % \end{macro}
2829 % \end{macro}
2830 % \end{macro}
2831 % \end{macro}
2832 % \end{macro}
2833 % \end{macro}
2834 %
2835 % The default indents above are all |0pt|.  If \Lopt{indenttoc} was
2836 % given, override this, restoring the \pkg{tocloft} defaults, see the
2837 % \href{http://www.ctan.org/tex-archive/macros/latex/contrib/tocloft/tocloft.pdf}{%
2838 %   \pkg{tocloft} manual, Table 1}.
2839 %    \begin{macrocode}
2840 \if@indenttoc
2841   \cftsetindents{chapter}{0pt}{1.5em}
2842   \cftsetindents{section}{1.5em}{2.3em}
2843   \cftsetindents{subsection}{3.8em}{3.2em}
2844   \cftsetindents{subsubsection}{7.0em}{4.1em}
2845 \fi
2846 %    \end{macrocode}
2847 %
2848 %
2849 % \subsubsection{List of figures}
2850 % \label{sec:implement-lof}
2851 %
2852 % From the Manual \S 3.7 p10
2853 % \begin{quote}
2854 %   \begin{itemize}
2855 %     \item The heading |List of Figures| must appear at the top of
2856 %       the first page.
2857 %     \item The heading must be bold, centered, and without
2858 %       punctuation.  List figure captions exactly as they appear
2859 %       below the figures in the text.
2860 %     \item Single space each entry, but double-space between entries.
2861 %     \item Separate figure captions from page numbers with
2862 %       right-justified tabs and dot leaders.
2863 %     \item Do not use periods to separate captions and page numbers.
2864 %     \item These pages are counted and numbered in lowercase Roman
2865 %     numerals.
2866 %   \end{itemize}
2867 % \end{quote}
2868 %
2869 % \begin{macro}{\cftloftitlefont}
2870 % Much like our |\cfttoctitlefont|, but the list of figures gets
2871 % listed in the TOC.
2872 %    \begin{macrocode}
2873 \renewcommand\cftloftitlefont{\listed@schapter}
2874 %    \end{macrocode}
2875 % \end{macro}
2876 %
2877 % \begin{macro}{\afterloftitleskip}
2878 % Don't add any extra space after the title (the chapter will take
2879 % care of that).  Actually we make a one-line correction so the first
2880 % line matches the first line in the TOC.  HACK!
2881 %    \begin{macrocode}
2882 \setlength\cftafterloftitleskip{-12pt}
2883 %    \end{macrocode}
2884 % \end{macro}
2885 %
2886 % \begin{macro}{\cftbeforefigskip}
2887 % \begin{macro}{\cftfigindent}
2888 % \begin{macro}{\cftfigfont}
2889 % Setup figure entries.
2890 %    \begin{macrocode}
2891 \setlength{\cftbeforefigskip}{\l@cont@sep}
2892 \setlength{\cftfigindent}{0pt}
2893 \renewcommand{\cftfigfont}{\normalsize\singlespace}
2894 %    \end{macrocode}
2895 % \end{macro}
2896 % \end{macro}
2897 % \end{macro}
2898 %
2899 %
2900 % \subsubsection{List of tables}
2901 % \label{sec:implement-lot}
2902 %
2903 % From the Manual \S 3.6 p10
2904 % \begin{quote}
2905 %   \begin{itemize}
2906 %     \item The heading |List of Tables| must appear at the top of the
2907 %       first page.
2908 %     \item The heading must be bold, centered, and without
2909 %       punctuation.
2910 %     \item List table captions exactly as they appear above the
2911 %       tables in the text.
2912 %     \item Single space each entry, but double-space between entries.
2913 %     \item Separate table captions from page numbers with
2914 %       right-justified tabs and dot leaders.
2915 %     \item Do not use periods to separate captions and page numbers.
2916 %       These pages are counted and numbered in lowercase Roman
2917 %       numerals.
2918 %   \end{itemize}
2919 % \end{quote}
2920 %
2921 % \begin{macro}{\cftlottitlefont}
2922 % Much like our |\cfttoctitlefont|, but the list of tables gets
2923 % listed in the TOC.
2924 %    \begin{macrocode}
2925 \renewcommand\cftlottitlefont{\listed@schapter}
2926 %    \end{macrocode}
2927 % \end{macro}
2928 %
2929 % \begin{macro}{\afterlottitleskip}
2930 % Don't add any extra space after the title (the chapter will take
2931 % care of that).  Actually we make a one-line correction so the first
2932 % line matches the first line in the TOC.  HACK!
2933 %    \begin{macrocode}
2934 \setlength\cftafterlottitleskip{-12pt}
2935 %    \end{macrocode}
2936 % \end{macro}
2937 %
2938 % \begin{macro}{\cftbeforetabskip}
2939 % \begin{macro}{\cfttabindent}
2940 % \begin{macro}{\cfttabfont}
2941 % Setup table entries.
2942 %    \begin{macrocode}
2943 \setlength{\cfttabindent}{0pt}
2944 \setlength{\cftbeforetabskip}{\l@cont@sep}
2945 \renewcommand{\cfttabfont}{\normalsize\singlespace}
2946 %    \end{macrocode}
2947 % \end{macro}
2948 % \end{macro}
2949 % \end{macro}
2950 %
2951 %
2952 % \subsubsection{Bibliography}
2953 %
2954 % \begin{environment}{thebibliography}
2955 % The |thebibliography| environment is a list environment.  To save the
2956 % use of an extra counter, it should use |enumiv| as the item
2957 % counter. 
2958 % Instead of using |\item|, items in the bibliography are produced by
2959 % the following commands:\\
2960 %   |\bibitem|\marg{name} : Produces a numbered entry cited as
2961 %   \meta{name}.\\
2962 %   |\bibitem|\oarg{label}\marg{name} : Produces an entry labeled by
2963 %   \meta{Label} and cited by \meta{name}.
2964 %
2965 % Override \cls{book}'s version, adding a line to the table of
2966 % contents.  We split out the section-creation code into
2967 % |\bib@heading| for \pkg{natbib} compatibility.
2968 % (\file{classes.dtx}, L4063).
2969 %    \begin{macrocode}
2970 \renewenvironment{thebibliography}[1]
2971      {\bib@heading%
2972       \list{\@biblabel{\@arabic\c@enumiv}}%
2973            {\settowidth\labelwidth{\@biblabel{#1}}%
2974             \leftmargin\labelwidth
2975             \advance\leftmargin\labelsep
2976             \@openbib@code
2977             \usecounter{enumiv}%
2978             \let\p@enumiv\@empty
2979             \renewcommand\theenumiv{\@arabic\c@enumiv}}%
2980 %    \end{macrocode}
2981 % Because it's hard to do line breaks in bibliographies.
2982 %    \begin{macrocode}
2983       \sloppy
2984 %    \end{macrocode}
2985 %    This is setting the normal (non-infinite) value of
2986 %    |\clubpenalty| for the whole of this environment,
2987 %    so we must reset its stored value also.  (Why is there a |%| after
2988 %    the second 4000 below?)
2989 %    \begin{macrocode}
2990       \clubpenalty4000
2991       \@clubpenalty \clubpenalty
2992       \widowpenalty4000%
2993 %    \end{macrocode}
2994 % Cause a `.' (period) not to produce an end-of-sentence space.
2995 %    \begin{macrocode}
2996       \sfcode`\.\@m}
2997 %    \end{macrocode}
2998 % Warn if an empty `thebibliography' environment is found.
2999 %    \begin{macrocode}
3000      {\def\@noitemerr
3001        {\@latex@warning{Empty `thebibliography' environment}}%
3002       \endlist}
3003 %    \end{macrocode}
3004 % \end{environment}
3005 %
3006 % \begin{macro}{\bib@heading}
3007 % \pkg{natbib} messes with |thebibliography|.  We setup |\bib@heading|
3008 % so we will still get our table of contents entry.
3009 %    \begin{macrocode}
3010 \newcommand{\bib@heading}{%
3011   \listed@schapter{\bibname}%
3012 }
3013 %    \end{macrocode}
3014 % \end{macro}
3015 %
3016 %
3017 % \subsubsection{Index}
3018 %
3019 % \begin{environment}{theindex}
3020 % The environment |theindex| can be used for indices. It makes an
3021 % index with two columns, with each entry a separate paragraph. At
3022 % the user level the commands |\item|, |\subitem| and |\subsubitem|
3023 % are used to produce index entries of various levels. When a new
3024 % letter of the alphabet is encountered an amount of |\indexspace|
3025 % white space can be added.
3026 %
3027 % Override \cls{book}'s version, adding a line to the table of
3028 % contents.  We split out the section-creation code into
3029 % |\bib@heading| for \pkg{natbib} compatibility.
3030 % (\file{classes.dtx}, L4107).
3031 %    \begin{macrocode}
3032 \renewenvironment{theindex}
3033                {\if@twocolumn
3034                   \@restonecolfalse
3035                 \else
3036                   \@restonecoltrue
3037                 \fi
3038 %    \end{macrocode}
3039 % Here we add our TOC entry, and setup two-columness by hand
3040 % to avoid the |\clearpage| in \LaTeX's default |\twocolumn|.
3041 %    \begin{macrocode}
3042   \listed@schapter{\indexname}
3043   \global\columnwidth\textwidth
3044   \global\advance\columnwidth-\columnsep
3045   \global\divide\columnwidth\tw@
3046   \global\hsize\columnwidth
3047   \global\linewidth\columnwidth
3048   \global\@twocolumntrue
3049   \global\@firstcolumntrue
3050   \col@number \tw@
3051 %    \end{macrocode}
3052 %    Parameter changes to |\columnseprule| and |\columnsep| have to be
3053 %    done after |\twocolumn| has acted. Otherwise they can affect the
3054 %    last page before the index.
3055 %    \begin{macrocode}
3056                 \parindent\z@
3057                 \parskip\z@ \@plus .3\p@\relax
3058                 \columnseprule \z@
3059                 \columnsep 35\p@
3060                 \let\item\@idxitem}
3061 %    \end{macrocode}
3062 %    When the document continues after the index and it was a one
3063 %    column document we have to switch back to one column after the
3064 %    index.
3065 %    \begin{macrocode}
3066                {\if@restonecol\onecolumn\else\@DUT@clearpage\fi}
3067 %    \end{macrocode}
3068 % \end{environment}
3069 %
3070 %
3071 % \subsubsection{Words}
3072 % \label{sec:words}
3073 %
3074 % Set the official names of the various sections encountered.  Some of
3075 % these are not defined in \file{classes.dtx} but are close analogs of
3076 % those that are.
3077 %
3078 % \begin{macro}{\dedicationsname}
3079 % From the Manual \S 3.3 p9, ``The heading |Dedications| must appear at
3080 % the top of the page.''
3081 %    \begin{macrocode}
3082 \newcommand\dedicationsname{Dedications}
3083 \let\DUTdedicationsname\dedicationsname
3084 %    \end{macrocode}
3085 % \end{macro}
3086 %
3087 % \begin{macro}{\acknowledgmentsname}
3088 % From the Manual \S 3.4 p9, ``The heading |Acknowledgments| must appear
3089 % at the top of the page.''
3090 %    \begin{macrocode}
3091 \newcommand\acknowledgmentsname{Acknowledgments}
3092 \let\DUTacknowledgmentsname\acknowledgmentsname
3093 %    \end{macrocode}
3094 % \end{macro}
3095 %
3096 % \begin{macro}{\contentsname}
3097 % From the Manual \S 3.5 p9, ``The heading |Table of Contents| must
3098 % appear at the top of the page.''  (\file{classes.dtx}, L4331)
3099 %    \begin{macrocode}
3100 \renewcommand\contentsname{Table of Contents}
3101 \let\DUTcontentsname\contentsname
3102 %    \end{macrocode}
3103 % \end{macro}
3104 %
3105 % \begin{macro}{\listtablename}
3106 % From the Manual \S 3.6 p10, ``The heading |List of Tables| must appear
3107 % at the top of the page.''  (\file{classes.dtx}, L4333)
3108 %    \begin{macrocode}
3109 \renewcommand\listtablename{List of Tables}
3110 \let\DUTlisttablename\listtablename
3111 %    \end{macrocode}
3112 % \end{macro}
3113 %
3114 % \begin{macro}{\listfigurename}
3115 % From the Manual \S 3.7 p10, ``The heading |List of Figures| must appear
3116 % at the top of the page.''  (\file{classes.dtx}, L4332)
3117 %    \begin{macrocode}
3118 \renewcommand\listfigurename{List of Figures}
3119 \let\DUTlistfigurename\listfigurename
3120 %    \end{macrocode}
3121 % \end{macro}
3122 %
3123 % \begin{macro}{\abstractname}
3124 % From the Manual \S 3.8 p10, ``The following heading must be centered at
3125 % the top of the first page: |Abstract|\ldots.''
3126 % (\file{classes.dtx}, L4367)
3127 %    \begin{macrocode}
3128 \newcommand\abstractname{Abstract}
3129 \let\DUTabstractname\abstractname
3130 %    \end{macrocode}
3131 % \end{macro}
3132 %
3133 % \begin{macro}{\bibname}
3134 % From the Manual \S 3.13 p12, ``The heading |Bibliography| (or
3135 % |List of References|) must appear at the top of first page.''
3136 % (\file{classes.dtx}, L4344)
3137 %    \begin{macrocode}
3138 \renewcommand\bibname{Bibliography}
3139 \let\DUTbibname\bibname
3140 %    \end{macrocode}
3141 % \end{macro}
3142 %
3143 % \begin{macro}{\appendixname}
3144 % From the Manual \S 3.14 p12, ``Number the appendicies consecutively
3145 % either alphabetically or numerically (|Appendix A|, |Appendix B|\ldots
3146 % or |Appendix 1|, |Appendix 2|\ldots).''
3147 % (\file{classes.dtx}, L4366)
3148 %    \begin{macrocode}
3149 \renewcommand\appendixname{Appendix}
3150 \let\DUTappendixname\appendixname
3151 %    \end{macrocode}
3152 % \end{macro}
3153 %
3154 % \begin{macro}{\vitaname}
3155 % From the Manual \S 3.15 p13, ``The heading |Vita| must appear at the
3156 % top of the page.''
3157 %    \begin{macrocode}
3158 \newcommand\vitaname{Vita}
3159 \let\DUTvitaname\vitaname
3160 %    \end{macrocode}
3161 % \end{macro}
3162 %
3163 % \begin{macro}{\DUTnames}
3164 % Some packages (e.g.,
3165 %   \href{http://www.ctan.org/tex-archive/macros/latex/required/babel/}{%
3166 %     \pkg{babel}})
3167 % mess with our |\*name| values and we have to restore them.
3168 \newcommand{\DUTnames}{%
3169   \gdef\dedicationsname{\DUTdedicationsname}%
3170   \gdef\contentsname{\DUTcontentsname}%
3171   \gdef\listtablename{\DUTlisttablename}%
3172   \gdef\listfigurename{\DUTlistfigurename}%
3173   \gdef\bibname{\DUTbibname}%
3174   \gdef\appendixname{\DUTappendixname}%
3175   \gdef\vitaname{\DUTvitaname}%
3176 }
3177 % \end{macro}
3178 %
3179 %
3180 % \subsection{Remaining details}
3181 %
3182 %
3183 % \subsubsection{Terminal blank page}
3184 %
3185 % Add a terminal blank page (when |\if@final| is true)
3186 % From the Manual \S 3.16 p13
3187 % \begin{quote}
3188 %   Include a blank page (with no page number) at the end of the
3189 %   thesis or dissertation.  The blank page is neither counted nor
3190 %   numbered.
3191 % \end{quote}
3192 %    \begin{macrocode}
3193 \AtEndDocument{\@DUT@blankpage}
3194 %    \end{macrocode}
3195 %
3196 %
3197 %    \begin{macrocode}
3198 %</class>
3199 %    \end{macrocode}
3200 %
3201 %
3202 % \section{Examples}
3203 %
3204 %
3205 % \subsubsection{Template}
3206 %
3207 %    \begin{macrocode}
3208 %<*template>
3209 % See drexel-thesis.pdf for details.
3210 \documentclass{drexel-thesis}
3211
3212 %% Enter the appropriate information here
3213 \author{}    % Fullname
3214 \title{}     % Title Of Thesis
3215 \DUTmonth{}  % Name of the month of you defense
3216 \DUTyear{}   % Year you are defending
3217 \degree{}    % Your target degree, spelled out
3218 \advisor{}   % Advisor's full name, degree
3219 \copyrighttext{} % If not "All Rights Reserved."
3220
3221 %% unsrt style give references in order of citation
3222 \bibliographystyle{unsrt}
3223
3224 \begin{document}
3225 \begin{preamble}
3226
3227 \begin{dedications} % OPTIONAL
3228 %% Type dedications here
3229 \end{dedications}
3230
3231 \begin{acknowledgments} % OPTIONAL
3232 %% Type acknowledgments here
3233 \end{acknowledgments}
3234
3235 \tableofcontents
3236 \listoftables  % If you have tables
3237 \listoffigures % If you have figures
3238
3239 \begin{abstract}
3240 %% Type abstract here
3241 \end{abstract}
3242 \end{preamble}
3243
3244 \begin{thesis}
3245 %% If your thesis does not use \part{}s, you may want to add a
3246 %% part-level PDF bookmark to set the main matter of from the front
3247 %% matter.
3248 %%\pdfbookmark[-1]{Main Matter}{Main Matter}
3249
3250 %% Use include statements to include your main thesis code
3251 %% from seperate files.
3252 %%\include{part1}
3253 %%...
3254 \end{thesis}
3255
3256 \bibliography{references} % Include references.bib BibTeX
3257
3258 \appendix % If you have appendices
3259 %% include files with your appendicies (if any) here
3260 %%\include{appendixA}
3261 %%...
3262
3263 \begin{vita} % Ph.D. only.
3264 %%Vita text.
3265 \end{vita}
3266
3267 \end{document}
3268 %</template>
3269 %    \end{macrocode}
3270 %
3271 %
3272 % \subsection{A better example}
3273 % \label{sec:better-example}
3274 %
3275 % \subsubsection{Main}
3276 %
3277 %    \begin{macrocode}
3278 %<*example|example-draft>
3279 %% See drexel-thesis.pdf for details.
3280 %<example>\documentclass[subfig,blackref]{drexel-thesis}
3281 %<example-draft>\documentclass[draft,subfig]{drexel-thesis}
3282
3283 %% Enter the appropriate information here
3284 \author{Johny Henry}
3285 \title{Inadequacies of Steam-Driven Boring Machines}
3286 \DUTmonth{July}
3287 \DUTyear{1872}
3288 \degree{Doctor of Philosophy}
3289 \advisor{Collis Potter Huntington, R.R.D.}
3290 \advisor{Advisor 2, Ph.D.}
3291 \advisor{Advisor 3, Ph.D.}
3292 \copyrighttext{\copyrighttextCCBYSA}
3293
3294 \usepackage[super,sort&compress]{natbib} % fancy citation extensions
3295 \bibliographystyle{unsrtnat}
3296
3297 \usepackage{fancyvrb} % nicer verbatim handling
3298 \DefineShortVerb{\|}  % \verb+TEXT+  ->  |TEXT|
3299
3300 %    \end{macrocode}
3301 % Sometimes other packages clobber \cls{drexel-thesis}'s macros and
3302 % environments.  It's ok though, the originals are all aliased to
3303 % |\DUT*|.  We'll just have to use |DUTpreamble| instead.
3304 %    \begin{macrocode}
3305 \renewenvironment{preamble}{% look, we're clobbering an environment!
3306   What preamble?\begingroup\color{white}}{\endgroup}
3307
3308 %    \end{macrocode}
3309 % Use
3310 % \href{http://www.ctan.org/tex-archive/macros/latex/contrib/blindtext/}%
3311 %   {\pkg{blindtext}}
3312 % for dummy text creation.  \pkg{blindtext} requires
3313 % \href{http://www.ctan.org/tex-archive/macros/latex/required/babel/}%
3314 %   {\pkg{babel}}.
3315 %    \begin{macrocode}
3316 \usepackage[english]{babel} % English blindtext
3317 \usepackage{blindtext} % macros for producing dummy output
3318 %    \end{macrocode}
3319 % \pkg{babel} messes with some of our words (\S \ref{sec:words}), so
3320 % we have to reset them.  See the
3321 % \href{http://www.tex.ac.uk/cgi-bin/texfaq2html?label=latexwords}{\TeX\ FAQ}
3322 % for details.
3323 %    \begin{macrocode}
3324 \addto\captionsenglish{\DUTnames}
3325
3326 \begin{document}
3327 \begin{DUTpreamble} % "DUT" because original preamble was clobbered.
3328
3329 \begin{dedications}
3330 We're in \iffinal{final}{draft} mode!
3331
3332 \Blindtext[3]
3333 \end{dedications}
3334
3335 \begin{acknowledgments}
3336 \Blindtext[3]
3337 \end{acknowledgments}
3338
3339 \tableofcontents
3340 \listoftables
3341 \listoffigures
3342
3343 \begin{abstract}
3344 \Blindtext[3]
3345 \end{abstract}
3346 \end{DUTpreamble}
3347
3348 \begin{thesis}
3349 \include{example-1}
3350 \end{thesis}
3351
3352 \bibliography{example-ref}
3353
3354 \appendix
3355 \include{example-a}
3356
3357 \begin{vita}
3358 \Blindtext[3]
3359 \end{vita}
3360
3361 \end{document}
3362 %</example|example-draft>
3363 %    \end{macrocode}
3364 %
3365 %
3366 % \subsubsection{Part}
3367 % \label{section:better-example-part}
3368 %
3369 %    \begin{macrocode}
3370 %<*example-part>
3371 \part{A Part Heading}
3372 \chapter{A Chapter Heading}
3373 \section{A Section Heading}
3374 The following sectioning commands are available:
3375 \begin{quote}
3376  part \\
3377  chapter \\
3378  section \\
3379  subsection \\ 
3380  subsubsection \\ 
3381  paragraph \\ 
3382  subparagraph 
3383 \end{quote}
3384
3385 \subsection{natbib}
3386 You can cite your references with |natbib|'s |\citet| and |\citep|
3387 macros.  See
3388 \href{http://www.ctan.org/tex-archive/macros/latex/contrib/natbib/}
3389 {the natbib manual} for details.
3390
3391 Here we have a text citation \citet{rief97} followed by a
3392 parenthetical citation\citep{rief97}.
3393
3394 \subsubsection{Tables and Figures}
3395 \Blindtext[2]
3396 \begin{table}
3397   \begin{center}
3398   \begin{tabular}{r@{.}l r@{.}l r@{.}l}
3399     \multicolumn{2}{c}{Time (s)} &
3400       \multicolumn{2}{c}{John Henry (m)} &
3401       \multicolumn{2}{c}{Steam drill (m)} \\
3402     0&0 & 0&0 & 0&0 \\
3403     10&0 & 4&3 & 3&75 \\
3404     30&0 & 11&9 & 10&1 \\
3405     \ldots
3406   \end{tabular}
3407   \caption{A table float.} % low caption allowed with floatrow
3408 %% Note the strange |r@{.}l| notation in the |\tabular| column
3409 %% definition.  This allows for numbers aligned at the decimal point
3410 %% (see \href{http://www.stat.unipg.it/tex-man/ltx-68.html}{here}).
3411 %%
3412 %% |\multicolumn{num_cols}{alignment}{contents}| allows the headings
3413 %% to span the pre- and post-decimal columns.
3414   \end{center}
3415 \end{table}
3416 \Blindtext[2]
3417 \begin{figure}
3418   \caption{A figure float. \blindtext} % high caption allowed with floatrow
3419   \begin{center}
3420     \includegraphics[width=0.4\textwidth]{drexel-logo}
3421   \end{center}
3422 \end{figure}
3423 \Blindtext[3]
3424 \begin{figure}
3425   \begin{center}
3426     \subfloat[][]{%
3427       \includegraphics[width=0.2\textwidth]{drexel-logo}%
3428       \label{fig:sub-a}}
3429     \subfloat[][]{%
3430       \includegraphics[width=0.2\textwidth]{drexel-logo}%
3431       \label{fig:sub-b}}
3432     \caption{(a) One subfig float. (b) Another subfig float.%
3433       \label{fig:both}}
3434   \end{center}
3435 \end{figure}
3436 You can reference the subfig floats individually (\ref{fig:sub-a}) or
3437 together (\ref{fig:both}).
3438
3439 \Blindtext[3]
3440
3441 \part{Another Part}
3442 \chapter{Another Chapter}
3443 \Blindtext[5]
3444 \chapter{A Long Title Bla Bla Bla Bla Bla Bla Bla Bla Bla Bla Bla
3445 Bla Bla Bla Bla Bla Bla Bla Bla Bla Bla Bla Bla Bla Bla Bla}
3446 \Blindtext[5]
3447 %</example-part>
3448 %    \end{macrocode}
3449 %
3450 %
3451 % \subsubsection{\BibTeX}
3452 %
3453 % What goes into the \BibTeX\ file |example-ref.bib|?
3454 % For more information, check out this 
3455 % \href{http://cmtw.harvard.edu/Documentation/TeX/Bibtex/Example.html}{basic tutorial}.
3456 % If you want to get deeper, take a look at
3457 % \href{http://www.ctan.org/tex-archive/info/bibtex/tamethebeast/}{Tame the BeaST}.
3458 % Other resources:
3459 % \href{http://www.andy-roberts.net/misc/latex/latextutorial3.html}{how the process works},
3460 %   \href{http://newton.ex.ac.uk/tex/pack/bibtex/btxdoc/node6.html}{entry types},
3461 %   \href{http://newton.ex.ac.uk/tex/pack/bibtex/btxdoc/node7.html}{fields},
3462 %   \href{http://en.wikipedia.org/wiki/BibTeX}{entries and fields},
3463 %   \href{http://www.cs.stir.ac.uk/~kjt/software/latex/showbst.html}{assorted style examples}, and
3464 %   \href{http://liinwww.ira.uka.de/bibliography/Bib.Format.html}{assorted \BibTeX tools}.
3465 %
3466 % Here is an example \BibTeX\ file to get you started.  We define
3467 % strings for the publishers, journals, and authors to avoid
3468 % duplication, minimize the risk of typos, etc.
3469 %
3470 %    \begin{macrocode}
3471 %<*example-bibtex-refs>
3472 %% Publishers
3473 @String{APS = "American Physical Society"}
3474
3475 %% Journals
3476 @String{SCI = "Science"}
3477
3478 %% Authors
3479 @String{MRief = "Rief, Matthias"}
3480 @String{MGautel = "Gautel, Mathias"}
3481 @String{FOesterhelt = "Oesterhelt, Filipp"}
3482 @String{JFernandez = "Fernandez, Julio M."}
3483 @String{HGaub = "Gaub, Hermann E."}
3484
3485 %% Articles
3486 @Article{rief97,
3487   author = MRief #" and "# MGautel #" and "# FOesterhelt #" and "#
3488            JFernandez #" and "# HGaub,
3489   title = "Reversible Unfolding of Individual Titin Immunoglobulin
3490            Domains by {AFM}",
3491   journal = SCI,
3492   volume =  276,
3493   number =  5315,
3494   pages =   "1109--1112",
3495   year =    1997,
3496   doi =     "10.1126/science.276.5315.1109",
3497   URL =     "http://www.sciencemag.org/cgi/content/abstract/276/5315/1109",
3498   eprint =  "http://www.sciencemag.org/cgi/reprint/276/5315/1109.pdf",
3499   mynote = "Seminal paper for force spectroscopy on Titin. Cited by
3500            Dietz '04 (ref 9) as an example of how unfolding large
3501            proteins is easily interpreted (vs.\ confusing unfolding in
3502            bulk), but Titin is a rather simple example of that, because
3503            of its globular-chain structure.",
3504 }
3505 %% ...
3506 %</example-bibtex-refs>
3507 %    \end{macrocode}
3508 %
3509 %
3510 % \subsubsection{Appendix}
3511 %
3512 %    \begin{macrocode}
3513 %<*example-appendix>
3514 \chapter{Some Appendix Heading}
3515 \Blindtext[5]
3516 \chapter{Another Appendix Heading}
3517 \Blindtext[5]
3518 %</example-appendix>
3519 %    \end{macrocode}
3520 %
3521 %
3522 % \section{Known bugs and issues}
3523 %
3524 %
3525 % \subsection{Hacks}
3526 %
3527 % \begin{itemize}
3528 %   \item |\vspace*{0\p@}| space between page top and chapter
3529 %     headings (|\@makechapterhead| and |\@makeschapterhead|,
3530 %     Sec.~\ref{sec:implement-chapters}).
3531 %   \item Extra space under LOT and LOF titles compared to TOC.
3532 %     (Secs.~\ref{sec:implement-lof} and \ref{sec:implement-lot}).
3533 % \end{itemize}
3534 %
3535 %
3536 % \subsection{Bugs}
3537 %
3538 % \begin{itemize}
3539 %   \item Different space between chapter heading and section heading,
3540 %     vs.\ chapter heading and text.  Compare \emph{A Chapter Heading}
3541 %     and \emph{Another Chapter} in \file{example.pdf}.  This is a
3542 %     problem (although with opposite order) in the \cls{book} class
3543 %     itself.  For example, compile
3544 %     \begin{example}
3545 %\documentclass{book}
3546 %\begin{document}
3547 %\chapter{Chapter with text}
3548 %Bla bla bla.
3549 %\chapter{Chapter with section}
3550 %\section{Section}
3551 %Bla bla bla.
3552 %\end{document}
3553 %     \end{example}
3554 %   \item Footer overlap if chapter/section names are particularly long.
3555 %     See \emph{Section in long-titled chapter} in \file{example.pdf}.
3556 %     Workaround: turn off sections in the footer:
3557 %     \begin{example}
3558 %       \fancyfoot[RE,LO]{\scshape\leftmark}
3559 %       \fancyfoot[LE,RO]{}
3560 %     \end{example}
3561 %     For more header or footer manipulation ideas, see \S \ref{sec:fancyhdr}.
3562 % \end{itemize}
3563 %
3564 %
3565 % \Finale
3566 \endinput