summaryrefslogtreecommitdiff
path: root/macros/latex/contrib/msu-thesis/msu-thesis.cls
diff options
context:
space:
mode:
Diffstat (limited to 'macros/latex/contrib/msu-thesis/msu-thesis.cls')
-rw-r--r--macros/latex/contrib/msu-thesis/msu-thesis.cls87
1 files changed, 60 insertions, 27 deletions
diff --git a/macros/latex/contrib/msu-thesis/msu-thesis.cls b/macros/latex/contrib/msu-thesis/msu-thesis.cls
index d49a2ced1e..f9c1c273f7 100644
--- a/macros/latex/contrib/msu-thesis/msu-thesis.cls
+++ b/macros/latex/contrib/msu-thesis/msu-thesis.cls
@@ -1,6 +1,6 @@
% MSU Thesis Class
%
-% Copyright 2009,2010,2011,2012,2013,2014,2015,2016,2017 by Alan Munn <amunn@msu.edu>
+% Copyright 2009,2010,2011,2012,2013,2014,2015,2016,2017,2020 by Alan Munn <amunn@msu.edu>
%
% This is a class file for producing dissertations and theses according to the
% Michigan State University Graduate School Guidelines
@@ -136,12 +136,26 @@
% should be the same as \abstractname. For the moment it is. Updated documentation to
% include section about microtype and contents lists.
% Changed \droptitle (again)
-% Fixed capitalization problem with Appendices
-% Use at your own risk!
+% Fixed capitalization problem with Appendices
+%
+% Version 2.9 2020/12/12 Removed super/subscript/footnote restrictions
+% Added document fontsize options.
+% Changed use of \baselineskip to \onelineskip so that idiocy of the
+% thesis office can be accommodated. If complaints about the spacing
+% of “double space” arise, redefine \onelineskip to be the fontsize rather
+% than the leading.
+%
+% Version 2.9a 2020/12/14 Fixed abstract title spacing after complaints about “double space”.
+% Version 2.9b 2021/02/26 Fixed epigraph fontsize
+% Version 2.9c 2021/05/07 Made \tableofcontents behave like \tableofcontents*
+% Added warning when public abstract is used.
+% Minor changes to the documentation
+% Removed unified.bst from distribution; replaced with apalike in the test file.
+%
% Report bugs/problems/questions to <amunn@msu.edu>
%
-\def\msu@version{2.8}
-\def\msu@date{2017/12/13}
+\def\msu@version{2.9c}
+\def\msu@date{2021/05/07}
\NeedsTeXFormat{LaTeX2e}
\ProvidesClass{msu-thesis}[\msu@date\space Michigan State University Thesis Class version \msu@version]
\newif\ifmsu@dissertation\msu@dissertationtrue % added v2.7 boolean for \msu@thesistype
@@ -174,12 +188,15 @@
\DeclareOption{boldtoc}{\msu@stupidtoctrue\msu@plaintocfalse\msu@mixedtocfalse}
\DeclareOption{plaintoc}{\msu@plaintoctrue\msu@stupidtocfalse\msu@mixedtocfalse}
\DeclareOption{mixedtoc}{\msu@mixedtoctrue\msu@stupidtocfalse\msu@plaintocfalse}
-\ExecuteOptions{PhD}
+\DeclareOption{12pt}{\def\msu@sizeoption{12pt}} % added v 2.9
+\DeclareOption{11pt}{\def\msu@sizeoption{11pt}}
+\DeclareOption{10pt}{\def\msu@sizeoption{10pt}}
+\ExecuteOptions{PhD,12pt}
\DeclareOption*{
\PassOptionsToClass{\CurrentOption}{memoir}
}
\ProcessOptions\relax
-\LoadClass[12pt,oneside,letterpaper]{memoir}[2008/05/27]
+\LoadClass[\msu@sizeoption,oneside,letterpaper]{memoir}[2008/05/27]
% Check for older versions of the latex kernel
\ifx\e@alloc\@undefined
\RequirePackage{etex}
@@ -231,15 +248,15 @@
% breaks within the title. This has now been documented in the user docs.
\newcommand*\msu@thesistype{\ifmsu@dissertation{DISSERTATION}\else{THESIS}\fi}
\pretitle{\begin{center}\MakeUppercase}
-\posttitle{\\[\baselineskip]\end{center}}
-\preauthor{\begin{center}By\\[\baselineskip]}
+\posttitle{\\[\onelineskip]\end{center}}
+\preauthor{\begin{center}By\\[\onelineskip]}
\postauthor{\end{center}}
-\predate{\vfill\begin{center}\msu@titleintro\msu@thesistype\\[\baselineskip]Submitted to\\Michigan State University\\in partial fulfillment of the requirements\\for the degree of\\[\baselineskip]\msu@fieldofstudy~\msu@fieldseparator~\msu@degree\\[\baselineskip]}
+\predate{\vfill\begin{center}\msu@titleintro\msu@thesistype\\[\onelineskip]Submitted to\\Michigan State University\\in partial fulfillment of the requirements\\for the degree of\\[\onelineskip]\msu@fieldofstudy~\msu@fieldseparator~\msu@degree\\[\onelineskip]}
% set up the chapter titles
\chapterstyle{thatcher}
-\setlength{\beforechapskip}{0pt}
-\setlength{\afterchapskip}{2\baselineskip} % changed 2017/05/03 because of thesis office complaints
+\setlength{\beforechapskip}{-1sp}% changed 2020/12/17 Need negative value to suppress indentation
+\setlength{\afterchapskip}{2\onelineskip} % changed 2017/05/03 because of thesis office complaints
\renewcommand*{\chapnamefont}{\centering\bfseries}
\renewcommand*{\chapnumfont}{\bfseries}
\renewcommand*{\chaptitlefont}{\SingleSpacing\bfseries}
@@ -255,7 +272,7 @@
% set up the section styles
-\setbeforesecskip{0pt}
+\setbeforesecskip{-1sp}
\setsecheadstyle{\normalfont\SingleSpacing\large\bfseries}
\setsubsecheadstyle{\normalfont\SingleSpacing\bfseries}
\setsubsubsecheadstyle{\normalfont\SingleSpacing\bfseries}
@@ -359,27 +376,36 @@
\renewcommand\mem@tableofcontents[1]{%
\oldmem@tableofcontents{#1}%
\setlength{\cftbeforechapterskip}{0.0em \@plus\p@}
- \setlength{\cftparskip}{\baselineskip}
+ \setlength{\cftparskip}{\onelineskip}
\pagestyle{plain}
}
+% This allows users to use either \tableofcontents or \tableofcontents* with the same effect
+% Code from https://tex.stackexchange.com/a/165968/2693
+% Allows users to not read the docs
+\renewcommand{\tableofcontents}{%
+ \@ifstar{\mem@tableofcontents{01}}
+ {\mem@tableofcontents{01}}%
+}
% set up footnotes
-\footmarkstyle{\normalsize\textsuperscript{#1}} % reset size so that mark is right size
-\setlength{\footmarkwidth}{1.8em}
-\setlength{\footmarksep}{-1.8em}
-\setlength{\footparindent}{1em}
-\renewcommand{\foottextfont}{\normalsize} % footnotes will be 12pt
+% Most of this removed v2.9
+%\footmarkstyle{\normalsize\textsuperscript{#1}} % reset size so that mark is right size
+%\setlength{\footmarkwidth}{1.8em}
+%\setlength{\footmarksep}{-1.8em}
+%\setlength{\footparindent}{1em}
+%\renewcommand{\foottextfont}{\normalsize} % footnotes will be 12pt
\feetbelowfloat % footnotes will appear below bottom floats
% set up abstract and public abstract
\renewenvironment{abstract}{%
+ \setlength{\afterchapskip}{\onelineskip} % changed 2020/12/14 again removed manual spacing from 2016
\chapter*{\abstractname}
\thispagestyle{empty}
- \plainbreak{-.5} % changed 2016/06/08 after complaints
+% \plainbreak{-.5} % changed 2016/06/08 after complaints
\begin{center}
\MakeUppercase{\thetitle}\plainbreak{1}By\plainbreak{1}\theauthor
\end{center}
- \plainbreak{-.5} % changed 2016/06/08 after complaints
+% \plainbreak{-.5} % changed 2016/06/08 after complaints
\DoubleSpacing
}{\par}
%
@@ -392,14 +418,16 @@
\newcounter{msu@pubabspages}
\newcommand{\publicabstractname}{\abstractname}
\newenvironment{publicabstract}{%
+ \ClassWarning{msu-thesis}{You have provided a public abstract. Please make sure you ALSO have a regular abstract!}
\setcounter{msu@pubabspages}{\value{page}}
+ \setlength{\afterchapskip}{\onelineskip} % changed 2020/12/14 again removed manual spacing from 2016
\chapter*{\publicabstractname}
\thispagestyle{empty}
- \plainbreak{-.5} % changed 2016/06/08 after complaints
+% \plainbreak{-.5} % changed 2016/06/08 after complaints
\begin{center}
\MakeUppercase{\thetitle}\plainbreak{1}By\plainbreak{1}\theauthor
\end{center}
- \plainbreak{-.5} % changed 2016/06/08 after complaints
+% \plainbreak{-.5} % changed 2016/06/08 after complaints
\DoubleSpacing
}{\clearpage\setcounter{page}{\value{msu@pubabspages}}}
@@ -531,12 +559,17 @@
\@ifpackageloaded{apacite}{\@tocbibfalse}{} % added 6/22/17
%\topskip=0pt % setting this because the Grad School doesn’t know how to measure -changed back 6/15/17
\checkandfixthelayout
+
+% Set epigraph fonts to \normalsize
+\renewcommand{\epigraphsize}{\normalsize} % added 2/26/21
+
%
% set up subscript sizes so that 10 pt is the smallest
% (MSU Requirement)
-\DeclareMathSizes{12}{12}{10}{10}
-\DeclareMathSizes{10.95}{10.95}{10}{10}
-\DeclareMathSizes{10}{10}{10}{10}
+% Removed v2.9
+%\DeclareMathSizes{12}{12}{10}{10}
+%\DeclareMathSizes{10.95}{10.95}{10}{10}
+%\DeclareMathSizes{10}{10}{10}{10}
%
% check for hyperref
% The hyperref code allows hyperref to be used. It is not guaranteed to
@@ -555,4 +588,4 @@
% if no hyperref
{\relax}
}
-\endinput \ No newline at end of file
+\endinput