summaryrefslogtreecommitdiff
path: root/obsolete
diff options
context:
space:
mode:
authorNorbert Preining <norbert@preining.info>2021-08-04 03:00:43 +0000
committerNorbert Preining <norbert@preining.info>2021-08-04 03:00:43 +0000
commitda02fd6ad1c5fb45c5ec641bf236d8de4745709f (patch)
tree9dcca034494c127f45a96f07db11ee3287e27836 /obsolete
parent363ea487975bcc527ccdb2c9b5dda1b27cf839b2 (diff)
CTAN sync 202108040300
Diffstat (limited to 'obsolete')
-rw-r--r--obsolete/macros/latex/contrib/gatech-thesis/CHANGES217
-rw-r--r--obsolete/macros/latex/contrib/gatech-thesis/COMPLIANCE823
-rw-r--r--obsolete/macros/latex/contrib/gatech-thesis/COPYING339
-rw-r--r--obsolete/macros/latex/contrib/gatech-thesis/ChangeLog362
-rw-r--r--obsolete/macros/latex/contrib/gatech-thesis/INSTALL44
-rw-r--r--obsolete/macros/latex/contrib/gatech-thesis/MANIFEST34
-rw-r--r--obsolete/macros/latex/contrib/gatech-thesis/NEWS90
-rw-r--r--obsolete/macros/latex/contrib/gatech-thesis/NOTES33
-rw-r--r--obsolete/macros/latex/contrib/gatech-thesis/README744
-rw-r--r--obsolete/macros/latex/contrib/gatech-thesis/TODO5
-rw-r--r--obsolete/macros/latex/contrib/gatech-thesis/example-thesis.bib138
-rw-r--r--obsolete/macros/latex/contrib/gatech-thesis/example-thesis.pdfbin0 -> 103611 bytes
-rw-r--r--obsolete/macros/latex/contrib/gatech-thesis/example-thesis.tex181
-rw-r--r--obsolete/macros/latex/contrib/gatech-thesis/gatech-thesis-gloss.sty101
-rw-r--r--obsolete/macros/latex/contrib/gatech-thesis/gatech-thesis-index.ist7
-rw-r--r--obsolete/macros/latex/contrib/gatech-thesis/gatech-thesis-index.sty139
-rw-r--r--obsolete/macros/latex/contrib/gatech-thesis/gatech-thesis-losa.bst264
-rw-r--r--obsolete/macros/latex/contrib/gatech-thesis/gatech-thesis-losa.sty156
-rw-r--r--obsolete/macros/latex/contrib/gatech-thesis/gatech-thesis-patch.sty12
-rw-r--r--obsolete/macros/latex/contrib/gatech-thesis/gatech-thesis.bst1137
-rw-r--r--obsolete/macros/latex/contrib/gatech-thesis/gatech-thesis.cls3150
21 files changed, 7976 insertions, 0 deletions
diff --git a/obsolete/macros/latex/contrib/gatech-thesis/CHANGES b/obsolete/macros/latex/contrib/gatech-thesis/CHANGES
new file mode 100644
index 0000000000..ab5b3ebf47
--- /dev/null
+++ b/obsolete/macros/latex/contrib/gatech-thesis/CHANGES
@@ -0,0 +1,217 @@
+This file contains a (fairly) detailed list of changes to the
+gatech-thesis.cls file. For even more gory detail, see the
+ChangeLog file. For a quick overview, see the NEWS file.
+
+______________ version 1.8 ________________
+* Remove bold from volume (part) titles in Table of Contents.
+* Fix bug that was preventing hyperref and overpic from working
+ concurrently.
+* Revise abstract environment to produce an abstract page that meets the
+ UMI requirements, rather than just replicating the summary page.
+^^^^^^^^^^^^^^ version 1.8 ^^^^^^^^^^^^^^^^
+______________ version 1.7 ________________
+* Remove double spacing of thesis title as per July 2005 manual.
+* Reduce font size of title (title page and approval page) and
+ chapter titles. (Requested by OGS)
+* Reduce font size of author on title page. (Requested by OGS)
+* Reduce font sizes (title, author, volume) on volume divider
+ pages. (Requested by OGS)
+* Reduce chapter title size to match that of thesis title. (Requested
+ by OGS)
+* Major modifications and bugfixes to the approval page. Since theses
+ are now submitted electronically, signature lines are no longer
+ required. Also, the current manual requires affiliation for all
+ readers and that the approval date be typed on the page. Reader (and
+ advis?r and committeechair) commands are now of the form
+ \firstreader{Ignatius Arrogant}[School of Industrial and Systems
+ Engineering][Georgia Institute of Technology]. The second and third
+ arguments default to \department and Georgia Institute of Technology,
+ respectively.
+* Remove bold from chapter lines in Table of Contents. Also adjusted
+ horizontal spacing in table of contents so that chapter numbers
+ lower than XVIII don't overstrike chapter titles.
+^^^^^^^^^^^^^^ version 1.7 ^^^^^^^^^^^^^^^^
+______________ version 1.6 ________________
+* Make Vita doublespaced
+* Correct one-and-a-half-spaced linespace factor to 1.25
+ from 1.33 (1.25 is specified by The LaTeX Companion)
+* Add support for on-demand patches
+* Fix Figure and Table captions to OGS specifications.
+* Add leaders (dots) in the table of contents for
+ chapters. (Requested by OGS)
+
+^^^^^^^^^^^^^^ version 1.6 ^^^^^^^^^^^^^^^^
+______________ version 1.5 ________________
+
+After showing version 1.4 to GT OGS, almost all features were
+approved. Only a few, pre-approved changes were made in this
+1.5 release:
+
+* Caption labels:
+
+ The 'Figure X:' or 'Table Y:' part of a caption is now
+ printed in bold san-serif. If you want to customize this,
+ use the caption2 package. OGS is not concerned about the
+ details here, as long as you are consistent throughout.
+
+* List of Symbols:
+
+ Now handled by the gatech-thesis-losa style instead of the
+ gatech-thesis-gloss style. The -gloss style now generates
+ a real glossary.
+
+ OGS suggests that all symbol defintions be rigidly separated
+ from the symbols themselves. In the julesverne/bellswhistles
+ example, the was implemented via '\setlength{\losahang}{5cm}',
+ to change this:
+
+ SYM1 an explanation of what the "SYM1" stands for. A really
+ long winded explanation so that I can get a linewrap or
+ two.
+
+ AVeryLongSymbol notice that the first line of the definition
+ is intruded upon by the long symbol name, but the linewraps
+ are aligned at the original point.
+
+ ---- to ----
+
+ SYM1 By changing \losahang, all of the definitions
+ now begin and linewrap to a point that is to
+ the right of the longest symbol name.
+
+ AVeryLongSymbol However, this tends to look ugly if you have
+ many short symbols, but one really really long
+ one.
+
+ You will need to set \losahang manually to an appropriate length,
+ depending on the contents of your glosssary.
+
+ You should use gatech-thesis-losa.sty and the \losa{} command
+ to generate a List of Symbols. Use gatech-thesis-gloss.sty and
+ the \gloss command to generate a Glossary.
+
+^^^^^^^^^^^^^^ version 1.5 ^^^^^^^^^^^^^^^^
+______________ version 1.4 ________________
+
+* Style of headings:
+
+ In the most recent version of the OGS Guidelines, the
+ specific format of section, subsection, and subsubsection
+ headings is no longer specified. Because underlining is bad
+ (1) underlining for emphasis is bad typesetting, originally
+ used only when italics where not available [e.g. typewriters,
+ for which the original OGS Guidelines were written]
+ (2) Centering doesn't work on underlined text in section titles,
+ so earlier, we faked it with a 2in indent (hoping that all
+ section titles were short). Bad idea.
+ (3) underlining doesn't break across lines, so if you have a
+ very long section title, it won't wrap. It was suggested
+ (Elena Garcia) to use the ulem.sty package, but
+ (a) that would add a non-base external dependency to the class
+ (b) it doesn't fix the problem, unless you ALSO use the
+ titlesec.sty package to control section titles. Which
+ is yet ANOTHER external dependency.
+ Given (1) and (2), plus the lack of a requirement by OGS, I've
+ redefined the section, subsection, and subsubsection formats thus:
+ section: (old) (not really) centered, underlined, bold
+ section: (new) Large, bold, italic, at left margin
+ subsection: (old) bold, at left margin
+ subsection: (new) bold, at left margin
+ subsubsection: (old) bold, indented 5 "spaces" from left margin
+ subsubsection: (new) italic, indented 0.25in from left margin
+
+* Fixed bug that caused problems when last section of the document
+ (vita?) in \included instead of \inputted
+
+* Chapter headings fixups (only really applies if you're using
+ pagestyle{tcplain} or pagestyle{gtthesis} -- for personal copies?)
+
+ Minor headings fixups: in short "chapters" (vita, references) which
+ will NOT have sections, the chapter header markers are not appropriate.
+ Normal is: \rightmark has chapter name, \leftmark has section name
+ .(when no sections, like vita, \leftmark is empty). It is up to
+ the pagestyle whether the \marks are used. We only use them in
+ gtthesis style. So, these known-short chapters should override
+ the markers and mark both left and right with the "chapter" name:
+ plus, they shouldn't read "Chapter *: Vita" but simply "Vita".
+
+ QUESTION: perhaps abstract, TOC, LOT, ... should get similar
+ treatment? How likely is it that they will run more than two pages
+ long?
+
+* Massive signature page improvements. OGS Guidelines say that
+ if there are more than four signatories, then the signature
+ lines must be arranged in two columns. Before, it didn't. Now
+ it does.
+
+* Fix pagenumbering. New OGS guidelines say that pagenumbers should
+ go on the bottom in the middle, not in the upper right corner.
+ This means that 'plain' is now the default pagestyle. (Old 'gtplain'
+ is now renamed to 'tcplain' -- it's plain, except that the pagenumbers
+ are in the Top Corner. It no longer has anything to do with Georgia
+ Tech, so change the name to something else...hence, tcplain)
+
+* Reorganized the examples. There are now three: the super-simple,
+ very basic ``example-thesis.tex'', the moderately more advanced
+ julesverne/basic/ example, and the full-blown, all the bells and
+ whistles example in julesverne/bellswhistles.
+
+* More pagenumbering fixes: signature page should not be numbered.
+
+* Dedication page: text is automatically centered, per OGS requirements.
+ Looks ugly to me; for personal copies override dedicationtop/bottom:
+ \renewcommand*{\dedicationtop}{\vspace*{\stretch{1}}
+ \renewcommand*{\dedicationbottom}{\vspace*{\stretch{3}}
+ looks nice to me (for UNOFFICIAL copies).
+
+* Table of Contents, List of Figures, List of Tables:
+ OGS guidelines say that items in these lists should be single spaced
+ if a single entry requires more than one line, but that separate
+ entries should be doubled spaced. It wasn't before. Now it is.
+
+* Multivolume Thesis support:
+ Use the \part{} sectioning commands to indicate where Volume II
+ (III, etc) should begin. Put \multivolumetrue in your preamble, and
+ gatech-thesis.cls will automatically generate the volume I "title"
+ page (in addition to the "real" title page.
+
+ It's unclear whether the volume title pages should look the same
+ as the "real" title page, or if the volume I title page should BE
+ the "real" title page. I've made some guesses. If I find out
+ differently, I'll change it.
+
+* gatech-thesis.cls now depends on the base package 'calc'. This
+ should not be a big deal, 'calc' is a part of the standard
+ LaTeX2e distribution.
+
+* Lists of Symbols and Abbreviations, and Index:
+ incorporate minimal support for glossary page and index page
+ within gatech-thesis.cls. However, most functionality is
+ kept in the add-on, option style files
+ gatech-thesis-index.sty and
+ gatech-thesis-gloss.sty
+ Read the comments in those files for more information.
+
+* Bibliography style: gatech-thesis.bst based on ieeetr.bst. Thanks
+ to Elena Garcia for the prod, although this version has
+ a separate heritage than her submission.
+
+* Included code: gatech-thesis.cls now includes David Carlisle's
+ \@removefromreset command as specified in the remreset package
+ available from CTAN as
+ macros/latex/contrib/supported/carlisle/remreset.sty
+ It is provided here as a convenience to the user, and because
+ it helps me eliminate a major kludge within gatech-thesis.cls.
+ The code is included with David Carlisle's permission.
+ remreset.sty is licensed under the LPPL; David has explicitly
+ given permission to include it here, under the GPL.
+
+* Minor fixups for two-sided printing
+ make sure that the last page of the preliminary environment is even,
+ so that Chapter 1 starts on an odd page. (Page numbers were always
+ right, but we need to go ahead an print the blank page, so that
+ duplex printers don't get confused.) It didn't before. Now it does.
+
+^^^^^^^^^^^^^^ version 1.4 ^^^^^^^^^^^^^^^^
+______________ version 1.3 ________________
+baseline.
diff --git a/obsolete/macros/latex/contrib/gatech-thesis/COMPLIANCE b/obsolete/macros/latex/contrib/gatech-thesis/COMPLIANCE
new file mode 100644
index 0000000000..3aaef92dca
--- /dev/null
+++ b/obsolete/macros/latex/contrib/gatech-thesis/COMPLIANCE
@@ -0,0 +1,823 @@
+These notes are a running commentary on important points in
+the Office of Graduate Studies Style Manual. Get it, open it,
+and read along in that and in this file.
+
+Authorities:
+ OGS-SM: Office of Graduate Studies Style Manual
+ OGS: Office of Graduate Studies verbal confirmation
+
+We begin on page 7 of the OGS-SM:
+
+Copyright:
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+The current OGS-SM says that the copyright notice, if used,
+should look like this:
+ Copyright (c) Full Name Year
+on pages 7 and 13. However, on page 25, the example shows
+ Copyright (c) Year by Full Name
+According to OGS, either is fine; gatech-thesis uses the latter
+format.
+
+Fonts
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+The OGS-SM only lists the following approved fonts (and sizes):
+ Arial (11) -- N/A on most TeX systems
+ Courier (11 or 12) -- available, but Why?
+ Century Gothic (11 or 12) -- N/A
+ Geneva (11) -- N/A
+ Helvetica (11 or 12) -- available, but poor math support
+ Times (12) -- available (use mathptmx or txfonts)
+But the OGS-SM doesn't mention Computer Modern, which is the
+default font for TeX, and which has the best math support.
+
+OGS has confirmed that Computer Modern, 11 or 12 point, is
+acceptable. (In TeX, unless you want to pay for proprietary
+fonts, your only other realistic choice of a font with decent
+support for mathematical symbles is Times, using the mathptmx
+package. See julesverne/bellswhistles/jules-verne.sty for more
+information.
+
+Margins
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+By default, the GATECH-THESIS class uses the "new" margin
+specification (1" on top, right, and bottom, 1.5" on left,
+major headings just inside that 1" top margin). To use the
+"old" margins (1" on bottom and right, 1.5" on left and top,
+except that pages with major headings have a 2" top margin),
+call gatech-thesis with the 'oldmargins' option:
+ \documentstyle[oldmargins]{gatech-thesis}
+But this is not recommended. Use the default, "new" margins.
+
+Spacing
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+Line spacing is double throughout, except where the OGS-SM
+specifically says that it should be single (captions, within
+bibliography entries, etc). Don't change this.
+
+Page Numbers
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+The 'plain' pagestyle, which is used by GATECH-THESIS by
+default, places the page numbers at the center within the
+bottom margin, 0.5" from the bottom of the page. This is the
+OGS-SM specification. For official copies, this should not
+be changed.
+
+For personal copies ONLY:
+ You can use the 'tcplain' pagestyle which puts the page
+numbers at the upper right corner (upper outside corner for
+twosided printouts[*]).
+ You can also try the 'gtthesis' pagestyle, which for
+onesided printouts puts the pagenumber at the upper right,
+and the chapter title in the upper left (for twosided,
+the pagenumber is on the outside upper corner; the chapter
+title is on the upper inside corner of right-hand pages, and
+the section title is on the upper inside corner of left-hand
+pages). See the julesverne/bellswhistles/jules-verne.sty file
+for an example of how to do this.
+
+[*] 'twosided' doesn't simply mean that you happen to print
+on a duplex printer. It means that you invoke GATECH-THESIS
+with the 'twoside' option:
+ \documentclass[twoside]{gatech-thesis}
+Don't do this except for personal copies (it's the default
+in draft mode -- which are personal by definition).
+
+Footnotes
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+Nothing special here; use standard LaTeX tools (\footnote,
+\endnote) to do this.
+
+Preliminary Pages
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+The frontmatter pages will automatically obey the proper margin
+guidelines (especially the topmargin) depending on whether you
+use the default (1") margins, or choose the "old" margins (2" on
+major heading pages, like titlepage, etc).
+
+Title Page
+----------------
+Counts as page i, but not marked. Commands which can mmodify
+the appearance:
+
+\titlepagefalse (\titlepagetrue is the default)
+ Don't print a title page
+
+\documentclass[oldmargins]{gatech-thesis}
+ See the Margins section above.
+
+Volume I Title page
+----------------
+If your thesis spans multiple volumes, then you should invoke the
+\multivolumetrue command within your preamble. This will cause
+GATECH-THESIS to automatically generate the Volume I title page
+(which is separate from the "real" title page) immediately after
+the real title page.
+ Volume title pages are not numbered, and *do not count* in the
+page number sequence. So, oddly, you will have
+ titlepage i
+ volume title page -
+ approval page ii
+Just go with it; this weird behavior has been confirmed by OGS
+(even though it isn't all that clear in the OGS-SM)
+
+Commands which modiry the appearance:
+
+\multipagetrue (\multipagefalse is the default)
+ Print it.
+
+\documentclass[oldmargins]{gatech-thesis}
+ See the Margins section above.
+
+Approval page
+----------------
+Formerly known as the signature page, this is generated by default.
+To suppress, invoke the \signaturepagefalse command. The
+signature lines will be generated (in order) for each one of
+the following commands that have been invoked (uninvoked ones
+will be skipped):
+ \principaladvisor{a name}
+ \committeechair{a name}
+ \firstreader{a name}
+ \secondreader{a name}
+ \thirdreader{a name}
+ \fourthreader{a name}
+ \fifthreader{a name}
+ \sixthreader{a name}
+You don't need to invoke them all; just the ones you need.
+The \principaladvisor and \committechair ones are special;
+in addition to the names, the titles ("Committee Chair",
+"Advisor") are also printed.
+
+Each of the commands above has two optional arguments. The first is
+the unit (school/department) name and the second is the institution
+name. If not specified, they will be filled by the student's
+department and Georgia Institute of Technology. Optional arguments go
+AFTER mandatory argument, as in:
+
+ \firstreader{I.M. Professor}[Department of Mathematics and Computer Science][Emory University]
+
+If only the first optional argument is required, the command can be invoked with only one optional argument.
+
+ If there are less than five signatures to be printed, then
+the names will be in a single column. If there are
+more than five, then the signatures will be typeset in two
+columns, as per the OGS-SM. This page is number ii, but the
+page number is not printed (per OGS-SM).
+
+Commands which can modify the appearance:
+
+\signaturepagefalse (default is \signaturepagetrue)
+ suppress printing a signature page
+
+Dedication page
+----------------
+\begin{dedication}
+ ... dedication text ...
+\end{dedication}
+
+Text on this page will be automatically centered vertically, per
+the OGS-SM. However, that looks unbalanced; for personal copies
+you may wish to override the following two commands as follows:
+ \renewcommand{\dedicationtop}{\vspace*{\stretch{1}}
+ \renewcommand{\dedicationbottom{\vspace*{\stretch{3}}
+This positions the text at about 1/4 of the way down the page,
+which looks better in my opinion. But ONLY do this for personal
+copies.
+ Also, if you invoke the \dedicationheadingtrue command in your
+preamble, then the dedication page will have a big "DEDICATION"
+heading on it. Don't do this; it is only provided for backward-
+compatibility with the (very) old gtthesis.sty -- and this
+ugliness was required by the old OGS-SM (but no longer).
+
+Commands which can modify the appearance:
+
+\dedicationheadingtrue (default is \dedicationheadingfalse)
+ print a big "DEDICATION" title at the top of the page
+
+Acknowledgements page
+----------------
+\begin{acknowledgements}
+ ... acknowledgements text ...
+\end{acknowledgements}
+
+nothing special here
+
+About the next several sections (the 'Lists'): If you are using
+the hyperref package, you MUST use hyperref's breaklinks option.
+If you do not, and there is a section title or figure caption
+that spans multiple lines, hyperref will prevent it from breaking
+at the margin (it will stay all on one line, and go off the page).
+ \usepackage[breaklinks,<other options>]{hyperref}
+See julesverne/bellswhistles/jules-verne.sty for a good way
+to handle this.
+
+Table of Contents
+----------------
+\contents
+
+In general, this should "just work". By invoking the \contents
+command somewhere within the preliminary environment in your
+document, GATECH-THESIS will automatically create a Table of
+Contents (and List of Figures and List of Tables[*]) that matches
+the requirements of the OGS-SM. Specifically, that means
+ 1) Chapter titles, sections, subsections, and subsubsections
+ are listed (the OGS-SM requires at least chapters, sections,
+ and subsections)
+ 2) Each entry is singlespaced within, but doublespaced between
+
+[*] assuming the \tablespagefalse, \figurespagefalse commands were
+ not invoked.
+
+However, there are ways to customize the look of the TOC (but don't
+use them in official copies...)
+
+\contentspagefalse
+ don't print the TOC at all (bad idea...)
+
+\labelchaptersintableofcontents
+ inserts an entry into the TOC that says ``CHAPTERS''. Obviously,
+ you should invoke this just before you begin chapter 1. However,
+ there's a slight glitch due to a bug in LaTeX: see
+ julesverne/bellswhistles/hack-part.tex for more info.
+
+\labelappendicesintableofcontents
+ inserts an entry into the TOC that says ``APPENDICES''. Obviously,
+ you should invoke this just before you begin the first appendix
+ (before or after the '\appendix' command; it doesn't matter).
+ However, there's a slight glitch due to a bug in LaTeX: see
+ julesverne/bellswhistles/hack-part.tex for more info.
+
+\settocstring{a string}
+ change the name used for the Table of Contents (def: 'Table of Contents')
+
+
+\setchaptertocdepth{a number}
+ set how ``deep'' to number within chapters in the table of contents.
+ This defaults to '2', which means chapters, sections, and subsections,
+ You may wish to set this to '3' (thus adding subsubsections) -- but
+ don't use '0' or '1' because the OGS-SM requires that chapters,
+ sections, and subsections are listed in the TOC.
+
+\setappendixtocdepth{a number}
+ set how ``deep'' to number within appendices (chapter{}''s after
+ the \appendix command) in the table of contents. This defaults
+ to '0', which means list the Appendices themselves alone, with
+ no sections. This is the OGS-SM default; but you may list smaller
+ divisions as well by setting this to 1, 2, or 3.
+
+\settocdepth
+ temporarily change how "deep" to number in the table of
+ contents for current chapter/section. For example, you
+ usually include \subsection{}''s in the TOC (\setchaptertocdepth{2})
+ but in chapter 5 you want to include subsubsections as well:
+ \chapter{This is Chapter 5}\settocdepth{3}. In chapter 6 the
+ default depth of 2 is reasserted. Change the overall defaults using
+ the above two commands instead.
+
+\multivolumetrue
+\part{}
+ If \multivolumetrue is invoked in the preamble, then the very first
+ item in the TOC is the phrase "Volume I" centered (with no page number)
+ It is only inserted to show where the volume divisions are, but since
+ the volume title pages have no number, then neither do the volume
+ labels in the TOC. Also, another "Volume II" label (III, IV, ...)
+ is inserted into the TOC each time \part{} is invoked. But,
+ see julesverne/bellswhistles/hack-part.tex for information about
+ working around a LaTeX bug.
+ This particular bit of magic is not discussed at all in the OGS-SM,
+ but OGS has seen and approved the results.
+
+List of Tables
+----------------
+\contents
+
+In general, this should "just work". By invoking the \contents
+command somewhere within the preliminary environment in your
+document, GATECH-THESIS will automatically create a List of
+Tables (and List of Figures and Table of Contents[*]) that matches
+the requirements of the OGS-SM. Specifically, that means
+ 1) Each entry is singlespaced within, but doublespaced between
+ 2) OGS-SM requires that the entries in the List of Tables exactly
+ match the captions at each table. This means you should not
+ use the `\caption[short caption]{long caption}' construction;
+ just use `\caption{the caption}'.
+
+[*] assuming the \contentspagefalse, \figurepagesfalse commands were
+ not invoked.
+
+However, there are ways to customize the look of the LOT (but don't
+use them in official copies...)
+
+\setlotstring
+ change the name used for the List of Tables (def: 'List of Tables')
+
+List of Figures
+----------------
+\contents
+
+In general, this should "just work". By invoking the \contents
+command somewhere within the preliminary environment in your
+document, GATECH-THESIS will automatically create a List of
+Figures (and List of Tables and Table of Contents[*]) that matches
+the requirements of the OGS-SM. Specifically, that means
+ 1) Each entry is singlespaced within, but doublespaced between
+ 2) OGS-SM requires that the entries in the List of Figures exactly
+ match the captions at each table. This means you should not
+ use the `\caption[short caption]{long caption}' construction;
+ just use `\caption{the caption}'.
+
+[*] assuming the \contentspagefalse, \tablespagefalse commands were
+ not invoked.
+
+However, there are ways to customize the look of the LOF (but don't
+use them in official copies...)
+
+\setlofstring
+ change the name used for the List of Figures (def: 'List of Figures')
+
+List of Symbols or Abbreviations
+----------------
+\usepackage{gatech-thesis-losa}
+
+This is not generated by default, since it isn't widely used (but
+every thesis has tables and figures). Also, the implementation
+provided requires additional packages that are not included with
+this distribution.
+
+To generate a List of Symbols or Abbreviations (LOSA), you simply
+do the following in your preamble:
+ \usepackage{gatech-thesis-losa}
+ \losafiles{<database file, sans .bib suffix>}
+gatech-thesis-losa.sty depends on and automatically loads the
+gloss.sty package -- but you need to insure that gloss.sty is
+installed in your TeX system.
+
+By doing this, the LOSA will be automatically generated and included
+in the frontmatter, just after the LOF -- and it will be added to the
+TOC. Of course, you need actual *entries* in the symbols database
+file -- which must end in .bib; see the gloss.sty documentation
+for the appropriate format. You also need actual citations to those
+entries within your bodytext, like this:
+ \losa{key}.
+Note that \losa{<key>} typesets the <word> from the <key> entry of
+the losafile within the text, so there''s no need to do this:
+ (BAD) word\losa{key-for-word}
+Again, you should read the gloss.sty documentation for more info, but
+basically gatech-thesis-losa.sty makes it simple:
+ 1. insert the two commands above into your preamble
+ 2. create a database with your glossary definitions
+ 3. sprinkle \losa{} citations in your text
+ 4. run ``bibtex'' on the <rootfile>.losa.aux file created
+ after the first ``latex'' run. (But don''t include the
+ .aux extension. So say ``bibtex <rootfile>.losa'' You
+ can do this at the same time you run ``bibtex'' for your
+ references.
+ 5. run ``latex'' twice more
+
+To customize the List of Symbols or Abbreviations, you can use the
+following commands
+
+\setlosastring{a string}
+ change the name used for the List of Symbols or Abbreviations
+ (def: 'List of Symbols or Abbreviations')
+
+\setlength{\losahang}{a dimension}
+ The GSO prefers that the symbol descriptions are rigidly
+ separated from the symbols themselves. Sometimes, if you have
+ very long symbols/abbreviations, you may need to make
+ \losahang bigger than its default value of 2cm, by using a
+ command similar to the following, within your document preamble:
+ \setlength{\losahang}{4cm}
+
+Glossary
+----------------
+\usepackage{gatech-thesis-gloss}
+
+This is not generated by default, since it isn't widely used (but
+every thesis has tables and figures). Also, the implementation
+provided requires additional packages that are not included with
+this distribution. Finally, the current OGS-SM doesn't say
+anything about a Glossary or List of Nomenclature, so we're
+on our own, here. However, the old OGS-SM did mention it, briefly.
+
+To generate a Glossary or List of Nomenclature, you simply
+do the following in your preamble:
+ \usepackage{gatech-thesis-gloss}
+ \glossfiles{<database file, sans .bib suffix>}
+gatech-thesis-gloss.sty depends on and automatically loads the
+gloss.sty package -- but you need to insure that gloss.sty is
+installed in your TeX system.
+
+By doing this, the glossary will be automatically generated and
+included in the frontmatter, just after the LOF (or LOSA, if you
+have it) -- and it will be added to the TOC. Of course, you need
+actual *entries* in the glossary database file -- which must end
+in .bib; see the gloss.sty documentation for the appropriate format.
+You also need actual citations to those entries within your
+bodytext, like this:
+ \gloss{key}.
+Note that \gloss{<key>} typesets the <word> from the <key> entry of
+the glossfile within the text, so there''s no need to do this:
+ (BAD) word\gloss{keyforword}
+Read the gloss.sty documentation for more info, but basically
+gatech-thesis-gloss.sty makes it simple:
+ 1. insert the two commands above into your preamble
+ 2. create a glossfile with your glossary definitions
+ 3. sprinkle \gloss{} citations in your text
+ 4. run ``bibtex'' on the <rootfile>.gls.aux file created
+ after the first ``latex'' run. (But don''t include the
+ .aux extension. So say ``bibtex <rootfile>.gls'' You
+ can do this at the same time you run ``bibtex'' for your
+ references.
+ 5. run ``latex'' twice more
+
+To customize the Glossary or List of Nomenclature, you can use the
+following commands
+
+\setglossstring{a string}
+ change the name used for the List of Symbols or Abbreviations
+ (def: 'List of Symbols or Abbreviations')
+
+\setlength{\glosshang}{a dimension}
+ Unlike the \losahang comment above, it doesn't make sense to
+rigidly separate the description from the glossary terms; the
+glossary terms are usually too long for this to be aesthetic.
+However, this has NOT been confirmed by OGS. If you use a
+glossary, be sure to confirm that the current behavior is okay.
+If not, then you can use \setlength{\glosshang}{a dimension}
+to fix it.
+
+Summary
+----------------
+\begin{summary}
+ ... summary text ...
+\end{summary}
+
+Nothing special to say here
+
+Other frontmatter
+----------------
+
+Before we leave the "Preliminary pages" section (pg. 15 of the OGS-SM),
+there are a few additional environments that are provided by
+the GATECH-THESIS class, but are not discussed in the OGS-SM:
+
+The entire "frontmatter" section should be enclosed within the
+"preliminary" environment, like this:
+
+\begin{document}
+\begin{preliminary}
+ \begin{dedication} dedication text \end{dedication}
+ ... etc ...
+ \contents
+ \begin{summary} summary text \end{summary}
+\end{preliminary}
+... chapters ...
+
+Preface
+----------------
+\begin{preface}
+ ... preface text ...
+\end{preface}
+
+The (current) OGS-SM doesn't mention a preface, but if used it
+should go after the dedication. The old OGS-SM did mention it.
+
+Forward
+----------------
+\prefacesection{Forward}{%
+ ... forward text ...
+}
+
+The (current) OGS-SM doesn't mention a preface, but if used it
+should go after the dedication. The old OGS-SM did mention it.
+
+There is no 'Forward' envronment; you can use the \prefacesection
+command to create any frontmatter section you like, as follows:
+ \prefacesection{title of the section}{section text}
+
+Text Pages
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+\chapter{chapter title}
+chapter text ...
+\chapter{the next chapter title}
+chapter text ...
+
+\appendix
+\chapter{appendix title}
+appendix text ...
+\chapter{the next appendix title}
+appendix text ...
+
+Section Heading Formats
+---------------
+The new OGS-SM no longer specifies what the section,
+subsection, or subsubsection headings should look like; according
+to OGS, they don't really care: as long as it looks professional
+and you are consistent. I chose to define these as follows:
+
+Sections: Large, Bold, Italic, Flush left
+SubSections: Bold, Flush left
+SubSubSections: Italic, indented
+
+If you wish to override and define your own formats, you can
+either \renewcommand{\section}{ ... } (see any good LaTeX book),
+or \usepackage{titlesec}. I recommend the latter. Actually,
+I recommend leaving it alone; concentrate on writing your
+dissertation and don't get distracted by messing around with
+formatting.
+
+You can use a number of special environments for specific
+purposes. The first two are useful; avoid the other four.
+
+\begin{longquote}...\end{longquote}:
+ Single-spaced version of the ``quote'' environment.
+\begin{longquotation}...\end{longquotation}:
+ Single-spaced version of the ``quotation'' environment.
+\begin{singlespaced}...\end{singlespaced}:
+ Format single-spaced paragraphs.
+\begin{oneandahalfspaced}...\end{oneandahalfspaced}:
+ Format 1 1/2-spaced paragraphs.
+\begin{doublespaced}...\end{doublespaced}:
+ Format double-spaced paragraphs.
+\begin{newspacing}{<n>}...\end{newspacing}:
+ Format paragraphs with an interline spacing of ``n''.
+
+
+Reference Material
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+Nothing really special to say here.
+
+Appendices
+----------------
+See the 'Text Pages' section above, as well as the 'Table of
+Contents' discussion above.
+
+References
+----------------
+\bibfiles{a .bib database}% in the preamble
+\bibliographystyle{gatech-thesis}% just after \begin{document}
+\references% somewhere in the postliminary env.
+
+Within the \postliminary environment, execute the \references
+command to generate an OGS-SM compliant bibliography. The
+gatech-thesis.bst style is:
+
+ numeric labels, sorted, IEEE abbreviations (vol. not volume,
+ no. not number, authors' first names abbreviated), quotes
+ around article titles, commas separate all fields except after
+ book titles and before "notes". Authors names typeset
+ in small caps, surname first.
+
+This has been approved by OGS. You may also use the 'plain'
+bibliography style (\bibliographystyle{plain}), if you wish.
+
+Vita
+----------------
+\begin{vita}
+ ... vita text ...
+\end{vita}
+
+This should be the very last page of your disseration, and should come
+immediately before \end{postliminary}\end{document}.
+
+Index
+----------------
+\usepackage{gatech-thesis-index}
+
+This is not generated by default, since it isn't widely used (but
+every thesis has tables and figures). Also, the implementation
+provided requires additional packages that are not included with
+this distribution. Finally, the current OGS-SM doesn't say
+anything about an index; neither did the old OGS-SM.
+
+To generate an index, do the following in your preamble:
+ \usepackage{gatech-thesis-index}
+and execute
+ \gtindex
+somewhere in the postliminary environment of your thesis.
+Remember, VITA should be last, so \gtindex must precede it.
+
+gatech-thesis-index.sty depends on and automatically loads the
+index.sty package and the multicol.sty package -- but you need
+to insure that index.sty and multicol.sty are installed in your
+TeX system (index.sty is included in the `camel' package on
+MikTeX and CTAN).
+
+By doing this, the index will be automatically generated and
+included in the TOC. Of course, you need actual *index references*
+within your document, like this:
+ foo\index{foo}.
+Read the index.sty documentation for more info, but basically
+gatech-thesis-index.sty makes it simple:
+ 1. insert the \usepackage and \gtindex commands into your document
+ 2. sprinkle \index{} citations in your text
+ 3. run ``makeindex'' on the <rootfile>.idx file created
+ after the first ``latex'' run, like this:
+ makeindex -s gatech-thesis-index.ist <rootfile>.idx
+ This will create <rootfile>.ind (the gatech-thesis-index.ist
+ file is a format specification for the index). If you want
+ to customize the index format, copy gatech-thesis-index.ist to
+ ``myformat.ist'' and change the copy. Use ``-s myformat.ist''
+ instead of gatech-thesis-index.ist.
+ You can run the makeindex command at the same time you run `
+ `bibtex'' for your references and/or glossary.
+ 4. run ``latex'' twice more (the same ``twice more'' needed for
+ bibtex and gatech-thesis-gloss.sty)
+
+To customize the Index, you can use the following commands
+
+\setindexstring{a string}
+ change the name used for the Index (def: 'Index')
+
+Tables and Figures
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+Some useful packages you might want to investigate include
+ subfigure -- place multiple figures within a single 'figure'
+ environment
+ floatingfigure -- for figures that do not take up the full
+ width of the page, you may issue this command between
+ paragraphs, and the next paragraph will be typeset
+ next to the narrow figure. OGS does accept this sort
+ of thing, but...
+ wrapfig -- ditto, but with a difference: you may issue this
+ command inside a paragraph, but LaTeX will NOT optimize
+ the figure's position -- which might lead to extra
+ whitespace, mostly empty pages, etc. Recommend against.
+ longtable -- for tables that extend beyond a single page (don't
+ use the supertab package, it can't handle secondary caption
+ properly)
+
+Captions:
+---------------
+ The OGS-SM requires that Table captions be placed before the
+ caption, and Figure captions be placed after the figure. You can
+ only do this manually; it can't be automatted. To create a
+ table, do this:
+
+ \begin{table}[tbp]
+ \caption{the caption}
+ \label{the label}% must come after the caption
+ \begin{center}
+ \begin{tabular}
+ ....
+ \end{tabular}
+ \end{center}
+ \end{table}
+
+ For a figure, do this:
+
+ \begin{figure}[tbp]
+ \begin{center}
+ \includegraphics[some options]{a graphics file}
+ \end{center}
+ \caption{the caption}
+ \label{the label}% must come after the caption
+ \end{table}
+
+ Notice that the \caption{} command comes before the actual
+ tabular in the table, but comes after the includegraphics in the
+ figure. This is the only way to insure that the captions go where
+ the OGS-SM requires.
+
+ The caption format is (by default) 'Figure X: caption-text', and
+ the 'Figure X:' part is typeset in bold, while the caption-text
+ is typeset in 'normal weight' like the rest of the body text.
+ To change this, use the caption2 package (note that
+ \usepackage[bf]{caption2}
+ will result in captions that are identical to the GATECH-THESIS
+ default). But for an official GT thesis, you want the default;
+ for personal copies, I like using san-serif bold like so:
+ (DON'T DO THIS) \usepackage[sf,bf]{caption2}
+
+Placement
+--------------
+LaTeX usually does a fairly decent job of obeying rational placement
+rules for 'floats' (e.g. tables and figures). If you need to force
+a float to a specific location (note that using the 'h' option for
+the figure/table environments does not do what you think it does; nor
+does using the '!' option),
+try the following:
+ \usepackage{float}
+ \restylefloat{figure}% or table
+ \begin{figure}[H]% <<< note the 'H' for 'Here'
+However, this can really get you into trouble: the H'ed figure
+could get placed before a non-H'ed one, even if it follows the
+non-H'ed figure in the document source. This will cause, for
+example, Figure 4 to be on a page before Figure 3!
+
+To work around this, you could *additionally*
+ \usepackage{afterpage}
+and use
+ \afterpage{\clearpage\begin{figure}[H]...\end{figure}}
+But THAT can lead to pages will very little text, and lots of
+empty white space -- which itself is a violation of the OGS-SM.
+
+Think about it. Do you REALLY care if a figure is 2 or 3 pages
+away from the text that references it? You're writing a 100+
+page document...messing with float placement is usually more
+trouble than it is worth. Don't.
+
+For more information, see section 6.2 in the LaTeX companion.
+
+If you need to turn a figure or table on its side (landscape),
+use the 'rotating' package.
+
+Numbering
+----------------
+LaTeX will handle the Figure # and Table # sequences for you.
+
+For tables that will extend over more than one page, use the
+'longtable' package. To follow the OGS-SM requirement that
+subsequent pages of the same page also have captions, and that
+these captions say only
+ Table XX (cont'd)
+you must pay careful attention when constructing the table (and
+the longtable environment is different from the table environment
+plus a tabular). However, the best we can do -- without massive
+TeX code, is that subsequent captions are
+ Table XX: (cont'd)
+(the ':' is not in the original requirements). However, to even
+get this far, you must do something like this:
+
+ \begin{longtable}[c]{|c|c|c|}
+ \caption{the `real' caption}
+ \\ \hline
+ Column A & Column B & Column C \\ \hline
+ \endfirsthead% the preceding will be invoked ONLY at the
+ % beginning of the table
+ \caption[]{(cont'd)}% <<<<< This is the magic caption
+ \\ \hline
+ column a & column b & column c \\ %\hline -- not necessary
+ % longtable takes care of it for us.
+ \endhead% the preceding will be invoked at the top
+ % of every page except the first one
+ % now we do the data...
+ 1 & 2 & 3 \\ \hline
+ 4 & 5 & 6 \\ \hline
+ ....
+ \end{longtable}
+
+The 'magic' caption[]{(cont'd)} statement within the header section
+means that every page (except the first) will get that caption --
+but since it has an empty optional argument, the '(con't)' will
+NOT get listed in the LOT, and the table counter will not be
+incremented. Which is what we want.
+
+Note that longtables are not floating; they will go exactly where
+you put them. (There is no need for a longtable to float; it is
+able to break at the pagebreak and continue on the next page).
+However, don't use longtable for everything tabular; a 4-line
+table will look really silly broken across two pages.
+
+You can also play games with 'continued on next page' and
+'continued from previous page' within the table itself, by
+using \endfoot and \endlastfoot commands and the multicolumn
+command. See the longtable documentation, and Chapter 5 of the
+LaTeX Companion.
+
+Citations of Tables and Figures
+----------------
+The OGS-SM states that you should always reference figures as
+'Figure 10' and tables as 'Table 4'. However, you don't want
+a linebreak (or worse, a page break) to occur betwen 'Table' and
+'4'; further, you don't want TeX to hyphenate 'Fig'-'ure'. So,
+in LaTeX, this means if you have a figure with the label
+{myfigure} and a table with the label {mytable}, you should
+cite them as:
+
+ \mbox{Figure~\ref{myfigure}}
+ \mbox{Table~\ref{mytable}}
+
+It's probably a good idea to simply define new commands in your
+preamble:
+
+ \newcommand{\figref}[1]{\mbox{Figure~\ref{#1}}}
+ \newcommand{\tabref}[1]{\mbox{Table~\ref{#1}}}
+
+because sooner or later, you WILL forget to type all that extra
+junk. Just define the new commands as you like, and then do
+
+ \figref{myfigure}
+ \tabref{mytable}
+
+and be done. Note that these commands are NOT provided by
+GATECH-THESIS; not being strictly necessary, I don't want to
+cramp any potential users' style by forcing my way. However,
+see the julesverne/bellswhistles/jules-verne.sty file...
+
+Multivolume Theses or Dissertations
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+\multivolumetruee
+\part{}
+
+This was already covered in the Table of Contents section,
+above. One note, however: don't attempt to "name" your volumes.
+That is, use \part{}, not \part{Title of Volume II}
+
+GATECH-THESIS will handle it if you do name your volumes -- but
+the OGS-SM doesn't allow it, and there is no way short of
+redefining the entire 'preliminary' environment to give Volume I
+a name.
+
+
diff --git a/obsolete/macros/latex/contrib/gatech-thesis/COPYING b/obsolete/macros/latex/contrib/gatech-thesis/COPYING
new file mode 100644
index 0000000000..1bf1526387
--- /dev/null
+++ b/obsolete/macros/latex/contrib/gatech-thesis/COPYING
@@ -0,0 +1,339 @@
+ GNU GENERAL PUBLIC LICENSE
+ Version 2, June 1991
+
+ Copyright (C) 1989, 1991 Free Software Foundation, Inc.
+ 59 Temple Place, Suite 330, Boston, MA 02111 USA
+ Everyone is permitted to copy and distribute verbatim copies
+ of this license document, but changing it is not allowed.
+
+ Preamble
+
+ The licenses for most software are designed to take away your
+freedom to share and change it. By contrast, the GNU General Public
+License is intended to guarantee your freedom to share and change free
+software--to make sure the software is free for all its users. This
+General Public License applies to most of the Free Software
+Foundation's software and to any other program whose authors commit to
+using it. (Some other Free Software Foundation software is covered by
+the GNU Library General Public License instead.) You can apply it to
+your programs, too.
+
+ When we speak of free software, we are referring to freedom, not
+price. Our General Public Licenses are designed to make sure that you
+have the freedom to distribute copies of free software (and charge for
+this service if you wish), that you receive source code or can get it
+if you want it, that you can change the software or use pieces of it
+in new free programs; and that you know you can do these things.
+
+ To protect your rights, we need to make restrictions that forbid
+anyone to deny you these rights or to ask you to surrender the rights.
+These restrictions translate to certain responsibilities for you if you
+distribute copies of the software, or if you modify it.
+
+ For example, if you distribute copies of such a program, whether
+gratis or for a fee, you must give the recipients all the rights that
+you have. You must make sure that they, too, receive or can get the
+source code. And you must show them these terms so they know their
+rights.
+
+ We protect your rights with two steps: (1) copyright the software, and
+(2) offer you this license which gives you legal permission to copy,
+distribute and/or modify the software.
+
+ Also, for each author's protection and ours, we want to make certain
+that everyone understands that there is no warranty for this free
+software. If the software is modified by someone else and passed on, we
+want its recipients to know that what they have is not the original, so
+that any problems introduced by others will not reflect on the original
+authors' reputations.
+
+ Finally, any free program is threatened constantly by software
+patents. We wish to avoid the danger that redistributors of a free
+program will individually obtain patent licenses, in effect making the
+program proprietary. To prevent this, we have made it clear that any
+patent must be licensed for everyone's free use or not licensed at all.
+
+ The precise terms and conditions for copying, distribution and
+modification follow.
+
+ GNU GENERAL PUBLIC LICENSE
+ TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION
+
+ 0. This License applies to any program or other work which contains
+a notice placed by the copyright holder saying it may be distributed
+under the terms of this General Public License. The "Program", below,
+refers to any such program or work, and a "work based on the Program"
+means either the Program or any derivative work under copyright law:
+that is to say, a work containing the Program or a portion of it,
+either verbatim or with modifications and/or translated into another
+language. (Hereinafter, translation is included without limitation in
+the term "modification".) Each licensee is addressed as "you".
+
+Activities other than copying, distribution and modification are not
+covered by this License; they are outside its scope. The act of
+running the Program is not restricted, and the output from the Program
+is covered only if its contents constitute a work based on the
+Program (independent of having been made by running the Program).
+Whether that is true depends on what the Program does.
+
+ 1. You may copy and distribute verbatim copies of the Program's
+source code as you receive it, in any medium, provided that you
+conspicuously and appropriately publish on each copy an appropriate
+copyright notice and disclaimer of warranty; keep intact all the
+notices that refer to this License and to the absence of any warranty;
+and give any other recipients of the Program a copy of this License
+along with the Program.
+
+You may charge a fee for the physical act of transferring a copy, and
+you may at your option offer warranty protection in exchange for a fee.
+
+ 2. You may modify your copy or copies of the Program or any portion
+of it, thus forming a work based on the Program, and copy and
+distribute such modifications or work under the terms of Section 1
+above, provided that you also meet all of these conditions:
+
+ a) You must cause the modified files to carry prominent notices
+ stating that you changed the files and the date of any change.
+
+ b) You must cause any work that you distribute or publish, that in
+ whole or in part contains or is derived from the Program or any
+ part thereof, to be licensed as a whole at no charge to all third
+ parties under the terms of this License.
+
+ c) If the modified program normally reads commands interactively
+ when run, you must cause it, when started running for such
+ interactive use in the most ordinary way, to print or display an
+ announcement including an appropriate copyright notice and a
+ notice that there is no warranty (or else, saying that you provide
+ a warranty) and that users may redistribute the program under
+ these conditions, and telling the user how to view a copy of this
+ License. (Exception: if the Program itself is interactive but
+ does not normally print such an announcement, your work based on
+ the Program is not required to print an announcement.)
+
+These requirements apply to the modified work as a whole. If
+identifiable sections of that work are not derived from the Program,
+and can be reasonably considered independent and separate works in
+themselves, then this License, and its terms, do not apply to those
+sections when you distribute them as separate works. But when you
+distribute the same sections as part of a whole which is a work based
+on the Program, the distribution of the whole must be on the terms of
+this License, whose permissions for other licensees extend to the
+entire whole, and thus to each and every part regardless of who wrote it.
+
+Thus, it is not the intent of this section to claim rights or contest
+your rights to work written entirely by you; rather, the intent is to
+exercise the right to control the distribution of derivative or
+collective works based on the Program.
+
+In addition, mere aggregation of another work not based on the Program
+with the Program (or with a work based on the Program) on a volume of
+a storage or distribution medium does not bring the other work under
+the scope of this License.
+
+ 3. You may copy and distribute the Program (or a work based on it,
+under Section 2) in object code or executable form under the terms of
+Sections 1 and 2 above provided that you also do one of the following:
+
+ a) Accompany it with the complete corresponding machine-readable
+ source code, which must be distributed under the terms of Sections
+ 1 and 2 above on a medium customarily used for software interchange; or,
+
+ b) Accompany it with a written offer, valid for at least three
+ years, to give any third party, for a charge no more than your
+ cost of physically performing source distribution, a complete
+ machine-readable copy of the corresponding source code, to be
+ distributed under the terms of Sections 1 and 2 above on a medium
+ customarily used for software interchange; or,
+
+ c) Accompany it with the information you received as to the offer
+ to distribute corresponding source code. (This alternative is
+ allowed only for noncommercial distribution and only if you
+ received the program in object code or executable form with such
+ an offer, in accord with Subsection b above.)
+
+The source code for a work means the preferred form of the work for
+making modifications to it. For an executable work, complete source
+code means all the source code for all modules it contains, plus any
+associated interface definition files, plus the scripts used to
+control compilation and installation of the executable. However, as a
+special exception, the source code distributed need not include
+anything that is normally distributed (in either source or binary
+form) with the major components (compiler, kernel, and so on) of the
+operating system on which the executable runs, unless that component
+itself accompanies the executable.
+
+If distribution of executable or object code is made by offering
+access to copy from a designated place, then offering equivalent
+access to copy the source code from the same place counts as
+distribution of the source code, even though third parties are not
+compelled to copy the source along with the object code.
+
+ 4. You may not copy, modify, sublicense, or distribute the Program
+except as expressly provided under this License. Any attempt
+otherwise to copy, modify, sublicense or distribute the Program is
+void, and will automatically terminate your rights under this License.
+However, parties who have received copies, or rights, from you under
+this License will not have their licenses terminated so long as such
+parties remain in full compliance.
+
+ 5. You are not required to accept this License, since you have not
+signed it. However, nothing else grants you permission to modify or
+distribute the Program or its derivative works. These actions are
+prohibited by law if you do not accept this License. Therefore, by
+modifying or distributing the Program (or any work based on the
+Program), you indicate your acceptance of this License to do so, and
+all its terms and conditions for copying, distributing or modifying
+the Program or works based on it.
+
+ 6. Each time you redistribute the Program (or any work based on the
+Program), the recipient automatically receives a license from the
+original licensor to copy, distribute or modify the Program subject to
+these terms and conditions. You may not impose any further
+restrictions on the recipients' exercise of the rights granted herein.
+You are not responsible for enforcing compliance by third parties to
+this License.
+
+ 7. If, as a consequence of a court judgment or allegation of patent
+infringement or for any other reason (not limited to patent issues),
+conditions are imposed on you (whether by court order, agreement or
+otherwise) that contradict the conditions of this License, they do not
+excuse you from the conditions of this License. If you cannot
+distribute so as to satisfy simultaneously your obligations under this
+License and any other pertinent obligations, then as a consequence you
+may not distribute the Program at all. For example, if a patent
+license would not permit royalty-free redistribution of the Program by
+all those who receive copies directly or indirectly through you, then
+the only way you could satisfy both it and this License would be to
+refrain entirely from distribution of the Program.
+
+If any portion of this section is held invalid or unenforceable under
+any particular circumstance, the balance of the section is intended to
+apply and the section as a whole is intended to apply in other
+circumstances.
+
+It is not the purpose of this section to induce you to infringe any
+patents or other property right claims or to contest validity of any
+such claims; this section has the sole purpose of protecting the
+integrity of the free software distribution system, which is
+implemented by public license practices. Many people have made
+generous contributions to the wide range of software distributed
+through that system in reliance on consistent application of that
+system; it is up to the author/donor to decide if he or she is willing
+to distribute software through any other system and a licensee cannot
+impose that choice.
+
+This section is intended to make thoroughly clear what is believed to
+be a consequence of the rest of this License.
+
+ 8. If the distribution and/or use of the Program is restricted in
+certain countries either by patents or by copyrighted interfaces, the
+original copyright holder who places the Program under this License
+may add an explicit geographical distribution limitation excluding
+those countries, so that distribution is permitted only in or among
+countries not thus excluded. In such case, this License incorporates
+the limitation as if written in the body of this License.
+
+ 9. The Free Software Foundation may publish revised and/or new versions
+of the General Public License from time to time. Such new versions will
+be similar in spirit to the present version, but may differ in detail to
+address new problems or concerns.
+
+Each version is given a distinguishing version number. If the Program
+specifies a version number of this License which applies to it and "any
+later version", you have the option of following the terms and conditions
+either of that version or of any later version published by the Free
+Software Foundation. If the Program does not specify a version number of
+this License, you may choose any version ever published by the Free Software
+Foundation.
+
+ 10. If you wish to incorporate parts of the Program into other free
+programs whose distribution conditions are different, write to the author
+to ask for permission. For software which is copyrighted by the Free
+Software Foundation, write to the Free Software Foundation; we sometimes
+make exceptions for this. Our decision will be guided by the two goals
+of preserving the free status of all derivatives of our free software and
+of promoting the sharing and reuse of software generally.
+
+ NO WARRANTY
+
+ 11. BECAUSE THE PROGRAM IS LICENSED FREE OF CHARGE, THERE IS NO WARRANTY
+FOR THE PROGRAM, TO THE EXTENT PERMITTED BY APPLICABLE LAW. EXCEPT WHEN
+OTHERWISE STATED IN WRITING THE COPYRIGHT HOLDERS AND/OR OTHER PARTIES
+PROVIDE THE PROGRAM "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED
+OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
+MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. THE ENTIRE RISK AS
+TO THE QUALITY AND PERFORMANCE OF THE PROGRAM IS WITH YOU. SHOULD THE
+PROGRAM PROVE DEFECTIVE, YOU ASSUME THE COST OF ALL NECESSARY SERVICING,
+REPAIR OR CORRECTION.
+
+ 12. IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN WRITING
+WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MAY MODIFY AND/OR
+REDISTRIBUTE THE PROGRAM AS PERMITTED ABOVE, BE LIABLE TO YOU FOR DAMAGES,
+INCLUDING ANY GENERAL, SPECIAL, INCIDENTAL OR CONSEQUENTIAL DAMAGES ARISING
+OUT OF THE USE OR INABILITY TO USE THE PROGRAM (INCLUDING BUT NOT LIMITED
+TO LOSS OF DATA OR DATA BEING RENDERED INACCURATE OR LOSSES SUSTAINED BY
+YOU OR THIRD PARTIES OR A FAILURE OF THE PROGRAM TO OPERATE WITH ANY OTHER
+PROGRAMS), EVEN IF SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE
+POSSIBILITY OF SUCH DAMAGES.
+
+ END OF TERMS AND CONDITIONS
+
+ Appendix: How to Apply These Terms to Your New Programs
+
+ If you develop a new program, and you want it to be of the greatest
+possible use to the public, the best way to achieve this is to make it
+free software which everyone can redistribute and change under these terms.
+
+ To do so, attach the following notices to the program. It is safest
+to attach them to the start of each source file to most effectively
+convey the exclusion of warranty; and each file should have at least
+the "copyright" line and a pointer to where the full notice is found.
+
+ <one line to give the program's name and a brief idea of what it does.>
+ Copyright (C) 19yy <name of author>
+
+ This program is free software; you can redistribute it and/or modify
+ it under the terms of the GNU General Public License as published by
+ the Free Software Foundation; either version 2 of the License, or
+ (at your option) any later version.
+
+ This program is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ GNU General Public License for more details.
+
+ You should have received a copy of the GNU General Public License
+ along with this program; if not, write to the Free Software
+ Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA
+
+Also add information on how to contact you by electronic and paper mail.
+
+If the program is interactive, make it output a short notice like this
+when it starts in an interactive mode:
+
+ Gnomovision version 69, Copyright (C) 19yy name of author
+ Gnomovision comes with ABSOLUTELY NO WARRANTY; for details type `show w'.
+ This is free software, and you are welcome to redistribute it
+ under certain conditions; type `show c' for details.
+
+The hypothetical commands `show w' and `show c' should show the appropriate
+parts of the General Public License. Of course, the commands you use may
+be called something other than `show w' and `show c'; they could even be
+mouse-clicks or menu items--whatever suits your program.
+
+You should also get your employer (if you work as a programmer) or your
+school, if any, to sign a "copyright disclaimer" for the program, if
+necessary. Here is a sample; alter the names:
+
+ Yoyodyne, Inc., hereby disclaims all copyright interest in the program
+ `Gnomovision' (which makes passes at compilers) written by James Hacker.
+
+ <signature of Ty Coon>, 1 April 1989
+ Ty Coon, President of Vice
+
+This General Public License does not permit incorporating your program into
+proprietary programs. If your program is a subroutine library, you may
+consider it more useful to permit linking proprietary applications with the
+library. If this is what you want to do, use the GNU Library General
+Public License instead of this License.
diff --git a/obsolete/macros/latex/contrib/gatech-thesis/ChangeLog b/obsolete/macros/latex/contrib/gatech-thesis/ChangeLog
new file mode 100644
index 0000000000..670e3fc5da
--- /dev/null
+++ b/obsolete/macros/latex/contrib/gatech-thesis/ChangeLog
@@ -0,0 +1,362 @@
+-------- RELEASE v1.7 --------
+
+2006-01-25 Mitchel T. Keller <keller@math.gatech.edu>
+
+ * title@top: reduce font size to large and remove double spacing
+ * title@text: changes to accommodate \ifdissertation and
+ \iflistmajor and to reduce the size of the author's name
+ * ifdissertation: new if to use the word dissertation on the title
+ page instead of thesis
+ * iflistmajor: new if to use "[degree] in [major]" on the title
+ page and put [department] down at the bottom of the page
+ * \major: new command to specify the major for the title page
+ * reader commands: two optional arguments added to all reader
+ commands (including advis?r and committee chair) to allow
+ specifying the reader's affiliation
+ * signature@bodytwocol: major revisions to eliminate signature
+ lines, list each person's affiliation, print the date approved,
+ and line up the first line of horizontally opposite signatures
+ * @makecaption: Removed call to \textsf for the first argument
+ when captions get long.
+
+-------- RELEASE v1.6 --------
+
+2003-05-06 Charles Wilson <cwilson@ece.gatech.edu>
+
+ * l@chapter: modify to add leaders, as requested
+ by OGS.
+
+2003-05-04 Charles Wilson <cwilson@ece.gatech.edu>
+
+ * one-and-a-half spacing: use 1.25 throughout,
+ instead of 1.33 -- to better match the description
+ given in The LaTeX Companion.
+
+2003-04-14 Charles Wilson <cwilson@ece.gatech.edu>
+
+ * \@makesignature: fix problem when no Committee Chair
+ * vita environment: make double spaced
+ * \@makecaption: Make 'Figure X:' part bold, but use
+ the normal font (OGS complained about san-serif).
+ * patch support: new file "gatech-thesis-patch.sty"
+ for faster updates...
+
+2002-09-30 Charles Wilson <cwilson@ece.gatech.edu>
+
+ * \@footnotetext: correct spacing after the footnotemark
+ in the body text.
+
+-------- RELEASE v1.5 --------
+
+2002-08-17 Charles Wilson <cwilson@ece.gatech.edu>
+
+ Make the changes suggested and/or approved by OGS
+
+ * \@makecaption: New function (copied from report.cls).
+ Make the 'Figure X:' part bold san-serif. To override,
+ use the caption2 package. Current behavior is now similar
+ to '\usepackage[sf,bf]{caption2}'.
+ * gatech-thesis-gloss.sty: change \glossname
+ * gatech-thesis-losa.sty: new file. Use this for List of Symbols
+ * gatech-thesis-losa.bst: new file.
+ * INSTALL: fix format
+ * COMPLIANCE: new file
+
+2002-08-08 Charles Wilson <cwilson@ece.gatech.edu>
+
+ tag as 1.4 -- it may not be official, but it works.
+ Get approval from OGS, make the required changes, and
+ release that as 1.5
+
+2002-08-08 Charles Wilson <cwilson@ece.gatech.edu>
+
+ In the most recent version of the OGS Guidelines, the
+ specific format of section, subsection, and subsubsection
+ headings is no longer specified. Because underlining is bad
+ (1) underlining for emphasis is bad typesetting, originally
+ used only when italics where not available [e.g. typewriters,
+ for which the original OGS Guidelines were written]
+ (2) Centering doesn't work on underlined text in section titles,
+ so earlier, we faked it with a 2in indent (hoping that all
+ section titles were short). Bad idea.
+ (3) underlining doesn't break across lines, so if you have a
+ very long section title, it won't wrap. It was suggested
+ (Elena Garcia) to use the ulem.sty package, but
+ (a) that would add a non-base external dependency to the class
+ (b) it doesn't fix the problem, unless you ALSO use the
+ titlesec.sty package to control section titles. Which
+ is yet ANOTHER external dependency.
+ Given (1) and (2), plus the lack of a requirement by OGS, I've
+ redefined the section, subsection, and subsubsection formats thus:
+ section: (old) (not really) centered, underlined, bold
+ section: (new) Large, bold, italic, at left margin
+ subsection: (old) bold, at left margin
+ subsection: (new) bold, at left margin
+ subsubsection: (old) bold, indented 5 "spaces" from left margin
+ subsubsection: (new) italic, indented 0.25in from left margin
+
+ * \section: change format of headings
+ * \subsection: change format of headings
+ * \subsubsection: change format of headings
+
+2002-08-08 Charles Wilson <cwilson@ece.gatech.edu>
+
+ * mainline: using \AtEndDocument, write out a final setcounter
+ command to the aux file. This corrects a problem when the last
+ section of the document is \include'd instead of \input'ed.
+
+2002-08-08 Charles Wilson <cwilson@ece.gatech.edu>
+
+ name handling for LOT, TOC, LOF. Not all of these are used; but
+ are included for completeness. One confusing note: the pdfbookmarks
+ for listoffigures and listoftables uses the list*name variable,
+ NOT the *pdfbookmarksstring variable: but the list*name includes
+ \Makeuppercase which is illegal in a pdfstring.
+ This is handled by hyperref itself (I think) which ignores
+ \MakeUppercase when building the bookmarks.
+
+ * \gtcontentsname: New. holds "normal" version of the TOC name
+ * \toccontentlinestring: New. holds \Makeuppercase version of TOC name
+ * \tocpdfbookmarksstring: New. holds texofpdfstring version of TOC name
+ * \settocstring: New. sets the above three values appropriately, as
+ well as the 'normal' LaTeX variable 'contentsname'
+ * \gtfigurename: New. holds "normal" version of the LOF name
+ * \lofcontentlinestring: New. holds \Makeuppercase version of LOF name
+ * \lofpdfbookmarksstring: New. holds texofpdfstring version of LOF name
+ * \setlofstring: New. sets the above three values appropriately, as
+ well as the 'normal' LaTeX variable 'listfigurename'
+ * \gttablename: New. holds "normal" version of the LOT name
+ * \lotcontentlinestring: New. holds \Makeuppercase version of LOT name
+ * \lotpdfbookmarksstring: New. holds texofpdfstring version of LOT name
+ * \setlotstring: New. sets the above three values appropriately, as
+ well as the 'normal' LaTeX variable 'listtablename'
+
+ * mainline: use \setlotstring, \setlofstring, \settocstring
+
+ * \do@tablespage: use \lotcontentlinestring
+ * \do@contentspage: use \tocpdfbookmarkstring
+ * \do@figurespage: use \lofcontentlinestring
+
+2002-08-08 Charles Wilson <cwilson@ece.gatech.edu>
+
+ Minor headings fixups: in short "chapters" (vita, references) which
+ will NOT have sections, the chapter header markers are not appropriate.
+ Normal is: \rightmark has chapter name, \leftmark has section name
+ .(when no sections, like vita, \leftmark is empty). It is up to
+ the pagestyle whether the \marks are used. We only use them in
+ gtthesis style. So, these known-short chapters should override
+ the markers and mark both left and right with the "chapter" name:
+ plus, they shouldn't read "Chapter *: Vita" but simply "Vita".
+
+ * vita environment: markboth{}{} with the chapter name
+ * thebibliography: ditto, plus reset the pagestyle back to
+ "endmatter" (references are numbered as bodytext, according to
+ OGS guidelines). This means that \references MUST be the very first
+ section within the postliminary environment, or page numbering
+ could get wacky.
+
+ QUESTION: perhaps abstract, TOC, LOT, ... should get similar
+ treatment? How likely is it that they will run more than two pages
+ long?
+
+2002-08-08 Charles Wilson <cwilson@ece.gatech.edu>
+
+ Massive signature page improvements. OGS Guidelines say that
+ if there are more than four signatories, then the signature
+ lines must be arranged in two columns.
+
+ * \newsignature: remove
+ * \signature@width: new length.
+ * \signature@bodyonecol: new function. Used to typeset the
+ signatures when there are less than five. If called, it
+ loops thru all 7 known signatures, because it doesn't know
+ which of them are empty.
+ * \signature@bodytwocol: new function. Used to typeset the
+ signatures when there are five or more.
+ * \signature@body: pointer to \signature@bodyonecol or
+ \signature@bodytwocol
+ * \signatures: new counter (all sigs)
+ * \cnt@Lsig: new counter (sigs in left column)
+ * \cnt@Rsig: new counter (sigs in right column)
+ * \R@signatures: New. list of signatures for right column
+ * \L@signatures: New. list of signatures for left column
+ * \ta, \tb: New. tokens for list management
+ * \leftappenditem#1\to#2: New. list management function (from TeXbook)
+ * \rightappenditem#1\to#2: New. ditto
+ * \concatenate#1=#2&#3: New. ditto
+ * \lop#1\to#2: New. ditto
+ * \lopoff: New. ditto
+ * \dosiglist: New. Loops thru the given list (#1) as many times as is
+ indicated by (#2). Executes the extracted items (e.g. typesets
+ the signatures).
+ * \signature: modify to put entire signature with rule inside a
+ parbox. Also, don't do anything if argument is empty (previously
+ you'd get a rule with no name)
+ * \add@Lsig: New. Add the given signature to the left list, and
+ increment the left counter
+ * \add@Rsig: New. ditto, only right
+ * \@fifthreader: new function. added to make things nicer for
+ \makesignature
+ * \@sixthreader: new function. Ditto.
+ * \makesignature: add the committee chair, advisor, and first reader
+ to the left list (we know these three will be in the left column
+ if they exist). Count all specified signatures. If less than five,
+ punt: skip to typesetting routine. Otherwise, adjust \signature@width,
+ change \signature@body pointer to \signature@bodytwocol, and
+ compute which signatures are added to the left list, and which
+ are added to the right list. Typesetting: call \title@top, then
+ call the \signature@body pointer.
+
+2002-08-08 Charles Wilson <cwilson@ece.gatech.edu>
+
+ Fix pagenumbering. New OGS guidelines say that pagenumbers should
+ go on the bottom in the middle, not in the upper right corner.
+
+ * \tcplain: new name for gtplain (given the new guidelines, the
+ upperright numbering has nothing to do with GT, so avoid the
+ confusion. tc == 'Top Corner'.
+ * \if@tcpage: new name for \if@thesispage. Since neither gtthesis
+ style nor gtplain==tcplain style are actually required by the
+ new OGS guidelines, give this a functional name: it indicates whether
+ the current style is a left-right alternating style when twosided.
+ It is true for tcplain and for gtthesis.
+ * \cleartcplaindoublepage: new function, included for completeness.
+ I doubt it will be of much use, though.
+ * \cleargtthesisdoublepage: ditto
+ * \chapter: use plain pagestyle, not gtplain
+ * \appendix: ditto
+ * \makesignature: according to new OGS guidelines, should not be
+ numbered. set \thispagestyle to empty.
+
+2002-08-08 Charles Wilson <cwilson@ece.gatech.edu>
+
+ * \l@part@pagenumfont: new command (gobbles pagenumber)
+ * \l@part: use it
+
+2002-08-08 Charles Wilson <cwilson@ece.gatech.edu>
+
+ * abstract environment: change handling of cleardouble page
+ so that pdf bookmarks are at the proper place.
+ * summary environment: ditto
+ * acknowledgements environment: ditto
+ * preface environment: ditto
+ * vita environment: ditto
+ * \references: ditto
+ * \maketitle: ditto
+ * \make@parttitle: ditto
+ * \makesignature: ditto
+ * \prefacesection: ditto
+ * \postfacesection: ditto
+ * \do@tablespage: ditto
+ * \do@figurespage: ditto
+ * \do@contentspage: ditto
+ * dedication environment: ditto, and automatically center the text
+ vertically as per OGS requirements. To override this centering,
+ \renewcommand{} on \dedicationtop and \dedicationbottom
+ * \dedicationtop: new command (used by dedication environment)
+ * \dedicationbottom: new command (used by dedication environment)
+
+2002-08-08 Charles Wilson <cwilson@ece.gatech.edu>
+
+ Fix the TOC, LOT, LOF to handle really long titles. Each title
+ should be single spaced, with double spacing between titles. This
+ means that the entire TOC, LOT, LOF must be "singlespaced", but
+ we must add extra vspace{} when formatting. Thus, we copy
+ all of the l@[X] funtions from report.cls, and modify them to
+ use a settable length between entries. (We will set this length
+ to height{A capital letter} to simulate double spacing) -- but
+ that's done elsewhere
+
+ * \chap@chapter: don't add extra space to TOC, the l@[X] functions
+ will handle that. Modify format of the title to better support
+ pdf bookmarks (emdash vs. ---)
+ * \app@chapter: ditto
+ * \gt@tocentryskip@value: new length, used to handle spacing within
+ TOC, LOT, LOF
+ * \gt@beforepartskip@value: new length (TOC, LOT, LOF)
+ * \gt@beforechapskip@value: new length (TOC, LOT, LOF)
+ * \gt@beforesecskip@value: new length (TOC, LOT, LOF)
+ * \gt@beforesubsecskip@value: new length (TOC, LOT, LOF)
+ * \gt@beforesubsubsecskip@value: new length (TOC, LOT, LOF)
+ * \gt@beforeparaskip@value: new length (TOC, LOT, LOF)
+ * \gt@beforesubparaskip@value: new length (TOC, LOT, LOF)
+ * \gt@beforefigskip@value: new length (TOC, LOT, LOF)
+ * \gt@beforetableskip@value: new length (TOC, LOT, LOF)
+ * \gt@@toclineskip: internal length, see l@section, l@subsection... below
+ * \set@gttocskip: new function, sets the above lengths to
+ default values based on its argument.
+ * \gt@dottedtocline: new fuction, replaces \@dottedtocline from
+ report.cls, but uses \gt@@toclineskip to control spacing between
+ entries in the TOC, LOT, LOF.
+ * \l@part: copied from report.cls, modified to use gt@beforepartskip@value
+ * \l@chap: similar
+ * \l@section: assign gt@@toclineskip the appropriate length
+ gt@before[X]@value, and call \gt@dottedtocline. Based on report.cls
+ version (but increased leftmargin slightly to make room for
+ Roman Numberal chapter numbers.
+ * \l@subsection: similar
+ * \l@subsubsection: similar
+ * \l@paragraph: similar
+ * \l@subparagraph: similar
+ * \l@figure: similar
+ * \l@table: similar
+
+ * mainline: use set@gttocskip
+
+2002-08-08 Charles Wilson <cwilson@ece.gatech.edu>
+
+ Add support for multivolume theses, using the \part{} sectioning
+ commands. Since volume title pages are not to be counted in the
+ page numbers, we assign them negative pagenums to avoid duplication
+ of existing pagenums in the "real" thesis.
+
+ gatech-thesis.cls now depends on the base package 'calc'.
+
+ * \ifmultivolume: new if (See preliminary environment)
+ * \part@savepagenum: new counter, used to save existing page
+ number while we take a pagenumber detour
+ * \part@pagenum: the detour Initially set to -101, and increases.
+ Don't use more than 50 parts in a twosided thesis, 100 in a
+ onesided thesis.
+ * preliminary environment: if multivolume, then do a \part{}
+ command just after the "real" title page.
+ * \title@top: new function, used by sigature page, title page, and
+ volume titles.
+ * \maketitle: use it.
+ * \make@parttitle: new function. Use \title@top, but also typeset
+ the volume number [and title], and author as per OGS guidelines
+ * \makesignature: use \title@top
+ * \partname: Volume, not Part
+ * \part: copy from report.cls, modify to reset page number
+ * \@part: copy from report.cls, modify to typeset 'Volume I'
+ centered on the line in TOC. (Also pdf bookmark support). Calls
+ \make@parttitle to typeset the volume title page
+ * \@spart: copy from report.cls, modify to use \make@parttitle for
+ typesettting
+ * \@endpart: copy from report.cls, sets pagenum back to saved value
+ * \orig@contentsline: compatibility macro for hyperref support
+ * \labelchaptersintableofcontents: modify to support new \part{}
+ stuff, and hyperref (use \orig@contentsline)
+ * \labelappendicesintableofcontents: ditto
+
+2002-08-08 Charles Wilson <cwilson@ece.gatech.edu>
+
+ Simplify \contents command to enable glossary support
+
+ * \do@tablespage: new command, typesets the LOT
+ * \do@figurespage: new command, typesets the LOF
+ * \do@contentspage: new command, typesets the TOC
+ * \do@glossarypage: new command. Empty (but overridden by
+ gatech-thesis-gloss.sty)
+ * \do@indexpage: new command. Empyt (but overridden by
+ gatech-thesis-index.sty)
+ * \contents: use them
+
+2002-08-03 Charles Wilson <cwilson@ece.gatech.edu>
+
+ * \@removefromreset: added new command (from David Carlisle)
+ * figure numbering: use \@removefromreset instead of existing kludge
+ * table numbering: use \@removefromreset instead of existing kludge
+ * equation numbering: use \@removefromreset instead of existing kludge
+ * preliminary environment: insure empty lefthand page is printed between
+ end of preliminary and beginning of chapter 1.
diff --git a/obsolete/macros/latex/contrib/gatech-thesis/INSTALL b/obsolete/macros/latex/contrib/gatech-thesis/INSTALL
new file mode 100644
index 0000000000..7b87ba4ec3
--- /dev/null
+++ b/obsolete/macros/latex/contrib/gatech-thesis/INSTALL
@@ -0,0 +1,44 @@
+One of these days, I'll turn this in to an actual
+.dtx file with all of the nifty built-in auto-install
+procedures, plus real documentation. However, until
+then you have to do it by hand.
+
+The following files should end up in your texmf tree
+(or your localtexmf tree) at these locations:
+
+ <texmf>/tex/latex/gatech-thesis/gatech-thesis.cls
+ <texmf>/tex/latex/gatech-thesis/gatech-thesis-patch.sty
+ <texmf>/tex/latex/gatech-thesis/gatech-thesis-losa.sty
+ <texmf>/tex/latex/gatech-thesis/gatech-thesis-gloss.sty
+ <texmf>/tex/latex/gatech-thesis/gatech-thesis-index.sty
+ <texmf>/bibtex/bst/gatech-thesis/gatech-thesis.bst
+ <texmf>/bibtex/bst/gatech-thesis/gatech-thesis-losa.bst
+ <texmf>/makeindex/gatech-thesis/gatech-thesis-index.ist
+
+Then, you need to update the file database; usually this is
+something like "initexmf -u". On MikTeX, you run the "MikTeX
+Options" program, and on the "General" tab, in the "File name
+database" section, click on the button that says "Refresh Now".
+
+Alternatively, you can simply copy all of these files into your
+local work directory where your thesis files will live.
+However, this is sometimes dangerous as you might be tempted
+to edit them directly. Wherever you choose to install the
+official files, don't edit or modify them..
+
+You should not need to modify the style/class files. However,
+if you find that you must modify their behavior, the best thing
+to do is to copy just the section of code (e.g. the function
+definition) that needs changing into your own personal,
+document-specific style file, and edit it there. You're
+version will override the "real" version -- and there is no
+need to modify the standard files.
+
+See the commented-out section at the end of
+julesverne/bellswhistles/jules-verne.sty file, which is an
+example of just this sort of thing -- it modifies the \contents
+macro in gatech-thesis.cls, *without actually editing
+gatech-thesis.cls*
+
+(NOTE: julesverne is only available from the Georgia Tech version of
+the package at http://www.gradadmiss.gatech.edu/thesis.php)
diff --git a/obsolete/macros/latex/contrib/gatech-thesis/MANIFEST b/obsolete/macros/latex/contrib/gatech-thesis/MANIFEST
new file mode 100644
index 0000000000..fe3929d612
--- /dev/null
+++ b/obsolete/macros/latex/contrib/gatech-thesis/MANIFEST
@@ -0,0 +1,34 @@
+Documentation
+ 00README
+ COMPLIANCE - a commentary on the official GT Style manual
+ COPYING - license
+ ChangeLog - extremely gory list of changes
+ CHANGES - a more general overview of changes
+ NEWS - simple bullet point list of changes
+ MANIFEST - this file
+ NOTES - general tips for using gatech-thesis
+ (and other packages)
+ TODO
+ INSTALL - how to ...
+
+Examples
+ example-thesis.tex - original source for the example
+ example-thesis.bib - ditto
+ example-thesis.dvi - what it should look like
+ example-thesis.ps - ditto
+ julesverne/ - two more examples are buried here
+ NOTE: The CTAN version of this package does not
+ include this directory. It can be retrieved
+ from the Georgia Tech page at
+ http://www.gradadmiss.gatech.edu/thesis.php
+
+The actual class:
+ gatech-thesis.cls - the gatech-thesis LaTeX2e class file
+ gatech-thesis.bst - bibliography style file
+ gatech-thesis-patch.sty - a patch framework for onthefly updates (empty)
+ gatech-thesis-losa.sty - add-on style for generating a list of symbols
+ gatech-thesis-losa.bst - list of symbols format
+ gatech-thesis-gloss.sty - add-on style for generating a glossary
+ gatech-thesis-index.sty - add-on style for generating an index
+ gatech-thesis-index.ist - index format
+
diff --git a/obsolete/macros/latex/contrib/gatech-thesis/NEWS b/obsolete/macros/latex/contrib/gatech-thesis/NEWS
new file mode 100644
index 0000000000..f9255113ad
--- /dev/null
+++ b/obsolete/macros/latex/contrib/gatech-thesis/NEWS
@@ -0,0 +1,90 @@
+This file contains a quick bullet list of changes and improvements
+to the gatech-thesis pacakge. For more detail, see the
+CHANGES file, or for the super neurotic, the extremely detailed
+ChangeLog file.
+
+______________ version 1.8 ________________
+NEW FEATURES:
+* The abstract environment now produces a page that meets the UMI
+ requirements. It should be placed at the very end of the main .tex
+ file. Delete the page (or comment out the environment and recompile)
+ when preparing the PDF for submission as an ETD.
+
+CHANGES:
+* Minor changes to Table of Contents format.
+* Bugfix for hyperref and overpic
+^^^^^^^^^^^^^^ version 1.8 ^^^^^^^^^^^^^^^^
+______________ version 1.7 ________________
+NEW FEATURES:
+* Now supports using the word Dissertation on the title page in place
+ of Thesis as well as listing the major instead of the department in
+ the "[degree] in [major]" portion of the title page.
+
+CHANGES:
+* Minor changes to Table of Contents format, title page formatting, and
+ chapter title formating. Significant changes to approval page. New
+ command \approveddate{} for the date that should show on the
+ approval page as well as two optional arguments to all the commands
+ for committee members, allowing the affiliation to be specified.
+^^^^^^^^^^^^^^ version 1.7 ^^^^^^^^^^^^^^^^
+______________ version 1.6 ________________
+NEW FEATURES:
+* Now supports downloadable patchsets. Rather than updating
+ then entire distro every time there's a minor bugfix, you
+ can simply download a small patchfile and copy it into your
+ localtexmf tree.
+
+CHANGES:
+* Fix nits with TOC format, Table and Figure caption format,
+ oneandahalfspaced linespacing, and Vita format.
+^^^^^^^^^^^^^^ version 1.6 ^^^^^^^^^^^^^^^^
+______________ version 1.5 ________________
+
+NEW FEATURES:
+* NEW FILE: gatech-thesis-losa.sty (supports making a list
+ of symbols).
+* NEW FILE: COMPLIANCE document is a blow-by-blow commentary
+ on the OGS Style Manual and how it is implemented by the
+ gatech-thesis class.
+CHANGES:
+* gatech-thesis-gloss.sty: Now used to generate a Glossary,
+ as distinguished from the List of Symbols.
+* caption labels -- the 'Figure X:' part is now bold, san serif.
+
+^^^^^^^^^^^^^^ version 1.5 ^^^^^^^^^^^^^^^^
+______________ version 1.4 ________________
+
+NEW FEATURES:
+* NEW FILE: gatech-thesis-index.sty (supports making an index). Read
+ the comments at the top of the file for HOWTO info.
+* NEW FILE: gatech-thesis-index.ist (used with above)
+* NEW FILE: gatech-thesis-gloss.sty (supports making a glossary -- or
+ "list of symbols and abbreviations" in OGS parlance.) Read the
+ comments at the top of the file for HOWTO info.
+* NEW FILE: gatech-thesis.bst (style for bibliographies). Based
+ on ieeetr.bst, but sorted and smallcapifies author names. Do
+ \bibliographystyle{gatech-thesis} instead of {plain} to use.
+* Multivolume Thesis support.
+
+CHANGES:
+* Changed the style of the section, subsection, and subsubsection
+ headings
+* Signature page now has two columns if more than 4 signatories
+ (per new OGS Guidelines). Also, signature page should not be numbered.
+* Obey new OGS pagenumbering guidelines that require bottom-center.
+* Dedication page: text is automatically centered, per OGS requirements.
+* Table of Contents, List of Figures, List of Tables: new OGS guidelines
+ say "single space entries, double space between entries." We obey.
+* Reorganized the examples
+
+BUGFIX:
+* Fixed a bug with \include'ing the final section of the document
+* Technical bugfix with gtthesis pagestyle and sectionless chapters.
+ Fortunately, nobody uses that pagestyle for official copies.
+* gatech-thesis.cls now depends on the base package 'calc'
+* Incorporates with permission code from David Carlisle (\@removefromreset)
+* Minor fixups for two-sided printing
+
+^^^^^^^^^^^^^^ version 1.4 ^^^^^^^^^^^^^^^^
+______________ version 1.3 ________________
+baseline.
diff --git a/obsolete/macros/latex/contrib/gatech-thesis/NOTES b/obsolete/macros/latex/contrib/gatech-thesis/NOTES
new file mode 100644
index 0000000000..639e37a880
--- /dev/null
+++ b/obsolete/macros/latex/contrib/gatech-thesis/NOTES
@@ -0,0 +1,33 @@
+listings.sty + caption2.sty
+ IF you use the 'index=' option in listings.sty for captionless listings,
+ but you also have the caption2.sty packag loaded, it breaks.
+ Don't do that. Either do without captionless listings, or don't use
+ the caption2.sty package. This has been reported to the listings.sty
+ maintainer.
+
+hyperref:
+ if you have section names or figure captions in your TOC or LOF that
+ are longer than a single line, hyperref barfs. Make sure you are using
+ the breaklinks option.
+
+ Also, you must use the 'hypertexnames=false' option, and the plainpages
+ option. Without these, the duplication of pagenums (front matter is
+ 1...X in roman, but that still dups the 1...X in the body)
+
+index.sty
+ is in the "camel" package in MikTeX
+
+ulem.sty - better underlining behavior. Use the \normalem option.
+
+gatech-thesis-losa.sty - addon for list of symbols. Depends on gloss.sty
+gatech-thesis-gloss.sty - addon for glossaries. Depends on gloss.sty
+gatech-thesis-index.sty - addon for indexes. Depends on index.sty and
+ multicol.sty
+
+gloss.sty - improved glossary generation, using bibtex
+index.sty - improved index generation
+multicol.sty - multiple columns on a page, without requiring \newpage.
+
+txfonts is the *way* to go. It seems to be the most hassle free way
+to get Times, with good math support. Forget the times package, mathtime,
+belleek, and mathptmx. Use txfonts.
diff --git a/obsolete/macros/latex/contrib/gatech-thesis/README b/obsolete/macros/latex/contrib/gatech-thesis/README
new file mode 100644
index 0000000000..8644cd0ee4
--- /dev/null
+++ b/obsolete/macros/latex/contrib/gatech-thesis/README
@@ -0,0 +1,744 @@
+This is the README file for the GATECH-THESIS class for LaTeX.
+It corresponds to version 1.5 of the GATECH-THESIS class
+(17 August 2002)
+
+Copyright (c) 2002 by Charles S. Wilson. All rights reserved.
+
+GATECH-THESIS may be obtained from any of the following locations:
+
+ http://www.grad.gatech.edu/thesis/index.html
+ this is where the official version, approved by the Georgia
+ Tech Office of Graduate Studies, may be found. Do NOT
+ attempt to use the old, out-of-date, LaTeX2.09 style file
+ (gtthesis.sty) that is STILL on cyberbuzz.
+
+ http://www.neuro.gatech.edu/users/cwilson/gatech-thesis/
+ the most recent version, plus archives of all past versions
+ will always be here.
+
+ http://www.ctan.org/tex-archive/macros/latex/contrib/supported/gatech-thesis/
+ and of course, CTAN.
+
+This class file can be used with the LaTeX typesetting system
+to produce dissertations that adhere to Georgia Tech's guidelines
+for publishing.
+
+There are a number of files within this archive. The important
+ones are
+
+ gatech-thesis.cls
+ gatech-thesis.bst
+ gatech-thesis-gloss.sty
+ gatech-thesis-losa.sty
+ gatech-thesis-losa.bst
+ gatech-thesis-index.sty
+ gatech-thesis-index.ist
+
+Everything else is fluff: examples, licensing, documentation...
+
+=============================
+Using the GATECH-THESIS class
+=============================
+
+First, read this file. Then read COMPLIANCE. Then read
+INSTALL. Take a peek a NEWS, and then (maybe) CHANGES.
+Then you can worry about the examples...
+
+Sample File
+-----------
+
+example-thesis.tex + example-thesis.bib
+
+There is a sample dissertation (by the fictitious, but very
+irritating, Perry H Disdainful) in the file example-thesis.tex. It
+also uses example-thesis.bib as its bibliography database (though
+the contents of the database are not important). Mostly this is
+useful as an example of how to produce the front matter. If you
+don't understand LaTeX at all, this file might help you get started,
+but, since you're going to be writing a 100+ page document, you
+should invest in a copy of the LaTeX manual (by Leslie Lamport, the
+original author of LaTeX). This has recently been updated for
+LaTeX2e (1, below).
+
+The LaTeX Companion, by Goossens, Mittelbach, and Samarin (who have been
+involved in developing and supporting LaTeX2e) is also quite good. It
+gives a lot of useful information if you are going to be writing or
+modifying classes, and gives a lot of additional information on commonly
+available style packages (2, below).
+
+Helpful books (in no particular order):
+ (1) "LaTeX: A Document Preparation System" by Leslie Lamport
+ (2) "The LaTeX Companion" by Goossens, Mittelbach, and Samarin
+ (3) "A Guide to LaTeX" by Helmut Kopka and Patrick Daly
+ (4) "LaTeX: Line by Line" by Antoni Diller
+ (5) "The LaTeX Graphics Companion"
+ (6) "The TeXbook" by Donald Knuth
+
+Larger Sample
+-------------
+
+julesverne/basic/*
+
+This is a slightly more complicated, multi-file example. The text
+is taken from the first five chapters of the Project Gutenberg edition
+of Jules Verne's ``20,000 Leagues Under the Sea'' and is freely
+redistributable as long as the complete text, 2000010.txt, accompanies
+the other excerpts. The original document is also available here:
+ http://promo.net/pg/
+ ftp://ibiblio.org/pub/docs/books/gutenberg/etext94/2000010.txt
+This example can be built with either latex (to generate a .dvi file) or
+with pdflatex (to generate a .pdf file).
+
+Gory, all-the-bells-and-whistles example:
+------------
+
+julesverne/bellswhistles/*
+
+This directory contains a reworked version of the jules-verne
+example "thesis". However, all of the bells and whistles
+provided by the gatech-thesis.cls class and associated styles
+are exercised, along with some suggestions for thesis document
+structuring.
+
+Features:
+ *) segregating preamble code into a document-specific style
+ *) How to easily generate OGS format complant documents
+ and prettier, "personal" copies.
+ *) Support for using hyperref (clickable links in the TOC,
+ when making a .pdf)
+ *) Using postscript versions of fonts other than Computer Modern,
+ like Times, Courier, etc. See extensive comments in
+ jules-verne.sty.
+ *) Using the listings package for including program code
+ in appendices
+ *) Using the add-on style gatech-thesis-gloss.sty for
+ generating a glossary
+ *) Using the add-on style gatech-thesis-losa.sty for
+ generating a "List of Symbols or Abbreviations"
+ *) Using the add-on style gatech-thesis-index.sty for
+ generating an index. Typically a GT thesis doesn't
+ have one of these, but the style is provided just in case.
+ *) Demonstrate the multivolume support, for those theses that
+ are over 2.5" thick (according to OGS Guidelines).
+ *) Using \include instead of \input to incorporate subsidiary
+ files into the main document. This lets you use \includeonly
+ to speed development of your document.
+
+This example requires some additional work to prepare your LaTeX
+system, before you can compile it. See the local documentation,
+julesverne/bellswhistles/00README.
+
+NOTE: The julesverne directory is not available in the CTAN version of
+gatech-thesis. It can be obtained from the Georgia Tech version at
+http://www.gradadmiss.gatech.edu/thesis.php
+
+Building the Examples
+---------------------
+
+To compile the examples, you must first install the gatech-thesis
+files (see the INSTALL document). Also, the bells-and-whistles
+example needs some additional preparation; see its local documentation
+in julesverne/bellswhistels/00README.
+
+However, once you have all of the required items installed, you can
+build the simplest example by executing the following commands:
+
+latex example-thesis.tex
+bibtex example-thesis
+latex example-thesis.tex
+latex example-thesis.tex
+dvips example-thesis
+ (generates a postscript file)
+
+To build the other examples, run the DO_* scripts. For instance,
+if you are using a unix or unix-like system, cd to the julesverne/basic
+directory and execute:
+
+ ./DO_postscript.sh
+
+to generate a postscript output (or ./DO_pdf.sh to generate a pdf).
+If, on the other hand, you are on a DOS-ish system, the execute
+instead the file
+
+ DO_postscript.bat
+
+(or DO_pdf.bat) To understand what the scripts do (especially the
+ones in the julesverne/bellswhistles/ directory) you really ought
+to read thru them...
+
+Choosing the GATECH-THESIS class
+--------------------------------
+
+To use the GATECH-THESIS class, make sure that the gatech-thesis.cls
+file is on your TEXINPUTS search path and use the following command
+at the start of your input file:
+
+\documentclass{gatech-thesis}
+
+To insure that gatech-thesis.cls is on your TEXINPUTS search path,
+you can copy it into your localtexmf tree and then update the file
+database; or you can place it into the same directory as your
+thesis .tex files themselves. This is also described in the INSTALL
+document.
+
+=================================
+What the GATECH-THESIS class does
+=================================
+
+The GATECH-THESIS class builds on the the standard LaTeX REPORT class,
+and is accepted for use with Georgia Institute of Technology PhD
+dissertations and Masters theses. The available commands are almost
+identical to those of the REPORT class, so your best starting point
+for documentation is the LaTeX manual written by Leslie Lamport.
+
+The key features of the class are:
+
+1) The primary modification to the REPORT class is the use of
+pseudo-double-spacing, since Georgia Tech's rules are still designed
+for typewriters. This is achieved by increasing the \baselinestretch
+parameter to 1.33. The \baselinestretch is returned to a
+single-spaced value of 1.00 for elements like tables, captions, and
+footnotes and for all displayed text (quote, quotation, and verse
+environments).
+
+2) Margins are 1.5" on left, 1" on top, right and bottom (headers &
+footers 1/4" from body)
+
+3) Use 11 point by default; you can use the 10pt or 12pt options
+
+4) Page numbers are in the center at the bottom of the page
+
+5) Complete, correct front matter for Georgia Tech dissertations can
+be generated.
+
+Options
+---------------
+
+There are a number of primary options. However, if called without
+any options, the approved format -- 11pt, letterpaper, oneside,
+doublespaced, normalmargins, final -- will be generated.
+
+
+Any standard option for the LaTeX2e `report' class, including
+`10pt', `11pt', `12pt', `oneside', `twoside', etc. is valid.
+
+`singlespaced', `oneandahalfspaced', or `doublespaced':
+ Set the entire document's default line spacing, except for
+ notes, which are single-spaced by default.
+
+`spacednotes': Let the line spacing of notes be determined
+ by the line spacing of the main document, instead of being
+ forced single-spaced.
+
+`normalmargins', `narrowmargins', `widemargins', `extrawidemargins'
+ or `oldmargins': normalmargins is the default and Georgia Tech-
+ approved format. Oldmargins is the OLD Georgia Tech format.
+
+`draft': Produce a draft copy (10pt font, double-sided,
+ double-spaced, normal margins, with the word ``DRAFT'' printed
+ at all four corners of every page, and current date printed in
+ a running header).
+
+`final': style uses the correct pseudo-double-spacing. This option
+ is the default and is redundant, but is included for symmetry.
+
+`hyperref': Indicates that the document will \usepackage{hyperref}.
+ This is a kludge, but I didn't want to explicitly *require*
+ hyperref, so we must indicate to gatech-thesis.cls whether it should
+ define certain hyperref commands as dummies. ALWAYS use this
+ option if you use the hyperref package. NEVER use this option if
+ you do not also use the hyperref package.
+
+The options are selected on the \documentclass line, e.g.:
+
+\documentclass[10pt,hyperref,draft]{gatech-thesis}
+
+Thus, the default options:
+ \documentclass[11pt,letterpaper,oneside,
+ doublespaced,normalmargins,final]{gatech-thesis}
+will generate a document that conforms to the graduate studies office
+and is identical to setting no options at all
+ \documentclass{gatech-thesis}
+
+Page Headers
+------------
+
+If you want to use page headers or footers other than the default
+ones, you should try using ``fancyheadings.sty''. It is easy to use,
+widely distributed, and well documented. However, the default headers
+and footers are the Georgia Tech-approved ones. There are also
+some interesting variations defined within the gatech-thesis.cls
+itself (tcplain, gtthesis), but those should ONLY be used for personal
+copies, and NOT for your official version. See the
+julesverne/bellswhistles example.
+
+============
+Front matter
+============
+
+The other key service provided by this class is that it generates
+correct front matter (title page, approval page, dedication, etc.) with
+a fairly simple set of commands. The format of the front matter is
+specified quite explicitly in the document ``Manual for Graduate Theses:
+Georgia Institute of Technology'' distributed by Office of Graduate
+Studies.
+
+A complete example of the use of the front matter commands can be
+found in any of the examples distributed with the class
+(example-thesis.tex or julesverne/basic or julesversion/bellswhistles).
+
+Declarations
+------------
+
+To use the front matter macros and environments, you must first
+declare a number of text strings within the preamble of your document
+(that is, these must be declared BEFORE the \begin{document} command.)
+
+\title{...} Dissertation title
+
+\author{...} Your name as registered with Georgia Tech
+
+\department{...} Specify the name of the graduate department.
+ \dept{...} synonym
+
+\degree{...} Title of your degree (e.g. ``Doctor of Philosophy'')
+
+\gradyear{...} Year your degree will be granted
+\copyrightyear{...} synonym
+
+Any or all of the \*reader{}, \committeechair, or \principaladvis?r{}
+commands may be ommitted -- but your signature page will look a little
+silly if you don't include SOME names.
+
+\principaladvisor{...} Name of your thesis advisor
+\principaladviser{...} if you prefer advisor spelled with an e)
+
+\committeechair{...} Name of your committee chairperson
+
+\firstreader{...} Name of other committee member
+\secondreader{...} Name of other committee member
+\thirdreader{...} Name of other committee member
+\fourthreader{...} Name of other committee member
+\fifthreader{...} Name of other committee member
+\sixthreader{...} Name of other committee member
+
+\bibfiles{...} List of files to use when generating a bibliography
+
+\submitdate{...} Specify the ``month year'' in which dissertation
+ submitted
+
+\linespacing{...} Use this to override the default double-spacing.
+ NOT recommended; the default is approved by the
+ Graduate Studies Office. For draft/personal copies,
+ use the ``draft'' or ``singlespace'' options in your
+ documentclass statement, instead.
+\spacing{...} compatibility synonym
+
+Switches
+------------
+
+Also, there are a number of ``true/false'' flags that can be used to
+control the frontmatter generation. However, the defaults will result
+in the approved Georgia Tech format. These flags, if specified, should
+also be in the document preamble (BEFORE the \begin{document} command).
+
+\titlepagetrue or \titlepagefalse
+ - produce or don't produce a title page (TRUE by default)
+
+\signaturepagetrue or \signaturepagefalse
+ - produce or don't produce a signature page (TRUE by default)
+
+\copyrighttrue or \copyrightfalse
+ - place or don't place a copyright notice on the title page
+ (FALSE by default)
+
+\figurespagetrue or \figurespagefalse
+ - produce or don't produce a List of Figures page (TRUE by default)
+
+\tablespagetrue or \tablespagefalse
+ - produce or don't produce a List of Tables page (TRUE by default)
+
+\contentspagetrue or \contentspagefalse
+ - produce or don't produce a Table of Contents page
+ (TRUE by default)
+
+\bibpagetrue or \bibpagefalse
+ - produce or don't produce a Bibliography page (TRUE by default)
+
+\thesisproposaltrue or \thesisproposalfalse
+ - indicate ``Thesis Proposal'' or ``Thesis'' on the title page
+ (FALSE by default -- e.g. default is to say ``Thesis'')
+
+\dedicationheadingtrue or \dedicationheadingfalse
+ - display ``DEDICATION'' heading on the dedication page
+ (FALSE by default)
+
+\strictmarginstrue or \strictmarginsfalse
+ - if true, then obey the margin rules EVEN on the title and
+ signature page. Default TRUE and REQUIRED by Graduate Studies
+ Office, but not very appealing. (under ``oldmargins'' an extra
+ 50p spacing is added so that the title page looks like the
+ chapter headings. In any case, \strictmarginsfalse looks better
+ for personal copies but \strictmarginstrue is necessary for
+ official ones.
+
+\multivolumetrue or \multivolumefalse
+ - if true, indicates that the thesis will span multiple volumes.
+ triggers automatic generation of the first volume title page
+ (in addition to the ``entire work'' title page), but it''s up
+ to you to place the ``part{}'' commands in the appropriate
+ locations for volume 2, volume 3, etc.
+
+Frontmatter Environments
+------------------------
+GATECH-THESIS provides a number of specialized environments for the
+various frontmatter sections. Of course, you don't have to use them
+all. The provided environments include
+
+ dedication: \begin{dedication}
+ text here
+ \end{dedication}
+
+ preface: \begin{preface}
+ text here
+ \end{preface}
+
+ acknowledgements: \begin{acknowledgements}
+ text here
+ \end{acknowledgements}
+
+ abstract: \begin{abstract}
+ text here
+ \end{abstract}
+
+ summary: \begin{summary}
+ text here
+ \end{summary}
+
+And if that isn't enough for you, you can add your own:
+ \prefacesection{other-title}{...text...}
+Note that these add-a-sections aren't true environments (they do not
+have \begin{} and \end{} statements. So, for a ``forward'' section:
+
+ \prefacesection{forward}{text here}
+
+The ``Preliminary'' environment
+-----------------------------
+
+ALL of these preceeding environments MUST be enclosed within the
+``preliminary'' environment, which ensures that page-numbering is
+handled properly (e.g. no page number on the title page or signature
+page, use lower case roman numerals to number the frontmatter pages,
+reset the page numbers to start with arabic 1). Within this preliminary
+environment, you put the environments and commands for the rest of
+the front matter.
+
+Each environment makes its contents start on a new page. They also
+emblazon the first page with a heading -- all except for the dedication
+environment. For formatting the dedication page, you're on your own.
+After all, the dedication is a kind of poetry and there's no predicting
+the right way to format poetry. Actually, that's not entirely true:
+according to the OGS Guidelines, the dedication material should be
+centered vertically, so your text will be automatically centered. If
+you wish to override this centerring behavior, just redefine the
+dedicationtop and dedicationbottom commands:
+ \renewcommand{\dedicationtop}{\vspace*{\stretch{1}}
+ \renewcommand{\dedicationbottom{\vspace*{\stretch{3}}
+Will position your dedication at about 1/4 of the way down the page.
+Also, if you *want* an ugly ``DEDICATION'' heading emblazoned in
+bold centered letters at the top of the page, you can use the
+\dedicationheadingtrue switch within the preamble.
+
+ \begin{preliminary}
+ The other environments go in here, along with
+ \contents
+ \end{preliminary}
+
+Table of Contents, Figures, and Tables
+--------------------------------------
+
+\contents
+
+At the appropriate point within the frontmatter, generate these tables
+by issuing the \contents command. You can modify the look of the Table
+of Contents with the following commands -- which should be executed
+within the \begin{preliminary}...\end{preliminary} environment (see
+below) but before the \contents command.
+
+If you also want a ``List of Symbols or Abbreviations'', you can
+use the gatech-thesis-losa.sty add-on package: in your preamble, just
+ \usepackage{gatech-thesis-losa}
+ \losafiles{your-symbols-database}
+And then sprinkle references to your symbols or abbreviations
+within your text. Read the header in gatech-thesis-losa.sty itself
+for more information, and see how the julesverne/bellswhistles/
+example does it (and don't forget to read the documenation on the
+`gloss' package, which is used by gatech-thesis-losa.sty). You
+also will need to run `bibtex' on the LOSA database; see the above
+documentation.
+
+If you want a Glossary or ``List of Nomenclature'', you can
+use the gatech-thesis-gloss.sty add-on package: in your preamble, just
+ \usepackage{gatech-thesis-gloss}
+ \glossfiles{glossary-database}
+And then sprinkle references to your glossary terms
+within your text. Read the header in gatech-thesis-gloss.sty itself
+for more information, and see how the julesverne/bellswhistles/
+example does it (and don't forget to read the documenation on the
+`gloss' package, which is used by gatech-thesis-gloss.sty). You
+also will need to run `bibtex' on the glossary database; see the above
+documentation.
+
+\labelchaptersintableofcontents
+ inserts an entry into the TOC that says ``CHAPTERS'' just
+ before Chapter 1. Not recommended.
+
+\labelappendicesintableofcontents
+ inserts an entry into the TOC that says ``APPENDICES'' just
+ before Appendix A. Not recommended.
+
+\setchaptertocdepth
+ set the default for how ``deep'' to number within chapters
+ in the table of contents. Defaults to subsections.
+
+\setappendixtocdepth
+ set the default for how ``deep'' to number within appendices
+ (chapter{}'s after the \appendix command} in the table of
+ contents. Defaults to Appendices only (no sections or subs)
+
+\settocdepth
+ temporarily change how ``deep'' to number in the table of
+ contents for current chapter/section. For example, you
+ usually include \section{}'s in the TOC (\setchaptertocdepth{1})
+ but in chapter 5 you want to include subsection as well:
+ \chapter{This is Chapter 5}\settocdepth{2}. In chapter 6 the
+ default depth of 1 is reasserted.
+
+You should never need to call \setcounter{tocdepth}{..} directly.
+
+Use the following numbers with the various tocdepth commands above:
+ 0 = chapter only
+ 1 = chapter + sections
+ 2 = chapter, section, subsection
+ 3 = chapter, section, subsection, subsubsection
+
+
+==========
+End matter
+==========
+
+Similarly, the end matter components (bibliography, vita, index,
+afterward, etc) MUST be enclosed in a ``postliminary'' environment.
+
+GATECH-THESIS provides a few (okay, one) specialized environments for
+the various endmatter sections, as well.
+
+ vita: \begin{vita}
+ text here
+ \end{vita}
+
+And you want other sections (afterword, index), you can add them:
+ \postfacesection{other-title}{...text...}
+Note that these add-a-sections aren't true environments (they do not
+have \begin{} and \end{} statements. So, for a ``afterword'' section:
+
+ \postfacesection{afterword}{text here}
+
+Additionally, if you want an index, you can use the add-on style
+gatech-thesis-index.sty. Read the comments in that file, and
+see how the julesverne/bellswhistles/ example does it. Basically,
+you just include the following command in your preamble
+ \usepackage{gatech-thesis-index}
+and sprinkle \index commands within your text. Don't forget to
+read the documentation on the `index' package, on which the
+gatech-thesis-index.sty is based. And you'll need to run makeindex
+on the index database -- but that's all explained in the
+documentation and demonstrated by the example.
+
+Bibliography
+------------
+
+Also, within the postliminary environment, you should issue the
+ \references
+command in order to generate a bibliography in the Georgia Tech-approved
+format. There are a few tricks to getting the \references command to
+work properly, though:
+
+ \bibpagetrue
+ \bibfiles{file1,file2,...}
+
+must be set in the preamble. (Actually, since bibpagetrue is the
+default, you don't ACTUALLY need to specify it -- but don't say
+\bibpagefalse and expect \references to work.) Also,
+
+ \bibliographystyle{...}
+
+should be specified just after \begin{document}. Yes, it's a bit
+confusing, but see the example files (example-thesis.tex,
+julesverne/basic/jules-verne.tex, or
+julesverne/bellswhistles/jules-verne.sty) and all will be clear.
+
+The updated GSO Guidelines is no longer very specific about the format
+of bibliographic entries (although the example bibliography IS sorted).
+I know of one thesis that was accepted using the``plain'' bibstyle
+(which generates a sorted [not order-of-reference] bibliography). Then,
+of course, there's the gatech-thesis.bst bibliography format, which
+has been approved by the GSO. So, you'll want to use
+
+ \bibliographystyle{gatech-thesis}
+or
+ \bibliographystyle{plain}
+
+=========
+Main Body
+=========
+
+See any book on LaTeX's report class for more information, but the
+following deserves special mention:
+
+``\appendix'' is a global mode switch that changes the way ``chapter''
+headings and TOC entries are generated.
+ \chapter{last chapter title}
+ \appendix
+ \chapter{first appendix title}
+Note that you use the ``\chapter'' command to indicate new appendices --
+but only after switching the ``mode'' with the \appendix command.
+
+=====================================================
+Other commands not found in the standard report style
+=====================================================
+
+The GATECH-THESIS class also provides several other helpful environments
+and commands. These include
+
+ignore{...} or comment{...}
+ Ignore the part of the file between { and } (can include
+ paragraph breaks); useful for commenting out large blocks.
+
+\begin{longquote}...\end{longquote}:
+ Single-spaced version of the `quote' environment
+
+\begin{longquotation}...\end{longquotation}:
+ Single-spaced version of the `quotation' environment.
+
+\begin{singlespaced}...\end{singlespaced}:
+ Format single-spaced paragraphs.
+
+\begin{oneandahalfspaced}...\end{oneandahalfspaced}:
+ Format 1 1/2-spaced paragraphs.
+
+\begin{doublespaced}...\end{doublespaced}:
+ Format double-spaced paragraphs.
+
+\begin{newspacing}{<n>}...\end{newspacing}:
+ Format paragraphs with an interline spacing of `n'.
+
+\clearemptydoublepage, \clearplaindoublepage, \cleargtplaindoublepage:
+ Same as \cleardoublepage except that it sets the pagestyle of
+ any inserted blank page to `empty' `plain' or `gtplain',
+ respectively.
+
+Modifying the look of the document
+----------------------------------
+
+There are also a number of commands that can be used to change the
+look. However, the default ``look'' is the one approved by
+Georgia Tech's Graduate Studies Office, so don't use these
+``look-altering'' commands for your official versions -- only for
+personal copies.
+
+\setbodypagestyle{x}, where x = plain (the default and OGS approved),
+ empty, headings, myheadings, gtthesis, or tcplain. Avoid myheadings;
+ use the fancyheaders package instead.
+
+\setfrontpagestyle{x} - set pagestyle for frontmatter
+\setbackpagestyle{x} - set pagestyle for endmatter
+
+The Graduate Studies Office approved pagestyle is plain for
+the body, as well frontmatter and endmatter. (However, pages are
+numbered with roman numberals in the frontmatter and automatically
+switch to arabic numbers in the body and endmatter, as required by GSO.
+Don't try to change the pagenumbering style). However:
+
+ - `gtthesis' pagestyle adds a running header on each page
+ identifying the Chapter (and Section for twopage layouts).
+ This is a nice touch IMO for the body and endmatter, but
+ use it ONLY for personal copies.
+
+ - note that you also need to add \pagestyle{gtthesis}
+ if you use \setbodypagestyle{gtthesis}. See the
+ julesverne/bellswhistles/jules-verne.sty for an example of
+ how to handle this for unofficial copies.
+
+Chapter headings and the TOC use ROMAN numerals, but the running headers
+at the top of each page use ARABIC numbers for the Chapter number.
+Thus, there are two separate formats that are used.
+
+ \thegtchapter is used for ROMAN chapter numbers
+ \thechapter is used for ARABIC chapter numbers
+
+If you wish all chapter headings to use ROMAN, then just redefine
+\thechapter in your document:
+ \renewcommand{\thechapter}{\thegtchapter}
+Do the reverse if you want all ARABIC chapter numbers:
+ \renewcommand{\thegtchapter}{\thechapter}
+
+==================================
+Installing the GATECH-THESIS class
+==================================
+
+See the INSTALL file
+
+===========
+Final Notes
+===========
+
+For more information about the GATECH-THESIS class and its options,
+look inside the class file itself -- it is heavily commented. Also,
+the add-on styles contain helpful comments -- and you should read
+all of the various READMEs and the comments within the ``root''
+example files:
+ example-thesis.tex
+ julesverne/basic/jules-verne.tex
+ julesverne/basic/00README
+ julesverne/bellswhistles/jules-verne.tex
+ julesverne/bellswhistles/jules-verne.sty
+ julesverne/bellswhistles/00README
+Also, it wouldn't hurt to read the NEWS file, the NOTES file, and the
+CHANGES file -- but I'd stay away from the ChangeLog unless you're a
+real glutton for punishment.
+
+And read the COMPLIANCE file -- it is a blow-by-blow commentary
+on the Office of Graduate Studies Style Manual for Theses, and
+how it relates/is implemented by GATECH-THESIS.
+
+Backward Compatibility
+----------------------
+
+There are a number of commands available within gatech-thesis.cls that
+are purely for backward compatibility with the older official
+gt-thesis.sty style file that was previously provided by the Georgia
+Tech Graduate Studies Office. In theory, one could take a disseration
+that previously began:
+
+ documentstyle{report}
+ \usepackage{gt-thesis.sty}
+
+and replace those two commands with
+
+ documentclass{gatech-thesis}
+
+And it should ``just work''(tm). These backwards compatibility commands
+are not recommended for NEW documents, and they are described only in
+the comments inside the gatech-thesis.cls file itself.
+
+=========================================
+MANIFEST -- This archive should contain
+=========================================
+
+See these files:
+ MANIFEST
+ julesverne/basic/MANIFEST
+ julesverne/bellswhistles/MANIFEST
+
+
diff --git a/obsolete/macros/latex/contrib/gatech-thesis/TODO b/obsolete/macros/latex/contrib/gatech-thesis/TODO
new file mode 100644
index 0000000000..d5a7077e3d
--- /dev/null
+++ b/obsolete/macros/latex/contrib/gatech-thesis/TODO
@@ -0,0 +1,5 @@
+Turn this whole thing into a .dtx file with actual documentation...
+
+Turn NOTES into a USEFUL TIPS...a chapter in 'COMPLIANCE'? I dunno;
+there is an awful lot of docu duplication here. It'd really be nice
+to consolidate it all into a single .tex (==.dvi,.pdf) file...
diff --git a/obsolete/macros/latex/contrib/gatech-thesis/example-thesis.bib b/obsolete/macros/latex/contrib/gatech-thesis/example-thesis.bib
new file mode 100644
index 0000000000..71733b3060
--- /dev/null
+++ b/obsolete/macros/latex/contrib/gatech-thesis/example-thesis.bib
@@ -0,0 +1,138 @@
+@BOOK{knuth:tex,
+ AUTHOR = "Donald E. Knuth",
+ TITLE = "The {\TeX} Book",
+ PUBLISHER = {Addison-Wesley},
+ YEAR = "1984",
+ ADDRESS = {Reading, Massachusetts},
+ NOTE = {Reprinted as Vol. A of {\it Computers \& Typesetting\/}, 1986}
+}
+
+@BOOK{knuth:pgm,
+ AUTHOR = "Donald E. Knuth",
+ TITLE = "{\TeX}: The Program",
+ PUBLISHER = {Addison-Wesley},
+ YEAR = "1986",
+ VOLUME = {B},
+ SERIES = {Computers \& Typesetting},
+ ADDRESS = {Reading, Massachusetts}
+}
+
+@TECHREPORT{knuth:web,
+ AUTHOR = {Donald E. Knuth},
+ TITLE = {The {WEB} System for Structured Documentation, Version 2.3},
+ INSTITUTION = {Computer Science Department, Stanford University},
+ YEAR = {1983},
+ NUMBER = {STAN-CS-83-980},
+ ADDRESS = {Stanford, California},
+ MONTH = Sep
+}
+
+@ARTICLE{knuth:lp,
+ AUTHOR = {Donald E. Knuth},
+ TITLE = {Literate Programming},
+ JOURNAL = {The Computer Journal},
+ YEAR = {1984},
+ VOLUME = {27},
+ NUMBER = {2},
+ PAGES = {97--111},
+ MONTH = May
+}
+
+@TECHREPORT{knuth:tor,
+ AUTHOR = {Donald E. Knuth},
+ TITLE = {A Torture Test for {\TeX}, Version 1.3},
+ INSTITUTION = {Computer Science Department, Stanford University},
+ YEAR = {1984},
+ NUMBER = {STAN-CS-84-1027},
+ ADDRESS = {Stanford, California},
+ MONTH = Nov
+}
+
+@ARTICLE{furuta:pctex,
+ AUTHOR = "Richard K. Furuta and Pierre A. MacKay",
+ TITLE = "Two {\TeX} Implementations for the {IBM PC}",
+ JOURNAL = "Dr. Dobb's Journal",
+ YEAR = "1985",
+ VOLUME = "10",
+ NUMBER = "9",
+ PAGES = "80--91",
+ MONTH = Sep
+}
+
+@TECHREPORT{des:tex,
+ AUTHOR = {Jacques D{\'e}sarm{\'e}nien},
+ TITLE = {How to Run {\TeX} in French},
+ INSTITUTION = {Computer Science Department, Stanford University},
+ YEAR = {1984},
+ NUMBER = {SATN-CS-1013},
+ ADDRESS = {Stanford, California},
+ MONTH = Aug
+}
+
+@TECHREPORT{samuel:tex,
+ AUTHOR = "Arthur L. Samuel",
+ TITLE = "First Grade {\TeX}: A Beginner's {\TeX} Manual",
+ INSTITUTION = {Computer Science Department, Stanford University},
+ YEAR = "1983",
+ NUMBER = "SATN-CS-83-985",
+ ADDRESS = {Stanford, California},
+ MONTH = Nov
+}
+
+@BOOK{lamport:latex,
+ AUTHOR = {Leslie Lamport},
+ TITLE = {{\LaTeX}: A Document Preparation System. User's Guide and
+ Reference Manual},
+ PUBLISHER = {Addison-Wesley},
+ YEAR = {1986},
+ ADDRESS = {Reading, Massachusetts}
+}
+
+@BOOK{spivak:ams,
+ AUTHOR = {Michael D. Spivak},
+ TITLE = {The Joy of {\TeX}},
+ PUBLISHER = {American Mathematical Society},
+ YEAR = {1985}
+}
+
+@MANUAL{patashnik:bibtex,
+ TITLE = "Bib{\TeX}ing",
+ AUTHOR = "Oren Patashnik",
+ ORGANIZATION = {Computer Science Department, Stanford University},
+ ADDRESS = {Stanford, California},
+ MONTH = jan,
+ YEAR = "1988",
+ NOTE = {Available in the Bib{\TeX} release}
+}
+
+@MANUAL{patashnik:bibhax,
+ TITLE = {Designing Bib{\TeX} Styles},
+ AUTHOR = {Oren Patashnik},
+ ORGANIZATION = {Computer Science Department, Stanford University},
+ MONTH = jan,
+ YEAR = {1988}
+}
+
+@ARTICLE{fuchs:dvi0,
+ AUTHOR = "David Fuchs",
+ TITLE = "The Format of {\TeX}'s {DVI} Files Version 1",
+ JOURNAL = "TUGboat",
+ YEAR = "1981",
+ VOLUME = "2",
+ NUMBER = "2",
+ PAGES = "12--16",
+ MONTH = Jul
+}
+
+@ARTICLE{fuchs:dvi,
+ AUTHOR = "David Fuchs",
+ TITLE = "Device Independent File Format",
+ JOURNAL = "TUGboat",
+ YEAR = "1982",
+ VOLUME = "3",
+ NUMBER = "2",
+ PAGES = "14--19",
+ MONTH = Oct
+}
+
+
diff --git a/obsolete/macros/latex/contrib/gatech-thesis/example-thesis.pdf b/obsolete/macros/latex/contrib/gatech-thesis/example-thesis.pdf
new file mode 100644
index 0000000000..cc94bf9ba6
--- /dev/null
+++ b/obsolete/macros/latex/contrib/gatech-thesis/example-thesis.pdf
Binary files differ
diff --git a/obsolete/macros/latex/contrib/gatech-thesis/example-thesis.tex b/obsolete/macros/latex/contrib/gatech-thesis/example-thesis.tex
new file mode 100644
index 0000000000..8c69657591
--- /dev/null
+++ b/obsolete/macros/latex/contrib/gatech-thesis/example-thesis.tex
@@ -0,0 +1,181 @@
+\documentclass[12pt]{gatech-thesis}
+\usepackage{amsmath,amssymb,latexsym,float,epsfig,subfigure}
+
+%%
+%% This example is adapted from ucthesis.tex, a part of the
+%% UCTHESIS class package...
+%%
+\title{The Elements of Thesis} %% If you want to specify a linebreak
+ %% in the thesis title, you MUST use
+ %% \protect\\ instead of \\, as \\ is a
+ %% fragile command that \MakeUpperCase
+ %% will break!
+\author{Perry H. Disdainful}
+\department{School of Industrial and Systems Engineering}
+
+%% Can have up to six readers, plus principaladvisor and
+%% committeechair. All have the form
+%%
+%% \reader{Name}[Department][Institution]
+%%
+%% The second and third arguments are optional, but if you wish to
+%% supply the third, you must supply the second. Department defaults
+%% to the department defined above and Institution defaults to Georgia
+%% Institute of Technology.
+
+\principaladvisor{Professor Alpha Betic}
+\committeechair{Professor Ignatius Arrogant}
+\firstreader{Professor General Reference}[School of Mathematics]
+\secondreader{Professor Ivory Insular}[Department of Computer Science and Operations Research][North Dakota State University]
+\thirdreader{Professor Earl Grey}
+\fourthreader{Professor John Smith}
+\fifthreader{Professor Jane Doe}[Another Department With a Long Name][Another Institution]
+%\setcounter{secnumdepth}{2}
+\degree{Doctor of Philosophy}
+
+%% Set \listmajortrue below, then uncomment and set this for
+%% interdisciplinary PhD programs so that the title page says
+%% ``[degree] in [major]'' and puts the department at the bottom of
+%% the page, rather than saying ``[degree] in the [department]''
+
+%% \major{Algorithms, Combinatorics, and Optimization}
+
+\copyrightyear{2010}
+\submitdate{August 2010} % Must be the month and year of graduation,
+ % not thesis approval! As of 2010, this means
+ % this text must be May, August, or December
+ % followed by the year.
+
+%% The date the last committee member signs the thesis form. Printed
+%% on the approval page.
+\approveddate{1 July 2010}
+
+\bibfiles{example-thesis}
+
+%% The following are the defaults
+%% \titlepagetrue
+%% \signaturepagetrue
+%% \copyrightfalse
+%% \figurespagetrue
+%% \tablespagetrue
+%% \contentspagetrue
+%% \dedicationheadingfalse
+%% \bibpagetrue
+%% \thesisproposalfalse
+%% \strictmarginstrue
+%% \dissertationfalse
+%% \listmajorfalse
+%% \multivolumefalse
+
+\begin{document}
+\bibliographystyle{gatech-thesis}
+%%
+\begin{preliminary}
+\begin{dedication}
+\null\vfil
+{\large
+\begin{center}
+To myself,\\\vspace{12pt}
+Perry H. Disdainful,\\\vspace{12pt}
+the only person worthy of my company.
+\end{center}}
+\vfil\null
+\end{dedication}
+\begin{preface}
+Theses have elements. Isn't that nice?
+\end{preface}
+\begin{acknowledgements}
+I want to ``thank'' my committee, without whose ridiculous demands, I
+would have graduated so, so, very much faster.
+\end{acknowledgements}
+% print table of contents, figures and tables here.
+\contents
+% if you need a "List of Symbols or Abbreviations" look into
+% gatech-thesis-gloss.sty.
+\begin{summary}
+Why should I provide a summary? Just read the thesis.
+\end{summary}
+\end{preliminary}
+%%
+\chapter{Introduction}
+
+Every dissertation should have an introduction. You might not realize
+it, but the introduction should introduce the concepts, backgrouand,
+and goals of the dissertation.
+
+\section{Concepts}
+
+This is where we talk about the concepts behind the dissertation.
+
+\subsection{Primary Concept}
+
+This is the primary concept.
+
+\subsection{Secondary Concept}
+
+This is the secondary concept.
+
+\subsubsection{Even more secondary}
+
+This is really not all that important.
+
+\begin{table}
+\caption{A table, centered.}
+\begin{center}
+\begin{tabular}{|l|r|}
+ \hline
+Title & Author \\
+\hline
+War And Peace & Leo Tolstoy \\
+The Great Gatsby & F. Scott Fitzgerald \\ \hline
+\end{tabular}
+\end{center}
+\end{table}
+%%
+\chapter{Previous Work}
+
+Some other research was once performed.
+
+\begin{figure}
+\caption{A first figure.}
+\end{figure}
+
+\begin{figure}
+\caption{A second figure.}
+\end{figure}
+%%
+\chapter{Conclusion}
+
+\nocite{*}
+%% We need this since this file doesn't ACTUALLY \cite anything...
+%%
+\appendix
+\chapter{Some Ancillary Stuff}
+
+Ancillary material should be put in appendices, which
+appear just before the bibliography.
+
+\begin{postliminary}
+\references
+\postfacesection{Index}{%
+%% ... generate an index here
+%% look into gatech-thesis-index.sty
+}
+\begin{vita}
+Perry H. Disdainful was born in an insignificant town
+whose only claim to fame is that it produced such a fine
+specimen of a researcher.
+\end{vita}
+\end{postliminary}
+
+\begin{abstract}
+ This is the abstract that must be turned in as hard copy to the
+ thesis office to meet the UMI requirements. It should \emph{not} be
+ included when submitting your ETD. Comment out the abstract
+ environment before submitting. It is recommended that you simply
+ copy and paste the text you put in the summary environment into this
+ environment. The title, your name, the page count, and your
+ advisor's name will all be generated automatically.
+\end{abstract}
+
+\end{document}
diff --git a/obsolete/macros/latex/contrib/gatech-thesis/gatech-thesis-gloss.sty b/obsolete/macros/latex/contrib/gatech-thesis/gatech-thesis-gloss.sty
new file mode 100644
index 0000000000..0f7ba1ff3f
--- /dev/null
+++ b/obsolete/macros/latex/contrib/gatech-thesis/gatech-thesis-gloss.sty
@@ -0,0 +1,101 @@
+%% gatech-thesis-gloss.sty - support code for creating glossaries
+%% depends on gloss.sty, so it is not included by default in the
+%% main gatech-thesis.cls (this cuts down on ``extra'' dependencies
+%%
+%% To use this package, all you need do is include
+%% \usepackage{gatech-thesis-gloss}
+%% \glossfiles{<glosary file, sans .bib suffix>}
+%% in your preamble, and the glossary will be automatically generated
+%% and included in the frontmatter. Of course, you need actual
+%% *entries* in the glossary file -- which must end in .bib -- and you
+%% need actual citations to those entries within your bodytext, like this:
+%% \gloss{key}.
+%% Note that \gloss{<key>} typesets the <word> from the <key> entry of
+%% the glossfile within the text, so there''s no need to do this:
+%% (BAD) word\gloss{keyforword}
+%% Read the gloss.sty documentation for more info, but basically
+%% gatech-thesis-gloss.sty makes it simple:
+%% 1. insert the two commands above into your preamble
+%% 2. create a glossfile with your glossary definitions
+%% 3. sprinkle \gloss{} citations in your text
+%% 4. run ``bibtex'' on the <rootfile>.gls.aux file created
+%% after the first ``latex'' run. (But don''t include the
+%% .aux extension. So say ``bibtex <rootfile>.gls'' You
+%% can do this at the same time you run ``bibtex'' for your
+%% references.
+%% 5. run ``latex'' twice more
+%%
+\NeedsTeXFormat{LaTeX2e}[1995/06/01] \ProvidesPackage{gatech-thesis-gloss}
+ [2002/08/08 Glossary support for gatech-thesis.cls]
+\@ifclassloaded{gatech-thesis}{}{
+ PackageError{This style can only be used with the gatech-thesis class}
+}
+\RequirePackage[refpages]{gloss}
+
+\newif\ifglossarypage
+\glossarypagetrue% why use this package if you're not going to USE it?
+
+\makegloss
+
+\newcommand{\glossfiles}[1]%
+ {\ifx\empty#1\empty\else\gdef\@glossfiles{#1}\fi}
+\def\@glossfiles{}
+
+\newcommand{\gtglossname}{}
+\newcommand{\glscontentlinestring}{}
+\newcommand{\glspdfbookmarkstring}{}
+
+\newcommand{\setglossstring}[1]{%
+ \renewcommand{\gtglossname}{#1}
+ \renewcommand{\glossname}{\Makeuppercase{#1}}
+ \renewcommand{\glscontentlinestring}{%
+ \texorpdfstring{\Makeuppercase{#1}}{#1}
+ }
+ \renewcommand{\glspdfbookmarkstring}{#1}
+}
+% \setglossstring{List of Nomenclature}% ???
+\setglossstring{Glossary}
+
+\renewcommand{\glossheading}[1]{} % don't print subsection headings ("A", "B", ...)
+\renewenvironment{glosslist}
+ {\begin{singlespaced}\begin{list}{\relax}{%
+ \def\makelabel##1{##1\hfil}%
+ \setlength{\labelsep}{1em}%
+ \setlength{\labelwidth}{\glosshang}%
+ \addtolength{\labelwidth}{-\labelsep}%
+ \setlength{\itemindent}{0em}%
+ \setlength{\leftmargin}{\glosshang}}}
+ {\end{list}\end{singlespaced}}
+
+\renewcommand\gls@section{%
+ \if@twocolumn
+ \@restonecoltrue\onecolumn
+ \else
+ \@restonecolfalse
+ \fi
+ \chapter*{\glossname}%
+ \@mkboth{\scshape\MakeUppercase\glossname}%
+ {\scshape\MakeUppercase\glossname}%
+}
+\renewenvironment{thegloss}
+ {\gls@section
+ \def\+##1+{}%
+ \@beginparpenalty\@M}%
+ {\if@restonecol\twocolumn\fi%
+ \stopglosslist}
+
+\renewcommand{\do@glossarypage}{%
+ \ifglossarypage
+ \if@openright\cleardoublepage\else\clearpage\fi
+ % must clear page here, so that phantomsection\addcontentsline is on the correct page
+ \settoheight{\gt@tmpa}{A}
+ \set@gttocskip{\gt@tmpa}
+ {\newlinestretch{1}
+ \addvspace{\gt@tocentryskip@value}
+ \phantomsection%
+ \addcontentsline{toc}{chapter}{\glscontentlinestring}
+ \printgloss{\@glossfiles}
+ }%
+ \newpage
+ \fi
+}
diff --git a/obsolete/macros/latex/contrib/gatech-thesis/gatech-thesis-index.ist b/obsolete/macros/latex/contrib/gatech-thesis/gatech-thesis-index.ist
new file mode 100644
index 0000000000..3616b1fcca
--- /dev/null
+++ b/obsolete/macros/latex/contrib/gatech-thesis/gatech-thesis-index.ist
@@ -0,0 +1,7 @@
+% MakeIndex style file gatech-thesis-index.ist
+heading_prefix "{\\bfseries\\hfil " % Insert in front of letter
+heading_suffix "\\hfil}\\nopagebreak\n" % Append after letter
+headings_flag 1 % Turn on headings {uppercase}
+delim_0 "\\dotfill "
+delim_1 "\\dotfill "
+delim_2 "\\dotfill "
diff --git a/obsolete/macros/latex/contrib/gatech-thesis/gatech-thesis-index.sty b/obsolete/macros/latex/contrib/gatech-thesis/gatech-thesis-index.sty
new file mode 100644
index 0000000000..61b9cd9d67
--- /dev/null
+++ b/obsolete/macros/latex/contrib/gatech-thesis/gatech-thesis-index.sty
@@ -0,0 +1,139 @@
+%% gatech-thesis-index.sty - support code for creating an index
+%% depends on index.sty, so it is not included by default in the
+%% main gatech-thesis.cls (this cuts down on ``extra'' dependencies.
+%% It also depends on the multicol package.
+%%
+%% Note that index.sty is included in the ``camel'' package if you
+%% are using MikTeX.
+%%
+%% To use this package, all you need do is include
+%% \usepackage{gatech-thesis-index}
+%% in your preamble, and
+%% \gtindex
+%% just after your vita section, but within the postliminary environment
+%% of your bodytext. The, the index will be automatically
+%% and included in the location specified, and added to the table of
+%% contents. Of course, you need actual index references within your
+%% main text like this:
+%% foo\index{foo}
+%% Read the index.sty documentation for more info, but basically
+%% gatech-thesis-gloss.sty makes it simple:
+%% 1. insert the \usepackage and \gtindex commands into your document
+%% 2. sprinkle \index{} citations in your text
+%% 3. run ``makeindex'' on the <rootfile>.idx file created
+%% after the first ``latex'' run, like this:
+%% makeindex -s gatech-thesis-index.ist <rootfile>.idx
+%% This will create <rootfile>.ind (the gatech-thesis-index.ist
+%% file is a format specification for the index). If you want
+%% to customize the index format, copy gatech-thesis-index.ist to
+%% ``myformat.ist'' and change the copy. Use ``-s myformat.ist''
+%% instead of gatech-thesis-index.ist.
+%% You can run the makeindex command at the same time you run `
+%% `bibtex'' for your references and/or glossary.
+%% 4. run ``latex'' twice more (the same ``twice more'' needed for
+%% bibtex and gatech-thesis-gloss.sty)
+%%
+\NeedsTeXFormat{LaTeX2e}[1995/06/01] \ProvidesPackage{gatech-thesis-index}
+ [2002/08/08 Index support for gatech-thesis.cls]
+\@ifclassloaded{gatech-thesis}{}{
+ PackageError{This style can only be used with the gatech-thesis class}
+}
+\RequirePackage{index}
+\RequirePackage{multicol}
+
+\newif\if@proofmode
+\@proofmodefalse
+
+\DeclareOption{proofmode}{%
+ \if@draft % This is an internal gatech-thesis variable!
+ \@proofmodetrue % this is an internal index.sty variable
+ \else
+ \PackageWarn{option `proofmode' can't be used in 'final' mode.}
+ \@proofmodefalse
+ \fi
+}
+\DeclareOption{showidx}{%
+ \if@draft % This is an internal gatech-thesis variable!
+ \@proofmodetrue % this is an internal index.sty variable
+ \else
+ \PackageWarn{option `showidx' can't be used in 'final' mode.}
+ \@proofmodefalse
+ \fi
+}
+\ProcessOptions
+
+\newif\ifindexpage
+\indexpagetrue% why use this package if you're not going to USE it?
+
+\if@proofmode
+ \proofmodetrue% pass option to index package
+\else
+ \proofmodefalse% ditto
+\fi
+
+\newcommand{\gtindexname}{}
+\newcommand{\idxcontentlinestring}{}
+\newcommand{\idxpdfbookmarkstring}{}
+
+\newcommand{\setindexstring}[1]{%
+ \renewcommand{\gtindexname}{#1}
+ \renewcommand{\indexname}{\Makeuppercase{#1}}
+ \renewcommand{\idxcontentlinestring}{%
+ \texorpdfstring{\Makeuppercase{#1}}{#1}
+ }
+ \renewcommand{\idxpdfbookmarkstring}{#1}
+}
+\setindexstring{Index}
+% if you want to change the name of the index, do it in the preamble
+% once the document begins, it''s too late.
+\AtBeginDocument{%
+ \newindex{default}{idx}{ind}{Index}
+}
+
+\renewenvironment{theindex}{%
+ \edef\indexname{\the\@nameuse{idxtitle@\@indextype}}%
+ \if@twocolumn
+ \@restonecolfalse
+ \else
+ \@restonecoltrue
+ \fi
+ \chapter*{\MakeUppercase{\gtindexname}}
+ \@mkboth{\scshape\MakeUppercase\indexname}%
+ {\scshape\MakeUppercase\indexname}%
+ \let\item\@idxitem
+ \columnseprule \z@
+ \columnsep 35\p@
+ \begin{multicols}{2}[%
+ \ifx\index@prologue\@empty\else
+ \index@prologue
+ \bigskip
+ \fi]%
+ \parindent\z@
+ \parskip\z@ \@plus .3\p@\relax
+}{\end{multicols}%
+ \if@restonecol
+ \onecolumn
+ \else
+ \clearpage
+ \fi
+}
+
+\renewcommand{\do@indexpage}{%
+ \ifindexpage
+ \if@openright\cleardoublepage\else\clearpage\fi
+ % must clear page here, so that phantomsection\addcontentsline is on the correct page
+ \phantomsection%
+ \addcontentsline{toc}{chapter}{\idxcontentlinestring}
+ \settoheight{\gt@tmpa}{A}
+ \set@gttocskip{\gt@tmpa}
+ {\newlinestretch{1}
+ \printindex
+ }%
+ \newpage
+ \fi
+}
+
+\newcommand{\gtindex}{\do@indexpage}
+\newcommand{\bs}{\symbol{'134}}% print backslash
+\newcommand{\gtCom}[1]{\texttt{\bs#1}\index{#1@\texttt{\bs#1}}}
+\newcommand{\gtProg}[1]{\texttt{#1}\index{#1@\texttt{#1} program}}
diff --git a/obsolete/macros/latex/contrib/gatech-thesis/gatech-thesis-losa.bst b/obsolete/macros/latex/contrib/gatech-thesis/gatech-thesis-losa.bst
new file mode 100644
index 0000000000..022548eec9
--- /dev/null
+++ b/obsolete/macros/latex/contrib/gatech-thesis/gatech-thesis-losa.bst
@@ -0,0 +1,264 @@
+% gatech-thesis-losa.bst: This style is used by the gatech-thesis-losa.sty
+% style to provide support for a 'List of Symbols or Abbreviations'
+% within the context of gatech-thesis.cls. The advantages of
+% creating a separate .bst file are that the formatting of the
+% losa glossary can be different from that of other "real" glossaries
+% which are also based on the gloss.sty package.
+%
+% This file was adapted from the file `glsplain.bst' taken from the
+% gloss package.
+%
+% Original information:
+% ORIG:
+% ORIG: (c) 1998 Jose Luis Diaz, 1999-2002 Jose Luis Diaz and Javier Bezos.
+% ORIG: All Rights Reserved.
+% ORIG:
+% ORIG: This file is part of the gloss distribution release 1.5.2
+% ORIG: --------------------------------------------------------
+% ORIG:
+% ORIG: This file can be redistributed and/or modified under the terms
+% ORIG: of the LaTeX Project Public License Distributed from CTAN
+% ORIG: archives in directory macros/latex/base/lppl.txt; either
+% ORIG: version 1 of the License, or any later version.
+% ORIG:
+% ORIG: % History of v0.1
+% ORIG: % ~~~~~~~~~~~~~~~
+% ORIG: % 1997/06/25 (JLDdA) Original version, by Jose Luis Diaz de Arriba (and an
+% ORIG: % unindicted co-conspirator)
+% ORIG: % History of v1.0
+% ORIG: % ~~~~~~~~~~~~~~~
+% ORIG: % 1999/07/29 (JBL) Rewritten in full. Now it warns if a required field is
+% ORIG: % missing, conforms the new gloss.sty syntax, and
+% ORIG: % writes headings for each letter. The heading,
+% ORIG: % short, and group fiels have been added.
+% ORIG: % History of v1.1-1.4
+% ORIG: % ~~~~~~~~~~~~~~~~~~~
+% ORIG: % 1999/10/10 (JBL) Lots of changes.
+% ORIG: % History of v.1.5
+% ORIG: % ~~~~~~~~~~~~~~~~
+% ORIG: % 2001/08/02 (JBL) Added the sort-short field for compatility
+% ORIG: % with glsshort.bst
+
+STRINGS { last.heading s t star.period}
+
+ENTRY
+ { word
+ sort-word
+ definition
+ heading
+ group
+ short
+ sort-short
+ }
+ {}
+ { ucword }
+
+FUNCTION {not}
+{ { #0 }
+ { #1 }
+ if$
+}
+
+FUNCTION {has.period}
+{ duplicate$
+ add.period$ =
+}
+
+FUNCTION {str.length}
+{ 't :=
+ #0
+ { t empty$ not }
+ { t #2 global.max$ substring$
+ 't :=
+ #1 +
+ }
+ while$
+}
+
+
+FUNCTION {upper.first}
+{ duplicate$
+ #1 text.prefix$
+ duplicate$
+ "u" change.case$
+ 's :=
+ str.length
+ #1 + entry.max$ substring$
+ s swap$ *
+}
+
+FUNCTION {check.required}
+{ 's :=
+ duplicate$ empty$
+ { "Empty " s * " in " * cite$ * warning$ }
+ 'skip$
+ if$
+}
+
+FUNCTION {field.or.null}
+{ duplicate$ empty$
+ { pop$ "" }
+ 'skip$
+ if$
+}
+
+FUNCTION {push.sortword}
+{ sort-word empty$
+ { word field.or.null }
+ 'sort-word
+ if$
+}
+
+FUNCTION {check.alpha}
+{ duplicate$
+ purify$
+ empty$
+ { "Non alphabetical " cite$ *
+ " entry without group field" * warning$ }
+ 'skip$
+ if$
+}
+
+FUNCTION {push.heading}
+{ heading empty$
+ { word field.or.null
+ #1 text.prefix$
+ check.alpha
+ }
+ 'heading
+ if$
+}
+
+FUNCTION {begin.entry}
+{ newline$
+ "\begin{losaitem" star.period * write$
+ "}{" write$
+ cite$ write$
+ "}{" write$
+ word write$
+ "}{" write$
+ ucword write$
+ "}{" write$
+ short field.or.null write$
+ "}" write$
+ newline$
+}
+
+FUNCTION {end.entry}
+{ "\end{losaitem" star.period "}" * * write$
+ newline$
+}
+
+FUNCTION {set.vars}
+{ word field.or.null
+ "word" check.required
+ upper.first
+ 'ucword :=
+}
+
+
+FUNCTION {losadef}
+{ definition field.or.null
+ "definition" check.required
+ duplicate$ has.period
+ { "*" }
+ { "" }
+ if$
+ 'star.period := % definition is stored for later writing
+ begin.entry % this outputs word, ucword, and short
+ write$ % writes definition
+ end.entry
+}
+
+FUNCTION {gd}
+{ definition field.or.null
+ "definition" check.required
+ duplicate$ has.period
+ { "*" }
+ { "" }
+ if$
+ 'star.period := % definition is stored for later
+ begin.entry % this outputs word, ucword, and short
+ write$ % writes definition
+ end.entry
+}
+
+FUNCTION {default.type} { losadef }
+
+FUNCTION {presort}
+{ set.vars
+ push.sortword
+ group empty$
+ { purify$ "L" }
+ 'group
+ if$ % sort-word heading
+ swap$ * % heading * sort-word
+ "l" change.case$
+ 'sort.key$ :=
+}
+
+FUNCTION {begin.thelosa}
+{ "\begin{thelosa}"
+ write$
+ newline$
+ preamble$ empty$
+ 'skip$
+ { preamble$ write$ newline$ }
+ if$
+}
+
+FUNCTION {end.thelosa}
+{ newline$
+ "\end{thelosa}" write$
+ newline$
+}
+
+FUNCTION {call.entries}
+ { group empty$
+ 'push.heading
+ { heading empty$
+ 'skip$
+ { "Ignoring heading because there is group field in "
+ cite$ *
+ warning$
+ }
+ if$
+ group
+ }
+ if$
+ "u" change.case$
+ duplicate$
+ group empty$
+ 'skip$
+ { "$$$$$" * }
+ if$
+ duplicate$
+ last.heading =
+ { pop$ pop$ }
+ { newline$
+ 'last.heading :=
+ group empty$
+ { "\losaheading{" }
+ { "\losagroup{" }
+ if$
+ swap$ * "}" *
+ write$
+ newline$
+ }
+ if$
+ call.type$
+ }
+
+READ
+
+ITERATE {presort}
+
+SORT
+
+EXECUTE {begin.thelosa}
+
+ITERATE {call.entries}
+
+EXECUTE {end.thelosa}
+
+
diff --git a/obsolete/macros/latex/contrib/gatech-thesis/gatech-thesis-losa.sty b/obsolete/macros/latex/contrib/gatech-thesis/gatech-thesis-losa.sty
new file mode 100644
index 0000000000..7b6cc1626f
--- /dev/null
+++ b/obsolete/macros/latex/contrib/gatech-thesis/gatech-thesis-losa.sty
@@ -0,0 +1,156 @@
+%% gatech-thesis-losa.sty - support code for creating a 'List of
+%% Symbols or Abbreviations"
+%%
+%% depends on gloss.sty, so it is not included by default in the
+%% main gatech-thesis.cls (this cuts down on ``extra'' dependencies
+%%
+%% To use this package, all you need do is include
+%% \usepackage{gatech-thesis-losa}
+%% \losafiles{<database file, sans .bib suffix>}
+%% in your preamble, and the LOSA will be automatically generated
+%% and included in the frontmatter. Of course, you need actual
+%% *entries* in the glossary file -- which must end in .bib -- and you
+%% need actual citations to those entries within your bodytext, like this:
+%% \losa{key}.
+%% Note that \losa{<key>} typesets the <word> from the <key> entry of
+%% the losafile within the text, so there''s no need to do this:
+%% (BAD) word\losa{key-for-word}
+%% Again, you should read the gloss.sty documentation for more info, but
+%% basically gatech-thesis-losa.sty makes it simple:
+%% 1. insert the two commands above into your preamble
+%% 2. create a database with your glossary definitions
+%% 3. sprinkle \losa{} citations in your text
+%% 4. run ``bibtex'' on the <rootfile>.losa.aux file created
+%% after the first ``latex'' run. (But don''t include the
+%% .aux extension. So say ``bibtex <rootfile>.losa'' You
+%% can do this at the same time you run ``bibtex'' for your
+%% references.
+%% 5. run ``latex'' twice more
+%%
+\NeedsTeXFormat{LaTeX2e}[1995/06/01]
+\ProvidesPackage{gatech-thesis-losa}
+ [2002/08/08 List of Symbols support for gatech-thesis.cls]
+\@ifclassloaded{gatech-thesis}{}{
+ PackageError{This style can only be used with the gatech-thesis class}
+}
+\RequirePackage[refpages]{gloss}
+
+\newif\iflosapage
+\losapagetrue % why use this package if you're not going to USE it?
+
+\newcommand{\losafiles}[1]%
+ {\ifx\empty#1\empty\else\gdef\@losafiles{#1}\fi}
+\def\@losafiles{}
+
+\newcommand{\losaname}{}
+\newcommand{\gtlosaname}{}
+\newcommand{\losacontentlinestring}{}
+\newcommand{\losapdfbookmarkstring}{}
+
+\newcommand{\setlosastring}[1]{%
+ \renewcommand{\gtlosaname}{#1}
+ \renewcommand{\losaname}{\Makeuppercase{#1}}
+ \renewcommand{\losacontentlinestring}{%
+ \texorpdfstring{\Makeuppercase{#1}}{#1}
+ }
+ \renewcommand{\losapdfbookmarkstring}{#1}
+}
+\setlosastring{List of Symbols or Abbreviations}
+
+\makegloss
+\newgloss{losa}{.losa}{\losaname}{gatech-thesis-losa}
+\newlength{\losahang}
+\setlength{\losahang}{2cm}
+
+\newcommand\setlosagroup[1]{\@namedef{gls@group@#1}}
+\newcommand{\losaheading}[1]{} % don't print subsection headings ("A", "B", ...)
+\newcommand{\losagroup}[1]{%
+ \expandafter\losaheading\csname gls@group@#1\endcsname}
+
+% make the '\losa[otheroptions]{}' command a synonym for
+% '\gloss[losa,otheroptions]{}'
+\newcommand\losa{\protect\losa@gloss@i}
+\def\losa@gloss@i{%
+ \@bsphack
+ \begingroup
+ \catcode`\ =9
+ \@ifnextchar[{\losa@gloss@iia}{\losa@gloss@iib[]}}
+\def\losa@gloss@iia[#1]{%
+ \endgroup
+ \gls@gloss@iii{losa,#1}}
+\def\losa@gloss@iib[#1]{% #1 is empty
+ \endgroup
+ \gls@gloss@iii{losa}}
+
+% and alternate forms
+\newcommand\Losa[1]{\losa[Word]{#1}}
+\newcommand\onlylosa[1]{\losa[nocite]{#1}}
+
+\newenvironment{losalist}
+ {\begin{singlespaced}\begin{list}{\relax}{%
+ \def\makelabel##1{##1\hfil}%
+ \setlength{\labelsep}{1em}%
+ \setlength{\labelwidth}{\losahang}%
+ \addtolength{\labelwidth}{-\labelsep}%
+ \setlength{\itemindent}{0em}%
+ \setlength{\leftmargin}{\losahang}}}
+ {\end{list}\end{singlespaced}}
+
+\newenvironment{losaitem}[4]%
+ {\ifgls@list
+ \expandafter\let\expandafter\gls@thispage % relax if undefined
+ \csname glsp@\gls@name::#1\endcsname
+ \item[%
+ \gls@raisedlink{\hyper@anchorstart{\gls@name::#1}\hyper@anchorend}%
+ \gls@label{#2}{#3}{#4}]%
+ \begingroup
+ \let\protect\noexpand
+ \immediate\write\@auxout{%
+ \string\gls@cite{\gls@name::#1}{#2}{#3}{#4}}%
+ \endgroup
+ \else
+ \xdef\gls@a{\noexpand\begin{\@currenvir}}%
+ \endgroup
+ \begin{losalist}%
+ \gls@listtrue
+ \def\stopglosslist{\end{losalist}}%
+ \gls@a{#1}{#2}{#3}{#4}%
+ \fi
+ \ignorespaces}
+ {.\@@par}
+
+\expandafter\let\csname losaitem*\endcsname\losaitem
+\expandafter\let\csname endlosaitem*\endcsname\@@par
+
+\newcommand\losa@section{%
+ \if@twocolumn
+ \@restonecoltrue\onecolumn
+ \else
+ \@restonecolfalse
+ \fi
+ \chapter*{\losaname}%
+ \@mkboth{\scshape\MakeUppercase\losaname}%
+ {\scshape\MakeUppercase\losaname}%
+}
+\newenvironment{thelosa}
+ {\losa@section
+ \def\+##1+{}%
+ \@beginparpenalty\@M}%
+ {\if@restonecol\twocolumn\fi%
+ \stopglosslist}
+
+\renewcommand{\do@losapage}{%
+ \iflosapage
+ \if@openright\cleardoublepage\else\clearpage\fi
+ % must clear page here, so that phantomsection\addcontentsline is on the correct page
+ \settoheight{\gt@tmpa}{A}
+ \set@gttocskip{\gt@tmpa}
+ {\newlinestretch{1}
+ \addvspace{\gt@tocentryskip@value}
+ \phantomsection%
+ \addcontentsline{toc}{chapter}{\losacontentlinestring}
+ \printgloss[losa]{\@losafiles}
+ }%
+ \newpage
+ \fi
+}
diff --git a/obsolete/macros/latex/contrib/gatech-thesis/gatech-thesis-patch.sty b/obsolete/macros/latex/contrib/gatech-thesis/gatech-thesis-patch.sty
new file mode 100644
index 0000000000..3593840f5d
--- /dev/null
+++ b/obsolete/macros/latex/contrib/gatech-thesis/gatech-thesis-patch.sty
@@ -0,0 +1,12 @@
+\ProvidesFile{gatech-thesis-patch.sty}[2010/07/02 1.8 (Mitchel T. Keller)]
+\gtthesis@checkVersion{1.8}
+{\typeout{^^J%
+ ***^^J%
+ *** This is a patch for `gatech-thesis.cls' version 1.8, but^^J%
+ *** you're using version \gtthesisversion.^^J%
+ ***^^J%
+ *** Patch file not loaded.^^J%
+ ***^^J}%
+ \endinput
+}
+\typeout{gatech-thesis-patch loaded}
diff --git a/obsolete/macros/latex/contrib/gatech-thesis/gatech-thesis.bst b/obsolete/macros/latex/contrib/gatech-thesis/gatech-thesis.bst
new file mode 100644
index 0000000000..b076cdcfcd
--- /dev/null
+++ b/obsolete/macros/latex/contrib/gatech-thesis/gatech-thesis.bst
@@ -0,0 +1,1137 @@
+% Georgia Tech thesis bibliography style (08-Aug-2002 version)
+% like plain.bst, but:
+%
+% numeric labels, sorted, IEEE abbreviations (vol. not volume,
+% no. not number, authors' first names abbreviated), quotes
+% around article titles, commas separate all fields except after
+% book titles and before "notes". Authors names typeset
+% in small caps, surname first.
+%
+% Based on IEEE Transactions bibliography style (29-Jan-88 version)
+% Differs from ieeetr.bst by:
+% sorted, small cap author names, authors' first names abbreviated
+
+ENTRY
+ { address
+ author
+ booktitle
+ chapter
+ edition
+ editor
+ howpublished
+ institution
+ journal
+ key
+ month
+ note
+ number
+ organization
+ pages
+ publisher
+ school
+ series
+ title
+ type
+ volume
+ year
+ }
+ {}
+ { label }
+
+INTEGERS { output.state before.all mid.sentence after.quote after.sentence
+ after.quoted.block after.block }
+
+FUNCTION {init.state.consts}
+{ #0 'before.all :=
+ #1 'mid.sentence :=
+ #2 'after.quote :=
+ #3 'after.sentence :=
+ #4 'after.quoted.block :=
+ #5 'after.block :=
+}
+
+STRINGS { s t }
+
+FUNCTION {output.nonnull}
+{ 's :=
+ output.state mid.sentence =
+ { ", " * write$ }
+ { output.state after.quote =
+ { " " * write$ }
+ { output.state after.block =
+ { add.period$ write$
+ newline$
+ "\newblock " write$
+ }
+ { output.state before.all =
+ 'write$
+ { output.state after.quoted.block =
+ { write$
+ newline$
+ "\newblock " write$
+ }
+ { add.period$ " " * write$ }
+ if$
+ }
+ if$
+ }
+ if$
+ }
+ if$
+ mid.sentence 'output.state :=
+ }
+ if$
+ s
+}
+
+FUNCTION {output}
+{ duplicate$ empty$
+ 'pop$
+ 'output.nonnull
+ if$
+}
+
+FUNCTION {output.check}
+{ 't :=
+ duplicate$ empty$
+ { pop$ "empty " t * " in " * cite$ * warning$ }
+ 'output.nonnull
+ if$
+}
+
+FUNCTION {output.bibitem}
+{ newline$
+ "\bibitem{" write$
+ cite$ write$
+ "}" write$
+ newline$
+ ""
+ before.all 'output.state :=
+}
+
+FUNCTION {blank.sep}
+{ after.quote 'output.state :=
+}
+
+FUNCTION {fin.entry}
+{ output.state after.quoted.block =
+ 'skip$
+ 'add.period$
+ if$
+ write$
+ newline$
+}
+
+FUNCTION {new.block}
+{ output.state before.all =
+ 'skip$
+ { output.state after.quote =
+ { after.quoted.block 'output.state := }
+ { after.block 'output.state := }
+ if$
+ }
+ if$
+}
+
+FUNCTION {new.sentence}
+{ output.state after.block =
+ 'skip$
+ { output.state before.all =
+ 'skip$
+ { after.sentence 'output.state := }
+ if$
+ }
+ if$
+}
+
+FUNCTION {not}
+{ { #0 }
+ { #1 }
+ if$
+}
+
+FUNCTION {and}
+{ 'skip$
+ { pop$ #0 }
+ if$
+}
+
+FUNCTION {or}
+{ { pop$ #1 }
+ 'skip$
+ if$
+}
+
+FUNCTION {new.block.checka}
+{ empty$
+ 'skip$
+ 'new.block
+ if$
+}
+
+FUNCTION {new.block.checkb}
+{ empty$
+ swap$ empty$
+ and
+ 'skip$
+ 'new.block
+ if$
+}
+
+FUNCTION {new.sentence.checka}
+{ empty$
+ 'skip$
+ 'new.sentence
+ if$
+}
+
+FUNCTION {field.or.null}
+{ duplicate$ empty$
+ { pop$ "" }
+ 'skip$
+ if$
+}
+
+FUNCTION {emphasize}
+{ duplicate$ empty$
+ { pop$ "" }
+ { "{\em " swap$ * "}" * }
+ if$
+}
+
+%CSW: scapify copied from asm.bst
+FUNCTION {scapify}
+{ duplicate$ empty$
+ { pop$ "" }
+ { "{\sc " swap$ * "}" * }
+ if$
+}
+
+INTEGERS { nameptr namesleft numnames }
+
+FUNCTION {format.names}
+{ 's :=
+ #1 'nameptr :=
+ s num.names$ 'numnames :=
+ numnames 'namesleft :=
+ { namesleft #0 > }
+ %CSW: surname first, small caps
+ %{ s nameptr "{f.~}{vv~}{ll}{, jj}" format.name$ 't :=
+ { s nameptr "{vv~}{ll}{, jj}{, f.}" format.name$ scapify 't :=
+ nameptr #1 >
+ { namesleft #1 >
+ { ", " * t * }
+ { numnames #2 >
+ { "," * }
+ 'skip$
+ if$
+ t "others" =
+ { " {\em et~al.}" * }
+ { " and " * t * }
+ if$
+ }
+ if$
+ }
+ 't
+ if$
+ nameptr #1 + 'nameptr :=
+ namesleft #1 - 'namesleft :=
+ }
+ while$
+}
+
+FUNCTION {format.authors}
+{ author empty$
+ { "" }
+ { author format.names }
+ if$
+}
+
+FUNCTION {format.editors}
+{ editor empty$
+ { "" }
+ { editor format.names
+ editor num.names$ #1 >
+ { ", eds." * }
+ { ", ed." * }
+ if$
+ }
+ if$
+}
+
+FUNCTION {format.title}
+{ title empty$
+ { "" }
+ { "``" title "t" change.case$ * ",''" * }
+ if$
+}
+
+FUNCTION {format.title.p}
+{ title empty$
+ { "" }
+ { "``" title "t" change.case$ * ".''" * }
+ if$
+}
+
+FUNCTION {n.dashify}
+{ 't :=
+ ""
+ { t empty$ not }
+ { t #1 #1 substring$ "-" =
+ { t #1 #2 substring$ "--" = not
+ { "--" *
+ t #2 global.max$ substring$ 't :=
+ }
+ { { t #1 #1 substring$ "-" = }
+ { "-" *
+ t #2 global.max$ substring$ 't :=
+ }
+ while$
+ }
+ if$
+ }
+ { t #1 #1 substring$ *
+ t #2 global.max$ substring$ 't :=
+ }
+ if$
+ }
+ while$
+}
+
+FUNCTION {format.date}
+{ year empty$
+ { month empty$
+ { "" }
+ { "there's a month but no year in " cite$ * warning$
+ month
+ }
+ if$
+ }
+ { month empty$
+ 'year
+ { month " " * year * }
+ if$
+ }
+ if$
+}
+
+FUNCTION {format.btitle}
+{ title emphasize
+}
+
+FUNCTION {tie.or.space.connect}
+{ duplicate$ text.length$ #3 <
+ { "~" }
+ { " " }
+ if$
+ swap$ * *
+}
+
+FUNCTION {either.or.check}
+{ empty$
+ 'pop$
+ { "can't use both " swap$ * " fields in " * cite$ * warning$ }
+ if$
+}
+
+FUNCTION {format.bvolume}
+{ volume empty$
+ { "" }
+ { "vol.~" volume *
+ series empty$
+ 'skip$
+ { " of " * series emphasize * }
+ if$
+ "volume and number" number either.or.check
+ }
+ if$
+}
+
+FUNCTION {format.number.series}
+{ volume empty$
+ { number empty$
+ { series field.or.null }
+ { output.state mid.sentence =
+ { "no.~" }
+ { "No.~" }
+ if$
+ number *
+ series empty$
+ { "there's a number but no series in " cite$ * warning$ }
+ { " in " * series * }
+ if$
+ }
+ if$
+ }
+ { "" }
+ if$
+}
+
+FUNCTION {format.edition}
+{ edition empty$
+ { "" }
+ { edition "l" change.case$ "~ed." * }
+ if$
+}
+
+INTEGERS { multiresult }
+
+FUNCTION {multi.page.check}
+{ 't :=
+ #0 'multiresult :=
+ { multiresult not
+ t empty$ not
+ and
+ }
+ { t #1 #1 substring$
+ duplicate$ "-" =
+ swap$ duplicate$ "," =
+ swap$ "+" =
+ or or
+ { #1 'multiresult := }
+ { t #2 global.max$ substring$ 't := }
+ if$
+ }
+ while$
+ multiresult
+}
+
+FUNCTION {format.pages}
+{ pages empty$
+ { "" }
+ { pages multi.page.check
+ { "pp.~" pages n.dashify * }
+ { "p.~" pages * }
+ if$
+ }
+ if$
+}
+
+FUNCTION {format.volume}
+{ volume empty$
+ { "" }
+ { "vol.~" volume * }
+ if$
+}
+
+FUNCTION {format.number}
+{ number empty$
+ { "" }
+ { "no.~" number * }
+ if$
+}
+
+FUNCTION {format.chapter.pages}
+{ chapter empty$
+ 'format.pages
+ { type empty$
+ { "ch.~" chapter * }
+ { type "l" change.case$ chapter tie.or.space.connect }
+ if$
+ pages empty$
+ 'skip$
+ { ", " * format.pages * }
+ if$
+ }
+ if$
+}
+
+FUNCTION {format.in.ed.booktitle}
+{ booktitle empty$
+ { "" }
+ { "in " booktitle emphasize *
+ editor empty$
+ 'skip$
+ { " (" * format.editors * ")" * }
+ if$
+ }
+ if$
+}
+
+FUNCTION {format.thesis.type}
+{ type empty$
+ 'skip$
+ { pop$
+ output.state after.block =
+ { type "t" change.case$ }
+ { type "l" change.case$ }
+ if$
+ }
+ if$
+}
+
+FUNCTION {empty.misc.check}
+{ author empty$ title empty$ howpublished empty$
+ month empty$ year empty$ note empty$
+ and and and and and
+ %CSW: plain.bst has the following line, unsrt.bst doesn't...
+ key empty$ not and
+ { "all relevant fields are empty in " cite$ * warning$ }
+ 'skip$
+ if$
+}
+
+FUNCTION {format.tr.number}
+{ type empty$
+ { "Tech. Rep." }
+ 'type
+ if$
+ number empty$
+ { "l" change.case$ }
+ { number tie.or.space.connect }
+ if$
+}
+
+FUNCTION {format.addr.pub}
+{ publisher empty$
+ { "" }
+ { address empty$
+ { "" }
+ { address ": " * }
+ if$
+ publisher *
+ }
+ if$
+}
+
+FUNCTION {format.paddress}
+{ address empty$
+ { "" }
+ { "(" address * ")" * }
+ if$
+}
+
+FUNCTION {format.article.crossref}
+{ key empty$
+ { journal empty$
+ { "need key or journal for " cite$ * " to crossref " * crossref *
+ warning$
+ ""
+ }
+ { "in {\em " journal * "\/}" * }
+ if$
+ }
+ { "in " key * }
+ if$
+ " \cite{" * crossref * "}" *
+}
+
+FUNCTION {format.crossref.editor}
+{ editor #1 "{vv~}{ll}" format.name$
+ editor num.names$ duplicate$
+ #2 >
+ { pop$ " {\em et~al.}" * }
+ { #2 <
+ 'skip$
+ { editor #2 "{ff }{vv }{ll}{ jj}" format.name$ "others" =
+ { " {\em et~al.}" * }
+ { " and " * editor #2 "{vv~}{ll}" format.name$ * }
+ if$
+ }
+ if$
+ }
+ if$
+}
+
+FUNCTION {format.book.crossref}
+{ volume empty$
+ { "empty volume in " cite$ * "'s crossref of " * crossref * warning$
+ "In "
+ }
+ { "Vol.~" volume *
+ " of " *
+ }
+ if$
+ editor empty$
+ editor field.or.null author field.or.null =
+ or
+ { key empty$
+ { series empty$
+ { "need editor, key, or series for " cite$ * " to crossref " *
+ crossref * warning$
+ "" *
+ }
+ { "{\em " * series * "\/}" * }
+ if$
+ }
+ { key * }
+ if$
+ }
+ { format.crossref.editor * }
+ if$
+ " \cite{" * crossref * "}" *
+}
+
+FUNCTION {format.incoll.inproc.crossref}
+{ editor empty$
+ editor field.or.null author field.or.null =
+ or
+ { key empty$
+ { booktitle empty$
+ { "need editor, key, or booktitle for " cite$ * " to crossref " *
+ crossref * warning$
+ ""
+ }
+ { "in {\em " booktitle * "\/}" * }
+ if$
+ }
+ { "in " key * }
+ if$
+ }
+ { "in " format.crossref.editor * }
+ if$
+ " \cite{" * crossref * "}" *
+}
+
+FUNCTION {article}
+{ output.bibitem
+ format.authors "author" output.check
+ format.title "title" output.check
+ blank.sep
+ crossref missing$
+ { journal emphasize "journal" output.check
+ format.volume output
+ month empty$
+ { format.number output }
+ 'skip$
+ if$
+ format.pages output
+ format.date "year" output.check
+ }
+ { format.article.crossref output.nonnull
+ format.pages output
+ }
+ if$
+ new.block
+ note output
+ fin.entry
+}
+
+FUNCTION {book}
+{ output.bibitem
+ author empty$
+ { format.editors "author and editor" output.check }
+ { format.authors output.nonnull
+ crossref missing$
+ { "author and editor" editor either.or.check }
+ 'skip$
+ if$
+ }
+ if$
+ format.btitle "title" output.check
+ crossref missing$
+ { format.bvolume output
+ new.block
+ format.number.series output
+ format.addr.pub "publisher" output.check
+ }
+ { new.block
+ format.book.crossref output.nonnull
+ }
+ if$
+ format.edition output
+ format.date "year" output.check
+ new.block
+ note output
+ fin.entry
+}
+
+FUNCTION {booklet}
+{ output.bibitem
+ format.authors output
+ title empty$
+ { "empty title in " cite$ * warning$
+ howpublished new.sentence.checka
+ }
+ { howpublished empty$ not
+ address empty$ month empty$ year empty$ and and
+ or
+ { format.title.p output.nonnull }
+ { format.title output.nonnull }
+ if$
+ blank.sep
+ }
+ if$
+ howpublished output
+ address output
+ format.date output
+ new.block
+ note output
+ fin.entry
+}
+
+FUNCTION {inbook}
+{ output.bibitem
+ author empty$
+ { format.editors "author and editor" output.check }
+ { format.authors output.nonnull
+ crossref missing$
+ { "author and editor" editor either.or.check }
+ 'skip$
+ if$
+ }
+ if$
+ format.btitle "title" output.check
+ crossref missing$
+ { format.bvolume output
+ format.chapter.pages "chapter and pages" output.check
+ new.block
+ format.number.series output
+ format.addr.pub "publisher" output.check
+ }
+ { format.chapter.pages "chapter and pages" output.check
+ new.block
+ format.book.crossref output.nonnull
+ }
+ if$
+ format.edition output
+ format.date "year" output.check
+ new.block
+ note output
+ fin.entry
+}
+
+FUNCTION {incollection}
+{ output.bibitem
+ format.authors "author" output.check
+ format.title "title" output.check
+ blank.sep
+ crossref missing$
+ { format.in.ed.booktitle "booktitle" output.check
+ format.bvolume output
+ format.number.series output
+ format.chapter.pages output
+ format.addr.pub "publisher" output.check
+ format.edition output
+ format.date "year" output.check
+ }
+ { format.incoll.inproc.crossref output.nonnull
+ format.chapter.pages output
+ }
+ if$
+ new.block
+ note output
+ fin.entry
+}
+
+FUNCTION {inproceedings}
+{ output.bibitem
+ format.authors "author" output.check
+ format.title "title" output.check
+ blank.sep
+ crossref missing$
+ { format.in.ed.booktitle "booktitle" output.check
+ format.bvolume output
+ format.number.series output
+ format.paddress output
+ format.pages output
+ organization output
+ publisher output
+ format.date "year" output.check
+ }
+ { format.incoll.inproc.crossref output.nonnull
+ format.pages output
+ }
+ if$
+ new.block
+ note output
+ fin.entry
+}
+
+FUNCTION {conference} { inproceedings }
+
+FUNCTION {manual}
+{ output.bibitem
+ author empty$
+ { organization empty$
+ 'skip$
+ { organization output.nonnull
+ address output
+ }
+ if$
+ }
+ { format.authors output.nonnull }
+ if$
+ format.btitle "title" output.check
+ author empty$
+ { organization empty$
+ { address new.block.checka
+ address output
+ }
+ 'skip$
+ if$
+ }
+ { organization address new.block.checkb
+ organization output
+ address output
+ }
+ if$
+ format.edition output
+ format.date output
+ new.block
+ note output
+ fin.entry
+}
+
+FUNCTION {mastersthesis}
+{ output.bibitem
+ format.authors "author" output.check
+ format.title "title" output.check
+ blank.sep
+ "Master's thesis" format.thesis.type output.nonnull
+ school "school" output.check
+ address output
+ format.date "year" output.check
+ new.block
+ note output
+ fin.entry
+}
+
+FUNCTION {misc}
+{ output.bibitem
+ format.authors output
+ title empty$
+ { howpublished new.sentence.checka }
+ { howpublished empty$ not
+ month empty$ year empty$ and
+ or
+ { format.title.p output.nonnull }
+ { format.title output.nonnull }
+ if$
+ blank.sep
+ }
+ if$
+ howpublished output
+ format.date output
+ new.block
+ note output
+ fin.entry
+ empty.misc.check
+}
+
+FUNCTION {phdthesis}
+{ output.bibitem
+ format.authors "author" output.check
+ format.btitle "title" output.check
+ new.block
+ "PhD thesis" format.thesis.type output.nonnull
+ school "school" output.check
+ address output
+ format.date "year" output.check
+ new.block
+ note output
+ fin.entry
+}
+
+FUNCTION {proceedings}
+{ output.bibitem
+ editor empty$
+ { organization output }
+ { format.editors output.nonnull }
+ if$
+ format.btitle "title" output.check
+ format.bvolume output
+ format.number.series output
+ format.paddress output
+ editor empty$
+ 'skip$
+ { organization output }
+ if$
+ publisher output
+ format.date "year" output.check
+ new.block
+ note output
+ fin.entry
+}
+
+FUNCTION {techreport}
+{ output.bibitem
+ format.authors "author" output.check
+ format.title "title" output.check
+ blank.sep
+ format.tr.number output.nonnull
+ institution "institution" output.check
+ address output
+ format.date "year" output.check
+ new.block
+ note output
+ fin.entry
+}
+
+FUNCTION {unpublished}
+{ output.bibitem
+ format.authors "author" output.check
+ format.title.p "title" output.check
+ blank.sep
+ note "note" output.check
+ format.date output
+ fin.entry
+}
+
+FUNCTION {default.type} { misc }
+
+MACRO {jan} {"Jan."}
+
+MACRO {feb} {"Feb."}
+
+MACRO {mar} {"Mar."}
+
+MACRO {apr} {"Apr."}
+
+MACRO {may} {"May"}
+
+MACRO {jun} {"June"}
+
+MACRO {jul} {"July"}
+
+MACRO {aug} {"Aug."}
+
+MACRO {sep} {"Sept."}
+
+MACRO {oct} {"Oct."}
+
+MACRO {nov} {"Nov."}
+
+MACRO {dec} {"Dec."}
+
+MACRO {acmcs} {"ACM Computing Surveys"}
+
+MACRO {acta} {"Acta Informatica"}
+
+MACRO {cacm} {"Communications ACM"}
+
+MACRO {ibmjrd} {"IBM J. Research and Development"}
+
+MACRO {ibmsj} {"IBM Systems~J."}
+
+MACRO {ieeese} {"IEEE Trans. Software Engineering"}
+
+MACRO {ieeetc} {"IEEE Trans. Computers"}
+
+MACRO {ieeetcad}
+ {"IEEE Trans. Computer-Aided Design"}
+
+MACRO {ipl} {"Information Processing Letters"}
+
+MACRO {jacm} {"J.~ACM"}
+
+MACRO {jcss} {"J.~Computer and System Sciences"}
+
+MACRO {scp} {"Science of Computer Programming"}
+
+MACRO {sicomp} {"SIAM J. Computing"}
+
+MACRO {tocs} {"ACM Trans. Computer Systems"}
+
+MACRO {tods} {"ACM Trans. Database Systems"}
+
+MACRO {tog} {"ACM Trans. Graphics"}
+
+MACRO {toms} {"ACM Trans. Mathematical Software"}
+
+MACRO {toois} {"ACM Trans. Office Information Systems"}
+
+MACRO {toplas} {"ACM Trans. Programming Languages and Systems"}
+
+MACRO {tcs} {"Theoretical Computer Science"}
+
+READ
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+% CSW: sorting functions copied from plain.bst
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+FUNCTION {sortify}
+{ purify$
+ "l" change.case$
+}
+
+INTEGERS { len }
+
+FUNCTION {chop.word}
+{ 's :=
+ 'len :=
+ s #1 len substring$ =
+ { s len #1 + global.max$ substring$ }
+ 's
+ if$
+}
+
+FUNCTION {sort.format.names}
+{ 's :=
+ #1 'nameptr :=
+ ""
+ s num.names$ 'numnames :=
+ numnames 'namesleft :=
+ { namesleft #0 > }
+ { nameptr #1 >
+ { " " * }
+ 'skip$
+ if$
+ s nameptr "{vv{ } }{ll{ }}{ ff{ }}{ jj{ }}" format.name$ 't :=
+ nameptr numnames = t "others" = and
+ { "et al" * }
+ { t sortify * }
+ if$
+ nameptr #1 + 'nameptr :=
+ namesleft #1 - 'namesleft :=
+ }
+ while$
+}
+
+FUNCTION {sort.format.title}
+{ 't :=
+ "A " #2
+ "An " #3
+ "The " #4 t chop.word
+ chop.word
+ chop.word
+ sortify
+ #1 global.max$ substring$
+}
+
+FUNCTION {author.sort}
+{ author empty$
+ { key empty$
+ { "to sort, need author or key in " cite$ * warning$
+ ""
+ }
+ { key sortify }
+ if$
+ }
+ { author sort.format.names }
+ if$
+}
+
+FUNCTION {author.editor.sort}
+{ author empty$
+ { editor empty$
+ { key empty$
+ { "to sort, need author, editor, or key in " cite$ * warning$
+ ""
+ }
+ { key sortify }
+ if$
+ }
+ { editor sort.format.names }
+ if$
+ }
+ { author sort.format.names }
+ if$
+}
+
+FUNCTION {author.organization.sort}
+{ author empty$
+ { organization empty$
+ { key empty$
+ { "to sort, need author, organization, or key in " cite$ * warning$
+ ""
+ }
+ { key sortify }
+ if$
+ }
+ { "The " #4 organization chop.word sortify }
+ if$
+ }
+ { author sort.format.names }
+ if$
+}
+
+FUNCTION {editor.organization.sort}
+{ editor empty$
+ { organization empty$
+ { key empty$
+ { "to sort, need editor, organization, or key in " cite$ * warning$
+ ""
+ }
+ { key sortify }
+ if$
+ }
+ { "The " #4 organization chop.word sortify }
+ if$
+ }
+ { editor sort.format.names }
+ if$
+}
+
+FUNCTION {presort}
+{ type$ "book" =
+ type$ "inbook" =
+ or
+ 'author.editor.sort
+ { type$ "proceedings" =
+ 'editor.organization.sort
+ { type$ "manual" =
+ 'author.organization.sort
+ 'author.sort
+ if$
+ }
+ if$
+ }
+ if$
+ " "
+ *
+ year field.or.null sortify
+ *
+ " "
+ *
+ title field.or.null
+ sort.format.title
+ *
+ #1 entry.max$ substring$
+ 'sort.key$ :=
+}
+
+ITERATE {presort}
+
+SORT
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+% CSW: end sorting functions copied from plain.bst
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+STRINGS { longest.label }
+
+INTEGERS { number.label longest.label.width }
+
+FUNCTION {initialize.longest.label}
+{ "" 'longest.label :=
+ #1 'number.label :=
+ #0 'longest.label.width :=
+}
+
+FUNCTION {longest.label.pass}
+{ number.label int.to.str$ 'label :=
+ number.label #1 + 'number.label :=
+ label width$ longest.label.width >
+ { label 'longest.label :=
+ label width$ 'longest.label.width :=
+ }
+ 'skip$
+ if$
+}
+
+EXECUTE {initialize.longest.label}
+
+ITERATE {longest.label.pass}
+
+FUNCTION {begin.bib}
+{ preamble$ empty$
+ 'skip$
+ { preamble$ write$ newline$ }
+ if$
+ "\begin{thebibliography}{" longest.label * "}" * write$ newline$
+}
+
+EXECUTE {begin.bib}
+
+EXECUTE {init.state.consts}
+
+ITERATE {call.type$}
+
+FUNCTION {end.bib}
+{ newline$
+ "\end{thebibliography}" write$ newline$
+}
+
+EXECUTE {end.bib}
diff --git a/obsolete/macros/latex/contrib/gatech-thesis/gatech-thesis.cls b/obsolete/macros/latex/contrib/gatech-thesis/gatech-thesis.cls
new file mode 100644
index 0000000000..b429446768
--- /dev/null
+++ b/obsolete/macros/latex/contrib/gatech-thesis/gatech-thesis.cls
@@ -0,0 +1,3150 @@
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+%%
+%% GATECH-THESIS.CLS (v1.7)
+%% Copyright (c) 2002 by Charles S. Wilson. All rights reserved.
+%% See licensing information, below.
+%%
+%% Last Update: V1.8 (2 July 2010) by Mitchel T. Keller
+%%
+%% Heritage:
+%% UT-THESIS.CLS (v1.8)
+%% -- by Francois Pitt (1999 Dec 10)
+%% -- as modified by Aichen Low, 2000 Jan 14
+%% GTthesis.sty
+%% -- as adapated from suthesis.sty by Ahmed Gheith
+%% -- and modified by Joonwon Lee, Eilin Tien Lin, Wei Lui
+%% -- and as modified by Kalyan Perumalla, 1999 Nov 18
+%% gt-thesissty.sty
+%% -- by Aichen Low, 2000 Jan 17
+%%
+%% All of these sources were combined to produce a single, unified
+%% class file for Georgia Tech PhD Theses.
+%%
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+\newcommand{\gtthesisversion}{1.8}% current version number
+\newcommand{\gtthesisupdated}{2010/07/02}% date of last change(s)
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+%%
+%% This program is free software; you can redistribute it and/or
+%% modify it under the terms of the GNU General Public License
+%% as published by the Free Software Foundation; either version 2
+%% of the License, or (at your option) any later version.
+%%
+%% This program is distributed in the hope that it will be useful,
+%% but WITHOUT ANY WARRANTY; without even the implied warranty of
+%% MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+%% GNU General Public License for more details.
+%%
+%% You should have received a copy of the GNU General Public License
+%% along with this program; if not, write to the Free Software
+%% Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
+%%
+%% See the COPYING file for license information.
+%%
+%% Note that the files contained within ThesisProposal.tar.gz have
+%% their own licence.
+%%
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+%%
+%% REVISION HISTORY:
+%%
+%% v1.8: 2010-Jul-02 Mitchel T. Keller
+%% * Change font used in Table of Contents for volumes (parts).
+%% * Add support for abstract page meeting UMI requirements.
+%% * Fix bug that prevented hyperref and overpic packages from
+%% working together properly.
+%% v1.7: 2006-Jan-24 Mitchel T. Keller
+%% * Remove double spacing of thesis title as per July 2005
+%% manual.
+%% * Reduce font size of thesis title, chapter titles, author,
+%% and volume titles.
+%% * Update approval page to comply with electronic submission
+%% requirements (no signature line, all committee members'
+%% affiliations listed, approval date printed on page).
+%% v1.6: 2003-Apr-14 Charles S. Wilson
+%% * caption labels: OGS requires (e.g.) 'Figure 2:' to be in
+%% same font as rest of caption (bold ok, changing font not ok)
+%% * make vita double-spaced
+%% * fixed a bug in Signature page when no Committee Chair. Thanks
+%% Arnaud Cottet for reporting it.
+%% * Changed one-and-a-half spacing to better match the description
+%% in The LaTeX Companion (use 1.25, not 1.33).
+%% v1.5: 2002-Aug-17 Charles S. Wilson
+%% * COMPLIANCE: new documentation
+%% * caption labels: make them prettier
+%% * Change gatech-thesis-gloss.sty to handle real glossaries;
+%% * NEW: gatech-thesis-losa.sty now handles the List of Symbols
+%% v1.4: 2002-Aug-03 Charles S. Wilson
+%% * Better handling of equation, table, and figure numbering
+%% (added David Carlisle's \@removefromreset macro, and use
+%% that instead of the previous kludge.)
+%% * Corrected problem with two-sided printing: the even-numbered
+%% (left hand) page between the end of \preliminary and the
+%% beginning of the first chapter was not printed. This really
+%% messed up duplex printers. FIXED.
+%% * Corrected problem when vita (or whatever the last section
+%% before \end{postliminary}) was \included instead of \inputted.
+%% * Signature page no longer prints empty lines for non-existent
+%% committee members. Also, uses two columns if more than 4
+%% members, per the Graduate Office Guidelines. AND we no longer
+%% print its page number
+%% * Now uses (requires) the calc package, which is part of the
+%% standard latex installation.
+%% * Automatically center the dedication (but see the new functions
+%% \dedicationtop and \dedicationbottom
+%% * Correctly doublespace the title on both titlepage and signaturepage
+%% * page numbering defaults to a centered footer, as per the new
+%% Graduate Office guidelines
+%% * Added proper handling for multiple volumes in a single thesis
+%% * Added support for the add-on styles ``gatech-thesis-gloss.sty''
+%% and ``gatech-thesis-index.sty''.
+%% v1.3: 2002-Jan-13 Charles S. Wilson
+%% * Renamed to gatech-thesis at request of the CTAN folks.
+%% v1.2: 2001-May-01 Charles S. Wilson
+%% * Minor tweaks to conform to latest GSO requirements
+%% v1.1: 2001-Apr-29 Charles S. Wilson
+%% * Fixup to work nicely with pdflatex and hyperref
+%% v1.0: 2001-Jan-24 Charles S. Wilson
+%% * Initial release: merged UT-THESIS.STY with GTthesis.sty
+%% and gt-thesissty.sty.
+%%
+%% KNOWN BUGS:
+%%
+%% - FIXED: (sortof) [On ``dedication'' and ``acknowledgements''
+%% causing an error when they both appear on the same page.]
+%% GT style doesn't allow these to appear on the same page,
+%% so \begin{dedication}...\end{dedication} will ALWAYS
+%% appear on its own page. Ditto acknowledgements.
+%%
+%% - I didn't fix this; GATECH-THESIS.CLS has inherited this bug
+%% from UT-THESIS.CLS: [On missing page headers for float pages.]
+%% ``teTex'' under Linux fails in precisely the same way as does
+%% ``MikTeX'', so there's something clearly wrong somewhere, but
+%% I don't know where. It only fails on odd-numbered pages (if
+%% you remove enough text so that the page floats back to an
+%% even-numbered page, the page header is correct)!
+%%
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+%%
+%% The following notice and changelog is included to satisfy the
+%% distribution requirements explained below, but much of it no
+%% longer applies. GATECH-THESIS.CLS has been changed in major ways
+%% from UT-THESIS.CLS...
+%%
+%% OLD:
+%% OLD: This file is distributed in the hope that it will be useful but
+%% OLD: without any warranty (without even the implied warranty of
+%% OLD: fitness for a particular purpose). For a description of this
+%% OLD: file's purpose, and instructions on its use, see below.
+%% OLD:
+%% OLD: Feel free to copy and redistribute this file, as long as this
+%% OLD: copyright notice remains intact. You may also modify the file
+%% OLD: to suit your particular needs, as long as you indicate your
+%% OLD: changes below (and inform the original author of your changes:
+%% OLD: he's always curious to know what people think of his work).
+%% OLD:
+%% OLD: Send all bugs, questions, comments, suggestions, etc. to the
+%% OLD: author, at <fpitt@cs.utoronto.ca>.
+%% OLD:
+%% OLD: KNOWN BUGS: (reported by Robert Bernecky)
+%% OLD:
+%% OLD: - [On missing page headers for float pages.]
+%% OLD: ``teTex'' under Linux fails in precisely the same way as does
+%% OLD: ``MikTeX'', so there's something clearly wrong somewhere, but
+%% OLD: I don't know where. It only fails on odd-numbered pages (if
+%% OLD: you remove enough text so that the page floats back to an
+%% OLD: even-numbered page, the page header is correct)!
+%% OLD: - [On ``dedication'' and ``acknowledgements'' causing an error when
+%% OLD: they both appear on the same page.]
+%% OLD: ``teTeX'' and ``MikTeX'' both fail the same way on this one, with
+%% OLD: ``LaTeX error: Something's wrong--perhaps a missing \item.
+%% OLD: Adding a \newpage between the two environments ``fixes'' the
+%% OLD: problem. Unsure what causes this, but it could be a bug
+%% OLD: common to all x86 platforms...
+%% OLD:
+%% OLD: REVISION HISTORY:
+%% OLD:
+%% OLD: v1.8: 1999/12/10 (Francois Pitt)
+%% OLD: - Fixed circular definition problem with \currenttextsize
+%% OLD: that caused TeX to run out of input stack memory.
+%% OLD: v1.7: 1999/06/02,1999/05/20,1999/05/13 (Francois Pitt)
+%% OLD: - Minor change to the format of the date printed on every
+%% OLD: page with the ``draft'' option.
+%% OLD: - Minor cosmetic change to the word ``DRAFT'' printed on the
+%% OLD: corners of every page with the ``draft'' option.
+%% OLD: - Made ``draft'' mode doublespaced by default (it just makes
+%% OLD: more sense for actual drafts; suggested by Eric Joanis).
+%% OLD: - Changed \currenttextsize from a ``\newcommand'' to a ``\let''.
+%% OLD: - Added ``known bugs'' above.
+%% OLD: v1.6: 1999/03/06 (Francois Pitt)
+%% OLD: - Minor change: replaced ``\ifx\empty#1\else...\fi'' with
+%% OLD: ``\ifx\empty#1\empty\else...\fi'' (the former works only
+%% OLD: by accident while the latter is logically correct).
+%% OLD: v1.5: 1999/02/17 (Francois Pitt)
+%% OLD: - Fixed missing page numbers and headers by removing
+%% OLD: redefinition of \cleardoublepage (reported by Robert
+%% OLD: Bernecky 1999/02/04 and Nedialko Nedialkov 1999/02/12).
+%% OLD: - Added \clearemptydoublepage and \clearplaindoublepage
+%% OLD: commands.
+%% OLD: - Removed redefinitions of \tableofcontents, \listoftables,
+%% OLD: and \listoffigures because they already call \clearpage
+%% OLD: or \cleardoublepage by default.
+%% OLD: - Removed ``\setcounter{tocdepth}{2}'' from the page layout
+%% OLD: section (moved to ``ut-thesis.tex'' where it belongs).
+%% OLD: - Added \ignore command to comment out parts of a file.
+%% OLD: - Put version macros at the top of the file.
+%% OLD: - Changed order of revision comments.
+%% OLD: v1.4: 1998/11/05 (Francois Pitt)
+%% OLD: - Fixed ``abstract'' environment so that it is really put on a
+%% OLD: separate page, and changed ``\newpage\endgroup'' at the end
+%% OLD: to ``\par\endgroup\newpage'', which is more logical.
+%% OLD: - Changed ``acknowledgements'' environment so that it is *not*
+%% OLD: put on a separate page, allowing users to add other text
+%% OLD: on that page (e.g., ``dedication'' described next).
+%% OLD: - Added ``dedication'' environment based on ``acknowledgements''
+%% OLD: (suggested by Robert Bernecky 98/11/04).
+%% OLD: - Changed page layout so that it is defined in terms of the
+%% OLD: physical page size instead of being hard-coded for letter
+%% OLD: paper (8.5" x 11").
+%% OLD: v1.3: 1998/11/01 (Francois Pitt)
+%% OLD: - Fixed ``thebibliography'' so page headers are generated in
+%% OLD: the same style as for the rest of the thesis.
+%% OLD: - Swapped \endgroup and \newpage in definition of ``abstract''
+%% OLD: and ``acknowledgements'' environments, to fix problem with
+%% OLD: adjusted line spacing in ``abstract''.
+%% OLD: - Renamed ``\currentsize'' to ``\currenttextsize''.
+%% OLD: - Added \cleardoublepage at the end of preliminary sections,
+%% OLD: so that page 1 of main text is on right-hand side.
+%% OLD: v1.2: 1998/10/20 (Francois Pitt)
+%% OLD: - Changed ``spacenotes'' option to ``spacednotes'' to have more
+%% OLD: consistently named options.
+%% OLD: - Fixed spacing between main text and footnotes.
+%% OLD: - Fixed ``singlespaced'' environment, which didn't seem to
+%% OLD: work at all (reported by Nedialko Nedialkov 98/10/12):
+%% OLD: Actually, created a ``newspacing'' environment, which takes
+%% OLD: a parameter, and based ``singlespaced'', ``oneandahalfspaced'',
+%% OLD: and ``doublespaced'' environments on ``newspacing''.
+%% OLD: v1.1: 1998/10/01 (Francois Pitt)
+%% OLD: - Fixed bug that caused footnotes to make following tables
+%% OLD: single-spaced (reported by Philip Edmonds 98/09/30).
+%% OLD: - Made spacing of marginal notes and footnotes the same.
+%% OLD: - Added option to control line spacing of notes.
+%% OLD: - Added options to control the size of margins.
+%% OLD: - Changed names of temporary macros used in redefinitions
+%% OLD: to avoid conflicts with existing names.
+%% OLD: v1.0: 1998/09/29 (Francois Pitt)
+%% OLD: - Initial version.
+%% OLD:
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+%%
+%% LaTeX2e class file for formatting documents according to the
+%% Graduate Studies' guidelines for theses at the Georgia Institute
+%% of Technology.
+%%
+%% USAGE: \documentclass{gatech-thesis}
+%% \documentclass[...options...]{gatech-thesis}
+%%
+%% The default settings produce a final copy, ready for submission
+%% (11pt font, single-sided, double-spaced, normal margins,
+%% with single-spaced notes).
+%%
+%% OPTIONS:
+%%
+%% - Any standard option for the LaTeX2e ``report'' class, including
+%% ``10pt'', ``11pt'', ``12pt'', ``oneside'', ``twoside'', etc.
+%%
+%% - ``singlespaced'', ``oneandahalfspaced'', or ``doublespaced'': Set
+%% the entire document's default line spacing, except for notes,
+%% which are single-spaced by default.
+%%
+%% - ``spacednotes'': Let the line spacing of notes be determined
+%% by the line spacing of the main document, instead of being
+%% forced single-spaced.
+%%
+%% - ``narrowmargins'', ``normalmargins'', ``widemargins'',
+%% ``extrawidemargins'' or ``oldmargins'': Set the size of
+%% the margins, as follows:
+%% . ``normal'': 1 1/2" on left, 1" on top, right and bottom
+%% headers & footers 1/4" from body;
+%% - This is the Georgia Tech standard
+%% . ``narrow'': 1 1/4" on the left, 3/4" on all other sides,
+%% headers & footers 1/4" from body;
+%% . ``wide'': 1 1/4" on all sides, headers & footers 3/4" from
+%% body;
+%% . ``extrawide'': 1 1/2" on all sides, headers & footers 3/4"
+%% from body.
+%% . ``oldmargins'': 1 1/2" on left and top, 1" on right and bottom
+%% headers & footers 1/2 from body;
+%% adds 2"" extra space from top of page, on the first
+%% page of a chapter or appendix.
+%% - This is the OLD Georgia Tech standard
+%% (If you have more than just a few marginal notes, it is
+%% recommended that you use ``wide'' or ``extrawide'' margins.)
+%% Use ``normalmargins'' (the default) for the approved GT format.
+%%
+%% - ``draft'': Produce a draft copy (10pt font, double-sided,
+%% double-spaced, normal margins, with the word "DRAFT" printed
+%% at all four corners of every page, and current date printed in
+%% a running footer).
+%%
+%% - ``hyperref'': Indicates that the document will \usepackage{hyperref}.
+%% This is a kludge, but I didn't want to explicitly *require*
+%% hyperref, so we must indicate to gatech-thesis.cls whether it should
+%% define certain hyperref commands as dummies. ALWAYS use this
+%% option if you use the hyperref package. NEVER use this option if
+%% you do not also use the hyperref package.
+%%
+%% Note that these options can be used to override the default or
+%% draft document settings, so that it is possible, for example,
+%% to create a double-sided final copy, or a 1 1/2-spaced draft
+%% copy with wide margins, etc. Also note that when producing
+%% double-sided documents, new chapters and preliminary sections
+%% will always start on a right-hand page under the default
+%% settings (inserting a blank page if needed), but not if the
+%% ``draft'' option was used. (This can be overriden by using the
+%% ``openany'' or ``openright'' options. To achieve this effect for
+%% individual sections or chapters, use the \cleardoublepage
+%% command.) Note that the blank page inserted in these cases will
+%% still contain the header and page number that is present on all
+%% pages. For ``empty'' or ``plain'' pages, explicitly use one of the
+%% commands \clearemptydoublepage (totally blank inserted pages),
+%% \clearplaindoublepage (blank except for page number at bottom), or
+%% \cleartcplainfdoublepage (blank except for page number at Top
+%% Corner (hence, TCplain). You can also explicitly use
+%% \cleargtthesisdoublepage (but I don't know why you would, since this
+%% only makes sense if the current pagestyle is already gtthesis, and
+%% if that is the case then you're better off just using \cleardoublepage.
+%%
+%% NEW ENVIRONMENTS and COMMANDS:
+%% in some cases, there will be two commands with identical
+%% effect. These are usually because one is needed to maintain
+%% compatibility with documents that expect the old macros from
+%% GTthesis.sty.
+%%
+%% * \title{...}: (preamble only; REQUIRED)
+%%
+%% * \author{...}: (preamble only; REQUIRED)
+%% Specify the name of the author.
+%%
+%% * \department{...}: (preamble only; REQUIRED)
+%% * \dept{...}: compatibility synonym
+%% Specify the name of the graduate department.
+%%
+%% * \major{...}: (preamble only; REQUIRED if \listmajortrue is set)
+%%
+%% * \degree{...}: (preamble only; REQUIRED)
+%% Specify the name of the degree (e.g., "Doctor of Philosophy").
+%%
+%% * \gradyear{...}: (preamble only; REQUIRED)
+%% * \copyrightyear{...}: compatibility synonym
+%% Specify the year of graduation (defaults to current year).
+%%
+%% * \principaladvisor{...}: (preamble only; OPTIONAL)
+%% (or \principaladviser{...}, if you prefer advisor spelled with an e)
+%%
+%% * \committeechair{...}: (preamble only; OPTIONAL)
+%%
+%% * \firstreader{...}: (preamble only; OPTIONAL)
+%% * \secondreader{...}: (preamble only; OPTIONAL)
+%% * \thirdreader{...}: (preamble only; OPTIONAL)
+%% * \fourthreader{...}: (preamble only; OPTIONAL)
+%% * \fifthreader{...}: (preamble only; OPTIONAL)
+%% * \sixthreader{...}: (preamble only; OPTIONAL)
+%%
+%% * \submitdate{month year in which submitted}
+%% date is LaTeX'd if not specified
+%% * \approveddate{month, day, and year on which the last committee
+%% member signs the thesis form} (preamble only; REQUIRED)
+%%
+%% * \titlepagetrue or \titlepagefalse
+%% - produce or don't produce a title page (TRUE by default)
+%%
+%% * \signaturepagetrue or \signaturepagefalse
+%% - produce or don't produce a signature page (TRUE by default)
+%%
+%% * \copyrighttrue or \copyrightfalse
+%% - place or don't place a copyright notice on the title page (FALSE by default)
+%%
+%% * \figurespagetrue or \figurespagefalse
+%% - produce or don't produce a List of Figures page (TRUE by default)
+%%
+%% * \tablespagetrue or \tablespagefalse
+%% - produce or don't produce a List of Tables page (TRUE by default)
+%%
+%% * \contentspagetrue or \contentspagefalse
+%% - produce or don't produce a Table of Contents page (TRUE by default)
+%%
+%% * \bibpagetrue or \bibpagefalse
+%% - produce or don't produce a Bibliography page (TRUE by default)
+%%
+%% * \thesisproposaltrue or \thesisproposalfalse
+%% - indicate "Thesis Proposal" or "Thesis" on the title page (FALSE by default)
+%%
+%% * \dedicationheadingtrue or \dedicationheadingfalse
+%% - display ``DEDICATION'' heading on the dedication page (FALSE by default)
+%%
+%% * \dedicationtop and \dedicationbottom
+%% - The Graduate Office Guidelines say that the dedication should be centered
+%% on the page. By default, this is done -- but IMO it looks ugly. The
+%% vertical spacing above and below your text is proided by these two
+%% macros; redefined them if you want to do something different. E.g.
+%% this looks nice:
+%% \renewcommand{\dedicationtop}{\vspace*{\stretch{1}}
+%% \renewcommand{\dedicationbottom{\vspace*{\stretch{3}}
+%% which places the dedication about 1/4 of the way down the page.
+%%
+%% * \strictmarginstrue or \strictmarginsfalse
+%% - if true, then obey the margin rules EVEN on the title and signature
+%% page. Default TRUE and REQUIRED by Graduate Studies Office, but
+%% not very appealing. (under ``oldmargins'' an extra 50p spacing is
+%% added so that the title page looks like the chapter headings
+%% In any case, \strictmarginsfalse looks better for personal copies
+%% but \strictmarginstrue is necessary for official ones.
+%%
+%% * \multivolumetrue or \multivolumefalse
+%% - if true, indicates that the thesis will span multiple volumes.
+%% triggers automatic generation of the first volume title page
+%% (in addition to the ``entire work'' title page), but it's up
+%% to you to place the ``part{}'' commands in the appropriate
+%% locations for volume 2, volume 3, etc.
+%%
+%% * \listmajortrue or \listmajorfalse
+%% - If true, puts ``In Partial Fulfillment...[degree] in
+%% [major]'' on the title page and then puts the department down
+%% with Georgia Institute of Technology at the bottom of the
+%% page. If false, puts ``In Partial Fulfillment...[degree] in
+%% the [department]'' on the title page.
+%%
+%% * \dissertationtrue or \dissertationfalse
+%% - If true, uses the word ``Dissertation'' on the title page. If
+%% false, uses ``thesis''.
+%%
+%% * \bibfiles{...}
+%% Set the list of bibfiles to use when generating a bibliography
+%%
+%% - \linespacing{...}: (preamble only)
+%% - \spacing{...}: compatibility synonym
+%% Set the interline spacing directly, overriding document
+%% defaults and options; note that in order to get the correct
+%% appearance, the argument to \linespacing must be equal to
+%% 1/3 + 2/3 times the desired line spacing (for example,
+%% single-spaced = \linespacing{1},
+%% 1 1/2-spaced = \linespacing{1.25}, and
+%% double-spaced = \linespacing{1.66}).
+%%
+%% - ignore{...}:
+%% - comment{...}: compatibility synonym
+%% Ignore the part of the file between { and } (can include
+%% paragraph breaks); useful for commenting out large blocks.
+%%
+%% - \clearemptydoublepage, \clearplaindoublepage,
+%% \cleartcplaindoublepage, \cleargtthesisdoublepage
+%% Same as \cleardoublepage except that it sets the pagestyle of
+%% any inserted blank page to ``empty'' ``plain'' ``tcplain'' or
+%% ``gtthesis'' respectively.
+%%
+%% - \begin{preliminary}...\end{preliminary}:
+%% Delimit head matter (title page, abstract, table of contents,
+%% lists of tables and figures, etc.): set the page style and
+%% numbering for the preliminary sections and reset them for the
+%% main document.
+%% + Alternatively, at the appropriate spots call the synonums
+%% \beforepreface and \afterpreface. These ``synonyms'' do
+%% the same setup tasks as \begin{preliminary} and \end{preliminary},
+%% but they don't create an ``environment. The use of these
+%% synonyms is NOT recommended for new documents and are provided
+%% only for backward compatibility.
+%%
+%% - \beforepreface:
+%% Sets pagestyle and generates titlepage (via \maketitle)
+%% and signature page (via \makesignature) if indicated.
+%% DON'T call directly in new documents. Use \begin{preliminary}
+%% instead.
+%%
+%% - \afterpreface:
+%% Sets pagestyle back to normal, restarts page numbering
+%% DON'T call directly in new documents. Use \end{preliminary}
+%% instead.
+%%
+%% - \maketitle:
+%% Generate the title page from the information supplied
+%% in the preamble. Called automatically by \begin{preliminary}
+%% or \beforepreface.
+%%
+%% - \makesignature:
+%% Generate a signature page from information supplied
+%% in the preamble. Called automatically by \begin{preliminary}
+%% or \beforepreface.
+%%
+%% - \begin{dedication}...\end{dedication}:
+%% Generate a dedication section, if needed.
+%%
+%% - \begin{acknowledgements}...\end{acknowledgements}:
+%% Generate an acknowledgements section, if needed.
+%%
+%% - \begin{abstract}...\end{abstract}:
+%% Generate the abstract page.
+%%
+%% - \begin{summary}...\end{summary}:
+%% Generate a summary page (same as abstract, but different
+%% heading)
+%%
+%% - \begin{preface}...\end{preface}:
+%% Generate a preface section, if needed.
+%%
+%% - \prefacesection{other-title}{...text...}
+%% Used to specify frontmatter sections that do not have
+%% custom environments defined for them above.
+%%
+%% - \contents
+%% Prints table of contents, list of figures, and list of
+%% tables as indicated by \contentspagetrue, \figurespagetrue,
+%% and \tablespagetrue
+%%
+%% - Modifying the look of the Table of Contents:
+%%
+%% + \labelchaptersintableofcontents
+%% inserts an entry into the TOC that says ``CHAPTERS'' just
+%% before Chapter 1.
+%%
+%% + \labelappendicesintableofcontents
+%% inserts an entry into the TOC that says ``APPENDICES'' just
+%% before Appendix A.
+%%
+%% + \settocstring
+%% change the name used for the Table of Contents (def: 'Table of Contents')
+%%
+%% + \setlofstring
+%% change the name used for the List of Figures (def: 'List of Figures')
+%%
+%% + \setlotstring
+%% change the name used for the List of Tables (def: 'List of Tables')
+%%
+%% + \setchaptertocdepth
+%% set the default for how ``deep'' to number within chapters
+%% in the table of contents.
+%%
+%% + \setappendixtocdepth
+%% set the default for how ``deep'' to number within appendices
+%% (chapter{}'s after the \appendix command) in the table of
+%% contents
+%%
+%% + \settocdepth
+%% temporarily change how "deep" to number in the table of
+%% contents for current chapter/section. For example, you
+%% usually include \section{}'s in the TOC (\setchaptertocdepth{1})
+%% but in chapter 5 you want to include subsection as well:
+%% \chapter{This is Chapter 5}\settocdepth{2}. In cahapter 6 the
+%% default depth of 1 is reasserted.
+%%
+%% You should never need to call \setcounter{tocdepth}{..} directly.
+%% 0 = chapter only
+%% 1 = chapter + sections
+%% 2 = chapter, section, subsection
+%% 3 = chapter, section, subsection, subsubsection
+%%
+%% OLD recommended structure (GTthesis.sty) for frontmatter:
+%% \begin{document}
+%% \beforepreface
+%% \prefacesection{Dedication}dedication text...
+%% \prefacesection{Preface}preface text...
+%% \prefacesection{Acknowledgements}acknowledgement text...
+%% \contents % print table of contents, figures and tables here.
+%% \prefacesection{Summary}summary text
+%% \afterpreface
+%%
+%% NEW recommended structure for frontmatter:
+%% \begin{document}
+%% \begin{preliminary}
+%% \begin{dedication}...\end{dedication}
+%% \begin{preface}...\end{preface}
+%% \begin{acknowledgements}...\end{acknowledgements}
+%% \contents
+%% \begin{summary}...\end{summary}
+%% \end{preliminary}
+%%
+%% The old method still works, but the new method is preferred
+%% for new documents.
+%%
+%% - \begin{longquote}...\end{longquote}:
+%% Single-spaced version of the ``quote'' environment.
+%%
+%% - \begin{longquotation}...\end{longquotation}:
+%% Single-spaced version of the ``quotation'' environment.
+%%
+%% - \begin{singlespaced}...\end{singlespaced}:
+%% Format single-spaced paragraphs.
+%%
+%% - \begin{oneandahalfspaced}...\end{oneandahalfspaced}:
+%% Format 1 1/2-spaced paragraphs.
+%%
+%% - \begin{doublespaced}...\end{doublespaced}:
+%% Format double-spaced paragraphs.
+%%
+%% - \begin{newspacing}{<n>}...\end{newspacing}:
+%% Format paragraphs with an interline spacing of ``n''.
+%%
+%% (Note that the last four environments can be used to change the
+%% default line spacing of any enclosed text, including figures,
+%% tables, abstract or acknowledgement pages, table of contents,
+%% etc.)
+%%
+%% - \appendix: a global mode switch (just like the report class).
+%% changes the way ``chapter'' headings and TOC entries are
+%% generated.
+%% \chapter{last chapter titled}...
+%% \appendix
+%% \chapter{first appendix title}...
+%%
+%% - \begin{postliminary}...\end{postliminary}:
+%% Delimit end matter (bibliography, vita, etc).
+%% + Alternatively, call the synonyms
+%% \beforepostface and \afterpostface instead. These
+%% synonyms are provided for backward compatibility with
+%% GTthesis.sty; their use is not recommended for new documents.
+%%
+%% - \beforepostface:
+%% Not recommended for new documents. Use \begin{postliminary}
+%% instead
+%%
+%% - \afterpreface:
+%% Not recommended for new documents. Use \end{postliminary}
+%% instead
+%%
+%% - \begin{vita}...\end{vita}:
+%% Generate a vita page
+%%
+%% - \references:
+%% Generate bibliography if indicated by bibliographytrue
+%% NOTE: you must set \bibpagetrue AND \bibfiles{file1,file2,...}
+%% in the preample, AND you must set \bibliographystyle{...} just
+%% after \begin{document}. Otherwise \references won't work.
+%%
+%% - \postfacesection{other-title}{...text...}
+%% Used to specify endsections that do not have
+%% custom environments defined for them above.
+%%
+%% OLD recommended structure (GTthesis.sty) for endmatter:
+%% \beforepostface
+%% \postfacesection{Vita}vita text...
+%% \afterpostface
+%%
+%% NEW recommended structure for frontmatter:
+%% \begin{postliminary}
+%% \references
+%% \begin{vita}...\end{vita}
+%% \end{postliminary}
+%%
+%% The old method still works, but the new method is preferred
+%% for new documents.
+%%
+%% - Modifying the look of the document
+%%
+%% + \setbodypagestyle{x}, where x = plain, empty, headings,
+%% myheadings, gtthesis, or tcplain. plain is the default).
+%% + \setfrontpagestyle{x} - set pagestyle for frontmatter
+%% + \setbackpagestyle{x} - set pagestyle for endmatter
+%%
+%% - The Graduate Studies Office approved pagestyle is
+%% plain for the body, as well frontmatter and endmatter
+%% (However, pages are numbered with roman numberals in
+%% the frontmatter and automatically switch to arabic
+%% numbers in the body and endmatter, as required by GSO.
+%% Don't try to change the pagenumbering style). However:
+%% - gtthesis adds a running header on each page identifying
+%% the Chapter (and Section for twopage layouts). This
+%% is a nice touch IMO for the body and endmatter, but
+%% use it ONLY for personal copies.
+%% - note that you also need to add \pagestyle{gtthesis}
+%% if you use \setbodypagestyle{gtthesis}.
+%%
+%% + Chapter headings and the TOC use ROMAN numerals, but
+%% the running headers at the top of each page use ARABIC
+%% numbers for the Chapter number. Thus, there are two
+%% separate formats that are used.
+%%
+%% - \thegtchapter is used for ROMAN chapter numbers
+%% - \thechapter is used for ARABIC chapter numbers
+%%
+%% If you wish all chapter headings to use ROMAN, then just
+%% redefine \thechapter in your document:
+%% \renewcommand{\thechapter}{\thegtchapter}
+%% Do the reverse for all ARABIC chapter numbers:
+%% \renewcommand{\thegtchapter}{\thechapter}
+%%
+%% This archive provides two different examples of use -- the
+%% companion file ``gatech-thesis.tex'' contains a skeleton
+%% illustrating the use of this class. In addition, the jules-verne*
+%% companion files contain a more lengthy, multi-file example.
+%% Finally, a much abbreviated version of gatech-thesis.txt
+%% appears directly below, in this file.
+%%
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+%%
+%% Example of use:
+%% \documentclass[11pt,twopage,oneandahalfspaced,normalmargins]{gatech-thesis}
+%%
+%% (Then, use the following commands for various thesis elements, as follows)
+%%
+%% \title{How to Write Theses\\
+%% With Two Line Titles}
+%% \author{John Henry Candidate}
+%% \bibfiles{litserch,oodb}
+%% \principaladviser{John Parker}
+%% \committeechair{Jack Sprat}
+%% \firstreader{John Green}
+%% \secondreader{John BigBooty\\(Another Department)}
+%% \thirdreader{...}
+%% \fourthreader{...}
+%% \department{School of Electrical and Computer Engineering}
+%% \degree{Doctor of Philosophy}
+%% \copyrightyear{2001}
+%% \thesisproposalfalse
+%% \contentspagetrue
+%% \figurespagetrue
+%% \tablespagefalse
+%% \bibpagetrue
+%% \titlepagetrue
+%% \dedicationheadingfalse
+%% \signaturepagetrue
+%% \submitdate{January 2001}
+%%
+%% \begin{document}
+%% \bibliographystyle{gatech-thesis}
+%% \begin{preliminary}
+%% \begin{preface}
+%% This thesis tells you all you need to know about...
+%% \end{preface}
+%% \contents % print table of contents, figures and tables here.
+%% \begin{acknowledgements}
+%% I would like to thank...
+%% \end{acknowledgements}
+%% \end{preliminary}
+%% \chapter{Introduction}
+%% ...
+%% \chapter{Conclusions}
+%% ...
+%% \appendix
+%% \chapter{A Long Proof}
+%% ...
+%% \begin{postliminary}
+%% \references
+%% \postfacesection{Index}{%
+%% ... generate an index here
+%% }
+%% \begin{vita}
+%% ... was born in ...
+%% \end{vita}
+%% \end{postliminary}
+%% \end{document}
+%%
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+
+%%%%%%%%%%%% IDENTIFICATION %%%%%%%%%%%%
+
+\NeedsTeXFormat{LaTeX2e}
+\ProvidesClass{gatech-thesis}
+ [\gtthesisupdated\space\gtthesisversion\space(Mitchel T. Keller)]%
+\RequirePackage{calc}% part of LaTeX tools bundle
+%\RequirePackage{lastpage}
+
+\def\gtthesis@checkVersion#1{\edef\reserved@a{#1}%
+ \ifx \gatechthesis@version \reserved@a
+ \expandafter\@gobble
+ \else
+ \expandafter\@firstofone
+ \fi}
+\xdef\gatechthesis@version{\gtthesisversion}
+
+%%%%%%%%%%%% INITIAL CODE %%%%%%%%%%%%
+
+%% To comment out parts of a file.
+%
+\newcommand{\ignore}[1]{}
+\newcommand{\comment}[1]{}
+
+%% Switch for testing draft mode (toggled by ``draft'' option).
+%
+\newif\if@draft
+\@draftfalse % initially false by default
+
+%% Switch for testing current page style.
+%
+\newif\if@tcpage
+ % no default value (set by \pagestyle)
+ % indicates that page numbers are in the upper corners
+
+%% Switch for testing line spacing of notes.
+%
+\newif\if@singlespacednotes
+\@singlespacednotestrue % initially true by default
+
+%% Switch for testing the hyperref option
+%
+\newif\if@hyperref
+\@hyperreffalse % initially false by default
+
+%% Macro for testing the size of margins.
+%
+\newcommand{\@marginsize}{}
+
+%% Because of the draft option, and to allow users to override
+%% defaults, we don't want to be passing conflicting options back to
+%% the report class, so we define our own temporary toggles holding
+%% the most recent setting for each of four basic options: point size,
+%% number of page sides, whether new chapters open on right-hand pages
+%% or on any page, and line spacing. These toggles will be set from
+%% the corresponding options below.
+%
+\newcommand{\@thesisptsz}{}
+\newcommand{\@thesisside}{}
+\newcommand{\@thesisopen}{}
+\newcommand{\@thesislnsp}{}
+
+
+%%%%%%%%%%%% OPTION DECLARATION %%%%%%%%%%%%
+
+%% ``draft'' option: change default document settings.
+%
+\DeclareOption{draft}{\@drafttrue
+ \typeout{Gatech-Thesis Class Option: ``draft''}
+ \ExecuteOptions{10pt,twoside,openany,doublespaced,normalmargins}
+ \PassOptionsToClass{draft}{report}
+ %% Macros for printing "DRAFT" at the corners of a page.
+ \newcommand{\tlDRAFT}%
+ {\raisebox{ 3ex}[0pt][0pt]{\llap{\sffamily\scriptsize DRAFT\ \ }}}
+ \newcommand{\trDRAFT}%
+ {\raisebox{ 3ex}[0pt][0pt]{\rlap{\sffamily\scriptsize \ \ DRAFT}}}
+ \newcommand{\blDRAFT}%
+ {\raisebox{-3ex}[0pt][0pt]{\llap{\sffamily\scriptsize DRAFT\ \ }}}
+ \newcommand{\brDRAFT}%
+ {\raisebox{-3ex}[0pt][0pt]{\rlap{\sffamily\scriptsize \ \ DRAFT}}}
+}%DeclareOption{draft}
+
+%% ``spacednotes'' option: make notes share the line spacing of the rest
+%% of the document.
+%
+\DeclareOption{spacednotes}{\@singlespacednotesfalse}
+
+%% Margin options: change the size of margins.
+%% choose normalmargins option for Georgia Tech thesis format
+%
+\DeclareOption{narrowmargins}{\renewcommand{\@marginsize}{0}}
+\DeclareOption{normalmargins}{\renewcommand{\@marginsize}{1}}
+\DeclareOption{widemargins}{\renewcommand{\@marginsize}{2}}
+\DeclareOption{extrawidemargins}{\renewcommand{\@marginsize}{3}}
+\DeclareOption{oldmargins}{\renewcommand{\@marginsize}{4}}
+
+%% Point Size options: change current setting.
+%
+\DeclareOption{10pt}{\renewcommand{\@thesisptsz}{10pt}}
+\DeclareOption{11pt}{\renewcommand{\@thesisptsz}{11pt}}
+\DeclareOption{12pt}{\renewcommand{\@thesisptsz}{12pt}}
+
+%% Number of Page Sides options: change current setting.
+%
+\DeclareOption{twoside}{\renewcommand{\@thesisside}{twoside}}
+\DeclareOption{oneside}{\renewcommand{\@thesisside}{oneside}}
+
+%% New Chapter Openings options: change current setting.
+%
+\DeclareOption{openany}{\renewcommand{\@thesisopen}{openany}}
+\DeclareOption{openright}{\renewcommand{\@thesisopen}{openright}}
+
+%% Line Spacing options: change current setting.
+%
+\DeclareOption{singlespaced}{\renewcommand{\@thesislnsp}{1}}
+\DeclareOption{oneandahalfspaced}{\renewcommand{\@thesislnsp}{1.25}}
+\DeclareOption{doublespaced}{\renewcommand{\@thesislnsp}{1.66}}
+
+%% STUPID HACK for hyperref, \@chapter, and \MakeUppercase
+%
+\newcommand{\Makeuppercase}[1]{\MakeUppercase{#1}}
+\DeclareOption{hyperref}{%
+ \@hyperreftrue
+% \renewcommand{\Makeuppercase}[1]{%
+% \ifHy@pdfstring#1\else\MakeUppercase{#1}\fi}
+}
+
+%% All other options are passed to the base class directly.
+%
+\DeclareOption*{\PassOptionsToClass{\CurrentOption}{report}}
+
+
+%%%%%%%%%%%% OPTION EXECUTION %%%%%%%%%%%%
+
+%% Default settings.
+%
+\ExecuteOptions{11pt,letterpaper,oneside,%
+openright,doublespaced,normalmargins,final}
+%
+%% Process options.
+%
+\ProcessOptions
+
+
+%%%%%%%%%%%% PACKAGE LOADING %%%%%%%%%%%%
+
+%% Load base class using current setting for basic options.
+%
+\LoadClass[\@thesisptsz,\@thesisside,\@thesisopen]{report}
+
+
+%% From lastpage package. Used to generate abstract.
+%% Lastpage is written by Jeff Goldberg (J.Goldberg@Cranfield.ac.uk)
+%% It is relased under the GPL (version 2)
+
+\def\lastpage@putlabel{\addtocounter{page}{-1}%
+ \immediate\write\@auxout{\string
+ \newlabel{LastPage}{{}{\thepage}{}{}{}}}%
+ \addtocounter{page}{1}}
+
+
+%%%%%%%%%%%% MAIN CODE %%%%%%%%%%%%
+
+\if@hyperref
+\else
+ \newcommand{\phantomsection}{}% helps with hyperref. \phantomsection
+% is provided by pdflatex, but not latex.
+ \newcommand{\texorpdfstring}[2]{#1}%
+ \def\pdfbookmark[#1]#2#3{}%
+\fi
+
+%%%%%% Line Spacing
+%
+%% \linespacing is used to define the default line spacing.
+%% for the entire document. If the argument is less than
+%% 1.25 (for 1.5-spaced) a warning message is displayed
+%% when not in draft mode.
+%%
+%% Don't use this command for temporary, localized changes.
+%% Instead, use the ``spacing environments'':
+%% \begin{singlespace} ...\end{singlespaced}
+%% \begin{oneandahalfspaced}...\end{oneandahalfspaced}
+%% \begin{doublespaed} ...\end{doublespaced}
+%% \begin{longquote} ...\end{longquote}
+%% \begin{longquotation} ...\end{longquotation}
+%% \begin{newspacing}{x.xx} ...\end{newspacing}
+%
+\newcommand{\linespacing}[1]{%
+ \gdef\@spacing{#1}
+ \newlinestretch{#1}\if@draft\else\ifdim #1pt < 1.25pt\typeout
+ {Gatech-Thesis Class Warning: line spacing less than 1 1/2}\fi\fi
+}
+%
+%% \spacing is a clone of \linespacing, retained for backwards
+%% compatibility with GTthesis.sty
+%
+\newcommand{\spacing}[1]{%
+ \gdef\@spacing{#1}
+ \newlinestretch{#1}\if@draft\else\ifdim #1pt < 1.25pt\typeout
+ {Gatech-Thesis Class Warning: line spacing less than 1 1/2}\fi\fi
+}
+\def\@spacing{1.66}
+
+%
+%% ``longquote'' and ``longquotation'' produce single-spaced quotes, while
+%% ``newspacing'' encloses paragraphs with a different line spacing,
+%% such as ``singlespaced'', ``oneandahalfspaced'', or ``doublespaced''.
+%
+\newenvironment{longquote}%
+ {\begin{quote}\newlinestretch{1}}{\end{quote}}
+\newenvironment{longquotation}%
+ {\begin{quotation}\newlinestretch{1}}{\end{quotation}}
+\newenvironment{singlespaced}%
+ {\begin{newspacing}{1}}{\end{newspacing}}
+\newenvironment{oneandahalfspaced}%
+ {\begin{newspacing}{1.25}}{\end{newspacing}}
+\newenvironment{doublespaced}%
+ {\begin{newspacing}{1.66}}{\end{newspacing}}
+\newenvironment{newspacing}[1]%
+ {\par\begingroup\newlinestretch{#1}}%
+ {\par\vskip\parskip\vskip\baselineskip\endgroup
+ \vskip-\parskip\vskip-\baselineskip}
+
+%
+%% To change the actual line spacing.
+%
+\newcommand{\newlinestretch}[1]%
+ {\renewcommand{\baselinestretch}{#1}\currenttextsize}
+
+%
+%% To keep track of the current text size.
+%
+\let\currenttextsize=\normalsize
+%
+%% Redefine size-changing commands to update \currenttextsize.
+%
+\let\tmp@tiny=\tiny
+\renewcommand{\tiny}%
+ {\let\currenttextsize=\tmp@tiny\tmp@tiny}
+\let\tmp@scriptsize=\scriptsize
+\renewcommand{\scriptsize}%
+ {\let\currenttextsize=\tmp@scriptsize\tmp@scriptsize}
+\let\tmp@footnotesize=\footnotesize
+\renewcommand{\footnotesize}%
+ {\let\currenttextsize=\tmp@footnotesize\tmp@footnotesize}
+\let\tmp@small=\small
+\renewcommand{\small}%
+ {\let\currenttextsize=\tmp@small\tmp@small}
+\let\tmp@normalsize=\normalsize
+\renewcommand{\normalsize}%
+ {\let\currenttextsize=\tmp@normalsize\tmp@normalsize}
+\let\tmp@large=\large
+\renewcommand{\large}%
+ {\let\currenttextsize=\tmp@large\tmp@large}
+\let\tmp@Large=\Large
+\renewcommand{\Large}%
+ {\let\currenttextsize=\tmp@Large\tmp@Large}
+\let\tmp@LARGE=\LARGE
+\renewcommand{\LARGE}%
+ {\let\currenttextsize=\tmp@LARGE\tmp@LARGE}
+\let\tmp@huge=\huge
+\renewcommand{\huge}%
+ {\let\currenttextsize=\tmp@huge\tmp@huge}
+\let\tmp@Huge=\Huge
+\renewcommand{\Huge}%
+ {\let\currenttextsize=\tmp@Huge\tmp@Huge}
+%
+%% Make notes single-spaced if ``spacednotes'' option was not given.
+%% Note that this does _not_ change the spacing of figures or tables.
+%
+\if@singlespacednotes
+%% Make footnotes single-spaced.
+\let\tmp@@footnotetext=\@footnotetext
+\renewcommand{\@footnotetext}[1]%
+ {{\newlinestretch{1}\tmp@@footnotetext{#1}}}
+%% Make footnotes inside a minipage single-spaced.
+\let\tmp@@mpfootnotetext=\@mpfootnotetext
+\renewcommand{\@mpfootnotetext}[1]%
+ {{\newlinestretch{1}\tmp@@mpfootnotetext{#1}}}
+%% Make marginal notes single-spaced.
+\let\tmp@@marginparreset=\@marginparreset
+\renewcommand{\@marginparreset}%
+ {\newlinestretch{1}\tmp@@marginparreset}
+\fi%@singlespacednotes
+%
+%%%%%% New formatting environments and commands.
+%
+%% \begin{preliminary} sets the pagestyle and pagenumbering
+%% (roman numeral format ) for the preliminary sections;
+%% It also calls \beforepreface to create the title page
+%% and signature page if indicated by \titlepagetrue and/or
+%% \signaturepageture.
+%%
+%% \end{preliminary} resets the pagenumbering. To start page
+%% numbering in arabic format, use \pagestyle{plain} and
+%% \pagenumbering{arabic} after the preliminary environment block
+%
+\newenvironment{preliminary}%
+ {
+ \newlinestretch{1.0}%
+ \pagenumbering{roman}%
+ \pagestyle{\front@pagestyle}%
+ \iftitlepage%
+ \maketitle%
+ \fi%
+ \ifmultivolume%
+ \part{}%
+ \fi%
+ \ifsignaturepage%
+ \makesignature%
+ \fi%
+ \newlinestretch{\@spacing}%
+ }%
+ {%
+ \if@draft%
+ \else%
+ \if@twoside%
+ \if@openright%
+ \cleardoublepage%
+ \fi%
+ \fi%
+ \fi%
+ \newpage%
+ \pagenumbering{arabic}%
+ \pagestyle{\body@pagestyle}%
+ \newlinestretch{\@spacing}%
+ }%
+
+%%%%%% Front Matter Parameters
+%
+%% The following commands set the respective field values so we
+%% can generate the title page, signature page, and abstract
+%% page automatically
+%
+\renewcommand{\author}[1]%
+ {\ifx\empty#1\empty\else\gdef\@author{#1}\fi}
+\renewcommand{\title}[1]%
+ {\ifx\empty#1\empty\else\gdef\@title{#1}\fi}
+
+\newcommand{\degree}[1]%
+ {\ifx\empty#1\empty\else\gdef\@degree{#1}\fi}
+%
+%% Is this a thesis, or a thesis proposal ?
+%
+\newif\ifthesisproposal
+\thesisproposalfalse % default to thesis, not thesis proposal
+
+%
+%% Is this a thesis or a dissertation?
+%
+\newif\ifdissertation
+\dissertationfalse % default to thesis
+
+%
+%% Do we list the major in the ``Partial Fulfillment'' block or the department?
+%
+\newif\iflistmajor
+\listmajorfalse % default to listing the department
+
+\newcommand{\major}[1]%
+ {\ifx\empty#1\empty\else\gdef\@major{#1}\fi}
+
+%
+%% \department and \dept are synonymous
+%
+\newcommand{\department}[1]%
+ {\ifx\empty#1\empty\else\gdef\@department{#1}\gdef\@dept{#1}\fi}
+\newcommand{\dept}[1]%
+ {\ifx\empty#1\empty\else\gdef\@department{#1}\gdef\@dept{#1}\fi}
+%
+%% date stuff
+%% \gradyear and \copyrightyear are synonymmous
+%
+\newcommand{\gradyear}[1]%
+ {\ifx\empty#1\empty\else\gdef\@gradyear{#1}\gdef\@copyrightyear{#1}\fi}
+\newcommand{\copyrightyear}[1]%
+ {\ifx\empty#1\empty\else\gdef\@gradyear{#1}\gdef\@copyrightyear{#1}\fi}
+\newcommand{\submitdate}[1]%
+ {\ifx\empty#1\empty\else\gdef\@submitdate{#1}\fi}
+\newcommand{\approveddate}[1]%
+ {\ifx\empty#1\empty\else\gdef\@approveddate{#1}\fi}
+%
+%% use \principaladviser{} or \principaladvisor{}. Choice also
+%% sets the default spelling of ``advisor/adviser''.
+%
+\def\advis@r{Advisor} % default spelling
+
+% Define \principaladvisor{} to take two optional arguments after the
+% name. Thus, the usage is
+% \principaladvisor{Advisor Name}[Advisor Unit][Advisor Institution]
+% Advisor Unit defaults to \@department and Advisor Institution
+% defaults to Georgia Institute of Technology.
+\newcommand{\principaladvisor}[1]{%
+ \@ifnextchar[{\principaladvisor@i{#1}}{\principaladvisor@i{#1}[\@department]}%]
+}
+\def\principaladvisor@i#1[#2]{%
+ \@ifnextchar[{\principaladvisor@ii{#1}[#2]}{\principaladvisor@ii{#1}[#2][Georgia Institute of Technology]}%]
+}
+\def\principaladvisor@ii#1[#2][#3]{%
+\ifx\empty#1\empty\else\def\@advisorforabstract{#1}%
+ \rightappenditem#1\to\@principaladvisor%
+ \rightappenditem#2\to\@principaladvisor%
+ \rightappenditem#3\to\@principaladvisor%
+ \fi
+}
+
+% Define \principaladviser{} to take two optional arguments after the
+% name. Thus, the usage is
+% \principaladviser{Adviser Name}[Adviser Unit][Adviser Institution]
+% Adviser Unit defaults to \@department and Adviser Institution
+% defaults to Georgia Institute of Technology.
+\newcommand{\principaladviser}[1]{%
+ \@ifnextchar[{\principaladviser@i{#1}}{\principaladviser@i{#1}[\@department]}%]
+}
+\def\principaladviser@i#1[#2]{%
+ \@ifnextchar[{\principaladviser@ii{#1}[#2]}{\principaladviser@ii{#1}[#2][Georgia Institute of Technology]}%]
+}
+\def\principaladviser@ii#1[#2][#3]{%
+\ifx\empty#1\empty\else\def\@advisorforabstract{#1}%
+ \rightappenditem#1\to\@principaladvisor%
+ \rightappenditem#2\to\@principaladvisor%
+ \rightappenditem#3\to\@principaladvisor%
+ \gdef\advis@r{Adviser}%
+ \fi
+}
+
+%
+%% Committee Chair
+%
+% Define \committeechair{} to take two optional arguments after the
+% name. Thus, the usage is
+% \committeechair{Name}[Unit][Institution]
+% Unit defaults to \@department and Institution defaults to Georgia
+% Institute of Technology.
+\newcommand{\committeechair}[1]{%
+ \@ifnextchar[{\committeechair@i{#1}}{\committeechair@i{#1}[\@department]}%]
+}
+\def\committeechair@i#1[#2]{%
+ \@ifnextchar[{\committeechair@ii{#1}[#2]}{\committeechair@ii{#1}[#2][Georgia Institute of Technology]}%]
+}
+\def\committeechair@ii#1[#2][#3]{%
+\ifx\empty#1\empty\else\rightappenditem#1\to\@committeechair%
+ \rightappenditem#2\to\@committeechair%
+ \rightappenditem#3\to\@committeechair%
+ \fi
+}
+
+%
+%% readers
+%
+% Define \{first|second|third|fourth|fifth|sixth}reader{} to take two
+% optional arguments after the name. Thus, the usage is
+% \*reader{Reader Name}[Reader Unit][Reader Institution]
+% Reader Unit defaults to \@department and Reader Institution
+% defaults to Georgia Institute of Technology.
+\newcommand{\firstreader}[1]{%
+ \@ifnextchar[{\firstreader@i{#1}}{\firstreader@i{#1}[\@department]}%]
+}
+\def\firstreader@i#1[#2]{%
+ \@ifnextchar[{\firstreader@ii{#1}[#2]}{\firstreader@ii{#1}[#2][Georgia Institute of Technology]}%]
+}
+\def\firstreader@ii#1[#2][#3]{%
+\ifx\empty#1\empty\else\rightappenditem#1\to\@firstreader%
+ \rightappenditem#2\to\@firstreader%
+ \rightappenditem#3\to\@firstreader%
+ \fi
+}
+
+\newcommand{\secondreader}[1]{%
+ \@ifnextchar[{\secondreader@i{#1}}{\secondreader@i{#1}[\@department]}%]
+}
+\def\secondreader@i#1[#2]{%
+ \@ifnextchar[{\secondreader@ii{#1}[#2]}{\secondreader@ii{#1}[#2][Georgia Institute of Technology]}%]
+}
+\def\secondreader@ii#1[#2][#3]{%
+\ifx\empty#1\empty\else\rightappenditem#1\to\@secondreader%
+ \rightappenditem#2\to\@secondreader%
+ \rightappenditem#3\to\@secondreader%
+ \fi
+}
+
+\newcommand{\thirdreader}[1]{%
+ \@ifnextchar[{\thirdreader@i{#1}}{\thirdreader@i{#1}[\@department]}%]
+}
+\def\thirdreader@i#1[#2]{%
+ \@ifnextchar[{\thirdreader@ii{#1}[#2]}{\thirdreader@ii{#1}[#2][Georgia Institute of Technology]}%]
+}
+\def\thirdreader@ii#1[#2][#3]{%
+\ifx\empty#1\empty\else\rightappenditem#1\to\@thirdreader%
+ \rightappenditem#2\to\@thirdreader%
+ \rightappenditem#3\to\@thirdreader%
+ \fi
+}
+
+\newcommand{\fourthreader}[1]{%
+ \@ifnextchar[{\fourthreader@i{#1}}{\fourthreader@i{#1}[\@department]}%]
+}
+\def\fourthreader@i#1[#2]{%
+ \@ifnextchar[{\fourthreader@ii{#1}[#2]}{\fourthreader@ii{#1}[#2][Georgia Institute of Technology]}%]
+}
+\def\fourthreader@ii#1[#2][#3]{%
+\ifx\empty#1\empty\else\rightappenditem#1\to\@fourthreader%
+ \rightappenditem#2\to\@fourthreader%
+ \rightappenditem#3\to\@fourthreader%
+ \fi
+}
+
+\newcommand{\fifthreader}[1]{%
+ \@ifnextchar[{\fifthreader@i{#1}}{\fifthreader@i{#1}[\@department]}%]
+}
+\def\fifthreader@i#1[#2]{%
+ \@ifnextchar[{\fifthreader@ii{#1}[#2]}{\fifthreader@ii{#1}[#2][Georgia Institute of Technology]}%]
+}
+\def\fifthreader@ii#1[#2][#3]{%
+\ifx\empty#1\empty\else\rightappenditem#1\to\@fifthreader%
+ \rightappenditem#2\to\@fifthreader%
+ \rightappenditem#3\to\@fifthreader%
+ \fi
+}
+
+\newcommand{\sixthreader}[1]{%
+ \@ifnextchar[{\sixthreader@i{#1}}{\sixthreader@i{#1}[\@department]}%]
+}
+\def\sixthreader@i#1[#2]{%
+ \@ifnextchar[{\sixthreader@ii{#1}[#2]}{\sixthreader@ii{#1}[#2][Georgia Institute of Technology]}%]
+}
+\def\sixthreader@ii#1[#2][#3]{%
+\ifx\empty#1\empty\else\rightappenditem#1\to\@sixthreader%
+ \rightappenditem#2\to\@sixthreader%
+ \rightappenditem#3\to\@sixthreader%
+ \fi
+}
+
+%
+%% bibliography databases
+%
+\newcommand{\bibfiles}[1]%
+ {\ifx\empty#1\empty\else\gdef\@bibfiles{#1}\fi}
+
+%
+%% default values of private functions
+%
+\def\@title{}
+\def\@author{}
+\def\@bibfiles{}
+\def\@principaladvisor{}
+\def\@committeechair{}
+\def\@firstreader{}
+\def\@secondreader{}
+\def\@thirdreader{}
+\def\@fourthreader{}
+\def\@fifthreader{}
+\def\@sixthreader{}
+\def\@submitdate{\ifcase\the\month\or
+ January\or February\or March\or April\or May\or June\or
+ July\or August\or September\or October\or November\or December\fi
+ \space \number\the\year}
+\def\@copyrightyear{\number\the\year}
+\def\@bibfiles{}
+
+%% Switch for printing copyright notice on titlepage
+%
+\newif\ifcopyright
+\copyrightfalse % initially false by default
+
+%% Switch for generating a title page
+%
+\newif\iftitlepage
+\titlepagetrue % initially true by default
+
+%% Switch for generating a signature page
+%
+\newif\ifsignaturepage
+\signaturepagetrue % initially true by default
+
+%% Switch for generating a list of figures
+%
+\newif\iffigurespage
+\figurespagetrue % initially true by default
+
+%% Switch for generating a list of tables
+%
+\newif\iftablespage
+\tablespagetrue % initially true by default
+
+%% Switch for generating a table of contents
+%
+\newif\ifcontentspage
+\contentspagetrue % initially true by default
+
+%% Switch for generating a bibliography
+%
+\newif\ifbibpage
+\bibpagetrue % initially true by default
+
+%% Switch to indicate whether chapters are \input{}'ed or
+%% \include{}'ed. Not currently used.
+%
+\newif\ifusinginclude
+\usingincludefalse % initially false by default -- document uses \input{}
+
+%% Switch for relaxing the strict margin requirements
+%% on the title page and signature page. Default is to
+%% rigidly adhere to the standard (but that's ugly)
+%
+\newif\ifstrictmargins
+\strictmarginstrue % initially true by default
+
+%% Switch for printing DEDICATION across the top of the dedication page
+%
+\newif\ifdedicationheading
+\dedicationheadingfalse % initially false by default
+
+%% Switch for indicating that the thesis has multiple volumes
+%
+\newif\ifmultivolume
+\multivolumefalse % initially false by default
+
+%%%%%% Front Matter Commands and Environments
+%%
+%% \beforepreface
+%% --- create title, signature page
+%% --- redefined the \maketitle command here, but
+%% don't call it directly. Use \beforepreface.
+%%
+%% \begin{dedication}...\end{dedication}
+%% \begin{preface}...\end{preface}
+%% \begin{acknowledgements}...\end{acknowlegments}
+%% \prefacesection{other-title}
+%% --- followed by section text
+%% \contents
+%% --- prints table of contents, figures, and tables
+%% \begin{abstract}...\end{abstract} or use
+%% \begin{summary}...\end{summary}
+%% \afterpreface
+
+\newcommand{\title@top}{%
+% make sure that linestretch is already set to 1, and all
+% grouping/sectioning commands have already been begun.
+ \ifstrictmargins
+ \ifnum \@marginsize = 4 % oldmargins
+ \vspace*{50\p@}%
+ \fi
+ \begin{center}%
+ {\large\bfseries\MakeUppercase{\expandafter{\@title}}}\\%%%% TITLE FONT SIZE!!!!
+ \end{center}%
+ \else%
+ \begin{center}
+% \vspace*{\stretch{1}}
+ \vspace*{1in}
+ {\large\bfseries\MakeUppercase{\expandafter{\@title}}}%%%%% TITLE FONT SIZE AGAIN
+ \end{center}%
+ \fi%
+}
+
+\newcommand{\title@text}{
+ \begin{center}
+ \ifthesisproposal
+ A Thesis Proposal\\
+ Presented to\\
+ The Academic Faculty\\
+ \else
+ A \ifdissertation Dissertation\else Thesis\fi\\
+ Presented to\\
+ The Academic Faculty\\
+ \fi
+ \ \\
+ by\\
+ \ \\
+ {\@author}\\
+ \vspace*{1.1in}
+ In Partial Fulfillment \\
+ of the Requirements for the Degree \\
+ {\@degree} in
+ \iflistmajor
+ \\ {\@major}\\
+ \vfill
+ {\@department}\\
+ \else
+ the\\ {\@department}\\
+ \vfill
+ \fi
+ Georgia Institute of Technology\\
+ {\@submitdate}%
+ \ifcopyright
+ \\ \vspace*{.3in}% one line + 0.3in
+ Copyright \copyright\ {\@copyrightyear} by {\@author}
+ \fi
+ \end{center}
+}
+
+\newcommand{\make@parttitle}[1]{%if argument is present, it's the part title
+ \begingroup
+ \newlinestretch{1}%
+ \phantomsection%
+ \title@top
+ \ifstrictmargins
+ \vspace*{0.5in}
+ \begin{center}
+ \begin{doublespaced}{\large\bfseries%
+ \expandafter{\Makeuppercase{\partname}\space\Makeuppercase{\thepart}}\\
+ \ifx\@empty#1\@empty\else%
+ \expandafter{#1}\\
+ \fi%
+ }\end{doublespaced}
+ \ \\
+ by\\
+ \ \\
+ {\@author}\\
+ \end{center}%
+ \vfill
+ \else%
+ \vspace*{0.5in}
+ \begin{center}
+ \begin{doublespaced}{\Huge\bfseries%
+ \expandafter{\Makeuppercase{\partname}\space\Makeuppercase{\thepart}}\\
+ \ifx\@empty#1\@empty\else%
+ \expandafter{#1}\\
+ \fi%
+ }\end{doublespaced}
+ \vspace*{1.35in}
+ \ \\
+ by\\
+ \ \\
+ {\Large\bfseries{\@author}}\\
+ \end{center}%
+ \vfill
+ \fi%
+ \endgroup%
+}%makeparttitle
+
+\renewcommand{\maketitle}{%
+ %\interlinepenalty \@M
+ \normalfont
+ \begingroup
+ \newlinestretch{1}%
+ \begin{titlepage}%
+ \phantomsection%
+ \pdfbookmark[0]{Titlepage}{title}%
+ \title@top%
+ \ifstrictmargins%
+ \vfill
+ \title@text% contains a \vfill between \degree and \department
+ \else%
+ \vfill%\vspace*{1.35in}
+ \title@text% contains a \vfill between \degree and \department
+ \vspace*{.2in}%
+ \fi%
+ \setcounter{page}{1}%
+ \end{titlepage}% this has a \newpage
+ \endgroup%
+ \setcounter{page}{2}%
+}%maketitle
+
+
+%
+%% Change \begin{abstract}...\end{abstract} to follow guidelines
+%% and put the abstract on a separate page (checking @openright).
+%
+\renewenvironment{abstract}{%
+ \typeout{***************** Abstract ******************}
+ \if@openright\cleardoublepage\else\clearpage\fi
+ \addtocounter{page}{-1}
+ \phantomsection%
+% \addcontentsline{toc}{chapter}%
+% {\texorpdfstring{\Makeuppercase{Abstract}}{Abstract}}
+ \thispagestyle{empty}%
+ \begin{singlespaced}%
+ \begin{center}%
+ \@title\\%
+ \ \\%
+ \@author\\%
+ \ \\%
+ \pageref{LastPage} Pages\\%
+ \ \\%
+ Directed by \@advisorforabstract%
+ \end{center}%
+ \end{singlespaced}%
+ \begingroup%
+ \hspace*{2.5em}%
+ %% Adjust the line spacing: if it was less than 1 1/2,
+ %% increase it to 1 1/2; if it was between 1 1/2 and 2,
+ %% increase it to 2; otherwise, leave it as is.
+ \ifdim \baselinestretch pt < 1.25pt \newlinestretch{1.25}\else%
+ \ifdim \baselinestretch pt < 1.66pt \newlinestretch{1.66}\fi\fi%
+}{\par\endgroup}%abstract
+%
+%% \begin{summary}...\end{summary} formats a
+%% summary section (identical to an abstract section,
+%% except that the title is ``SUMMARY'')
+%
+\newenvironment{summary}{%
+ \typeout{***************** Summary ******************}
+ \if@openright\cleardoublepage\else\clearpage\fi
+ \phantomsection%
+ \addcontentsline{toc}{chapter}%
+ {\texorpdfstring{\Makeuppercase{Summary}}{Summary}}
+ \chapter*{\MakeUppercase{Summary}}
+ \vskip 0.5in
+ \begingroup
+ \hspace*{2.5em}
+ %% Adjust the line spacing: if it was less than 1 1/2,
+ %% increase it to 1 1/2; if it was between 1 1/2 and 2,
+ %% increase it to 2; otherwise, leave it as is.
+ \ifdim \baselinestretch pt < 1.25pt \newlinestretch{1.25}\else
+ \ifdim \baselinestretch pt < 1.66pt \newlinestretch{1.66}\fi\fi
+}{\par\endgroup}%summary
+%
+%% \begin{dedication}...\end{dedication} formats a
+%% dedication section
+%
+\newcommand{\dedicationtop}{\vspace*{\stretch{1}}}
+\newcommand{\dedicationbottom}{\bigskip\bigskip\vspace*{\stretch{1}}}
+\newenvironment{dedication}{%
+ \typeout{***************** Dedication ******************}
+ \if@openright\cleardoublepage\else\clearpage\fi
+ \phantomsection%
+ \addcontentsline{toc}{chapter}%
+ {\texorpdfstring{\Makeuppercase{Dedication}}{Dedication}}
+ \ifdedicationheading
+ \chapter*{\MakeUppercase{Dedication}}
+ \else
+ \chapter*{}
+ \fi
+ \vskip 0.5in
+ \begingroup
+ \begin{itshape}\dedicationtop
+}{\dedicationbottom\end{itshape}\par\endgroup}%dedication
+%
+%% \begin{acknowledgements}...\end{acknowledgements} formats an
+%% acknowledgements section
+%
+\newenvironment{acknowledgements}{%
+ \typeout{***************** Acknowledgements ******************}
+ \if@openright\cleardoublepage\else\clearpage\fi
+ \phantomsection%
+ \addcontentsline{toc}{chapter}%
+ {\texorpdfstring{\Makeuppercase{Acknowledgements}}{Acknowledgements}}
+ \chapter*{\MakeUppercase{Acknowledgements}}
+ \vskip 0.5in
+ \begingroup
+}{\par\endgroup}%Acknowledgements
+%
+%% \begin{preface}...\end{preface} formats an
+%% preface section
+%
+\newenvironment{preface}{%
+ \typeout{***************** Preface ******************}
+ \if@openright\cleardoublepage\else\clearpage\fi
+ \phantomsection%
+ \addcontentsline{toc}{chapter}%
+ {\texorpdfstring{\Makeuppercase{Preface}}{Preface}}
+ \chapter*{\MakeUppercase{Preface}}
+ \vskip 0.5in
+ \begingroup
+}{\par\endgroup}%preface
+
+%
+%% stuff to generate a signature page
+%
+\newlength{\signature@width}
+\setlength{\signature@width}{3.3in}
+\let\signature@body\signature@bodyonecol
+\newcounter{signatures}
+\newcounter{cnt@Lsig}
+\newcounter{cnt@Rsig}
+\def\R@signatures{}
+\def\L@signatures{}
+
+% Fun stuff from the TeXbook
+\toksdef\ta=0 \toksdef\tb=2 % token list registers for temp use
+\long\def\leftappenditem#1\to#2{\ta={\\{#1}}\tb=\expandafter{#2}%
+ \edef#2{\the\ta\the\tb}}
+\long\def\rightappenditem#1\to#2{\ta={\\{#1}}\tb=\expandafter{#2}%
+ \edef#2{\the\tb\the\ta}}
+\def\concatenate#1=#2&#3{\ta=\expandafter{#2}\tb=\expandafter{#3}%
+ \edef#1{\the\ta\the\tb}}
+\def\GTlop#1\to#2{\expandafter\GTlopoff#1\GTlopoff#1#2}
+\long\def\GTlopoff\\#1#2\GTlopoff#3#4{\def#4{#1}\def#3{#2}}
+
+\newcommand{\dosiglist}[2]{%
+ \GTlop#1\to\@@sig \@@sig
+ \GTlop#1\to\@@sig \@@sig
+ \GTlop#1\to\@@sig \@@sig
+ % we know that cnt@Lsig is at least 3, maybe 4. 5 is right out.
+ \ifnum \value{#2} = 4
+ \GTlop#1\to\@@sig \@@sig
+ \fi
+}
+
+\newcommand{\signature}[1]{%
+ \ifx\empty#1{}\empty%
+ \else%
+ \parbox[t]{\signature@width}{%
+% \rule{\signature@width}{.01in}\\
+ \GTlop#1\to\signame%
+ \GTlop#1\to\sigdept%
+ \GTlop#1\to\siginst%
+ \parbox[t]{\signature@width}{\begin{raggedright}\signame \hfill\\
+ \sigdept\hfill\\
+ \emph{\siginst}\end{raggedright}\hfill}\\
+ \vspace{12pt}%
+ }
+ \fi%
+}
+
+\newcommand{\signature@bodyonecol}{%
+ \begin{flushright}
+ \parbox{\signature@width}{\begin{flushleft}Approved by:\\ \end{flushleft}}\\
+% \vspace*{0.3in}
+ \ifx\empty\@committeechair{}\empty%
+ \else%
+ \signature{\@committeechair}%
+ \fi%
+ \ifx\empty\@principaladvisor{}\empty%
+ \else%
+ \signature{\@principaladvisor}%
+ \fi%
+ \signature\@firstreader
+ \signature\@secondreader
+ \signature\@thirdreader
+ \signature\@fourthreader
+ \signature\@fifthreader
+ \signature\@sixthreader
+ \vspace{.5in}
+ %\makebox[\signature@width]{Date Approved by Chairman \hrulefill}\\
+ \parbox{\signature@width}{\begin{flushleft}Date Approved: \@approveddate\end{flushleft}}\\
+ \end{flushright}
+}
+
+\newcommand{\signature@bodytwocol}{%
+ \begin{flushleft}
+ Approved by:\\
+ \vspace*{12pt}
+ \GTlop\L@signatures\to\@@sigLone%
+ \GTlop\L@signatures\to\@@sigLtwo%
+ \GTlop\L@signatures\to\@@sigLthree%
+ \ifnum\value{cnt@Lsig}=4
+ \GTlop\L@signatures\to\@@sigLfour
+ \else\def\@@sigLfour{}
+ \fi
+
+ \GTlop\R@signatures\to\@@sigRone%
+ \GTlop\R@signatures\to\@@sigRtwo%
+ \ifnum\value{cnt@Rsig}=2
+ \def\@@sigRthree{Date Approved: \@approveddate}
+ \def\@@sigRfour{}
+ \fi
+ \ifnum\value{cnt@Rsig}=3
+ \GTlop\R@signatures\to\@@sigRthree%
+ \def\@@sigRfour{Date Approved: \@approveddate}
+ \fi
+ \ifnum\value{cnt@Rsig}=4
+ \GTlop\R@signatures\to\@@sigRthree%
+ \GTlop\R@signatures\to\@@sigRfour%
+ \fi
+
+ \begin{tabular*}{\textwidth}[t]{@{\extracolsep{\fill}}ll}
+ \@@sigLone & \@@sigRone\\%
+ \@@sigLtwo & \@@sigRtwo\\%
+ \@@sigLthree & \@@sigRthree\\%
+ \@@sigLfour & \@@sigRfour\\
+ \ifnum\value{cnt@Rsig}=4
+ \space &%
+ Date Approved: \@approveddate
+ \fi
+ \end{tabular*}
+ \end{flushleft}
+}
+
+\def\add@Lsig#1{
+ \ifx#1\@empty\relax\else%
+ \rightappenditem#1\to\L@signatures
+ \addtocounter{cnt@Lsig}{1}%
+ \fi
+}
+\def\add@Rsig#1{%
+ \ifx\@empty#1\relax\else
+ \rightappenditem#1\to\R@signatures
+ \addtocounter{cnt@Rsig}{1}%
+ \fi
+}
+\newcommand{\makesignature}{%
+ \if@openright\cleardoublepage\else\clearpage\fi
+ \phantomsection%
+ \pdfbookmark[0]{Signatures}{signatures}%
+ % do not addtocontents (although it is in bookmarklist)
+ \ifx\@empty\@committeechair\relax\else
+ \addtocounter{signatures}{1}%
+ \GTlop\@committeechair\to\z%
+ \leftappenditem{\z, \mbox{Committee Chair}}\to\@committeechair%
+ \add@Lsig{\signature{\@committeechair}}
+ \fi
+ \ifx\@empty\@principaladvisor\relax\else
+ \addtocounter{signatures}{1}%
+ \GTlop\@principaladvisor\to\a%
+ \leftappenditem{\a, \advis@r}\to\@principaladvisor%
+ \add@Lsig{\signature{\@principaladvisor}}
+ \fi
+ \ifx\@empty\@firstreader\relax\else
+ \addtocounter{signatures}{1}%
+ \add@Lsig{\signature\@firstreader}
+ \fi
+% The first three will ALWAYS be in the left column, but now we must compute
+% the total number of sigs before doing anything else.
+ \ifx\@empty\@secondreader\relax\else\addtocounter{signatures}{1}\fi
+ \ifx\@empty\@thirdreader\relax\else\addtocounter{signatures}{1}\fi
+ \ifx\@empty\@fourthreader\relax\else\addtocounter{signatures}{1}\fi
+ \ifx\@empty\@fifthreader\relax\else\addtocounter{signatures}{1}\fi
+ \ifx\@empty\@sixthreader\relax\else\addtocounter{signatures}{1}\fi
+ \typeout{SIGNATURES: \arabic{signatures}}
+ \ifnum \value{signatures} < 5 % fuggeddaboutit. Only one column
+ \let\signature@body\signature@bodyonecol
+ \setlength{\signature@width}{0.52\textwidth}
+ \else
+ \let\signature@body\signature@bodytwocol
+ \setlength{\signature@width}{0.46\textwidth}
+ \newcounter{halfsig}
+ \setcounter{halfsig}{\value{signatures} - (\value{signatures} / 2)}
+ \typeout{LEFTCNT: \arabic{cnt@Lsig} HALF: \arabic{halfsig}}
+ \ifnum \value{cnt@Lsig} < \value{halfsig}
+ \add@Lsig{\signature\@secondreader}
+ \ifnum \value{cnt@Lsig} < \value{halfsig}
+ \ifx\@empty\@thirdreader\relax\else\add@Lsig{\signature\@thirdreader}\fi % can't ever have more than this in left column
+ \ifx\@empty\@fourthreader\relax\else\add@Rsig{\signature\@fourthreader}\fi
+ \ifx\@empty\@fifthreader\relax\else\add@Rsig{\signature\@fifthreader}\fi
+ \ifx\@empty\@sixthreader\relax\else\add@Rsig{\signature\@sixthreader}\fi
+ \else
+ \ifx\@empty\@thirdreader\relax\else\add@Rsig{\signature\@thirdreader}\fi
+ \ifx\@empty\@fourthreader\relax\else\add@Rsig{\signature\@fourthreader}\fi
+ \ifx\@empty\@fifthreader\relax\else\add@Rsig{\signature\@fifthreader}\fi
+ \ifx\@empty\@sixthreader\relax\else\add@Rsig{\signature\@sixthreader}\fi
+ \fi
+ \else
+ \ifx\@empty\@secondreader\relax\else\add@Rsig{\signature\@secondreader}\fi
+ \ifx\@empty\@thirdreader\relax\else\add@Rsig{\signature\@thirdreader}\fi
+ \ifx\@empty\@fourthreader\relax\else\add@Rsig{\signature\@fourthreader}\fi
+ \ifx\@empty\@fifthreader\relax\else\add@Rsig{\signature\@fifthreader}\fi
+ \ifx\@empty\@sixthreader\relax\else\add@Rsig{\signature\@sixthreader}\fi
+ \fi
+ \fi
+ \title@top
+ \vfill
+ \begin{center}
+ \signature@body
+ \ifstrictmargins\relax\else
+ \vspace{.2in}
+ \mbox{}
+ \fi
+ \end{center}
+ \thispagestyle{empty}
+}
+%
+%% beforepreface
+%
+\newcommand{\beforepreface}{%
+ \newlinestretch{1.0}%
+ \pagenumbering{roman}%
+ \pagestyle{\front@pagestyle}%
+ \iftitlepage%
+ \maketitle%
+ \fi%
+ \ifmultivolume%
+ \part{}%
+ \fi%
+ \ifsignaturepage%
+ \makesignature%
+ \fi%
+ \newlinestretch{\@spacing}%
+}
+%
+%% \prefacesection is here for backward compatibility with
+%% the GT-thesis.sty package, and to add preface sections
+%% that are not already defined. For Abstract, Preface,
+%% Dedication, and Acknowlegements sections, use the
+%% appropriate environments: \begin{abstract}...\end{abstract}
+%% etc.
+%
+\newcommand{\prefacesection}[1]{%
+ \if@openright\cleardoublepage\else\clearpage\fi
+ \phantomsection%
+ \addcontentsline{toc}{chapter}%
+ {\texorpdfstring{\Makeuppercase{#1}}{#1}}
+ \newlinestretch{\@spacing}
+ \chapter*{\MakeUppercase{#1}}
+ \vskip 0.5in
+}
+\newcommand{\afterpreface}{%
+ \if@draft%
+ \else%
+ \if@twoside%
+ \if@openright%
+ \cleardoublepage%
+ \fi%
+ \fi%
+ \fi%
+ \newpage%
+ \pagenumbering{arabic}%
+ \pagestyle{\body@pagestyle}%
+ \newlinestretch{\@spacing}%
+}
+
+% dummy commands to prevent recursion errors...
+\newcommand{\gtcontentsname}{}
+\newcommand{\toccontentlinestring}{}
+\newcommand{\tocpdfbookmarkstring}{}
+\newcommand{\gtlistfigurename}{}
+\newcommand{\lofcontentlinestring}{}
+\newcommand{\lofpdfbookmarkstring}{}
+\newcommand{\gtlisttablename}{}
+\newcommand{\lotcontentlinestring}{}
+\newcommand{\lotpdfbookmarkstring}{}
+
+\newcommand{\settocstring}[1]{%
+ \renewcommand{\gtcontentsname}{#1}
+ \renewcommand{\contentsname}{\Makeuppercase{#1}}
+ \renewcommand{\toccontentlinestring}{%
+ \texorpdfstring{\Makeuppercase{#1}}{#1}
+ }
+ \renewcommand{\tocpdfbookmarkstring}{#1}
+}
+\newcommand{\setlofstring}[1]{%
+ \renewcommand{\gtlistfigurename}{#1}
+ \renewcommand{\listfigurename}{\Makeuppercase{#1}}
+ \renewcommand{\lofcontentlinestring}{%
+ \texorpdfstring{\Makeuppercase{#1}}{#1}
+ }
+ \renewcommand{\lofpdfbookmarkstring}{#1}
+}
+\newcommand{\setlotstring}[1]{%
+ \renewcommand{\gtlisttablename}{#1}
+ \renewcommand{\listtablename}{\Makeuppercase{#1}}
+ \renewcommand{\lotcontentlinestring}{%
+ \texorpdfstring{\Makeuppercase{#1}}{#1}
+ }
+ \renewcommand{\lotpdfbookmarkstring}{#1}
+}
+\settocstring{Table of Contents}
+\setlofstring{List of Figures}
+\setlotstring{List of Tables}
+
+%
+%% All this junk is for handling the spacing in the TOC, LOF, and LOT.
+%
+\newlength{\gt@tocentryskip@value}
+\newlength{\gt@beforepartskip@value}
+\newlength{\gt@beforechapskip@value}
+\newlength{\gt@beforesecskip@value}
+\newlength{\gt@beforesubsecskip@value}
+\newlength{\gt@beforesubsubsecskip@value}
+\newlength{\gt@beforeparaskip@value}
+\newlength{\gt@beforesubparaskip@value}
+\newlength{\gt@beforefigskip@value}
+\newlength{\gt@beforetableskip@value}
+
+\def\set@gttocskip#1{%
+ \setlength{\gt@tocentryskip@value}{#1}
+ % set base lengths
+ \setlength{\gt@beforepartskip@value}{2\gt@tocentryskip@value}
+ \setlength{\gt@beforechapskip@value}{1.5\gt@tocentryskip@value}
+ \setlength{\gt@beforesecskip@value}{\gt@tocentryskip@value}
+ \setlength{\gt@beforesubsecskip@value}{\gt@tocentryskip@value}
+ \setlength{\gt@beforesubsubsecskip@value}{\gt@tocentryskip@value}
+ \setlength{\gt@beforeparaskip@value}{\gt@tocentryskip@value}
+ \setlength{\gt@beforesubparaskip@value}{\gt@tocentryskip@value}
+ \setlength{\gt@beforefigskip@value}{\gt@tocentryskip@value}
+ \setlength{\gt@beforetableskip@value}{\gt@tocentryskip@value}
+ % add glue
+ \addtolength{\gt@beforepartskip@value}{\z@ \@plus\p@}
+ \addtolength{\gt@beforechapskip@value}{\z@ \@plus\p@}
+ \addtolength{\gt@beforesecskip@value}{\z@ \@plus.2\p@}
+ \addtolength{\gt@beforesubsecskip@value}{\z@ \@plus.2\p@}
+ \addtolength{\gt@beforesubsubsecskip@value}{\z@ \@plus.2\p@}
+ \addtolength{\gt@beforeparaskip@value}{\z@ \@plus.2\p@}
+ \addtolength{\gt@beforesubparaskip@value}{\z@ \@plus.2\p@}
+ \addtolength{\gt@beforefigskip@value}{\z@ \@plus.2\p@}
+ \addtolength{\gt@beforetableskip@value}{\z@ \@plus.2\p@}
+}
+\set@gttocskip{10pt}
+
+% gobble the pagenumber
+\newcommand*{\l@part@pagenumfont}[1]{}
+% note: we don't do the fancy volume title centering here, because
+% we use {part} for the \labelchaptersintableofcontents stuff. And
+% that is NOT centered.
+\renewcommand*{\l@part}[2]{%
+ \ifnum \c@tocdepth >-2\relax
+ \addpenalty{-\@highpenalty}%
+ \addvspace{\gt@beforepartskip@value}%
+ \setlength\@tempdima{3em}%
+ \begingroup
+ \parindent \z@ \rightskip \@pnumwidth
+ \parfillskip -\@pnumwidth
+ \interlinepenalty\@M
+ {\leavevmode #1\hfil \hb@xt@\@pnumwidth{\hss \l@part@pagenumfont{#2}}}\par
+ \nobreak
+ \global\@nobreaktrue
+ \everypar{\global\@nobreakfalse\everypar{}}%
+ \endgroup
+ \fi}
+\newcommand*{\gt@dottedtocline}[5]{%
+ \ifnum #1>\c@tocdepth \else
+ \addvspace{\gt@@toclineskip}
+ {\leftskip #2\relax \rightskip \@tocrmarg \parfillskip -\rightskip
+ \parindent #2\relax\@afterindenttrue
+ \interlinepenalty\@M
+ \leavevmode
+ \@tempdima #3\relax
+ \advance\leftskip \@tempdima \null\nobreak\hskip -\leftskip
+ {#4}\nobreak
+ \leaders\hbox{$\m@th
+ \mkern \@dotsep mu\hbox{.}\mkern \@dotsep
+ mu$}\hfill
+ \nobreak
+ \hb@xt@\@pnumwidth{\hfil\normalfont \normalcolor #5}%
+ \par}%
+ \fi}
+\renewcommand*\l@chapter[2]{%
+ \ifnum \c@tocdepth >\m@ne
+ \addpenalty{-\@highpenalty}%
+ \addvspace{\gt@beforechapskip@value}%
+ \setlength\@tempdima{2em}% was 1.5em, but that's too small. Add 0.5em to all others
+ \begingroup
+ \parindent \z@ \rightskip \@pnumwidth
+ \parfillskip -\@pnumwidth
+ \leavevmode \bfseries
+ \advance\leftskip\@tempdima
+ \hskip -\leftskip
+ #1\nobreak\normalfont\normalcolor
+ \leaders\hbox{$\m@th
+ \mkern \@dotsep mu\hbox{.}\mkern \@dotsep
+ mu$}\hfill
+ \nobreak
+ \hb@xt@\@pnumwidth{\hss\bfseries #2}
+ \par
+ \penalty\@highpenalty
+ \endgroup
+ \fi}
+\renewcommand*\l@section{%
+ \let\gt@@toclineskip=\gt@beforesecskip@value
+ \gt@dottedtocline{1}{2.0em}{2.3em}}
+\renewcommand*\l@subsection{%
+ \let\gt@@toclineskip=\gt@beforesubsecskip@value
+ \gt@dottedtocline{2}{4.3em}{3.2em}}
+\renewcommand*\l@subsubsection{%
+ \let\gt@@toclineskip=\gt@beforesubsubsecskip@value
+ \gt@dottedtocline{3}{7.5em}{4.1em}}
+\renewcommand*\l@paragraph{%
+ \let\gt@@toclineskip=\gt@beforeparaskip@value
+ \gt@dottedtocline{4}{10.5em}{5em}}
+\renewcommand*\l@subparagraph{%
+ \let\gt@@toclineskip=\gt@beforesubparaskip@value
+ \gt@dottedtocline{5}{12.5em}{6em}}
+\renewcommand*\l@figure{%
+ \let\gt@@toclineskip=\gt@beforefigskip@value
+ \gt@dottedtocline{1}{1.5em}{2.3em}}% this is indented 1.5em so that
+ % if you wish, you can a 'Figure' header
+ % centered above the numbers using \addtocontents
+\renewcommand*\l@table{%
+ \let\gt@@toclineskip=\gt@beforetableskip@value
+ \gt@dottedtocline{1}{1.5em}{2.3em}}% ditto
+
+\newlength{\gt@tmpa}
+\newcommand{\do@figurespage}{%
+ \iffigurespage
+ \if@openright\cleardoublepage\else\clearpage\fi
+ % must clear page here, so that phantomsection\addcontentsline is on the correct page
+ \phantomsection%
+ \addcontentsline{toc}{chapter}{\lofcontentlinestring}
+ \settoheight{\gt@tmpa}{A}
+ \set@gttocskip{\gt@tmpa}
+ {\newlinestretch{1}
+ \listoffigures
+ }
+ \newpage
+ \fi
+}
+\newcommand{\do@tablespage}{%
+ \iftablespage
+ \if@openright\cleardoublepage\else\clearpage\fi
+ % must clear page here, so that phantomsection\addcontentsline is on the correct page
+ \phantomsection%
+ \addcontentsline{toc}{chapter}{\lotcontentlinestring}
+ \settoheight{\gt@tmpa}{A}
+ \set@gttocskip{\gt@tmpa}
+ {\newlinestretch{1}
+ \listoftables
+ }
+ \newpage
+ \fi
+}
+\newcommand{\do@contentspage}{%
+ \ifcontentspage
+ \if@openright\cleardoublepage\else\clearpage\fi
+ % must clear page here, so that phantomsection\addcontentsline is on the correct page
+ \phantomsection%
+ \pdfbookmark[0]{\tocpdfbookmarkstring}{toc}%
+ \settoheight{\gt@tmpa}{A}
+ \set@gttocskip{\gt@tmpa}
+ {\newlinestretch{1}
+ \tableofcontents
+ }
+ \newpage
+ \fi
+}
+\newcommand{\do@losapage}{}
+\newcommand{\do@glossarypage}{}
+\newcommand{\do@indexpage}{}
+
+\newcommand{\contents}{%
+ \newpage
+ \newlinestretch{\@spacing}
+ \do@contentspage
+ \do@tablespage
+ \do@figurespage
+ \do@losapage
+ \do@glossarypage
+}
+
+%%%%%% Main Matter Commands and Environments
+%%
+%% redefine chapter headings style
+%% redefine appendix headings style
+%% redefine section headings style
+%% number figures and tables sequentially throughout, rather
+%% than restarting for each chapter. Ditto equations.
+%% redefine macro for floats (incl. figures and tables)
+%% so that single spacing is used
+%% define a "gtindent" command for paragraph indents:
+%% blank line + six space first line indentation
+%% settocdepth - use this to change how "deep" to number
+%% in the table of contents for different sections; e.g.
+%% subsubsections for chapters, then switch to chapter-only
+%% for appendices.
+
+% This package uses David Carlisle's \@removefromreset command as
+% specified in the remreset package available from CTAN as
+% macros/latex/contrib/supported/carlisle/remreset.sty
+% It is \provided here as a convenience to the user, and with
+% David Carlisle's permission. remreset.sty is licensed under
+% the LPPL; David has explicitly given permission to include
+% it here, under the GPL.
+% START OF DAVID CARLISLE'S CODE
+\newcommand{\@removefromreset}[2]{{%
+ \expandafter\let\csname c@#1\endcsname\@removefromreset
+ \def\@elt##1{%
+ \expandafter\ifx\csname c@##1\endcsname\@removefromreset
+ \else
+ \noexpand\@elt{##1}%
+ \fi}%
+ \expandafter\xdef\csname cl@#2\endcsname{%
+ \csname cl@#2\endcsname}}}
+% END OF DAVID CARLISLE'S CODE
+%%%%% See http://www.tex.ac.uk/cgi-bin/texfaq2html?label=running-nos
+
+%
+%% Figures and tables are to be numbered sequentially throughout the
+%% thesis, rather than within chapters; for style consistency, do
+%% equations the same.
+%
+\@removefromreset{figure}{chapter}
+\@removefromreset{table}{chapter}
+\@removefromreset{equation}{chapter}
+\def\thefigure{\@arabic\c@figure}
+\def\thetable{\@arabic\c@table}
+\def\theequation{\arabic{equation}}
+
+%
+%% Redefine the macro used for floats (including figures and tables)
+%% so that single spacing is used.
+%% (Note \def\figure{\@float{figure}set single spacing} doesn't work
+%% because figure has an optional argument)
+%%
+%% This code was copied directly from latex.ltx, but with the
+%% \newlinespacing{} macro added to it.
+%
+\def\@xfloat #1[#2]{%
+ \@nodocument
+ \def \@captype {#1}%
+ \def \@fps {#2}%
+ \@onelevel@sanitize \@fps
+ \def \reserved@b {!}%
+ \ifx \reserved@b \@fps
+ \@fpsadddefault
+ \else
+ \ifx \@fps \@empty
+ \@fpsadddefault
+ \fi
+ \fi
+ \ifhmode
+ \@bsphack
+ \@floatpenalty -\@Mii
+ \else
+ \@floatpenalty-\@Miii
+ \fi
+ \ifinner
+ \@parmoderr\@floatpenalty\z@
+ \else
+ \@next\@currbox\@freelist
+ {%
+ \@tempcnta \sixt@@n
+ \expandafter \@tfor \expandafter \reserved@a
+ \expandafter :\expandafter =\@fps
+ \do
+ {%
+ \if \reserved@a h%
+ \ifodd \@tempcnta
+ \else
+ \advance \@tempcnta \@ne
+ \fi
+ \fi
+ \if \reserved@a t%
+ \@setfpsbit \tw@
+ \fi
+ \if \reserved@a b%
+ \@setfpsbit 4%
+ \fi
+ \if \reserved@a p%
+ \@setfpsbit 8%
+ \fi
+ \if \reserved@a !%
+ \ifnum \@tempcnta>15
+ \advance\@tempcnta -\sixt@@n\relax
+ \fi
+ \fi
+ }%
+ \@tempcntb \csname ftype@\@captype \endcsname
+ \multiply \@tempcntb \@xxxii
+ \advance \@tempcnta \@tempcntb
+ \global \count\@currbox \@tempcnta
+ }%
+ \@fltovf
+ \fi
+ \global \setbox\@currbox
+ \color@vbox
+ \normalcolor
+ \vbox \bgroup
+ \newlinestretch{1.0}
+ \hsize\columnwidth
+ \@parboxrestore
+ \@floatboxreset
+}
+
+% Redefine the macro used for caption labels, for a (slightly)
+% fancier format. Feel free to use the caption2 package instead...
+\long\def\@makecaption#1#2{%
+ \vskip\abovecaptionskip
+ \sbox\@tempboxa{\textbf{#1: }#2}%
+ \ifdim \wd\@tempboxa >\hsize
+ \textsf{\textbf{#1: }}#2\par
+ \else
+ \global \@minipagefalse
+ \hb@xt@\hsize{\hfil\box\@tempboxa\hfil}%
+ \fi
+ \vskip\belowcaptionskip}
+
+% Redefine the macro used for footnotes to use single spacing
+\long\def\@footnotetext#1{%
+ \insert\footins{%
+ \newlinestretch{1.0}%
+ \footnotesize%
+ \interlinepenalty\interfootnotelinepenalty%
+ \splittopskip\footnotesep%
+ \splitmaxdepth \dp\strutbox \floatingpenalty \@MM%
+ \hsize\columnwidth \@parboxrestore%
+ \edef\@currentlabel{%
+ \csname p@footnote\endcsname\@thefnmark%
+ }%
+ \@makefntext%
+ {\rule{\z@}{\footnotesep}\ignorespaces%
+ #1\strut}%
+ }%
+}
+
+%
+%% Paragraph indents (6 spaces)
+%% inserts a blank line and then indents the paragraph by 6 spaces
+%
+\newcommand{\gtindent}{\par \hspace{0.25in}}
+
+%
+%% Chapter headings - centered, all caps, chapter number - roman numeral
+%
+%
+%% Use \labelchaptersintableofcontents to insert an entry into the toc
+%% that says ``CHAPTERS'' just before Chapter 1.
+% Use \labelappendicesintableofcontents to insert an entry into the toc
+%% that says ``APPENDICES'' just before Appendix A.
+%
+\let\orig@contentsline=\contentsline
+\newcommand{\labelchaptersintableofcontents}[1][CHAPTERS]{%
+ \addtocontents{toc}{\protect\orig@contentsline{part}{#1}{}}
+}
+\newcommand{\labelappendicesintableofcontents}[1][APPENDICES]{%
+ \addtocontents{toc}{\protect\orig@contentsline{part}{#1}{}}%
+}
+
+\renewcommand{\chaptername}{CHAPTER}
+\renewcommand{\appendixname}{APPENDIX}
+\renewcommand{\thepart}{\@Roman\c@part}
+\renewcommand{\partname}{Volume}
+
+%
+%% \thegtchapter is used so that we can have ROMAN numbers in the
+%% chapter headings at the beginning of each chapter, but use
+%% \thechapter for ARABIC numbers in the running heads on each
+%% page within the chapter.
+%%
+%% You can Change this behavior by redefining \thegtchapter
+%% within your document:
+%% \renewcommand{\thegtchapter}{\thechapter}
+%
+\newcommand{\thegtchapter}{\@Roman\c@chapter}
+\def\chapapp@tocdepth{\expandafter\chapter@tocdepth}
+%
+%% The following two def's provide the Indirection needed to work
+%% with hyperref package, since hyperref redefines @chapter and
+%% @schapter
+%
+\def\chapapp@chapter{\chap@chapter}
+\def\chapapp@schapter{\chap@schapter}
+%
+%% Make @chapter and @schapter wrappers for (chap@chapter or app@chapter)
+%% and (chap@schapter or app@schapter). This indirection is necessary to
+%% work well with the hyperref package.
+%
+\def\my@empty{}
+\def\@chapter[#1]#2{%
+ \def\my@temp{#1}%
+ \ifx\my@temp\my@empty
+ \chapapp@chapter{#2}
+ \else
+ \chapapp@chapter[#1]{#2}
+ \fi
+}
+\def\@schapter#1{%
+ \chapapp@schapter{#1}
+}
+%
+%% The actual guts of the chapter heading routines
+%
+\renewcommand{\chapter}{%
+ \if@openright\cleardoublepage\else\clearpage\fi
+ \if@tcpage% DO NOT use the \front@pagestyle macro here.
+ {\thispagestyle{tcplain}}
+ \else
+ {\thispagestyle{plain}}%report.cls temporarily resets pagestyle to plain. Do the same.
+ \fi
+ \settocdepth{\chapapp@tocdepth}
+ \global\@topnum\z@
+ \@afterindentfalse
+ \secdef\@chapter\@schapter
+}
+\def\chap@chapter[#1]#2{%
+ \ifnum \c@secnumdepth >\m@ne
+ \refstepcounter{chapter}%
+ \typeout{\@chapapp\space\thegtchapter.}%
+ \addcontentsline{toc}{chapter}%
+ {\texorpdfstring%
+ {\protect\numberline{\thegtchapter}\Makeuppercase{#1}}%
+ {Chapter \thechapter\space\textemdash\space#1}}%
+ \else
+ \addcontentsline{toc}{chapter}%
+ {\texorpdfstring{\Makeuppercase{#1}}{#1}}%
+ \fi
+ \chaptermark{#1}%
+ \if@twocolumn
+ \@topnewpage[\@makechapterhead{#2}]%
+ \else
+ \@makechapterhead{#2}%
+ \@afterheading
+ \fi
+}
+\def\@makechapterhead#1{%
+ \ifnum \@marginsize = 4 % oldmargins
+ \vspace*{50\p@}%
+ \fi
+ { \parindent \z@ \raggedright \normalfont
+ \ifnum \c@secnumdepth >\m@ne
+ \centering \large \bfseries \@chapapp\space \thegtchapter
+ \par\nobreak
+ \vskip 30\p@
+ \fi
+ \interlinepenalty\@M
+ \centering \large \bfseries \MakeUppercase{#1}\par\nobreak
+ \vskip 30\p@
+ }
+}
+\def\chap@schapter#1{%
+ \if@twocolumn
+ \@topnewpage[\@makeschapterhead{#1}]%
+ \else
+ \@makeschapterhead{#1}%
+ \@afterheading
+ \fi
+}
+\def\@makeschapterhead#1{%
+ \ifnum \@marginsize = 4 % oldmargins
+ \vspace*{50\p@}%
+ \fi
+ { \parindent \z@ \raggedright \normalfont
+ \interlinepenalty\@M
+ \centering \large \bfseries #1\par\nobreak
+ \vskip 30\p@
+ }
+}
+%
+%% Support for multi-volume thesis.
+%%
+%% in the premable, set \multivolumetrue and then
+%% use the \part{} commannd where you want volume 2
+%% to begin, etc. Do not give names to your volumes (that is,
+%% use ``\part{}'' and not ``\part{Some title}''), because
+%% the Graduate Office Guidelines do not allow separate
+%% titles for each volume.
+%
+% we temporarily set the pagenumber to a big negative number, for
+% two reasons: 1) so that it doesn't duplicate the other page numbers,
+% because the volume title pages are unnumbered and uncounted. We
+% can't merely allow the autoincrement of pagenum and then addtocounter{page}{-1},
+% because then both pages would have the same number. 2) it's a BIG negative
+% number because we allow it to increment as each \part is declared, so that
+% the volume title pages don't duplicate each others pagenums.
+\newcounter{part@savepagenum}
+\newcounter{part@pagenum}
+\setcounter{part@pagenum}{-101} % can't have more than 50 parts,
+% but this number must be odd, or twopage dvi's are messed up.
+\renewcommand{\part}{%
+ \if@openright\cleardoublepage\else\clearpage\fi
+ \thispagestyle{empty}%
+ \phantomsection%
+ \setcounter{part@savepagenum}{\value{page}}
+ \setcounter{page}{\value{part@pagenum}}
+ \if@twocolumn
+ \onecolumn
+ \@tempswatrue
+ \else
+ \@tempswafalse
+ \fi
+ \secdef\@part\@spart}
+
+\def\@part[#1]#2{%
+ \ifnum \c@secnumdepth >-2\relax
+ \refstepcounter{part}
+ \typeout{\partname\space\thepart.}%
+ \addcontentsline{toc}{part}%
+ {\texorpdfstring%
+ {\noindent\protect\makebox[\@tocrmarg]{}%
+ {\protect\makebox[\textwidth - \@tocrmarg - \@tocrmarg]% dadgum \hfill doesn't work without mbox...
+ {\hfill\Makeuppercase{\partname}\space\protect{\thepart}\hspace{1em}\Makeuppercase{#1}\hfill}}}%
+ {Volume \thepart}}%
+ \else
+ \addcontentsline{toc}{part}%
+ {\texorpdfstring%
+ {\Makeuppercase{#1}}%
+ {#1}}%
+ \fi
+ \markboth{}{}
+ {\interlinepenalty \@M
+ \normalfont
+ \ifnum \c@secnumdepth >-2\relax
+ \make@parttitle{#1}
+ \else
+ \make@parttitle{}
+ \fi}
+ \@endpart}
+\def\@spart#1{%
+ {\interlinepenalty \@M
+ \normalfont
+ \make@parttitle{}}
+ \@endpart}
+\def\@endpart{%
+ \vfill\newpage\addtocounter{part@pagenum}{1}%don't count this page
+ \if@twoside
+ \if@openright
+ \null
+ \thispagestyle{empty}%
+ \newpage\addtocounter{part@pagenum}{1}%if we need to add another page, don't count it either
+ \fi
+ \fi
+ \if@tempswa
+ \twocolumn
+ \fi
+ \setcounter{page}{\value{part@savepagenum}}
+}
+%
+%% Section
+%% Heading 1: Large, bold, and italic, at left margin
+%% Heading 2: Bold, at left margin
+%% Heading 3: Italic, indented 0.25in from left margin
+%
+\renewcommand{\section}{%
+ \@startsection{section}{1}{\z@}%
+ {-3.25ex \@plus -1ex \@minus -.2ex}%
+ {1.5ex \@plus.2ex}%
+ {\newlinestretch{1}\normalfont\large\bfseries\itshape}
+}
+\renewcommand{\subsection}{%
+ \@startsection{subsection}{2}{\z@}%
+ {-3.25ex\@plus -1ex \@minus -.2ex}%
+ {1.5ex \@plus .2ex}%
+ {\newlinestretch{1}\normalfont\normalsize\bfseries}
+}
+\renewcommand{\subsubsection}{%
+ \@startsection{subsubsection}{3}{0.25in}%
+ {-3.25ex\@plus -1ex \@minus -.2ex}%
+ {1.5ex \@plus .2ex}%
+ {\newlinestretch{1}\normalfont\normalsize\itshape}
+}
+
+\renewcommand{\appendix}{%
+ \if@openright
+ \cleardoublepage
+ \else
+ \clearpage
+ \fi
+ \renewcommand{\@chapapp}{\appendixname}
+ \thispagestyle{plain}% Do NOT use the \back@pagestyle macro here
+ \settocdepth{\appendix@tocdepth}
+ \setcounter{chapter}{0}%
+ \setcounter{section}{0}%
+ \def\thechapter{\@Alph\c@chapter}
+ \def\chapapp@tocdepth{\expandafter\appendix@tocdepth}
+ \def\chapapp@chapter{\app@chapter}
+ \def\chapapp@schapter{\app@schapter}
+ \renewcommand{\thesection}{\thechapter.\@arabic\c@section}
+}
+\def\app@chapter[#1]#2{%
+ \ifnum \c@secnumdepth >\m@ne
+ \refstepcounter{chapter}%
+ \typeout{\@chapapp\space\thechapter.}%
+ \addcontentsline{toc}{chapter}%
+ {\texorpdfstring%
+ {\@chapapp\space\protect\numberline{\thechapter}\space---\space\Makeuppercase{#1}}%
+ {Appendix\space\thechapter\space\textemdash\space#1}}%must specify "---" explicitly here
+ \else
+ \addcontentsline{toc}{chapter}{\Makeuppercase{#1}}%
+ \fi
+ \chaptermark{#1}%
+ \if@twocolumn
+ \@topnewpage[\@makeapphead{#2}]%
+ \else
+ \@makeapphead{#2}%
+ \@afterheading
+ \fi
+}
+\def\@makeapphead#1{%
+ \ifnum \@marginsize = 4 % oldmargins
+ \vspace*{50\p@}%
+ \fi
+ { \parindent \z@ \raggedright \normalfont
+ \centering \large \bfseries \appendixname\space \thechapter
+ \par\nobreak
+ \vskip 30\p@
+ \interlinepenalty\@M
+ \centering \large \bfseries \MakeUppercase{#1}\par\nobreak
+ \vskip 35\p@
+ }
+}
+\def\app@schapter#1{%
+ \if@twocolumn
+ \@topnewpage[\@makesapphead{#1}]%
+ \else
+ \@makesapphead{#1}%
+ \@afterheading
+ \fi
+}
+\def\@makesapphead#1{%
+ \ifnum \@marginsize = 4 % oldmargins
+ \vspace*{50\p@}%
+ \fi
+ { \parindent \z@ \raggedright \normalfont
+ \interlinepenalty\@M
+ \centering \large \bfseries #1\par\nobreak
+ \vskip 30\p@
+ }
+}
+%% end of \appendix environment definitions
+
+%% \settocdepth - use this to change how "deep" to number
+%% in the table of contents for different sections; e.g.
+%% subsubsections for chapters, then switch to chapter-only
+%% for appendices.
+%% tocdepth is reset to the value in \setchaptertocdepth
+%% at each \chapter{}, or to the value in \setappendixtocdepth
+%% at each \chapter{} after the \appendix command. So, if
+%% you want to change the defaults, use \setchaptertocdepth and
+%% \setappendixtocdepth. To temporarily change depth for the
+%% current section, use a different function: \settocdepth[x].
+%% You should never need to call \setcounter{tocdepth}{..}
+%% directly.
+%%
+%% 0 = chapter only
+%% 1 = chapter + sections
+%% 2 = chapter, section, subsection
+%% 3 = chapter, section, subsection, subsubsection
+%
+\newcommand{\settocdepth}[1]{%
+ \addtocontents{toc}{\protect\setcounter{tocdepth}{#1}}
+}
+\newcommand{\setappendixtocdepth}[1]{%
+ \def\appendix@tocdepth{#1}
+}
+\newcommand{\setchaptertocdepth}[1]{%
+ \def\chapter@tocdepth{#1}
+}
+
+%%%%%% Back Matter Commands and Environments
+%%
+%% \beforepostface
+%% \thebibliography redefined so it matches GT's requirements
+%% \begin{vita}...\end{vita}
+%% \postfacesection{other-title}
+%% --- followed by section text
+%% \afterpostface
+%% \references
+%% --- creates the bibliography
+%% \begin{postliminary}...\end{postliminary}
+%% --- preferred to \beforepostface and \afterpostface
+
+%
+%%%%%% New formatting environments and commands.
+%
+%% \begin{postliminary} sets the pagestyle for the
+%% postliminary sections.
+%%
+%% \end{postliminary} resets the pagestyle and
+%% performs any other cleanup.
+%
+\newenvironment{postliminary}%
+ {\pagestyle{\back@pagestyle}}%
+ {\settocdepth{\chapter@tocdepth}%
+ \pagestyle{\body@pagestyle}}
+
+%
+%% \begin{vita}...\end{vita} formats a
+%% vita section
+%
+\newenvironment{vita}{%
+ \typeout{***************** Vita ******************}
+ \newlinestretch{\@spacing}
+ \if@openright\cleardoublepage\else\clearpage\fi
+ \phantomsection%
+ \addcontentsline{toc}{chapter}%
+ {\texorpdfstring{\Makeuppercase{Vita}}{Vita}}
+ \chapter*{\MakeUppercase{Vita}}
+ \@mkboth{\scshape\MakeUppercase{Vita}}%
+ {\scshape\MakeUppercase{Vita}}%
+ \vskip 0.5in
+ \begingroup
+}{\par\endgroup}%Vita
+
+\newcommand{\beforepostface}{%
+ \pagestyle{\back@pagestyle}
+}%
+
+%
+%% \postfacesection is here for backward compatibility with
+%% the GT-thesis.sty package, and to add postface sections
+%% that are not already defined. (Appendices are not postface
+%% material). Currently, the only predefined postface section
+%% is Vita. Use \begin{vita}...\end{vita}. (``Index'' is a
+%% postface section, but: it is defined in the add-on style
+%% gatech-thesis-index.sty, and it doesn't use \postfacesection.)
+%
+\newcommand{\postfacesection}[1]{%
+ \newlinestretch{\@spacing}
+ \if@openright\cleardoublepage\else\clearpage\fi
+ % must clear page here, so that phantomsection\addcontentsline is on the correct page
+ \phantomsection%
+ \addcontentsline{toc}{chapter}%
+ {\texorpdfstring{\Makeuppercase{#1}}{#1}}
+ \chapter*{\MakeUppercase{#1}}
+ \@mkboth{\scshape\MakeUppercase{#1}}%
+ {\scshape\MakeUppercase{#1}}%
+ \pagestyle{\back@pagestyle}
+ \vskip 0.5in
+}
+\newcommand{\afterpostface}{
+ \settocdepth{\chapter@tocdepth}%
+ \pagestyle{\body@pagestyle}
+}
+\newcommand{\refname}{References}
+\newcommand{\references}{%
+ \ifbibpage
+ \typeout{***************** References ******************}
+ \newlinestretch{1.0}
+ \if@openright\cleardoublepage\else\clearpage\fi
+ % must clear page here, so that phantomsection\addcontentsline is on the correct page
+ \phantomsection%
+ \addcontentsline{toc}{chapter}%
+ {\texorpdfstring{\Makeuppercase{\refname}}{\refname}}
+% \bibliographystyle{gatech-thesis}
+ \bibliography{\@bibfiles}
+ \fi
+}
+
+%%%%%%%%% BIBLIOGRAPHY %%%%%%%%%%%%%%%%%
+%%
+%% redefine ``thebibliography'' environment so that title conforms to Georgia
+%% Tech format (all caps, center of page)
+%%
+\renewenvironment{thebibliography}[1]{
+ { \chapter*{\MakeUppercase{\refname}}
+ \@mkboth{\scshape\MakeUppercase\refname}%
+ {\scshape\MakeUppercase\refname}%
+ \pagestyle{\body@pagestyle}% REFERENCES uses BODY pagestyle, not endmatter.
+ \vskip 0.5in
+ }
+ \list{\@biblabel{\@arabic\c@enumiv}}%
+ { \settowidth\labelwidth{\@biblabel{#1}}%
+ \leftmargin\labelwidth
+ \advance\leftmargin\labelsep
+ \@openbib@code
+ \usecounter{enumiv}%
+ \let\p@enumiv\@empty
+ \renewcommand\theenumiv{\@arabic\c@enumiv}
+ }%
+ \sloppy
+ \clubpenalty4000
+ \@clubpenalty \clubpenalty
+ \widowpenalty4000%
+ \sfcode`\.\@m}
+ {\def\@noitemerr
+ {\@latex@warning{Empty ``thebibliography'' environment}
+ \pagestyle{\back@pagestyle}
+ }%
+ \endlist
+}
+
+%
+%% Variations of \cleardoublepage that explicitly set the pagestyle
+%% of any inserted blank page.
+%
+\newcommand{\clearemptydoublepage}%
+ {{\pagestyle{empty}\cleardoublepage}}
+\newcommand{\clearplaindoublepage}%
+ {{\pagestyle{plain}\cleardoublepage}}
+\newcommand{\cleartcplaindoublepage}%
+ {{\pagestyle{tcplain}\cleardoublepage}}
+\newcommand{\cleargtthesisdoublepage}%
+ {{\pagestyle{gtthesis}\cleardoublepage}}
+
+\newcommand{\setfrontpagestyle}[1]{%
+ \gdef\front@pagestyle{#1}
+}
+\newcommand{\setbodypagestyle}[1]{%
+ \gdef\body@pagestyle{#1}
+}
+\newcommand{\setbackpagestyle}[1]{%
+ \gdef\back@pagestyle{#1}
+}
+
+%%%%%% Page Styles
+%
+%% Redefine all four standard page styles (empty, plain, headings,
+%% myheadings), based on the definitions in ``report'', so that they
+%% conform to the GSO guidelines (and include draft information if
+%% applicable).
+%%
+%% Also, define a new pagestyle ``tcplain'' which is just like ``plain'',
+%% but puts page numbers in header (left/right 2page, or right 1page)
+%% instead of at the bottom of the page.
+%%
+%% Then, define a new pagestyle ``gtthesis''. I like this one better
+%% but the Graduate Studies Office doesn't. :-(
+%
+\renewcommand{\ps@empty}{
+ \@tcpagefalse
+ \let\@mkboth\@gobbletwo
+ \def\@oddfoot{
+ \if@draft
+ \blDRAFT\hfil
+ {\slshape\small\today}\hfil\brDRAFT
+ \fi
+ }%
+ \let\@evenfoot\@oddfoot
+ \def\@oddhead{
+ \if@draft
+ \tlDRAFT\hfil
+ {\slshape\small\today}\hfil\trDRAFT
+ \fi
+ }%
+ \let\@evenhead\@oddhead
+}%ps@empty
+
+%
+%% Pagestyle ``plain''.
+%
+\renewcommand{\ps@plain}{%
+ \@tcpagefalse%
+ \let\@mkboth\@gobbletwo%
+ \def\@oddfoot{%
+ \if@draft\blDRAFT\fi%
+ \hfil\thepage\hfil%
+ \if@draft\brDRAFT\fi%
+ }%
+ \let\@evenfoot\@oddfoot%
+ \def\@oddhead{%
+ \if@draft%
+ \tlDRAFT\hfil%
+ {\slshape\small\today}\hfil\trDRAFT%
+ \fi%
+ }%
+ \let\@evenhead\@oddhead%
+}%ps@plain
+
+%
+%% Pagestyle ``headings''.
+%
+\if@twoside % if two-sided printing
+ \renewcommand{\ps@headings}{%
+ \@tcpagefalse%
+ \let\@mkboth\markboth%
+ \def\@oddfoot{%
+ \if@draft%
+ \blDRAFT\hfil%
+ {\slshape\small\today}\hfil\brDRAFT%
+ \fi%
+ }%
+ \let\@evenfoot\@oddfoot%
+ \def\@oddhead{%
+ \if@draft\tlDRAFT\fi%
+ {\slshape\rightmark}\hfil%
+ \thepage%
+ \if@draft\trDRAFT\fi%
+ }%
+ \def\@evenhead{%
+ \if@draft\tlDRAFT\fi%
+ \thepage\hfil%
+ {\slshape\leftmark}%
+ \if@draft\trDRAFT\fi%
+ }%
+ \def\chaptermark##1{%
+ \markboth
+ {\MakeUppercase{%
+ \ifnum\c@secnumdepth >\m@ne%
+ \@chapapp\ \thechapter. \ %
+ \fi ##1}%
+ }{}%
+ }%
+ \def\sectionmark##1{%
+ \markright%
+ {\MakeUppercase{%
+ \ifnum\c@secnumdepth >\z@%
+ \thesection. \ %
+ \fi ##1}%
+ }%
+ }%
+ }%ps@headings
+\else % if one-sided printing
+ \renewcommand{\ps@headings}{%
+ \@tcpagefalse%
+ \let\@mkboth\markboth%
+ \def\@oddfoot{%
+ \if@draft%
+ \blDRAFT\hfil%
+ {\slshape\small\today}\hfil\brDRAFT%
+ \fi%
+ }%
+ \def\@oddhead{%
+ \if@draft\tlDRAFT\fi%
+ {\slshape\rightmark}\hfil%
+ \thepage%
+ \if@draft\trDRAFT\fi%
+ }%
+ \def\chaptermark##1{%
+ \markright%
+ {\MakeUppercase{%
+ \ifnum\c@secnumdepth >\m@ne%
+ \@chapapp\ \thechapter. \ %
+ \fi ##1}%
+ }%
+ }%
+ }%ps@headings
+\fi % @twoside
+
+%
+%% Pagestyle ``myheadings''.
+%
+\renewcommand{\ps@myheadings}{%
+ \@tcpagefalse%
+ \let\@mkboth\@gobbletwo%
+ \def\@oddfoot{%
+ \if@draft%
+ \blDRAFT\hfil%
+ {\slshape\small\today}\hfil\brDRAFT%
+ \fi%
+ }%
+ \let\@evenfoot\@oddfoot%
+ \def\@oddhead{%
+ \if@draft\tlDRAFT\fi%
+ {\slshape\rightmark}\hfil%
+ \thepage%
+ \if@draft\trDRAFT\fi%
+ }%
+ \def\@evenhead{%
+ \if@draft\tlDRAFT\fi%
+ \thepage\hfil%
+ {\slshape\leftmark}%
+ \if@draft\trDRAFT\fi%
+ }%
+ \let\chaptermark\@gobble\let\sectionmark\@gobble%
+}%ps@myheadings
+
+%
+%% Pagestyle ``gtthesis'' (based on ``headings'').
+%
+\if@twoside % if two-sided printing
+ \newcommand{\ps@gtthesis}{%
+ \@tcpagetrue%
+ \let\@mkboth\markboth%
+ \def\@oddfoot{%
+ \if@draft%
+ \blDRAFT\hfil%
+ {\slshape\small\today}\hfil\brDRAFT%
+ \fi%
+ }%
+ \let\@evenfoot\@oddfoot%
+ \def\@oddhead{%
+ \if@draft\tlDRAFT\fi%
+ {\slshape\rightmark}\hfil%
+ \thepage%
+ \if@draft\trDRAFT\fi%
+ }%
+ \def\@evenhead{%
+ \if@draft\tlDRAFT\fi%
+ \thepage\hfil%
+ {\slshape\leftmark}%
+ \if@draft\trDRAFT\fi%
+ }%
+ \def\chaptermark##1{%
+ \markboth%
+ {\textsc{%
+ \ifnum\c@secnumdepth >\m@ne%
+ \@chapapp\ \thechapter. \ %
+ \fi ##1}%
+ }{}%
+ }%
+ \def\sectionmark##1{%
+ \markright%
+ {\textsc{%
+ \ifnum\c@secnumdepth >\z@%
+ \thesection. \ %
+ \fi ##1}%
+ }
+ }%
+ }%ps@gtthesis
+\else % if one-sided printing
+ \newcommand{\ps@gtthesis}{%
+ \@tcpagetrue%
+ \let\@mkboth\markboth%
+ \def\@oddfoot{%
+ \if@draft%
+ \blDRAFT\hfil%
+ {\slshape\small\today}\hfil\brDRAFT%
+ \fi%
+ }%
+ \def\@oddhead{%
+ \if@draft\tlDRAFT\fi%
+ {\slshape\rightmark}\hfil%
+ \thepage%
+ \if@draft\trDRAFT\fi%
+ }%
+ \def\chaptermark##1{%
+ \markright%
+ {\textsc{%
+ \ifnum\c@secnumdepth >\m@ne%
+ \@chapapp\ \thechapter. \ %
+ \fi ##1}%
+ }
+ }%
+ }%ps@gtthesis
+\fi % @twoside
+
+%
+%% Pagestyle ``tcplain'' (based on ``plain'').
+%
+\if@twoside % if two-sided printing
+ \newcommand{\ps@tcplain}{%
+ \@tcpagetrue%
+ \let\@mkboth\markboth%
+ \def\@oddfoot{%
+ \if@draft%
+ \blDRAFT\hfil%
+ {\slshape\small\today}\hfil\brDRAFT%
+ \fi%
+ }%
+ \let\@evenfoot\@oddfoot%
+ \def\@oddhead{%
+ \if@draft\tlDRAFT\fi%
+ \hfil\thepage%
+ \if@draft\trDRAFT\fi%
+ }%
+ \def\@evenhead{%
+ \if@draft\tlDRAFT\fi%
+ \thepage\hfil%
+ \if@draft\trDRAFT\fi%
+ }%
+ }%ps@tcplain
+\else % if one-sided printing
+ \newcommand{\ps@tcplain}{%
+ \@tcpagetrue%
+ \let\@mkboth\markboth%
+ \def\@oddfoot{%
+ \if@draft%
+ \blDRAFT\hfil%
+ {\slshape\small\today}\hfil\brDRAFT%
+ \fi%
+ }%
+ \def\@oddhead{%
+ \if@draft\tlDRAFT\fi%
+ \hfil\thepage%
+ \if@draft\trDRAFT\fi%
+ }%
+ }%ps@tcplain
+\fi % @twoside
+
+
+%%%%%% Document Layout
+%
+%% Default line spacing: use current setting from options.
+%
+\linespacing{\@thesislnsp}
+%
+%% Page layout (see The LaTeX Companion pp.84-86).
+%
+%% By default, TeX puts the ``reference point'' one inch down and to
+%% the right of the top-left corner of the page. This moves it back
+%% to the top-left corner (making the rest of the layout easier to
+%% define).
+%
+\setlength{\voffset}{-1in}
+\setlength{\hoffset}{-1in}
+%
+%% Instead of hard-coding the page layout for letter paper
+%% (8.5" x 11"), we will base it on \paperheight and \paperwidth,
+%% so that it works with options that change the paper size.
+%
+\setlength{\textheight}{\paperheight}
+\setlength{\textwidth}{\paperwidth}
+%
+%% Now, set the margin-dependent values.
+%
+\ifcase\@marginsize % set narrow margins: 1 1/4" left, 3/4" others
+%
+\addtolength{\textheight}{-1.5in}
+\setlength{\topmargin}{.5in}
+\setlength{\headsep}{.25in}
+\setlength{\footskip}{.25in}
+\addtolength{\textwidth}{-2in}
+\setlength{\oddsidemargin}{1.25in}
+\setlength{\evensidemargin}{.75in}
+\setlength{\marginparwidth}{.5in}
+\setlength{\marginparsep}{.125in}
+%
+\or % set normal margins: 1.5 " left, 1" others (modified 01/27/01)
+%
+\addtolength{\textheight}{-2in}
+\setlength{\topmargin}{0.5in}
+\setlength{\headsep}{0.5in} % reduced by headheight, below
+\setlength{\footskip}{0.5in}
+\addtolength{\textwidth}{-2.5in}
+\setlength{\oddsidemargin}{1.5in}
+\setlength{\evensidemargin}{1in}
+\setlength{\marginparwidth}{.75in}
+\setlength{\marginparsep}{.125in}
+%
+\or % set wide margins: 1.5" left, 1" others, 2"" top (modified 01/14/00)
+%
+\addtolength{\textheight}{-3in}
+\setlength{\topmargin}{1in}
+\setlength{\headsep}{.5in} % reduced by headheight, below
+\setlength{\footskip}{0.5in}
+\addtolength{\textwidth}{-2.5in}
+\setlength{\oddsidemargin}{1.5in}
+\setlength{\evensidemargin}{1in}
+\setlength{\marginparwidth}{.75in}
+\setlength{\marginparsep}{.125in}
+%
+\or % set extra wide margins: 1 1/2"" all around
+%
+\addtolength{\textheight}{-3in}
+\setlength{\topmargin}{1in}
+\setlength{\headsep}{.5in}
+\setlength{\footskip}{.5in}
+\addtolength{\textwidth}{-3in}
+\setlength{\oddsidemargin}{1.5in}
+\setlength{\evensidemargin}{1.5in}
+\setlength{\marginparwidth}{1in}
+\setlength{\marginparsep}{.25in}
+%
+\or % use oldmargin (OLD GT): 1.5" left and top, 1" others (modified 01/27/01)
+%
+\addtolength{\textheight}{-2.5in}
+\setlength{\topmargin}{0.75in}
+\setlength{\headsep}{0.75in} % reduced by headheight, below
+\setlength{\footskip}{0.5in}
+\addtolength{\textwidth}{-2.5in}
+\setlength{\oddsidemargin}{1.5in}
+\setlength{\evensidemargin}{1in}
+\setlength{\marginparwidth}{.75in}
+\setlength{\marginparsep}{.125in}
+%
+\fi%@marginsize
+%
+%% Adjust \headsep to include height of running head.
+%
+\addtolength{\headsep}{-\headheight}
+%
+%% Adjust the vertical spacing between the main text and the notes,
+%% and between successive notes if they are not single-spaced.
+%
+\setlength{\skip\footins}{.75\baselineskip}
+\if@singlespacednotes
+\else
+ \let\oldtextsize=\currenttextsize
+ \footnotesize
+ \setlength{\marginparpush}{\baselineskip}
+ \setlength{\footnotesep}{\baselineskip}
+ \oldtextsize
+\fi % @singlespacednotes
+%
+%% \flushbottom looks silly with lots of extra space between paragraphs
+%% better to put the "extra" space at the bottom of the page!
+%
+\raggedbottom
+%
+%% Default page style.
+%
+\pagestyle{plain}
+\setfrontpagestyle{plain}
+\setbodypagestyle{plain}
+\setbackpagestyle{plain}
+
+%
+%% Number subsubsections
+%
+\setcounter{secnumdepth}{3}
+
+%
+%% Show subsubsections in table of contents
+%% tocdepth is reset to the value in \setchaptertocdepth
+%% at each \chapter{}, or to the value in \setappendixtocdepth
+%% at each \chapter{} after the \appendix command. So, if
+%% you want to change the defaults, use \setchaptertocdepth and
+%% \setappendixtocdepth. To temporarily change depth for the
+%% current section, use a different function: \settocdepth[x].
+%% You should never need to call \setcounter{tocdepth}{..}
+%% directly.
+%%
+%% 0 = chapter only
+%% 1 = chapter + sections
+%% 2 = chapter, section, subsection
+%% 3 = chapter, section, subsection, subsubsection
+%
+\setcounter{tocdepth}{3} % we call setcounter{tocdepth}{} directly here
+ % but user .tex files should not do this.
+% We must insure that the last \setcounter command in the .toc
+% file is NON-ZERO, or the listoffigures and listoftables become
+% empty. Bad news. Unfortunately, that means we must do some
+% raw TeXing here...
+% You would think the \end{postliminary} code would fix this, and it
+% does -- but only if you don't \include your vita. \input{vita}
+% works great because the \end{postliminary} code causes
+% \setcounter{tocdepth}{NONZERO} to be written. But, if you
+% \include{vita} (or whatever the LAST section before \end{postliminary}
+% is) and the \setcounter command from \end{postliminary} does NOT get
+% written to the .aux file. Fooey. This is our workaround.
+% BUT, do NOT remove the one from \end{postliminary}. When
+% \input{vita}, THAT one gets used, and not this one! Clearly,
+% a LaTeX bug.
+\AtEndDocument{%
+ \immediate\write\@auxout%
+ {\string\@writefile{toc}{\string\setcounter{tocdepth}{3}}}
+ \clearpage\lastpage@putlabel}%
+
+\setchaptertocdepth{2}
+\setappendixtocdepth{0}
+
+%% Disallow page breaks at hyphens (this will give some underfull vbox's,
+%% so an alternative is to use \brokenpenalty=100 and manually search
+%% for and fix such page breaks)
+%
+\brokenpenalty=10000
+\InputIfFileExists{gatech-thesis-patch.sty}{}{}
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+%% End of GATECH-THESIS.CLS
+%%
+%% license information is in the COPYING file. The copyright notice
+%% therein applies to the license itself, not to this file: the GNU
+%% PUBLIC LICENSE is copyrighted by the Free Software Foundation.
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%