diff options
Diffstat (limited to 'Master/texmf-dist/doc/latex/msu-thesis/docs')
-rw-r--r-- | Master/texmf-dist/doc/latex/msu-thesis/docs/msu-thesis.tex | 89 |
1 files changed, 53 insertions, 36 deletions
diff --git a/Master/texmf-dist/doc/latex/msu-thesis/docs/msu-thesis.tex b/Master/texmf-dist/doc/latex/msu-thesis/docs/msu-thesis.tex index 2822bed8502..8566aecacb1 100644 --- a/Master/texmf-dist/doc/latex/msu-thesis/docs/msu-thesis.tex +++ b/Master/texmf-dist/doc/latex/msu-thesis/docs/msu-thesis.tex @@ -2,8 +2,8 @@ \documentclass[11pt]{article} -\def\msuversion{3.5b} -\def\msudate{2022/08/19} +\def\msuversion{4.0} +\def\msudate{2022/12/13} \title{\textbf{Using the MSU Thesis Class}} \author{\textbf{Alan Munn}\\Department of Linguistics, Languages, and Cultures\\Michigan State University\\\texttt{\href{mailto:amunn@msu.edu}{amunn@msu.edu}}} \date{Version \msuversion\\\msudate} @@ -57,9 +57,9 @@ \thispagestyle{empty} \renewcommand{\abstractname}{\sffamily Abstract} -\abstract{\noindent\begin{quote} This is a class file for MSU theses and dissertations. It is based on the \pkg{memoir}\ class, and therefore supports all of the functionality of that class. It should generate a document which meets all the basic formatting requirements laid out by the \href{https://grad.msu.edu/etd/formatting-guide}{Formatting Guide For Submission of Master’s Theses and Doctoral Dissertations}\ (March 2020) produced by the Graduate School, including requirements for margins, titlepage, page numbering, section titles, sub- and superscript sizes etc.\end{quote}} +\abstract{\noindent\begin{quote} This is a class file for MSU theses and dissertations. It is based on the \pkg{memoir}\ class, and therefore supports all of the functionality of that class. It should generate a document which meets all the basic formatting requirements laid out by the \href{https://grad.msu.edu/etd/formatting-guide}{Formatting Guide For Submission of Master’s Theses and Doctoral Dissertations}\ (September, 2022) produced by the Graduate School, including requirements for margins, titlepage, page numbering, section titles, sub- and superscript sizes etc.\end{quote}} \section{Introduction} -Formatting a dissertation according to a University's thesis requirements is not always a simple task in \LaTeX, especially since the requirements are generally aimed at MSWord users. Furthermore, most of the work of formatting a document is supposed to be done by the document class itself, and not by the individual user. Fortunately, Michigan State University's thesis requirements are for the most part sane, and fairly straightforward. The present class file is designed to further make the process easier for \LaTeX\ users, by doing all the heavy lifting for you, so that you can focus on the content and not the formatting. +Formatting a dissertation according to a University's thesis requirements is not always a simple task in \LaTeX, especially since the requirements are generally aimed at MSWord users. Furthermore, most of the work of formatting a document is supposed to be done by the document class itself, and not by the individual user. Fortunately, Michigan State University's thesis requirements are for the most part sane, and fairly straightforward. The present class file is designed to further make the process easier for \LaTeX\ users, by doing all the heavy lifting for you, so that you can focus on the content and not the formatting. \section{Background} The MSU Thesis Class is based on the \pkg{memoir}\ document class. The \pkg{memoir}\ class is an extensive class that incorporates the functionality of many other packages into it. The class is extensively documented, and the documentation (\pkg{memman.pdf}) should be available with any \TeX\ distribution. I strongly recommend that you familiarize yourself with \pkg{memoir}\ as you use the present class. \section{Class Options} @@ -113,12 +113,14 @@ In addition to all the user functionality defined by \pkg{memoir}, the \pkg{msu- \begin{tabularx}{.8\textwidth}{>{\ttfamily}lX} \toprule {\bs maketitlepage} & Makes the main title page for the thesis.\\ -{\bs fieldofstudy\{\}} & Takes one argument corresponding to your field of study.\\ +{\bs fieldofstudy\{\}} & Takes one argument corresponding to your field of study. For a dual major use the \pkg{\bs dualmajor} command instead.\\ +{\bs dualmajor\{\}\{\}} & Takes two arguments, one for each of the two majors.\\ {\bs dedication\{\}} & Takes one argument (should be short), your dedication.\\ -{\{publicabstract\}} & Environment for the public abstract (unnumbered, uncounted).\\ +%{\{publicabstract\}} & Environment for the public abstract (unnumbered, uncounted).\\ {\bs makecopyrightpage} & Creates the copyright page (use \texttt{\bs makecopyrightpage*} to align the text on the left.)\\ {\bs makededicationpage} & Creates the dedication page.\\ -{\bs makebibliographypage} & Creates the bibliography cover page.\\ +%{\bs makebibliographypage} & Creates the bibliography cover page.\\ +{\{abbreviations\}} & Environment for the List of Abbreviations \\ \bottomrule \end{tabularx} \caption{Class titling commands} @@ -129,7 +131,7 @@ In addition to all the user functionality defined by \pkg{memoir}, the \pkg{msu- \begin{tabularx}{.8\textwidth}{>{\ttfamily}lX} \toprule {\bs msucaptiondelim} & Delimiter for floating elements (see section \ref{captiondelim}).\\ -{\bs setabstractnamespace} & Changes spacing after the name in the abstract (see section \ref{abstractspacing}).\\ +%{\bs setabstractnamespace} & Changes spacing after the name in the abstract (see section \ref{abstractspacing}).\\ \bottomrule \end{tabularx} \caption{Appeasement commands} @@ -138,7 +140,7 @@ In addition to all the user functionality defined by \pkg{memoir}, the \pkg{msu- \section{Using the class} \subsection{Logical parts of the document} -Most book-length documents are divided into three main kinds of parts: the front matter, the main matter, and the back matter. In \pkg{memoir}\ (and therefore \pkg{msu-thesis}) these sections are preceded by the commands |\frontmatter|, |\mainmatter|, and |\backmatter|. These commands tell the class when to change the page numbering, for example, front matter pages use lower case roman numerals, but main matter pages use arabic numerals. +Most book-length documents are divided into three main kinds of parts: the front matter, the main matter, and the back matter. In \pkg{memoir}\ (and therefore \pkg{msu-thesis}) these sections are preceded by the commands |\frontmatter|, and |\mainmatter|. The way the thesis office now structures the document means that the |\backmatter| should not be used. These commands tell the class when to change the page numbering, for example, front matter pages use lower case roman numerals, but main matter pages use arabic numerals. The basic outline of a dissertation or thesis document is shown in Table~\ref{structure}: (your thesis may not have all of these parts, but if it does, they should be in this order.) You can find an annotated copy of the basic structure in the \href{https://ctan.org/tex-archive/macros/latex/contrib/msu-thesis/samples}{\pkg{samples}}\ folder of the \pkg{msu-thesis}\ documentation. @@ -148,15 +150,13 @@ The basic outline of a dissertation or thesis document is shown in Table~\ref{st \item |\frontmatter| \begin{scheme} \item Titlepage - \item Public Abstract +% \item Public Abstract \item Abstract \item Copyright Page \item Dedication \item Acknowledgements \item Preface \item Table of Contents - \item List of Tables - \item List of Figures \item List of Abbreviations/Symbols \end{scheme} \item |\mainmatter| @@ -165,12 +165,13 @@ The basic outline of a dissertation or thesis document is shown in Table~\ref{st \item Chapter 2 \item \ldots \item Chapter $n$ - \item{Appendices} \end{scheme} -\item |\backmatter| \begin{scheme} \item{Bibliography} \end{scheme} +\begin{scheme} + \item{Appendices} +\end{scheme} \item |\end{document}| \end{scheme} \caption{Basic structure of a thesis or dissertation}\label{structure} @@ -211,17 +212,32 @@ Your listing code here \end{lstlisting} \end{quote} -Another common kind of list is a List of Abbreviations. The thesis office seems to want to call this “Key to Abbreviations”. To add such a list, you need to do the following: +\subsection{List of Abbreviations} +Another common kind of list is a List of Abbreviations. The thesis office seems to think that these should be formatted identically to other lists, even though they are not really contents lists. Because of this I have added a built-in environment |{abbreviations}| and a helper macro to add elements to the list. The basic idea is the following: for each abbreviation/symbol you add to the list use the command |\abbrev{<abbreviation>}{<explanation>}|. This command takes two arguments, the first being the abbreviation itself, and the second the explanation of the abbreviation. For example, for a list of abbreviations containing the abbreviations MSU and MIT we would use the following code. The list is not automatically sorted, so you need to add abbreviations with |\abbrev| in exactly the order you want them to appear in the list. \begin{quote} \begin{lstlisting} -\clearpage -\chapter*{Key to Abbreviations} -\vspace{\cftparskip} -\addcontentsline{toc}{chapter}{Key to Abbreviations} -Your list of abbreviations here. +\begin{abbreviations} +\abbrev{MIT}{Massachusetts Institute of Technology} +\abbrev{MSU}{Michigan State University} +\end{abbreviation} \end{lstlisting} \end{quote} +\subsubsection{Summary of abbreviation commands} +In addition to the |\abbrev| command, there are a few other commands to change the format of the the |\listofabbreviations| as shown in Table~\ref{abbrev}. Note that the List of Abbreviations written to the auxiliary file with extension |.lob| which can be removed along with other |.aux| files if needed. + +\begin{table}[htpb] +\centering +\begin{tabularx}{.8\textwidth}{>{\ttfamily}lX} +\toprule +{\bs abbrev\{<abbreviation>\}\{<explantion>\}} & Add an abbreviation to the list.\\ +{\bs msuabbrevfont} & Format of the abbreviation itself (default is \texttt{\bs bfseries}).\\ +{\bs msuabbrevdelim\{\}} & Add a delimiter if you need (default is \texttt{\{\}}).\\ +{\bs msuabbrevwidth\{\}} & Set the width of the abbreviation column (default is \texttt{.75in}).\\ +\bottomrule +\end{tabularx} +\caption{List of abbreviation commands}\label{abbrev} +\end{table} \subsection{Algorithm packages\label{algorithms}} Because the various algorithm formatting packages such as \pkg{algorithm2e}\ and \pkg{algorithmicx}\ (or its related packages) sometimes create incompatibilities with the \pkg{memoir}\ float methods, the class provides you with floating |{algorithm}| environment and the corresponding list of algorithms, so you do not have to create your own list of algorithms. Here are some specific important points about using \pkg{algorithm2e}\ and \pkg{algorithmicx}. @@ -282,16 +298,16 @@ before the contents lists and |\microtypesetup{protrusion=true}| afterwards. Sc \microtypesetup{protrusion=true} \end{lstlisting} \end{quote} -\subsection{Abstracts} -MSU requires you to have an abstract, but you may also have a public abstract, which is weirdly unnumbered and uncounted. - -\subsubsection{Spacing after the author name in the abstract}\label{abstractspacing} -The thesis office is very inconsistent in how it determines what it thinks is a “double space”, and this especially seems to be true after the author name in the the abstract. Because of this, I’ve created a way to change the spacing within the user document so that you can appease the thesis office bureaucrats without reporting an issue to me. - -Use the command |\setabstractnamespace| to change the spacing after the author name in the abstract (and the public abstract, if present). This command takes a value typically between -1 and and 1 where 0 reduces the space to a single baselineskip, while 1 adds an extra baselineskip. The default is set to 0. Depending on their mood at the time they check your thesis, the thesis office may want more or less space here, so use this command only to satisfy their bureaucratic self-importance. - -\subsubsection{Public abstract} -If your thesis requires a public abstract, it should go immediately before the regular abstract. Use the |{publicabstract}| environment for this. Please note that you \emph{must} have an abstract even if you also have a public abstract. +%\subsection{Abstracts} +%MSU requires you to have an abstract. % but you may also have a public abstract, which is weirdly unnumbered and uncounted. +% +%\subsubsection{Spacing after the author name in the abstract}\label{abstractspacing} +%The thesis office is very inconsistent in how it determines what it thinks is a “double space”, and this especially seems to be true after the author name in the the abstract. Because of this, I’ve created a way to change the spacing within the user document so that you can appease the thesis office bureaucrats without reporting an issue to me. +% +%Use the command |\setabstractnamespace| to change the spacing after the author name in the abstract (and the public abstract, if present). This command takes a value typically between -1 and and 1 where 0 reduces the space to a single baselineskip, while 1 adds an extra baselineskip. The default is set to 0. Depending on their mood at the time they check your thesis, the thesis office may want more or less space here, so use this command only to satisfy their bureaucratic self-importance. +% +%\subsubsection{Public abstract} +%If your thesis requires a public abstract, it should go immediately before the regular abstract. Use the |{publicabstract}| environment for this. Please note that you \emph{must} have an abstract even if you also have a public abstract. \subsection{Landscape figures and tables} If you have large figures and tables that must be rotated, you should use the |[lscape]| class option. This enables a pagestyle |lscape| and places the page numbers correctly on the long edge of the page. The option loads the \pkg{pdflscape}\ package which provides a |landscape| environment to place the landscape figure in. Before the landscape environment, you need to issue a |\clearpage| command and change the pagestyle to |lscape|, and afterwards, change it back to |plain|. Schematically, then, any landscape pages should be created in the following way. @@ -336,10 +352,10 @@ Appendix text goes here \end{quote} \subsubsection{Appendices per chapter} -If you need to add an appendix or appendices to a chapter, you must use the \pkg{[chapterapp]}\ class option. The code for the appendices themselves is exactly as described above. This means that the appendix itself is introduced by the |\chapter| command, \emph{not} a |\section| command (because the this seems to be how the thesis office wants things to look). Furthermore, per-chapter appendices should \emph{not} be preceded by the |\backmatter| command, which should only precede the global bibliography or appendices. +If you need to add an appendix or appendices to a chapter, you must use the \pkg{[chapterapp]}\ class option. The code for the appendices themselves is exactly as described above. This means that the appendix itself is introduced by the |\chapter| command, \emph{not} a |\section| command (because the this seems to be how the thesis office wants things to look). Furthermore, per-chapter appendices should \emph{not} be preceded by the |\backmatter| command, which should not be used at all. \subsection{Bibliographies} -The class places no constraints on how you do your bibliography. It doesn't care whether you are using the \pkg{chapterbib}\ package with \pkg{natbib}\ or the per-chapter bibliography functionality provided by \pkg{biblatex}. If you have per-chapter bibliographies, however, you \emph{must}\ use the |[chapterbib]| class option. This option lets the class know that you are using per-chapter bibliographies. Before any bibliography (whether global or per-chapter) you should use the |\makebibliographypage| command. Note that per-chapter bibliographies should \emph{not} be preceded by the |\backmatter| command, which should only precede the global bibliography or appendices. +The class places no constraints on how you do your bibliography. It doesn't care whether you are using the \pkg{chapterbib}\ package with \pkg{natbib}\ or the per-chapter bibliography functionality provided by \pkg{biblatex}. If you have per-chapter bibliographies, however, you \emph{must}\ use the |[chapterbib]| class option. This option lets the class know that you are using per-chapter bibliographies. Note that per-chapter bibliographies should \emph{not} be preceded by the |\backmatter| command, which should not be used at all. \subsubsection{Bibliography spacing}\label{bibspacing} Please note that although bibliography entries must be single spaced, there must be a space between each entry. This parameter is set by your bibliography package and not by the class itself. If you are using \pkg{natbib}\ or \pkg{biblatex}\ these spacing parameters are set for you by the class. If you are using another package for your bibliography you are responsible for adjusting the relevant spacing parameters. @@ -386,10 +402,10 @@ I'm happy to answer emails about formatting issues with the class, especially wh \subsection{Archiving your thesis for the future} Since the current version of the \pkg{msu-thesis}\ class satisfies the Graduate School requirements at any one time, as these requirements change, you may find that if you need to recompile your thesis after you have graduated that the formatting changes. To avoid this, I would recommend saving an archived version of the \pkg{msu-thesis.cls}\ file in the same folder as your thesis file. You only need to do this once you have completely finished your thesis however; there's no need to do it during the writing process. \subsection{Major Version history} -Previous versions of \pkg{msu-thesis}\ (versions 1.0--1.4b) were created for non-electronic submission and should not be used. Versions 1.5--1.6 (the first electronic submission versions) contained a |\makeabstract| command and a separate |msuabstract| environment. These have been removed as of version 1.7. Users who are upgrading from earlier versions to version 1.7 do not need to change these commands however but their use will trigger a warning.) Version 2.0 implemented landscape pages; version 2.1 added support for \pkg{hyperref}. Versions 2.2--2.5 mainly accommodated to the ever changing whims of the MSU Graduate School. Version 2.6 fixed some appendix bugs introduced by the previous whim accommodation. Version 2.7 fixed various small spacing issues, fixed a bug which prevented a new chapter page to be a landscape page, added support for the \pkg{apacite}\ package, and updated degree options. Version 2.8 fixed some spacing and capitalization issues and added support for the public abstract. Version 2.9 removed subscript/superscript size restrictions, added font size options and made small spacing changes to appease the thesis office. Version 3.0 added full support for per-chapter bibliographies and appendices, and automated bibliography spacing for |natbib| and |biblatex| produced bibliographies. Version 3.1 added support for an |{algorithm}| environment and a list of algorithms to combat incompatibilities with the \pkg{algorithm}\ and \pkg{algorithm2e}\ packages. Version 3.2 fixed some lingering problems with per-chapter appendices. Version 3.3 added code to accommodate the insane inconsistencies in formatting requirements that the thesis office requires, including a new contents option which hopefully should never be used, and fixed some numbering problems with per-chapter appendices. Version 3.4 added a starred option to the |\makecopyrightpage| command after complaints about placement. The documentation has also been updated to include more information about caption formatting and removed colons from the default caption format. Version 3.5 added user level way to change the spacing after the author’s name in the abstract, to deal with thesis office inconsistency. +Previous versions of \pkg{msu-thesis}\ (versions 1.0--1.4b) were created for non-electronic submission and should not be used. Versions 1.5--1.6 (the first electronic submission versions) contained a |\makeabstract| command and a separate |msuabstract| environment. These have been removed as of version 1.7. Users who are upgrading from earlier versions to version 1.7 do not need to change these commands however but their use will trigger a warning.) Version 2.0 implemented landscape pages; version 2.1 added support for \pkg{hyperref}. Versions 2.2--2.5 mainly accommodated to the ever changing whims of the MSU Graduate School. Version 2.6 fixed some appendix bugs introduced by the previous whim accommodation. Version 2.7 fixed various small spacing issues, fixed a bug which prevented a new chapter page to be a landscape page, added support for the \pkg{apacite}\ package, and updated degree options. Version 2.8 fixed some spacing and capitalization issues and added support for the public abstract. Version 2.9 removed subscript/superscript size restrictions, added font size options and made small spacing changes to appease the thesis office. Version 3.0 added full support for per-chapter bibliographies and appendices, and automated bibliography spacing for |natbib| and |biblatex| produced bibliographies. Version 3.1 added support for an |{algorithm}| environment and a list of algorithms to combat incompatibilities with the \pkg{algorithm}\ and \pkg{algorithm2e}\ packages. Version 3.2 fixed some lingering problems with per-chapter appendices. Version 3.3 added code to accommodate the insane inconsistencies in formatting requirements that the thesis office requires, including a new contents option which hopefully should never be used, and fixed some numbering problems with per-chapter appendices. Version 3.4 added a starred option to the |\makecopyrightpage| command after complaints about placement. The documentation has also been updated to include more information about caption formatting and removed colons from the default caption format. Version 3.5 added user level way to change the spacing after the author’s name in the abstract, to deal with thesis office inconsistency. Version 3.6 added built-in support for the Key to Abbreviations. Version 3.7 added improved support for \pkg{hyperref}. Version 4.0 implements the new requirements as of September 2022, including adding a |\dualmajor| command. Various spacing changes have been made which will make your document look like you used Word, but this is what the thesis office seems to care about. \section{Acknowledgements} -Thanks to Lars Madsen, Ulrike Fischer and Peter Wilson for help with setting up parts of the memoir code for versions 1.0--1.4 (now eliminated due to changed requirements). Thanks to Wolfgang Sternefeld for supplying the \pkg{linguex}\ spacing fix code, Leo Liu for the landscape page numbering code, which greatly simplified my original version, and Florent Chervet for the \pkg{hyperref}\ code. Thanks also to the following students who have reported problems over the years: Irina Agafonova, Ali Al-jiboory, Abubakr Ayesh, Julian Blank, Dmitriy Bryndin, Greg Christian, Kyle Crayne, Ciaron Hamilton, Matt Husband, Changkuk Jung, Adam Liter, Vanessa Maldonado, William Muir, Alicia Parrish, Neil ver Planck, Giacomo Romanini, William Sands, Adam Soliman, Erik Stitt, Eremey Valetov, Matthew Vincent, Michael Wojcik, Stephen Yowono, Ali Zare, and Yisu Zhou. A special thank you to Non Thongprong who graciously provided a copy of his entire thesis which allowed me to debug some especially subtle spacing inconsistencies. +Thanks to Lars Madsen, Ulrike Fischer and Peter Wilson for help with setting up parts of the memoir code for versions 1.0--1.4 (now eliminated due to changed requirements). Thanks to Wolfgang Sternefeld for supplying the \pkg{linguex}\ spacing fix code, Leo Liu for the landscape page numbering code, which greatly simplified my original version. Thanks to Florent Chervet for early \pkg{hyperref} code (up until v.3.6), and Ulrike Fischer for the current \pkg{hyperref} code. Thanks also to the following students who have reported problems over the years: Irina Agafonova, Ali Al-jiboory, Abubakr Ayesh, Julian Blank, Dmitriy Bryndin, Greg Christian, Kyle Crayne, Ciaron Hamilton, Matt Husband, Changkuk Jung, Claire Kopenhafer, Adam Liter, Vanessa Maldonado, William Muir, Alicia Parrish, Neil ver Planck, Nick Rekuski, Giacomo Romanini, William Sands, Adam Soliman, Erik Stitt, Eremey Valetov, Matthew Vincent, Michael Wojcik, Stephen Yowono, Ali Zare, and Yisu Zhou. A special thank you to Non Thongprong who graciously provided a copy of his entire thesis which allowed me to debug some especially subtle spacing inconsistencies. \appendix \renewcommand{\thesection}{Appendix \Alph{section}} @@ -438,10 +454,11 @@ Your acknowledgements here \mainmatter \chapter{Your first chapter} % -\appendix +\begin{appendix} \chapter{Your first appendix} +\end{appendix} \backmatter -\makebibliographypage + \SingleSpacing \bibliography{your-bib-file} \end{document} |