the fsuthesis classmyweb.fsu.edu/bwhissel/fsulatex/files/fsuthesis.pdfthe version number. any local...
TRANSCRIPT
The fsuthesis Class∗
Bret [email protected]
January 12, 2016
1 Introduction
The fsuthesis class may be used to generate Theses and Dissertations in the for-mat required by the Florida State University Graduate School as described by thedocument Guidelines & Requirements for Electronic Theses, Treatises and Disser-tations, 2015–2016 edition. This class extends the standard LATEX document classreport.cls, adding elements and re-formatting as required to comply with FSU’sstandards.
Official changes to this class file will be reflected in the first two elements ofthe version number. Any local changes to this file may be tracked by incrementingthe third element of the version number (see the \ProvidesClass macro above inthis document’s source code).
Dependencies: In addition to the primary LATEX packages, this class requiresthe external package ifpdf, which ships with most distributions of LATEX.
2 What Has Gone Before
The first FSU LATEX style file was based on macros from Stanford University, mod-ified to comply with FSU standards by Meteorology professor Jon Ahlquist. MimiBurbank, until her retirement from the Supercomputer Computations ResearchInstitute (SCRI), maintained another set of macros for campus-wide use. Subse-quent updates were provided by Wickus Nienaber, a Ph.D. student in ComputerScience, and Jack Tyndall, a staff member with the Graduate School.
Started in 2009, this version is an entirely new re-write by Bret Whissel,presently with the FSU Information Technology Services department’s UnixGroup. Corrections and improvements should be directed to his attention [email protected].
∗This document corresponds to fsuthesis v3.7.0, dated 2016/01/12.
1
3 Option Registration
hardcopy
expanded
chapterleaders
copyright
In addition to the options provided by the standard report class, this class pro-vides four supplemental options: hardcopy, expanded, chapterleaders, andcopyright.
The hardcopy option will increase the size of the margin along the binding-edge. If the standard option twoside is also given, then the binding-edge will beshifted for even and odd pages, and the standard option openright will be forced.
The expanded option increases the spacing of baselines. This requires manysubtle tweaks in standard report definitions, as vertical spacing at chapter headingsand other places becomes irregular and must be accounted for.
The chapterleaders option causes the display of leader dots in the Table ofContents for chapter headings, which would otherwise be suppressed. This couldbe nice for people who request that section/sub-section headings in the ToC besuppressed.
The copyright option includes a copyright notice on the title page of thedocument, using the author’s name and defense year to generate the line.
\if@hardcopy
\if@expanded
\ifch@pleaders
\ifc@pyright
Declaring the document options merely sets appropriate flags, which we definehere. We deal with the options later.
1 \newif\if@hardcopy
2 \newif\if@expanded
3 \newif\ifch@pleaders
4 \newif\ifc@pyright
The rest of this section is boiler-plate for handling the options and passingstandard options on to the report class for handling. The final step is to load thereport class, so that we may continue to override its features here. Then we loadthe ifpdf package since we will need it down the road.
5 \DeclareOption{hardcopy}{\@hardcopytrue}
6 \DeclareOption{expanded}{\@expandedtrue}
7 \DeclareOption{chapterleaders}{\ch@pleaderstrue}
8 \DeclareOption{copyright}{\c@pyrighttrue}
9 \DeclareOption*{\PassOptionsToClass{\CurrentOption}{report}}
10 \ProcessOptions \relax
11 \LoadClass{report}
12 \RequirePackage{ifpdf}
4 Establishing Page Margins
Now we’ll set up page margins that FSU expects. In general, the August 2013Guidelines & Requirements for Electronic Theses, Treatises and Dissertations re-quires that margins be at least 1 inch on all sides.
\headheight
\headsep
We do not use running headers, but should someone turn them on, we set themto appear (illegally) in the area above the page body.
2
13 \setlength{\headheight}{\topskip}
14 \setlength{\headsep}{10pt}
\textheight
\footskip
We set the \textheight to accommodate a fixed number of lines whose heightsare defined by \baselineskip. (This parameter is established by the documentfont size selection.) We want the page body to occupy the entire vertical space,less the top and bottom margins and the space reserved for the pagenumber. TheGuidelines specify a 1/2-inch space between the last line and the page number,so we set \footskip to be in that ballpark to start. Once we’ve established theactual text height, we’ll reset \footskip to absorb any additional space.
15 \setlength{\footskip}{0.35in}
16 \setlength{\@tempdima}{\paperheight}
17 \addtolength{\@tempdima}{-2in}
18 \addtolength{\@tempdima}{-\footskip}
19 \divide\@tempdima\baselineskip
20 \@tempcnta=\@tempdima
21 \setlength\textheight{\@tempcnta\baselineskip}
Now that the text height has been calculated, we fix the \footskip setting totake up the slack.
22 \setlength{\footskip}{\paperheight}
23 \addtolength{\footskip}{-2in}
24 \addtolength{\footskip}{-\textheight}
\topmargin Finally, we set \topmargin now that we’ve fixed the rest of the vertical space.
25 \setlength{\topmargin}{\paperheight}
26 \addtolength{\topmargin}{-2in}
27 \addtolength{\topmargin}{-\headheight}
28 \addtolength{\topmargin}{-\headsep}
29 \addtolength{\topmargin}{-\textheight}
30 \addtolength{\topmargin}{-\footskip}
\textwidth
\oddsidemargin
\evensidemargin
Accounting for the required margins, standard 8.5x11” paper allows a maximumLATEX \textwidth of 6.5 inches. The horizontal margins are derived from thiscolumn width, so with the following code, if a narrower papersize is selected (e.g.,A4), the margins will be narrower.
31 \setlength{\textwidth}{6.5in}
32 \setlength{\@tempdima}{\paperwidth}
33 \addtolength{\@tempdima}{-2in}
34 \addtolength{\@tempdima}{-\textwidth}
35 \divide\@tempdima by2
36 \setlength{\oddsidemargin}{\@tempdima}
37 \setlength{\evensidemargin}{\@tempdima}
3
5 Processing the Document Options
5.1 Handling the hardcopy Option
\evenoddoffset For printing hard copies of a thesis or dissertation, we allow a little extra mar-gin space along the binding edge. The size of this extra space is defined by\evenoddoffset. For two-sided hard copies, we force chapters (and everythingusing that level heading) to begin on right-hand (recto, odd-numbered) pages. Themargin adjustments are added to the \begin{document} hooks, so that the usermay redefine \evenoddoffset in the document preamble. The hardcopy optionwill produce a non-compliant document, but it may be nice for a personal hardcopy.
38 \newlength{\evenoddoffset}
39 \setlength{\evenoddoffset}{0.25in}
40 \if@hardcopy%
41 \AtBeginDocument{\addtolength{\textwidth}{-\evenoddoffset}%
42 \addtolength{\oddsidemargin}{\evenoddoffset}}
43 \if@twoside\@openrighttrue%
44 \AtBeginDocument{\addtolength{\evensidemargin}{-\evenoddoffset}}
45 \else
46 \AtBeginDocument{\addtolength{\evensidemargin}{\evenoddoffset}}\fi
47 \fi
5.2 Handling the chapterleaders Option
This option makes a minor change to the Table of Contents by adding leader dotsfrom the chapter title to the page number. The default LATEX report class doesnot provide leaders on chapter headings, just section and lower heading levels. Ifthe user is writing a paper without subheadings, then the appearance of the Tableof Contents might be improved by including such leader dots.
\l@chapter If the user has requested the chapterleaders document option, \l@chapter isre-defined to provide the leaders as requested.
48 \ifch@pleaders
49 \renewcommand*\l@chapter[2]{%
50 \ifnum \c@tocdepth >\m@ne
51 \addpenalty{-\@highpenalty}%
52 \vskip 1.0em \@plus\p@
53 {\@dottedtocline{0}{0pt}{1.5em}{\bfseries#1}{\bfseries#2}}
54 \fi}
55 \fi
5.3 Handling the expanded Option
Expanded spacing requires a lot of tweaking. The standard report-class mecha-nisms allow a user to redefine \baselinestretch, and then all baseline leading isincreased by this factor. Instead, the expanded spacing environment stretches the\baselineskip by half again as much, but only for the normal font size in the
4
main body of the text. Other environments revert to single-spacing (e.g., the var-ious Tables of Contents in the front matter, table and figure captions, footnotes),and vertical spacing in list environments is also scaled back.
The definitions which follow are only defined if the expanded option has beenselected.
56 \if@expanded
5.3.1 Baseline Parameters
\adjbaselineskip
\blstretchiness
\smblstretchiness
To start, we define the adjustment to \baselineskip to be some fraction of theoriginal \baselineskip. This adjustment is not defined to be a rubber length,since we generally want fixed, predictable baselines while we are in single-spacemode. In expanded spacing mode, however, we can allow a little stretchinesssince we’ve already got some whitespace between lines. We define some baselinestretchiness with \blstretchiness, and a smaller amount of stretchiness with\smblstretchiness.
57 \newlength{\adjbaselineskip}%
58 \setlength{\adjbaselineskip}{0.5\baselineskip}%
59 \def\blstretchiness{0pt plus.4pt minus.3pt}
60 \def\smblstretchiness{0pt plus.3pt minus.2pt}
Note: If tweaking \adjbaselineskip here, be sure to evaluate the \listbaselineskipparameter below as well. It may need to be adjusted if the baselineskip strays toofar from 150%.
\listbaselineskip We use the \listbaselineskip to reset to narrower spacing for list environments(see below). In the ballpark of the 150% expanded baselineskip, a baselineskipreduced to 80% of expanded looks OK.
61 \newlength{\listbaselineskip}%
62 \@tempdima=\baselineskip\advance\@tempdima by\adjbaselineskip
63 \setlength{\listbaselineskip}{0.8\@tempdima}
5.3.2 Redefining \normalsize
\FSU@onormalsize
\normalsize
\expandspacing
We preserve the original definition of \normalsize in \FSU@onormalsize, andthen we redefine \normalsize to call \expandspacing instead. \expandspacingfirst calls the old definition of \normalsize to establish the original baselines.(Otherwise, multiple calls to \expandspacing will generate wider and wider base-line spacings.)
64 \let\FSU@onormalsize=\normalsize%
65 \newcommand{\expandspacing}{\FSU@onormalsize%
66 \addtolength{\baselineskip}{\adjbaselineskip}%
67 \addtolength{\baselineskip}{\blstretchiness}}%
68 \let\normalsize=\expandspacing%
5
5.3.3 Chapter Heading Adjustment
\afterheadadj While in expanded-spacing mode, the first line of text after chapter headings willbe set a little lower than if we were in single-space mode. (We will be in single-space mode for the automatically-generated lists in the front-matter, for example,while most of the other chapter-level sections will be in expanded-spacing mode.)To compensate, we should call the macro \afterheadadj to remove extra verticalspace when we go into expanded-spacing mode after chapter headings.
69 \newcommand{\afterheadadj}{\addvspace{-\adjbaselineskip}}%
5.3.4 Adjustments to the \list Environments
In expanded-spacing mode, most of the \list environments look pretty bad if leftwith the standard expanded baselines. We attempt to compensate by reducing theamount of baseline skip while in list mode. We accomplish this by first calling thestandard list startup machinery, and then reducing the baseline skip and baselinestretchiness.
\f@olist
\list
We preserve the regular function of the \list command in the macro \f@olist,and then we redefine \list to scale back the standard expanded spacing inthe list environments. The \baselineskip adjustment occurs only in theouter-most \list environment. (All inner \lists will share the same reduced\baselineskip.)
70 \let\f@olist=\list
71 \def\list#1#2{%
72 \f@olist{#1}{#2}
73 \ifnum\@listdepth=1
74 \setlength{\baselineskip}{\listbaselineskip}
75 \addtolength{\baselineskip}{\smblstretchiness}
76 \fi
77 }
\f@oendlist
\endlist
After our mutation of \list, we undo our damage here by re-defining \endlist
to restore expanded spacing at the close of the outer-most \list environment.
78 \let\f@oendlist=\endlist
79 \def\endlist{%
80 \f@oendlist
81 \ifnum\@listdepth=0 \normalsize \fi
82 }
verbatim
verbatim*
A verbatim environment looks awkward with expanded spacing, so we re-definethe environment to revert to standard spacing here. We handle both the standardand starred versions. (These definitions are borrowed from the LATEX code andmodified.)
83 \let\f@overbat=\verbatim
84 \expandafter\let\expandafter\f@overbats
85 \expandafter=\csname endverbatim*\endcsname
86 \let\f@oendverb=\endverbatim
6
87 \def\verbatim{\par\FSU@onormalsize\f@overbat}
88 \def\endverbatim{\f@oendverb\afterheadadj}
89 \@namedef{verbatim*}{\par\FSU@onormalsize\@verbatim\@sxverbatim}
90 \expandafter\let\csname endverbatim*\endcsname =\endverbatim
5.3.5 Fallback Definitions
We allow our redefinitions to be NO-OPs if the expanded document option hasnot been selected. (Some of our later macro definitions attempt to call a few ofthe macros above without testing \if@expanded.)
91 \else
92 \let\expandspacing=\relax
93 \let\FSU@onormalsize=\relax
94 \let\afterheadadj=\relax
95 \let\f@olist=\list
96 \let\f@oendlist=\endlist
97 \fi
98 \FSU@onormalsize
singlespaced There may be times when it is necessary to provide single-spacing while inexpanded mode. This environment provides that. If not in expanded mode, itbecomes a normal paragraph.
99 \newenvironment{singlespaced}
100 {\par\if@expanded\FSU@onormalsize\addvspace{\adjbaselineskip}\fi}{\par}
6 Testing the Presence of hyperref
\if@hyperloaded We may want to enhance the behavior of a few of our macros if the hyperref packagehas been loaded. We cannot test for package loading after begin{document}, andthe user’s \usepackage{hyperref} will have occurred after this file has beenloaded. So what we can do is create a new test here and have it initialized in the\begin{document} hooks. This test is used to add PDF bookmarks to the titlepage and to the table of contents page (if hyperref has been loaded).
101 \newif\if@hyperloaded
102 \AtBeginDocument{\@ifpackageloaded{hyperref}
103 {\@hyperloadedtrue}{\@hyperloadedfalse}}
7 Definition of Title Page Macros
7.1 Token Storage
\@degree
\@department
\@college
\@degreeyear
\@defensedate
\@manuscripttype
These definitions should be redefined within the document’s preamble, set to sanevalues using the corresponding macros in the next section.
104 \gdef\@degree{\ClassError{fsuthesis}%
105 {No \protect\degree\space given}%
106 {You must provide a \protect\degree{Degree Name}%
7
107 \space command}}
108 \gdef\@department{\ClassError{fsuthesis}%
109 {No \protect\department\space given}%
110 {You must provide a \protect\department{Name of Department}%
111 \space command}}
112 \gdef\@college{\ClassError{fsuthesis}%
113 {No \protect\college\space given}%
114 {You must provide a \protect\college{My College or School}%
115 \space command}}
116 \gdef\@degreeyear{\ClassError{fsuthesis}%
117 {No \protect\degreeyear\space given}%
118 {You must provide a \protect\degreeyear{20NN}\space command}}
119 \gdef\@defensedate{\ClassError{fsuthesis}%
120 {No \protect\defensedate\space given}%
121 {You must provide a \protect\defensedate{Month dd, 20NN}%
122 \space command}}
123 \gdef\@manuscripttype{\ClassError{fsuthesis}%
124 {No \protect\manuscripttype\space given}%
125 {You must provide a \protect\manuscripttype{Dissertation}%
126 \space command}}
7.2 Title Page Token-Setting Macros
\degree
\department
\college
\degreeyear
\defensedate
\manuscripttype
\semester
\if@department
These macros redefine the corresponding tokens described above. These shouldall be redefined within the preamble section of the thesis or dissertation, withthe exception of \department, which may not be appropriate in some Schools orColleges.
127 \newif\if@department
128 \newcommand*{\degree}[1]{\gdef\@degree{#1}}
129 \newcommand*{\department}[1]{\gdef\@department{#1}\@departmenttrue}
130 \newcommand*{\college}[1]{\gdef\@college{#1}}
131 \newcommand*{\degreeyear}[1]{\gdef\@degreeyear{#1}}
132 \newcommand*{\defensedate}[1]{\gdef\@defensedate{#1}}
133 \newcommand*{\manuscripttype}[1]{\gdef\@manuscripttype{#1}}
134 \newcommand*{\semester}[1]{}
7.3 Title Page Generation
\maketitle This macro generates the title page by expanding a few of the macros that shouldhave been specified in the thesis document’s preamble. No page number is writ-ten on the title page, but the page should occupy all the vertical space (withinthe margins), including the space normally occupied by the page number. Thewhole page is enclosed in a centering environment, within the LATEX report class’stitlepage environment.
If the hyperref package has been loaded, we first add a PDF bookmark tothe title page for convenience. Then the pagebody is expanded vertically bythe amount \footskip. Next we restore single-spacing with \FSU@onormalsize.(We’ll double-space manually by inserting \baselineskips where necessary.) We
8
use \vfills to distribute vertical white space evenly across the page. We don’tknow how long the user’s title is, and we’ll let LATEX decide how best to break thetitle into multiple lines. However, the title should be double-spaced, so we double\baselineskip before processing the title. This adds one extra blank line beforethe title, so we compensate by \vskiping a negative \baselineskip first.
135 \renewcommand{\maketitle}{\begin{titlepage}%
136 \ifpdf\if@hyperloaded\pdfbookmark[0]{Title Page}{MainTitlePage}\fi\fi
137 \enlargethispage{\footskip}%
138 \begin{center}%
139 \FSU@onormalsize FLORIDA STATE UNIVERSITY
140 \vskip\baselineskip
141 \MakeUppercase{\@college}%
142 \vfill
143 \vskip-\baselineskip
144 {\addtolength{\baselineskip}{\baselineskip}%
145 \MakeUppercase{\@title}\vfill}
146 By
147 \vskip\baselineskip
148 \MakeUppercase{\@author}
149 \vfill
150 A \@manuscripttype{} submitted to the\\
151 \if@department\@department\else\@college\fi\\
152 in partial fulfillment of the\\
153 requirements for the degree of\\
154 \@degree
155 \vfill
156 \@degreeyear%
157 \vfill
158 \ifc@pyright%
159 Copyright \copyright\ \@degreeyear\ \@author. All Rights Reserved.\fi%
160 \pagebreak[4]
161 \end{center}
162 \end{titlepage}
163 }
8 Definition of Committee Membership Page Macros
8.1 Committee Membership Page Definitions
\commwidth
\commskip
These macros control the width of the committee member column and the verticalspace between members. The \commwidth length determines the width of thename column. Names and titles are set flush-left within this column, but thecolumn itself is set flush-right on the page. Therefore, increasing the width herewill move the start of the column to the left.
We allow plenty of vertical stretchiness between entries as defined here in the\commskip parameter, and significant shrink capacity as well. With this arrange-
9
ment we can accommodate three to ten committee members without stressing thepage design significantly.
164 \newlength{\commwidth}
165 \setlength{\commwidth}{4in}
166 \newlength{\commskip}
167 \setlength{\commskip}{0.5in plus0.25fil minus.3in}
\committeeperson Theses/Dissertations require listing the student’s graduate committee. Commit-tee members are added to the page by means of the \committeeperson macro. Itworks by expanding and re-defining the \@thecmems macro with additional argu-ments each time it is called. The committee page then inserts the macro’s text asis. I use \expandafter here since I just want one level of expansion rather thanthe complete-to-the-core expansion of \xdef. We account for the extra \vskip atthe top of the column later.
168 \gdef\@thecmems{}
169 \newcommand{\committeeperson}[2]{%
170 \expandafter\gdef\expandafter\@thecmems\expandafter{%
171 \@thecmems\vskip\commskip\makebox[\commwidth][l]{#1}\\
172 \makebox[\commwidth][l]{#2}}}
8.2 Committee Page Generation
\makecommitteepage This macro inserts the boiler-plate text into a committee page. For the text atthe top of the page, we first test whether the author and defense date informationcan fit on one line. If it can, we eject the line as is and start a new paragraphfor the supervisory committee line. If it won’t fit (because the author’s nameis exceedingly long), then allow the supervisory committee line to join with theprevious line in a single paragraph.
When the \@thecmems macro was created, it included a \vskip before the thefirst committee member. Before we expand the \@thecmems macro, we \vskip
backwards so that we have tighter control over the spacing balance here. (It’s easierthan inserting extra logic in the \expandafter series in the \committeeperson
macro.)
173 \newcommand{\makecommitteepage}{\FSU@onormalsize\setcounter{page}{2}%
174 \if@openright\cleardoublepage\else\clearpage\fi%
175 {%\addtolength{\baselineskip}{0.5\baselineskip}%
176 \setbox\@tempboxa=\hbox{\@author{} defended this
177 \MakeLowercase{\@manuscripttype} on \mbox{\@defensedate}.}
178 \ifdim\wd\@tempboxa>\textwidth\raggedright\noindent\unhbox\@tempboxa{} \else
179 \noindent\unhbox\@tempboxa\par\fi
180 \noindent The members of the supervisory committee were:\par}
181 \vfil\begin{flushright}\vskip-\commskip%
182 \addtolength{\baselineskip}{0.4\baselineskip}\@thecmems\end{flushright}\vfil
183 \vskip\baselineskip
184 {%\addtolength{\baselineskip}{0.5\baselineskip}
185 \noindent
186 The Graduate School has verified and approved the
10
187 above-named committee members, and certifies that the
188 \MakeLowercase{\@manuscripttype} has been approved in accordance
189 with university requirements.\par}\vfil\pagebreak[4]}
9 Setting PDF Metadata
\@subject
\@keywords
\subject
\keywords
\if@subject
\if@keywords
Whether or not the user is aware of it, the PDF programs, drivers, and converterswill set some document metadata in the output, such as document title, author,etc. If these are not set explicitly, then they could be set to some unknown values.Here we attempt to provide some adequate defaults. To start, we define a fewextra macros which the user can use to enhance the metadata inserted into thedocument.
190 \gdef\@subject{}
191 \gdef\@keywords{}
192 \newif\if@subject
193 \newif\if@keywords
194 \newcommand*{\subject}[1]{\gdef\@subject{#1}\@subjecttrue}
195 \newcommand*{\keywords}[1]{\gdef\@keywords{#1}\@keywordstrue}
\@pdfmetadata
\@hypermetadata
We must provide two different methods for setting metadata, since the hyperrefpackage will ignore the PDF information keywords. Execution is deferred untilthe begin{document}, so all the required information should be available. Notethat the hyperref package will convert many accented or special characters in the\@title and \@author strings (but not all) so that they may be properly includedas PDF metadata. Without hyperref, the \@author and \@title will probably notproduce reliable results if they contain non-ASCII characters. (The same caveatsapply to the \@subject and \@keywords strings.)
196 \def\@pdfmetadata{{\def\protect{}\def\\{ }%
197 \edef\@litstr{/Title (\@title) /Author (\@author)}%
198 \if@subject\edef\@litstr{\@litstr /Subject (\@subject)}\fi%
199 \if@keywords\edef\@litstr{\@litstr /Keywords (\@keywords)}\fi%
200 \expandafter\pdfinfo\expandafter{\@litstr}}}
201 \def\@hypermetadata{{\def\\{ }\edef\@nt{\@title}%
202 \hypersetup{pdftitle={\@nt},pdfauthor={\@author}}%
203 \if@subject\hypersetup{pdfsubject={\@subject}}\fi%
204 \if@keywords\hypersetup{pdfkeywords={\@keywords}}\fi}}
205 \AtBeginDocument{\ifpdf\if@hyperloaded\@hypermetadata\else\@pdfmetadata\fi\fi}
10 Document Sections
\frontmatter
\mainmatter
Borrowing from the book class, we add these two macros for helping to distinguishbetween front matter material and the body of the document. All page numbersare in small roman numerals for the front matter text; starting with the openingof the first chapter, pages are numbered starting with the arabic numeral “1”.
206 \newcommand{\frontmatter}{\pagenumbering{roman}}
207 \newcommand{\mainmatter}{%
11
208 \if@openright\cleardoublepage\else\clearpage\fi%
209 \expandspacing\pagenumbering{arabic}}
11 Special Names
\acknowledgename
\biosketchname
\contentsname
\listabbrevname
\listmusexname
\listsymname
\musexname
\appendixtocname
Here we (re)define heading names for special pages. In addition, a new \musexname
macro is created for labeling the captions of musical examples. Other standardreport macros defining heading names are listed here in commented-out form forreference. (Their default settings will be used unless overridden here or in theuser’s document preamble.)
210 %\renewcommand*{\abstractname}{}
211 \newcommand*{\acknowledgename}{Acknowledgments}
212 %\renewcommand*{\bibname}{}
213 \newcommand*{\biosketchname}{Biographical Sketch}
214 \renewcommand*{\contentsname}{Table of Contents}
215 \newcommand*{\listabbrevname}{List of Abbreviations}
216 %\renewcommand*{\listfigurename}{}
217 %\renewcommand*{\listtablename}{}
218 \newcommand*{\listmusexname}{List of Musical Examples}
219 \newcommand*{\listsymname}{List of Symbols}
220 \newcommand*{\musexname}{Example}
221 \newcommand*{\appendixtocname}{Appendix}
12 Front Matter Environments
dedication
acknowledgments
The dedication page has no heading. Whatever text the user may provide willbe placed about 1/3rd of the way down the page. The acknowledgments page isformatted as a chapter heading page (without a chapter number). These pagesare not listed the table of contents.
222 \newenvironment{dedication}%
223 {\if@openright\cleardoublepage\else\clearpage\fi\mbox{}\vfill}
224 {\vfill\vfill\vskip1in\mbox{}\pagebreak[4]}
225 \newenvironment{acknowledgments}%
226 {\chapter*{\acknowledgename}\normalsize\afterheadadj}
227 {\clearpage\FSU@onormalsize}
listofsymbols
listofabbrevs
Lists of Symbols or Abbreviations are not required, but if a user does include them,they have chapter-style headings, and they are included in the table of contentsusing the frontmatter classification. These pages are set to be single-spaced, asthey are likely to contain tabular material.
228 \newenvironment{listofsymbols}
229 {\chapter*{\listsymname}\FSU@onormalsize%
230 \addcontentsline{toc}{frontmatter}{\listsymname}}
231 {\clearpage}
232 \newenvironment{listofabbrevs}
233 {\chapter*{\listabbrevname}\FSU@onormalsize%
12
234 \addcontentsline{toc}{frontmatter}{\listabbrevname}}
235 {\clearpage}
abstract The abstract environment is set to be in expanded spacing (if requested bydocument option), and an entry is added to the ToC using the frontmatter
style.
236 \renewenvironment{abstract}%
237 {\chapter*{\abstractname}\normalsize\afterheadadj%
238 \addcontentsline{toc}{frontmatter}{\abstractname}}
239 {\clearpage\FSU@onormalsize}
13 Additional Front Matter Formatting
\@dottedtocline
\listspenalty
The FSU Guidelines require that table, figure, and musical example captionsbe listed in their entirety in the front matter of the document. Some of thecaptions can be quite lengthy. By default, LATEX wants to keep an entire captionon one page, rather than letting it be split between pages if necessary. This canlead to very bad spacing on the List of. . . pages. This behavior is containedwithin LATEX’s \@dottedtocline macro by setting \interlinepenalty=10000.We redefine this macro here so that we can set \interlinepenalty to a value ofour own choosing. In addition, the original \@dottedtocline macro created anoverfull hbox if the page number exceeded the default \@pnumwidth value. Forthose rare occasions when the page number width might exceed this value, weallow the page numbers to consume an extra dot if necessary.
240 \newcount\listspenalty
241 \listspenalty=200
242 \def\@dottedtocline#1#2#3#4#5{%
243 \ifnum #1>\c@tocdepth \else
244 \vskip \z@ \@plus.2\p@
245 {\leftskip #2\relax \rightskip \@tocrmarg \parfillskip -\rightskip
246 \parindent #2\relax\@afterindenttrue
247 \interlinepenalty=\listspenalty
248 \leavevmode \@tempdima #3\relax
249 \advance\leftskip \@tempdima \null\nobreak\hskip -\leftskip
250 {#4}\nobreak \leaders\hbox{$\m@th
251 \mkern \@dotsep mu\hbox{.}\mkern \@dotsep
252 mu$}\hfill \nobreak%
253 \setbox\@tempboxa=\hbox{\normalfont\normalcolor #5}%
254 \ifdim\@pnumwidth<\wd\@tempboxa \hbox{\normalfont\normalcolor #5}%
255 \else \hb@xt@\@pnumwidth{\hfil\normalfont\normalcolor #5}\fi%
256 \setbox\@tempboxa\null
257 \par}%
258 \fi}
\tableofcontents If the hyperref package has been loaded, it would be nice to have a PDF bookmarkto the table of contents page. We need to redefine the original \tableofcontents
13
in order to add that functionality. We also set the \listspenalty to retain thedefault LATEX behavior of preventing entries from being split between pages.
259 \renewcommand{\tableofcontents}{
260 \if@twocolumn\@restonecoltrue\onecolumn\else\@restonecolfalse\fi
261 \chapter*{\contentsname
262 \@mkboth{\MakeUppercase\contentsname}{\MakeUppercase\contentsname}}%
263 \ifpdf\if@hyperloaded\pdfbookmark[0]{Table of Contents}{contents}\fi\fi
264 {\listspenalty=10000\@starttoc{toc}\if@restonecol\twocolumn\fi}%
265 }
\iffront@dded
\l@frontmatter
This macro specifies how frontmatter entries in the Table of Contents appear.Each entry is separated by a little vertical space, with leader dots to the pagenumber.
266 \newif\iffront@dded
267 \newcommand*\l@frontmatter{%
268 \iffront@dded\addvspace{1ex \@plus\p@}\else\front@ddedtrue\fi
269 \@dottedtocline{0}{0pt}{0pt}}
\toclevel@frontmatter For setting up bookmarks, the hyperref package wants to know what level of thehierarchy various sections of the Table of Contents are. We can hide the frontmatter entries behind the Table of Contents entry by setting the frontmatter ToClevel to 1 here.
270 \def\toclevel@frontmatter{1}
\ifb@ckadded
\l@backmatter
The “back matter” of the document consists of the References/Bibliography sec-tion and the Biographical Sketch. Since we’re approaching the end of the table ofcontents, there is a potential to have a single entry at the top of one page. Wetry to discourage this by increasing the penalty between the leading and trailingbackmatter items.
271 \newif\ifb@ckadded
272 \newcommand*\l@backmatter{%
273 \ifb@ckadded\addpenalty{\@highpenalty}\addvspace{1ex \@plus\p@}%
274 \addpenalty{\@highpenalty}%
275 \else\b@ckaddedtrue\addpenalty{0}\addvspace{1em \@plus\p@}\fi%
276 \@dottedtocline{0}{0pt}{0pt}}
\toclevel@backmatter As for the frontmatter handling for the hyperref package, we need to define theheading level of the backmatter items for bookmarks.
277 \def\toclevel@backmatter{0}
\l@figure
\l@table
Figure and table captions are listed with a single space between each of them.Since table and figure captions have the same format, the \l@table macro is\let from the \l@figure macro.
278 \renewcommand*\l@figure{%
279 \addvspace{10pt}%
280 \@dottedtocline{0}{0pt}{3.2em}}
281 \let\l@table\l@figure
14
\FSU@lofsomething Since the List of Figures, List of Tables, and List of Musical Examples all havesimilar function, the common elements are gathered in this one definition. (Thiscode is borrowed and modified from the report class.)
282 \newcommand{\FSU@lofsomething}[2]{\FSU@onormalsize%
283 \if@twocolumn\@restonecoltrue\onecolumn\else\@restonecolfalse\fi
284 \chapter*{#1}%
285 \addvspace{-10pt}
286 \addcontentsline{toc}{frontmatter}{#1}%
287 \@mkboth{\MakeUppercase{#1}}{\MakeUppercase{#1}}
288 \@starttoc{#2}%
289 \if@restonecol\twocolumn\fi
290 }
\listoftables
\listoffigures
\listofmusex
All the hard stuff is done. Now we just define these macros in terms of\FSUl@fsomething.
291 \renewcommand{\listoftables}{%
292 \FSU@lofsomething{\listtablename}{lot}}
293 \renewcommand{\listoffigures}{%
294 \FSU@lofsomething{\listfigurename}{lof}}
295 \newcommand{\listofmusex}{%
296 \FSU@lofsomething{\listmusexname}{lom}}
14 Musical Example Indexing
Here we establish some boiler-plate stuff to hook into the standard LATEX mecha-nisms for table and figure captions, adding a List of Musical Examples capabilityand new environments for their captioning. Musical example captions will be writ-ten to a .lom file. The hyperref package, should it be loaded later by the user,expects an additional labeling macro called \theHmusex to be defined.
297 \let\l@musex\l@figure
298 \newcounter{musex}[chapter]
299 \renewcommand{\themusex}%
300 {\ifnum\c@chapter>\z@\thechapter.\fi\@arabic\c@musex}
301 \newcommand{\theHmusex}%
302 {\ifnum\c@chapter>\z@\thechapter.\fi\@arabic\c@musex}
303 \def\fps@musex{tbp}
304 \def\ftype@musex{1}
305 \def\ext@musex{lom}
306 \def\fnum@musex{\musexname\nobreakspace\themusex}
musex
musex*
These work just like the figure environments.
307 \newenvironment{musex}%
308 {\@float{musex}}
309 {\end@float}
310 \newenvironment{musex*}%
311 {\@dblfloat{musex}}
312 {\end@dblfloat}
15
15 End Matter Formatting
\refitemsep
\refindent
A new length parameter \refitemsep is created to define the vertical space thatseparates individual bibliographic entries. This is calculated from the default\baselineskip for the selected point size, with a little bit of stretchiness added.\refindent adjusts the hanging indentation.
313 \newskip{\refitemsep}
314 \newskip{\refindent}
315 {\FSU@onormalsize%
316 \global\setlength{\refitemsep}{\baselineskip}
317 \global\addtolength{\refitemsep}{0pt plus3pt minus0.2pt}}
318 \setlength{\refindent}{2.5em}
references This environment is intended for user-generated formatting of a reference list orbibliography, i.e., non-BibTEX. It establishes single-spaced lines with a blank linebetween entries, and the first line of each entry is exdented. The page headingis determined by the current definition of \bibname, not the environment, so theuser must invoke \renewcommand*{\bibname}{References} in order to changethe name of this section.
319 \newenvironment{references}
320 {\chapter*{\bibname}\FSU@onormalsize%
321 \interlinepenalty=10000\sloppy
322 \addvspace{-\baselineskip} \@afterindenttrue%
323 \addcontentsline{toc}{backmatter}{\bibname}%
324 \setlength{\leftskip}{\refindent}%
325 \setlength{\parindent}{-\refindent}%
326 \setlength{\parskip}{\refitemsep}}
327 {\clearpage}
thebibliography This is a re-definition of a BibTEX-generated bibliography. We have to be be sureto turn off expanded spacing (if it had been requested), and add an entry to theToC.
328 \renewenvironment{thebibliography}[1]
329 {\chapter*{\bibname}\FSU@onormalsize%
330 \addcontentsline{toc}{backmatter}{\bibname}%
331 \@mkboth{\MakeUppercase\bibname}{\MakeUppercase\bibname}%
332 \f@olist{\@biblabel{\@arabic\c@enumiv}}%
333 {\settowidth\labelwidth{\@biblabel{#1}}%
334 \leftmargin\labelwidth
335 \advance\leftmargin\labelsep
336 \@openbib@code
337 \usecounter{enumiv}%
338 \let\p@enumiv\@empty
339 \setlength{\itemsep}{\refitemsep}
340 \setlength{\parsep}{0pt}
341 \renewcommand\theenumiv{\@arabic\c@enumiv}}%
342 \interlinepenalty=10000
343 \sloppy
16
344 \clubpenalty4000
345 \@clubpenalty \clubpenalty
346 \widowpenalty4000%
347 \sfcode‘\.\@m}
348 {\def\@noitemerr
349 {\@latex@warning{Empty ‘thebibliography’ environment}}%
350 \f@oendlist}
15.1 Accommodating natbib and apacite
Packages natbib and apacite overwrite our redifinition of the standard LATEXthebibliography environment, so we must accommodate them specially. Fur-ther, the apacite package may optionally import the natbib package, so we haveto be careful about what we “fix” and under which conditions here. Becausethese packages will be loaded after this class has been loaded, we must defer ourcorrections until the preamble has been processed, so once again, we rely on the\AtBeginDocument hook.
\f@plainnat
\bibsection
\bibpreamble
\bibpostamble
We’ll start with the plain natbib corrections. We can accommodate this package byadding definitions to natbib’s \bibsection. There, we’ll set the proper chapterheading, make an addition to the Table of Contents, and reset to single line-spacing. We’ll also add definitions to natbib’s \bibpreamble macro so that wecan re-instate the standard LATEX list environment, and then restore our ownversion again by supplementing the definition of \bibpostamble.
351 \def\f@plainnat{%
352 \setlength{\bibsep}{\refitemsep}
353 \setlength{\bibhang}{\refindent}
354 \renewcommand\bibsection{\chapter*{\bibname}\FSU@onormalsize%
355 \addcontentsline{toc}{backmatter}{\bibname}%
356 \let\f@oldpre=\bibpreamble\let\f@oldpost=\bibpostamble%
357 \renewcommand\bibpreamble{\f@oldpre\interlinepenalty=10000
358 \if@expanded\let\f@savenlist=\list\let\list=\f@olist\fi}%
359 \renewcommand\bibpostamble{%
360 \if@expanded\let\list=\f@savenlist\fi\f@oldpost}}}
\f@apacite Package apacite has more machinery to adjust, but again, we need to re-instate theLATEX default behavior for line spacing and lists for when we may be in expanded
mode. We have to make different adjustments if the natbibapa package optionhas been specified.
361 \def\f@apacite{%
362 \renewcommand{\bibliographytypesize}{\FSU@onormalsize%
363 \interlinepenalty=10000
364 \if@expanded\let\f@savenlist=\list\let\list=\f@olist\fi}%
365 \@ifpackageloaded{natbib}%
366 {\renewcommand\bibsection{\chapter*{\bibname}
367 \addcontentsline{toc}{backmatter}{\bibname}}
368 \setlength{\bibsep}{\refitemsep}%
369 \setlength{\bibhang}{\refindent}}%
17
370 {\setlength{\bibitemsep}{\refitemsep}%
371 \setlength{\bibleftmargin}{\refindent}%
372 \setlength{\bibindent}{-\refindent}%
373 \renewcommand{\st@rtbibchapter}{\chapter*{\bibname}%
374 \addcontentsline{toc}{backmatter}{\bibname}}}}
Notes for future consideration: perhaps the changes to the list environmentshould be made a part of the \FSU@onormalsize and \normalsize definitions, sothat these become effective whenever we enter or leave expanded mode typesetting.Or perhaps our own list environment can just be made sensitive to the currentstate of \FSU@onormalsize/\normalsize.
Now we enfold the corrections into the \AtBeginDocument hook.
375 \AtBeginDocument{\@ifpackageloaded{apacite}{\f@apacite}%
376 {\@ifpackageloaded{natbib}{\f@plainnat}{}}}
biosketch The final page of a thesis or dissertation is the Biographical Sketch. It will be setin expanded spacing (if that document option has been requested).
377 \newenvironment{biosketch}
378 {\chapter*{\biosketchname}\normalsize\afterheadadj%
379 \addcontentsline{toc}{backmatter}{\biosketchname}}
380 {\clearpage\FSU@onormalsize}
16 Sectioning Command Formatting
\chapheadskip The amount of vertical space from the top of the text body area to the top of thechapter heading is defined here by \chapheadskip. This value is set here to be0 inches from the top of the page. If the chapter heading font is changed, this codewill need adjustment.
381 \newlength{\chapheadskip}
382 \sbox\@tempboxa{\LARGE\bfseries CHAPTER}
383 \setlength{\chapheadskip}{0in}
384 \addtolength{\chapheadskip}{-\ht\@tempboxa}
\@makechapterhead
\@makeschapterhead
Chapter headings are upper-case, centered, LARGE, and bold. Starred chapterheadings omit the ’Chapter/Appendix’ label, and this is used for all the non-chapter page headings in the format.
385 \def\@makechapterhead#1{%
386 \hrule height0pt depth0pt width0pt\vskip\chapheadskip%
387 {\centering\parindent=0pt\LARGE\bfseries%
388 \ifnum\c@secnumdepth >\m@ne%
389 \MakeUppercase{\@chapapp}\space\thechapter\par
390 \nobreak\vskip20pt\fi%
391 \interlinepenalty\@M%
392 \MakeUppercase{#1}\par\nobreak\addvspace{40pt}
393 }
394 }
395 \def\@makeschapterhead#1{%
18
396 \hrule height0pt depth0pt width0pt\vskip\chapheadskip%
397 {\centering\parindent=0pt\LARGE\bfseries%
398 \interlinepenalty\@M%
399 \MakeUppercase{#1}\par\nobreak\addvspace{40pt}
400 }
401 }
\section
\subsection
Chapter sections have centered headings. Subsections are flush left.
402 \renewcommand{\section}{\@startsection{section}{1}{0pt}%
403 {4.0ex plus1ex minus0.3ex}%
404 {2.0ex plus0.3ex minus0.2ex}%
405 {\normalfont\centering\Large\bfseries}}
406 \renewcommand{\subsection}{\@startsection{subsection}{2}{0pt}%
407 {3ex plus.8ex minus0.1ex}%
408 {1.25ex plus0.1ex minus.1ex}%
409 {\normalfont\raggedright\large\bfseries}}
\subsubsection
\paragraph
\subparagraph
These sectioning commands produce in-line headings, and they must end with aperiod. Rather than relying on the user to consistently provide the period andto remain consistent with other sectioning commands, these macros are re-definedto take an additional argument (i.e., the heading text). This text is normallyabsorbed by the \@startsection macro, so instead we can tack a period onto theend of the text when we pass control to \@startsection. The downside of thecurrent implementation is that we lose the ability to apply optional arguments forthese three sectioning commands.
410 \renewcommand{\subsubsection}[1]%
411 {\@startsection{subsubsection}{3}{\parindent}%
412 {1ex plus.5ex minus0.1ex}%
413 {-1em}%
414 {\normalfont\bfseries}{#1.}}
415 \renewcommand{\paragraph}[1]%
416 {\@startsection{paragraph}{4}{\parindent}%
417 {1ex plus.5ex minus0.1ex}%
418 {-0.75em}%
419 {\normalfont\scshape}{#1.}}
420 \renewcommand{\subparagraph}[1]%
421 {\@startsection{subparagraph}{5}{\parindent}%
422 {0pt}{-0.5em}{\normalfont\itshape}{#1.}}
16.1 Appendix Handling
\appendix FSU likes to have the document appendices labeled as such in the ToC. To accom-modate this, we create the \appendixtocname macro (see the “Special Names”section). We also add extra code to the default \appendix macro here to insertan entry into the table of contents using a new “appendix” class.
For the sake of correct PDF bookmarks, hyperref needs a little assistance inthis case (because we are creating a bogus heading). We force the current hyper-
19
link to point to what we suppose will be the first appendix page before calling\addcontentsline.
423 \let\f@ldappendix=\appendix
424 \gdef\appendix{\f@ldappendix
425 \if@hyperloaded\def\@currentHref{appendix.A}\fi
426 \addcontentsline{toc}{appendix}{\appendixtocname}}
\l@appendix We’ve just defined a new appendix ToC class, so now we need to provide for itsformat in the ToC. The format below is modified from the default report class\l@chapter definition. It would be the same except that we don’t need pagenumbers, and we want to insert a high penalty after the heading and reduce thevertical space so that it will be attached to the next appendix line should the ToCneed to be broken over pages. I have inserted a rather large penalty before theheading to encourage a break there, allowing for the appendix heading and anyappendices to float to the next page, along with the back matter material.
427 \newcommand*\l@appendix[2]{%
428 \ifnum \c@tocdepth >\m@ne
429 \addpenalty{-2000}\vskip 1.0em \@plus\p@%
430 \setlength\@tempdima{1.5em}%
431 \begingroup
432 \parindent \z@ \leavevmode \bfseries
433 \advance\leftskip\@tempdima \hskip -\leftskip
434 #1\nobreak\hfil \par
435 \penalty\@highpenalty\vskip -0.35em\penalty\@highpenalty
436 \endgroup
437 \fi}
\toclevel@appendix Set the bookmark level for the appendix heading.
438 \def\toclevel@appendix{0}
17 Tweaking Captions
\fcapindent
\belowcaptionskip
The default report class sets captions with the same margins as the rest of the pagebody. Instead, we narrow the caption column by the amount \fcapindent. Thevertical space below a caption is set by report to be 0 points, but since captionsabove tables need some space, we set the value to 10 points here.
439 \newlength{\fcapindent}
440 \setlength{\fcapindent}{2em}
441 \setlength{\belowcaptionskip}{10\p@}
\@makecaption We narrow the caption column by adjusting \leftskip and \rightskip. We alsoset the text in single-space mode if expanded spacing has been requested. (Small,single-line captions remain centered, as in the default report class.)
442 \long\def\@makecaption#1#2{%
443 \vskip\abovecaptionskip%
444 \sbox\@tempboxa{#1: #2}%
445 \ifdim \wd\@tempboxa >\hsize
20
446 {\advance\leftskip\fcapindent \rightskip=\leftskip\relax%
447 \FSU@onormalsize%
448 #1: #2\par}
449 \else
450 \global \@minipagefalse
451 \hb@xt@\hsize{\hfil\box\@tempboxa\hfil}%
452 \fi
453 \vskip\belowcaptionskip}
21
Change History
v2.0.0General: Initial release of new de-
sign. . . . . . . . . . . . . . . . . . . . . 1v2.1.0
\maketitle: Fixed titling with ac-cented/foreign characters. . . . . 8
v2.2.0\maketitle: Fixed distribution of
vertical spacing. . . . . . . . . . . . 8v2.3.0
dedication: if openright, forcerecto . . . . . . . . . . . . . . . . . . 12
\if@hyperloaded: Added test forhyperref . . . . . . . . . . . . . . . . . 7
\makecommitteepage: if openright,force recto . . . . . . . . . . . . . . 10
\maketitle: Added pdfbookmark
to title page. . . . . . . . . . . . . . . 8\tableofcontents: Redefined from
report class to add pdfbookmark
for table of contents . . . . . . . 13v3.0.0
General: Added ifpdf package . . . . 2Added definitions for \@subject
and \@keywords . . . . . . . . . . . 7Change to FSU Guidelinesbumps major version number;Enhanced PDF metadata. . . . . 1
\committeeperson: Removed sig-nature lines for new ETD for-mat. . . . . . . . . . . . . . . . . . . . 10
\commskip: Renamed width andskip, removing reference to sig-natures. . . . . . . . . . . . . . . . . . 9
\if@keywords: Explicitly set PDFmetadata. . . . . . . . . . . . . . . . 11
\makecommitteepage: changedfrom “Signature Page” to“Committee Page”, removingsignature lines and college-levelapprovals. . . . . . . . . . . . . . . . 10
v3.1.0General: Improve handling of long
table and figure captions. . . . . 1\listspenalty: Added new
penalty item to allow long cap-tions to be split between pages 13
\tableofcontents: Prevent entriesfrom being split between pages,restoring default LATEX behav-ior . . . . . . . . . . . . . . . . . . . . 13
\topmargin: Removed the\flushbottom option from thedefault configuration. . . . . . . . 3
v3.2.0
General: Make special accommo-dations for the optional natbibpackage. . . . . . . . . . . . . . . . . 17
v3.3.0
General: Make special accommoda-tions for the optional apacitepackage. . . . . . . . . . . . . . . . . 17
\appendix: Modified standard re-port macro to insert an extraToC element . . . . . . . . . . . . . 19
\appendixtocname: Added a newsymbol name to hold the Tableof Contents heading for an ap-pendix or appendices. . . . . . . 12
references: Changed \parskip touse \refitemsep. Changed in-dentation to be consistent withapacite. . . . . . . . . . . . . . . . . 16
verbatim: Set verbatim environ-ment to revert to standard spac-ing when using expanded spac-ing. . . . . . . . . . . . . . . . . . . . . 6
thebibliography: Set \itemsep to\refitemsep and set \parsep
to 0pt . . . . . . . . . . . . . . . . . . 16
singlespaced: New environmentproviding single-spacing. . . . . . 7
\l@appendix: New formattingmacro for the ToC appendixclass . . . . . . . . . . . . . . . . . . . 20
\l@backmatter: Added a backmat-ter ToC class to handle Refer-ences and Biographical Sketchseparately from frontmatter . . 14
\l@frontmatter: Added test forfirst frontmatter item to avoidextra vertical space after ToCheader . . . . . . . . . . . . . . . . . 14
22
\maketitle: Added layout forcopyright option. . . . . . . . . . . 8
copyright: Added new documentoption to add copyright decla-ration to the title page. . . . . . . 2
v3.4.0\chapheadskip: Changed spacing
before chapter header to 0in. . 18\evenoddoffset: Adjusted text
width for hardcopy option sincethe text column is now wider. . 4
\makecommitteepage: Adjustedvertical spacing of the com-mittee page and moved namecolumn closer to center. . . . . . 10
\maketitle: Altered spacing forcopyright on title page tobe consistent with Guide-lines 2013 . . . . . . . . . . . . . . . 8
Removed “THE” fromFLORIDA STATE UNIVER-SITY. . . . . . . . . . . . . . . . . . . . 8
\textwidth: Set text column to6.5 inches. . . . . . . . . . . . . . . . . 3
v3.5.0General: Add \interlinepenalty
to prevent page breaks mid-item. . . . . . . . . . . . . . . . . . . 17
references: Added \interlinepenalty
to prevent page breaks mid-item. . . . . . . . . . . . . . . . . . . 16
\f@apacite: Added \interlinepenalty
to prevent page breaks mid-item. . . . . . . . . . . . . . . . . . . 17
thebibliography: Added\interlinepenalty to preventpage breaks mid-entry. . . . . . 16
\refindent: Increased stretchinessof \refitemsep to facilitate un-breakable bibliography entries 16
v3.6.0
General: Removed \@semester
macro since it’s no longerneeded. . . . . . . . . . . . . . . . . . 7
\maketitle: Removed \@semester
element to comply with changeto FSU format. . . . . . . . . . . . . 8
\semester: Made \semester macroa no-op to comply with changein FSU format. . . . . . . . . . . . . 8
v3.7.0
\@dottedtocline: If pagenumbersexceed the allotted width, usethe natural box width instead ofthe predefined width . . . . . . . 13
\commskip: Increased the name col-umn width, moving column tothe left to center it better. . . . . 9
\listbaselineskip: New macro toreplace previously hard-codedvalue . . . . . . . . . . . . . . . . . . . 5
Index
Numbers written in italic refer to the page where the corresponding entry is de-scribed; numbers underlined refer to the code line of the definition; numbers inroman refer to the code lines where the entry is used.
Symbols
\. . . . . . . . . . . . . . . 347
\@M . . . . . . . . . 391, 398
\@afterindenttrue .. . . . . . . . 246, 322
\@arabic . . . . . . . . .. 300, 302, 332, 341
\@author . . . . . 148,159, 176, 197, 202
\@biblabel . . . 332, 333
\@chapapp . . . . . . . . 389
\@clubpenalty . . . . . 345
\@college . . . . . . . .. 104, 130, 141, 151
\@currentHref . . . . . 425
\@dblfloat . . . . . . . 311
\@defensedate . . . . .. . . . 104, 132, 177
\@degree . . 104, 128, 154
\@degreeyear . . . . . .. 104, 131, 156, 159
\@department . . . . . .. . . . 104, 129, 151
\@departmenttrue . . 129
\@dotsep . . . . . . . . . 251
\@dottedtocline 53,240, 269, 276, 280
\@empty . . . . . . . . . . 338
\@expandedtrue . . . . . 6
23
\@float . . . . . . . . . . 308
\@hardcopytrue . . . . . 5
\@highpenalty . . . . .. 51, 273, 274, 435
\@hyperloadedfalse . 103
\@hyperloadedtrue . 103
\@hypermetadata . . . 196
\@ifpackageloaded .. 102, 365, 375, 376
\@keywords 190, 199, 204
\@keywordstrue . . . . 195
\@latex@warning . . . 349
\@listdepth . . . . . 73, 81
\@litstr . . . . . 197–200
\@makecaption . . . . . 442
\@makechapterhead . 385
\@makeschapterhead . 385
\@manuscripttype 104,133, 150, 177, 188
\@minipagefalse . . . 450
\@mkboth . . 262, 287, 331
\@namedef . . . . . . . . 89
\@noitemerr . . . . . . . 348
\@nt . . . . . . . . . 201, 202
\@openbib@code . . . . 336
\@openrighttrue . . . 43
\@pdfmetadata . . . . . 196
\@pnumwidth . . . 254, 255
\@restonecolfalse .. . . . . . . . 260, 283
\@restonecoltrue . .. . . . . . . . 260, 283
\@startsection 402,406, 411, 416, 421
\@starttoc . . . 264, 288
\@subject . 190, 198, 203
\@subjecttrue . . . . . 194
\@sxverbatim . . . . . . 89
\@thecmems . . . . . . .. 168, 170, 171, 182
\@title . . . 145, 197, 201
\@tocrmarg . . . . . . . 245
\@verbatim . . . . . . . 89
\ . . . . . . . . . . . . . . 159
A
\abovecaptionskip . 443
abstract (environ-ment) . . . . . . 236
\abstractname . . . . .. . . . 210, 237, 238
\acknowledgename . .. . . . . . . . 210, 226
acknowledgments (envi-ronment) . . . 222
\addcontentsline 230,234, 238, 286,323, 330, 355,367, 374, 379, 426
\addpenalty . . . . . . .. . 51, 273–275, 429
\addtolength . . . 17,18, 23, 24, 26–30, 33, 34, 41,42, 44, 46, 66,67, 75, 144, 175,182, 184, 317, 384
\addvspace . . . . . . .. . 69, 100, 268,273, 275, 279,285, 322, 392, 399
\adjbaselineskip . .57, 62, 66, 69, 100
\afterheadadj . . 69,88, 94, 226, 237, 378
\appendix . . . . . . . . 423\appendixtocname . .
. . . . . . . . 210, 426\AtBeginDocument 41,
44, 46, 102, 205, 375
B\b@ckaddedtrue . . . . 275\baselineskip 19, 21,
58, 62, 66, 67,74, 75, 140, 143,144, 147, 175,182–184, 316, 322
\begingroup . . . . . . . 431\belowcaptionskip .
. . . . . . . . 439, 453\bfseries . . . . . 53,
382, 387, 397,405, 409, 414, 432
\bibhang . . . . . 353, 369\bibindent . . . . . . . 372\bibitemsep . . . . . . . 370
\bibleftmargin . . . . 371\bibliographytypesize
. . . . . . . . . . . 362\bibname . . . . . 212,
320, 323, 329–331, 354, 355,366, 367, 373, 374
\bibpostamble . . . . . 351\bibpreamble . . . . . . 351\bibsection . . . 351, 366\bibsep . . . . . . 352, 368biosketch (environ-
ment) . . . . . . 377\biosketchname . . . .
. . . . 210, 378, 379\blstretchiness . 57, 67\box . . . . . . . . . . . . . 451
C\c@chapter . . . 300, 302\c@enumiv . . . . 332, 341\c@musex . . . . . 300, 302\c@pyrighttrue . . . . . 8\c@secnumdepth . . . . 388\c@tocdepth 50, 243, 428\centering 387, 397, 405\ch@pleaderstrue . . . 7\chapheadskip . . . . .
. . . . 381, 386, 396\chapter . . 226, 229,
233, 237, 261,284, 320, 329,354, 366, 373, 378
\chapterleaders . . . . 1\ClassError 104, 108,
112, 116, 119, 123\cleardoublepage . .
. . . . 174, 208, 223\clearpage 174, 208,
223, 227, 231,235, 239, 327, 380
\clubpenalty . . 344, 345\college . . 113, 114, 127\committeeperson . . 168\commskip . 164, 171, 181\commwidth 164, 171, 172\contentsname . . . . .
. . . . 210, 261, 262\copyright . . . . . 1, 159\csname . . . . . . . . 85, 90
24
\CurrentOption . . . . . 9
D\DeclareOption . . . . 5–9dedication (environ-
ment) . . . . . . 222\defensedate . . . . . .
. . . . 120, 121, 127\degree . . . 105, 106, 127\degreeyear 117, 118, 127\department 109, 110, 127
E\edef . . . . . 197–199, 201\end@dblfloat . . . . . 312\end@float . . . . . . . 309\endcsname . . . . . 85, 90\endgroup . . . . . . . . 436\endlist . . . . . . . 78, 96\endverbatim . 86, 88, 90\enlargethispage . . 137environments:
abstract . . . . . . 236acknowledgments 222biosketch . . . . . . 377dedication . . . . . 222listofabbrevs . . 228listofsymbols . . 228musex . . . . . . . . . 307musex* . . . . . . . . 307references . . . . . 319singlespaced . . . 99thebibliography 328verbatim . . . . . . 83verbatim* . . . . . . 83
\evenoddoffset . . . . 38\evensidemargin . . .
. . . . . . . 31, 44, 46\expanded . . . . . . . . . 1\expandspacing . . . .
. . . . . . 64, 92, 209\ext@musex . . . . . . . 305
F\f@apacite . . . 361, 375\f@ldappendix . 423, 424\f@oendlist . 78, 96, 350\f@oendverb . . . . . 86, 88\f@oldpost . . . 356, 360\f@oldpre . . . . 356, 357
\f@olist . . . . . . . . .70, 95, 332, 358, 364
\f@overbat . . . . . 83, 87\f@overbats . . . . . . . 84\f@plainnat . . . 351, 376\f@savenlist . . . . . .
. . . . 358, 360, 364\fcapindent . . . 439, 446\fnum@musex . . . . . . . 306\footskip . . 15, 30, 137\fps@musex . . . . . . . 303\front@ddedtrue . . . 268\frontmatter . . . . . . 206\FSU@lofsomething .
. 282, 292, 294, 296\FSU@onormalsize . .
. . . 64, 87, 89,93, 98, 100, 139,173, 227, 229,233, 239, 282,315, 320, 329,354, 362, 380, 447
\ftype@musex . . . . . . 304
H\hardcopy . . . . . . . . . 1\hbox . . . . . . . . 176,
250, 251, 253, 254\headheight . . . . . 13, 27\headsep . . . . . . . 13, 28\hfill . . . . . . . . . . . 252\hskip . . . . . . . 249, 433\hypersetup . . . 202–204
I\if@department 127, 151\if@expanded . 1, 56,
100, 358, 360, 364\if@hardcopy . . . . . 1, 40\if@hyperloaded 101,
136, 205, 263, 425\if@keywords . . . . . .
. . . . 190, 199, 204\if@openright . . . . .
. . . . 174, 208, 223\if@restonecol 264, 289\if@subject 190, 198, 203\if@twocolumn . 260, 283\if@twoside . . . . . . . 43\ifb@ckadded . . . . . . 271
\ifc@pyright . . . . 1, 158\ifch@pleaders . . . 1, 48\iffront@dded . . . . . 266\ifpdf . . . . 136, 205, 263\interlinepenalty .
. 247, 321, 342,357, 363, 391, 398
\itemsep . . . . . . . . . 339\itshape . . . . . . . . . 422
K\keywords . . . . . . . . 190
L\l@appendix . . . . . . . 427\l@backmatter . . . . . 271\l@chapter . . . . . . . 48\l@figure . . . . 278, 297\l@frontmatter . . . . 266\l@musex . . . . . . . . . 297\l@table . . . . . . . . . 278\labelsep . . . . . . . . 335\labelwidth . . . 333, 334\LARGE . . . . 382, 387, 397\Large . . . . . . . . . . . 405\large . . . . . . . . . . . 409\leaders . . . . . . . . . 250\leavevmode . . . 248, 432\leftmargin . . . 334, 335\leftskip . . . . 245,
249, 324, 433, 446\list 70, 95, 358, 360, 364\listabbrevname . . .
. . . . 210, 233, 234\listbaselineskip 61, 74\listfigurename 216, 294\listmusexname 210, 296listofabbrevs (envi-
ronment) . . . 228\listoffigures . . . . 291\listofmusex . . . . . . 291listofsymbols (envi-
ronment) . . . 228\listoftables . . . . . 291\listspenalty . 240, 264\listsymname . . . . . .
. . . . 210, 229, 230\listtablename 217, 292\LoadClass . . . . . . . 11\long . . . . . . . . . . . . 442
25
M\m@th . . . . . . . . . . . . 250\mainmatter . . . . . . . 206\makebox . . . . . 171, 172\makecommitteepage . 173\MakeLowercase 177, 188\maketitle . . . . . . . 135\MakeUppercase . . . .
. . . . 141, 145,148, 262, 287,331, 389, 392, 399
\manuscripttype . . .. . . . 124, 125, 127
\mkern . . . . . . . . . . . 251musex (environment) . 307musex* (environment) 307\musexname . . . 210, 306
N\newcount . . . . . . . . 240\newskip . . . . . 313, 314\noindent . 178–180, 185\normalcolor . . 253–255\normalfont . . . . . . .
. 253–255, 405,409, 414, 419, 422
\normalsize . . . . . . .64, 81, 226, 237, 378
\null . . . . . . . . 249, 256
O\oddsidemargin . . 31, 42\onecolumn . . . 260, 283
P\p@enumiv . . . . . . . . 338\pagebreak 160, 189, 224\pagenumbering 206, 209\paperheight . 16, 22, 25
\paperwidth . . . . . . . 32
\paragraph . . . . . . . 410
\parfillskip . . . . . . 245
\parindent . . . 246,325, 387, 397,411, 416, 421, 432
\parsep . . . . . . . . . . 340
\parskip . . . . . . . . . 326
\PassOptionsToClass . 9
\pdfbookmark . . 136, 263
\pdfinfo . . . . . . . . . 200
\penalty . . . . . . . . . 435
\ProcessOptions . . . 10
R
\raggedright . . 178, 409
references (environ-ment) . . . . . . 319
\refindent . . . . . . .. 313, 324, 325,353, 369, 371, 372
\refitemsep 313, 326,339, 352, 368, 370
\RequirePackage . . . 12
\rightskip . . . 245, 446
S
\scshape . . . . . . . . . 419
\section . . . . . . . . . 402\semester . . . . . . . . 127
\setbox . . . 176, 253, 256
\setcounter . . . . . . . 173
\settowidth . . . . . . . 333
\sfcode . . . . . . . . . . 347
singlespaced (environ-ment) . . . . . . . 99
\sloppy . . . . . . 321, 343
\smblstretchiness 57, 75
\st@rtbibchapter . . 373
\subject . . . . . . . . . 190
\subparagraph . . . . . 410
\subsection . . . . . . . 402
\subsubsection . . . . 410
T
\tableofcontents . . 259
\textheight . . . . . 15, 29
\textwidth . 31, 41, 178
thebibliography (envi-ronment) . . . 328
\thechapter 300, 302, 389
\theenumiv . . . . . . . 341
\theHmusex . . . . . . . 301
\themusex . . . . 299, 306
\toclevel@appendix . 438
\toclevel@backmatter
. . . . . . . . . . . 277
\toclevel@frontmatter
. . . . . . . . . . . 270
\topmargin . . . . . . . 25
\topskip . . . . . . . . . 13
\twocolumn . . . 264, 289
U
\unhbox . . . . . . 178, 179
\usecounter . . . . . . . 337
V
\verbatim . . . . . . 83, 87
verbatim (environ-ment) . . . . . . . 83
verbatim* (environ-ment) . . . . . . . 83
W
\widowpenalty . . . . . 346
26