diff options
Diffstat (limited to 'macros/latex/contrib/turabian-formatting/turabian-thesis.cls')
-rw-r--r-- | macros/latex/contrib/turabian-formatting/turabian-thesis.cls | 272 |
1 files changed, 122 insertions, 150 deletions
diff --git a/macros/latex/contrib/turabian-formatting/turabian-thesis.cls b/macros/latex/contrib/turabian-formatting/turabian-thesis.cls index a95a62a7b6..0fdcff0aa4 100644 --- a/macros/latex/contrib/turabian-formatting/turabian-thesis.cls +++ b/macros/latex/contrib/turabian-formatting/turabian-thesis.cls @@ -4,7 +4,7 @@ % and Dissertations," 9th edition. % % ============================== -% Copyright 2013-2018 Omar Abdool +% Copyright 2013-2020 Omar Abdool % % This work may be distributed and/or modified under the conditions of the LaTeX % Project Public License (LPPL), either version 1.3 of this license or (at your @@ -27,7 +27,7 @@ \NeedsTeXFormat{LaTeX2e} -\ProvidesClass{turabian-thesis}[2018/08/01 Turabian Theses and Dissertations] +\ProvidesClass{turabian-thesis}[2020/03/19 Turabian Theses and Dissertations] % Default point size @@ -128,57 +128,56 @@ \if@openright \cleardoublepage \else \clearpage \fi \secdef\@part\@spart} -\def\tf@partformat{\normalfont\bfseries\normalsize\singlespacing\centering} +\def\tf@partformat{\normalfont\bfseries\normalsize\centering} % Part: heading with empty page \def\@part[#1]#2{% \ifnum \c@secnumdepth >-2\relax - \if@mainmatter - \refstepcounter{part}% - \addcontentsline{toc}{part}% - {\protect\numberline{\partname\space\thepart}#1}% - \else - \addcontentsline{toc}{part}{#1}% - \fi + \refstepcounter{part} + \setcounter{footnote}{0} + \addcontentsline{toc}{part}% + {\protect\numberline{\partname\space\thepart}#1} \else - \addcontentsline{toc}{part}{#1}% + \addcontentsline{toc}{part}{#1} \fi - \markboth{}{}% - { \tf@partformat + \markboth{}{} + \thispagestyle{empty} + \begingroup + \setlength\parskip{\tf@singlelineskip} + \singlespacing \interlinepenalty \@M - \thispagestyle{empty}% - \ifnum \c@secnumdepth >-2\relax - \if@mainmatter - \partname\nobreakspace\thepart - \par\nobreak - \vspace*{1\baselineskip}% - \fi - \fi - #2\par} + \tf@partformat{ + \ifnum \c@secnumdepth >-2\relax + \partname\nobreakspace\thepart\relax\@@par + \fi% + #1\@@par}% + \endgroup \@endpart} % Part: heading with plain page style; allows following part description \def\@spart#1{% \ifnum \c@secnumdepth >-2\relax - \if@mainmatter - \refstepcounter{part}% - \addcontentsline{toc}{part}% - {\protect\numberline{\partname\space\thepart}#1}% - \fi + \refstepcounter{part} + \setcounter{footnote}{0} + \addcontentsline{toc}{part}% + {\protect\numberline{\partname\space\thepart}#1} + \else + \addcontentsline{toc}{part}{#1} \fi - \markboth{}{}% - { \tf@partformat + \markboth{}{} + \thispagestyle{plain} + \begingroup + \setlength\parskip{\tf@singlelineskip} + \singlespacing \interlinepenalty \@M - \thispagestyle{plain}% - \ifnum \c@secnumdepth >-2\relax - \if@mainmatter - \partname\nobreakspace\thepart - \par\nobreak - \vspace*{1\baselineskip}% - \fi - \fi - \ifstrempty{#1}{}{#1\par\nobreak}}% - \vspace{\dimexpr 3\tf@singlelineskip -\baselineskip \relax} + \tf@partformat{ + \ifnum \c@secnumdepth >-2\relax + \partname\nobreakspace\thepart\relax\@@par + \fi% + #1\@@par}% + \endgroup + \vskip 2\tf@singlelineskip + \@afterindenttrue \@afterheading} \def\@endpart{\if@openright \cleardoublepage \else \clearpage \fi} @@ -220,83 +219,62 @@ \@tfchapterbeforefalse \fi} -% Chapter: formatting -\def\tf@chapformat{\normalfont\bfseries\normalsize\singlespacing\centering} - -\newlength\tf@adjafterchapskip -\setlength\tf@adjafterchapskip{\z@} - -\def\tf@setafterchapskip{% - \setlength\tf@adjafterchapskip{% - \dimexpr 3\tf@singlelineskip -\baselineskip \relax}} - +% Chapter: heading layout \def\@chapter[#1]#2{% \@figuredblnumfalse \@tabledblnumfalse - \tf@afterindent + \@afterindenttrue \ifnum \c@secnumdepth >\m@ne + \setcounter{footnote}{0} \if@mainmatter \tf@chapcounter - \typeout{\@chapapp\space\thechapter.}% + \typeout{\@chapapp\space\thechapter} \addcontentsline{toc}{chapter}% - {\protect\numberline{\@chapapp\space\thechapter}#1}% + {\protect\numberline{\@chapapp\space\thechapter}#1} + \tf@endnotesection{\@chapapp\space\thechapter} \else \tf@restoreftcounters - \addcontentsline{toc}{chapter}{#1}% + \addcontentsline{toc}{chapter}{#1} + \tf@endnotesection{#1} \fi \else - \addcontentsline{toc}{chapter}{#1}% + \addcontentsline{toc}{chapter}{#1} \fi - \chaptermark{#1}% - \@makechapterhead{#2}% + \chaptermark{#1} + \@makechapterhead{#2} \@afterheading} \def\@schapter#1{% \@figuredblnumfalse \@tabledblnumfalse \tf@restoreftcounters - \tf@afterindent - \@makeschapterhead{#1}% + \@afterindenttrue + \@makeschapterhead{#1} \@afterheading} +% Chapter: heading formatting +\def\tf@chapformat{\normalfont\bfseries\normalsize\centering} + \def\@makechapterhead#1{% - \tf@setafterchapskip - { \tf@chapformat - \ifnum \c@secnumdepth >\m@ne - \if@mainmatter - \@chapapp\space \thechapter - \par\nobreak - \vspace*{1\baselineskip}% - \fi - \fi + \begingroup + \setlength\parskip{\tf@singlelineskip} + \singlespacing \interlinepenalty\@M - \ifstrempty{#1}{}{#1\par\nobreak \vspace{\tf@adjafterchapskip}}}} + \tf@chapformat{ + \ifnum \c@secnumdepth >\m@ne + \if@mainmatter + \@chapapp\space \thechapter\relax\@@par + \fi% + \fi% + #1\@@par} + \endgroup + \vskip 2\tf@singlelineskip} \def\@makeschapterhead#1{% - \tf@setafterchapskip - { \tf@chapformat + { \singlespacing \interlinepenalty\@M - #1\par\nobreak - \vspace{\tf@adjafterchapskip}}} - - -% Sections: redefine \@startsection to support adjusting space after section headings -\def\@startsection#1#2#3#4#5#6{% - \if@noskipsec \leavevmode \fi - \par - \@tempskipa #4\relax - \@afterindenttrue - \ifdim \@tempskipa <\z@ - \@tempskipa -\@tempskipa \tf@afterindent - \fi - \if@nobreak - \everypar{}% - \else - \addpenalty\@secpenalty\addvspace\@tempskipa - \fi - \@ifstar - {\@ssect{#3}{#4}{\dimexpr #5 -\tf@adjaftersec \relax}{#6}}% - {\@dblarg{\@sect{#1}{#2}{#3}{#4}{\dimexpr #5 -\tf@adjaftersec \relax}{#6}}}} + \tf@chapformat{#1}\par\nobreak}% + \vskip 2\tf@singlelineskip} % Title page: commands for use with \maketitle @@ -357,7 +335,7 @@ \renewcommand{\maketitle}{% \begin{titlepage}% \singlespacing - \tf@setfnpunct{} + \def\tf@thefnpunct{\,\,} \renewcommand*{\thefootnote}{\fnsymbol{footnote}} \let\footnoterule\relax \normalfont\normalsize @@ -404,9 +382,8 @@ \renewcommand*{\l@part}[2]{% \ifnum \c@tocdepth >-2\relax \addpenalty{-\@highpenalty}% - \addvspace{1\baselineskip}% + \vskip 2\tf@singlelineskip % \setlength\@tempdima{1.25in}% - \vskip 1\baselineskip { \parindent \z@ \rightskip \z@ \parfillskip -\@rightskip @@ -433,7 +410,7 @@ \renewcommand*{\l@section}{% \ifnum \c@tocdepth >\z@ \vskip \tf@singlelineskip \fi - \@dottedtocline{1}{1.5in}{\z@}} + \@dottedtocline{1}{1.25in}{\z@}} \renewcommand*{\l@subsection}{% \ifnum \c@tocdepth >1 \vskip \tf@singlelineskip \fi @@ -493,19 +470,36 @@ \newcounter{appendix} +% Appendixes: heading formatting +\def\tf@appendixchapfrmt{% + \def\thechapter{\@Alph\c@appendix} + \def\@chapapp{\appendixname}% + \protect\def\@chapter[##1]##2{% + \tf@appendixcounter + \setcounter{footnote}{0} + \@afterindenttrue + \typeout{\@chapapp\space\thechapter} + \addcontentsline{toc}{chapter}% + {\protect\numberline{\@chapapp\space\thechapter}##1} + \chaptermark{##1} + \tf@endnotesection{\@chapapp\space\thechapter} + \begingroup + \setlength\parskip{\tf@singlelineskip} + \singlespacing + \interlinepenalty\@M + \tf@chapformat{\@chapapp\space \thechapter\@@par ##2\@@par} + \endgroup + \vskip 2\tf@singlelineskip + \@afterheading}} + \newenvironment{appendixes}% {% - \@mainmattertrue - \setcounter{section}{0}% - \def\@chapapp{\appendixname}% - \def\thechapter{\@Alph\c@appendix} - \def\tf@chapcounter{\refstepcounter{appendix}} \if@doublenumerate \if@tfchapterbefore \else \setcounter{tf@tempchapfcnt}{\value{figure}} \setcounter{tf@tempchaptcnt}{\value{table}} \fi - \def\tf@chapcounter{% + \def\tf@appendixcounter{% \refstepcounter{appendix} \@figuredblnumtrue \@tabledblnumtrue} @@ -513,70 +507,48 @@ \setcounter{table}{0} \def\tf@figuredblnumprefix{A} \def\tf@tabledblnumprefix{A} + \else + \def\tf@appendixcounter{% + \refstepcounter{appendix} + \@figuredblnumfalse + \@tabledblnumfalse} \fi + \tf@appendixchapfrmt% }% {% \if@doublenumerate \setcounter{figure}{\value{tf@tempchapfcnt}} \setcounter{table}{\value{tf@tempchaptcnt}} - \fi + \fi% } % Appendixes: remove \appendix command \def\appendix{\@empty} -% Endnotes: layout and formatting +% Endnotes: reset endnote counter and create endnote section heading +\def\tf@endnotesection#1{% + \if@endnotesformat + \setcounter{endnote}{0} + \if@enotesopen + \addtoendnotes{\noexpand\tf@enotesechead{#1}} + \fi + \fi} +% Endnotes: format and make endnote section heading if followed by an endnote \if@endnotesformat + \def\tf@enotesechead#1{% + \@ifnextchar\@doanenote% + {\vskip\tf@singlelineskip\relax \section*{#1}}% + {}} +\fi - \let\tf@chapter\chapter - - \@addtoreset{endnote}{chapter} - - % Renew Notes heading formatted as \chapter* (also added to Table of Content) - \renewcommand{\enoteheading}{% - \tf@chapter*{\notesname}% - \@mkboth{\notesname}{\notesname}% - \addcontentsline{toc}{chapter}{\notesname}% - \vspace{\dimexpr -5\tf@singlelineskip +1\baselineskip \relax}% - \singlespacing\mbox{}% - \def\tf@adjaftersec{\dimexpr \tf@singlelineskip -\p@ \relax} - \let\tf@afterindent\@afterindenttrue}% - - % Renew \chapter command to: (1) reset endnotes counter at each chapter, and (2) add subheadings for each chapter in \endnotes formatting. - \RenewDocumentCommand{\chapter}{som}{% - \IfBooleanTF{#1}% - {% if \chapter* - \tf@chapter*{#3}% - \setcounter{endnote}{0}% - \addtoendnotes{% - \noexpand\tf@enotedivider% - {\noexpand\section*}{\unexpanded{#3}}}% - }% - {% if \chapter - \IfNoValueTF{#2}% - {\tf@chapter{#3}}% - {\tf@chapter[#2]{#3}}% - \setcounter{endnote}{0}% - \if@mainmatter - \addtoendnotes{% - \noexpand\tf@enotedivider% - {\noexpand\section*}{\@chapapp\space \thechapter}}% - \else - \addtoendnotes{% - \noexpand\tf@enotedivider% - {\noexpand\section*}{\unexpanded{#3}}}% - \fi - }} - - % Empty subheading divider before \theendnotes for use with \tf@enotedivider - \preto{\theendnotes}{% - \addtoendnotes{\noexpand\tf@enotedivider{}{}}} - - % Make endnote divider if not followed by another endnote divider - \def\tf@enotedivider#1#2{\@ifnextchar\tf@enotedivider{}{#1{#2}}}% - +% Endnotes: Notes heading formatted as \chapter* +\if@endnotesformat + \def\enoteheading{% + \chapter*{\notesname}% + \@mkboth{}{}% + \addcontentsline{toc}{chapter}{\notesname}} \fi |