summaryrefslogtreecommitdiff
path: root/macros/latex/contrib/msu-thesis/msu-thesis.cls
diff options
context:
space:
mode:
authorNorbert Preining <norbert@preining.info>2023-10-09 03:05:28 +0000
committerNorbert Preining <norbert@preining.info>2023-10-09 03:05:28 +0000
commit55c62aa6d5cc8ce94c28ac255b66a13ccd2375b2 (patch)
tree1b5eb4f2e66d4ee007cac50ea4d0f34c11cda50f /macros/latex/contrib/msu-thesis/msu-thesis.cls
parent9f6bac4b7884af8d5a457275e30fc5e253ff9de8 (diff)
CTAN sync 202310090305
Diffstat (limited to 'macros/latex/contrib/msu-thesis/msu-thesis.cls')
-rw-r--r--macros/latex/contrib/msu-thesis/msu-thesis.cls81
1 files changed, 43 insertions, 38 deletions
diff --git a/macros/latex/contrib/msu-thesis/msu-thesis.cls b/macros/latex/contrib/msu-thesis/msu-thesis.cls
index b6ff7192f3..f77d580788 100644
--- a/macros/latex/contrib/msu-thesis/msu-thesis.cls
+++ b/macros/latex/contrib/msu-thesis/msu-thesis.cls
@@ -189,13 +189,51 @@
% Version 4.1e 2023/07/24 Fixed per chapter appendices TOC bug;
% Version 4.1f 2023/07/28 Fixed title page spacing issue
% Version 4.1g 2023/08/12 Per chapter appendices and bibliography TOC issue
-%
+% Version 4.1h 2023/10/07 Changed option processing code
% Report bugs/problems/questions to <amunn@msu.edu>
%
-\def\msu@version{4.1g}
-\def\msu@date{2023/08/12}
+\def\msu@version{4.1h}
+\def\msu@date{2023/10/07}
\NeedsTeXFormat{LaTeX2e}
\ProvidesClass{msu-thesis}[\msu@date\space Michigan State University Thesis Class version \msu@version]
+\DeclareKeys[msu-thesis]
+{
+PhD.code = {\gdef\msu@degree{Doctor of Philosophy}},
+DEd.code = {\gdef\msu@degree{Doctor of Education}},
+DMA.code = {\gdef\msu@degree{Doctor of Musical Arts}},
+DNP.code = {\gdef\msu@degree{Doctor of Nursing Practice}},
+MA.code = {\gdef\msu@degree{Master of Arts}\global\msu@dissertationfalse},
+MS.code = {\gdef\msu@degree{Master of Science}\global\msu@dissertationfalse},
+MAT.code = {\gdef\msu@degree{Master of Arts for Teachers}\global\msu@dissertationfalse},
+MBA.code = {\gdef\msu@degree{Master of Business Administration}\global\msu@dissertationfalse},
+MFA.code = {\gdef\msu@degree{Master of Fine Arts}\global\msu@dissertationfalse},
+MIPS.code = {\gdef\msu@degree{Master of International Planning Studies}\global\msu@dissertationfalse},
+MHRL.code = {\gdef\msu@degree{Master of Human Resources and Labor Relations}\global\msu@dissertationfalse},
+MMus.code = {\gdef\msu@degree{Master of Music}\global\msu@dissertationfalse},
+%MSN.code = {\gdef\msu@degree{Master of Science in Nursing}\global\msu@dissertationfalse},
+MPH.code = {\gdef\msu@degree{Master of Public Health}\global\msu@dissertationfalse},
+MPP.code = {\gdef\msu@degree{Master of Public Policy}\global\msu@dissertationfalse},
+MSW.code = {\gdef\msu@degree{Master of Social Work}\global\msu@dissertationfalse},
+MURP.code = {\gdef\msu@degree{Master in Urban and Regional Planning}\global\msu@dissertationfalse},
+lscape.code = {%
+\msu@lscapetrue
+\AtEndDocument{\ClassWarningNoLine{msu-thesis}{You have chosen the [lscape] option. You may need to run latex twice to get landscape page numbering to display correctly}}},
+boldtoc.code = {\msu@stupidtoctrue\msu@plaintocfalse\msu@mixedtocfalse},
+plaintoc.code = {\msu@plaintoctrue\msu@stupidtocfalse\msu@mixedtocfalse},
+mixedtoc.code = {\msu@mixedtoctrue\msu@stupidtocfalse\msu@plaintocfalse},
+chapterbib.code = {\global\msu@chapterbibtrue\def\msu@bibtype{CHAPBIB}}, % per-chapter bibliographies added v3.0
+bibassection.code = {\def\msu@bibsection{section}}, % per-chapter bibs as sections in TOC
+chapterapp.code = {
+ \global\msu@chapterapptrue
+ \def\msu@apptype{CHAPAPP}
+ % per-chapter appendices added v3.0
+ \renewcommand\msuappendixnumformat{\the@ppsavesec\Alph{chapter}} % Appendix numbers per-chapter (now permitted)
+},
+12pt.code = {\def\msu@sizeoption{12pt}}, % added v2.9
+11pt.code = {\def\msu@sizeoption{11pt}},
+10pt.code = {\def\msu@sizeoption{10pt}}
+}
+
\newif\ifmsu@dissertation\msu@dissertationtrue % added v2.7 boolean for \msu@thesistype
\newif\ifmsu@chapterbib\msu@chapterbibfalse % added v3.0
\def\msu@bibtype{BIB}
@@ -210,42 +248,9 @@
\newif\ifmsu@colonintoc\msu@colonintocfalse
\newif\ifmsu@hyperloaded\msu@hyperloadedfalse
\newif\ifmsu@dualmajor\msu@dualmajorfalse
-\DeclareOption{PhD}{\gdef\msu@degree{Doctor of Philosophy}}
-\DeclareOption{DEd}{\gdef\msu@degree{Doctor of Education}}
-\DeclareOption{DMA}{\gdef\msu@degree{Doctor of Musical Arts}}
-\DeclareOption{DNP}{\gdef\msu@degree{Doctor of Nursing Practice}}
-\DeclareOption{MA}{\gdef\msu@degree{Master of Arts}\global\msu@dissertationfalse}
-\DeclareOption{MS}{\gdef\msu@degree{Master of Science}\global\msu@dissertationfalse}
-\DeclareOption{MAT}{\gdef\msu@degree{Master of Arts for Teachers}\global\msu@dissertationfalse}
-\DeclareOption{MBA}{\gdef\msu@degree{Master of Business Administration}\global\msu@dissertationfalse}
-\DeclareOption{MFA}{\gdef\msu@degree{Master of Fine Arts}\global\msu@dissertationfalse}
-\DeclareOption{MIPS}{\gdef\msu@degree{Master of International Planning Studies}\global\msu@dissertationfalse}
-\DeclareOption{MHRL}{\gdef\msu@degree{Master of Human Resources and Labor Relations}\global\msu@dissertationfalse}
-\DeclareOption{MMus}{\gdef\msu@degree{Master of Music}\global\msu@dissertationfalse}
-%\DeclareOption{MSN}{\gdef\msu@degree{Master of Science in Nursing}\global\msu@dissertationfalse}
-\DeclareOption{MPH}{\gdef\msu@degree{Master of Public Health}\global\msu@dissertationfalse}
-\DeclareOption{MPP}{\gdef\msu@degree{Master of Public Policy}\global\msu@dissertationfalse}
-\DeclareOption{MSW}{\gdef\msu@degree{Master of Social Work}\global\msu@dissertationfalse}
-\DeclareOption{MURP}{\gdef\msu@degree{Master in Urban and Regional Planning}\global\msu@dissertationfalse}
-\DeclareOption{lscape}{%
-\msu@lscapetrue
-\AtEndDocument{\ClassWarningNoLine{msu-thesis}{You have chosen the [lscape] option. You may need to run latex twice to get landscape page numbering to display correctly}}}
-\DeclareOption{boldtoc}{\msu@stupidtoctrue\msu@plaintocfalse\msu@mixedtocfalse}
-\DeclareOption{plaintoc}{\msu@plaintoctrue\msu@stupidtocfalse\msu@mixedtocfalse}
-\DeclareOption{mixedtoc}{\msu@mixedtoctrue\msu@stupidtocfalse\msu@plaintocfalse}
-\DeclareOption{chapterbib}{\global\msu@chapterbibtrue\def\msu@bibtype{CHAPBIB}} % per-chapter bibliographies added v3.0
\newcommand*\msu@bibsection{chapter} % per-chapter bibliographies like chapters in TOC
-\DeclareOption{bibassection}{\def\msu@bibsection{section}} % per-chapter bibs as sections in TOC
-\DeclareOption{chapterapp}{
- \global\msu@chapterapptrue
- \def\msu@apptype{APPENDICES}
- % per-chapter appendices added v3.0
- \renewcommand\msuappendixnumformat{\ifmsu@singleappendix\else\Alph{chapter}\fi} % Appendix numbers per-chapter not permitted as of v4
-}
-\DeclareOption{12pt}{\def\msu@sizeoption{12pt}} % added v2.9
-\DeclareOption{11pt}{\def\msu@sizeoption{11pt}}
-\DeclareOption{10pt}{\def\msu@sizeoption{10pt}}
-\ExecuteOptions{PhD,12pt}
+\SetKeys[msu-thesis]{PhD,12pt}
+\ProcessKeyOptions[msu-thesis]
\DeclareOption*{
\PassOptionsToClass{\CurrentOption}{memoir}
}