From 1b5bddace01f2a00882c38e13c677f11537042cb Mon Sep 17 00:00:00 2001 From: Karl Berry Date: Sun, 18 Sep 2016 21:07:17 +0000 Subject: turabian-formatting (18sep16) git-svn-id: svn://tug.org/texlive/trunk@42097 c570f23f-e606-0410-a88d-b1316a301751 --- .../turabian-formatting/turabian-formatting.sty | 76 ++----- .../turabian-formatting/turabian-researchpaper.cls | 115 +++++++++-- .../latex/turabian-formatting/turabian-thesis.cls | 224 ++++++++++++++++----- 3 files changed, 281 insertions(+), 134 deletions(-) (limited to 'Master/texmf-dist/tex/latex/turabian-formatting') diff --git a/Master/texmf-dist/tex/latex/turabian-formatting/turabian-formatting.sty b/Master/texmf-dist/tex/latex/turabian-formatting/turabian-formatting.sty index 2a7b4a40b26..f53320c3f86 100644 --- a/Master/texmf-dist/tex/latex/turabian-formatting/turabian-formatting.sty +++ b/Master/texmf-dist/tex/latex/turabian-formatting/turabian-formatting.sty @@ -27,7 +27,7 @@ \NeedsTeXFormat{LaTeX2e} -\ProvidesPackage{turabian-formatting}[2016/07/18 Turabian Formatting] +\ProvidesPackage{turabian-formatting}[2016/09/17 Turabian Formatting] % Package options: flags @@ -215,48 +215,16 @@ {\normalfont\bfseries\normalsize\singlespacing\raggedright}} -% Title page: commands for use with \maketitle - -\newcommand{\subtitle}[1]{\gdef\tf@subtitle{#1}} -\subtitle{\@empty} - -\newcommand{\submissioninfo}[1]{\gdef\tf@submissioninfo{#1}} -\submissioninfo{\@empty} - -% Title page: command for emptying/completing \maketitle -\newcommand{\tf@emptymaketitle}{% - % if not endnotes, reset footnote counter - \if@endnotesformat \else \setcounter{footnote}{0} \fi - - % Clear command content at end of \maketitle - \global\let\thanks\relax - \global\let\maketitle\relax - - \global\let\@thanks\@empty - \global\let\@author\@empty - \global\let\@date\@empty - \global\let\@title\@empty - \global\let\tf@subtitle\@empty - \global\let\tf@submissioninfo\@empty - - \global\let\title\relax - \global\let\author\relax - \global\let\date\relax - \global\let\subtitle\relax - \global\let\submissioninfo\relax} - - -% Table of Contents, Figures, and Tables: section number alignment adjustments +% Table of Contents, List of Figures, and List of Tables: section number alignment \def\tflist@beforesecnum{} \def\tflist@aftersecnum{\hfil} \def\numberline#1{\hb@xt@\@tempdima{\tflist@beforesecnum #1\tflist@aftersecnum}} % Table of Contents: renew \tableofcontents with single spacing support +\def\tf@tocpagestyle{\@empty} \renewcommand{\tableofcontents}{% - \ifstrequal{\tf@topsecname}{chapter}% - {\pagestyle{plain}}% - {\thispagestyle{plain}}% + \tf@tocpagestyle \expandafter\csname \tf@topsecname\endcsname*{\contentsname}% \@mkboth{\MakeUppercase\contentsname}{\MakeUppercase\contentsname}% \if@optraggedright @@ -273,9 +241,7 @@ \def\@pnumwidth{2.5em} -% Figures, Tables, and Illustrations - -% Figures and Tables: adjust list titles +% List of Figures and List of Tables: adjust titles \renewcommand{\listfigurename}{Figures} \renewcommand{\listtablename}{Tables} @@ -350,7 +316,6 @@ % Lists: enumerate and itemize formatting - \setlength\leftmargini{1.5\parindent} \setlength\leftmargin{\leftmargini} \setlength\leftmarginii{\parindent} @@ -416,9 +381,11 @@ \fi \setlength\parsep{\z@} % Place line spacing between text and quotation - \ifnumequal{\baselinestretch}{1}% - {\setlength\topsep{\baselineskip}}% - {\setlength\topsep{\z@}}}% + \ifnum \baselinestretch =1 + \setlength\topsep{\baselineskip} + \else + \setlength\topsep{\z@} + \fi}% \singlespacing% \item\relax% } @@ -426,15 +393,6 @@ \def\quote{\quotation} -% Appendixes: formatting - -\AtEndPreamble{% - \let\tf@appendix\appendix - \def\appendix{\@empty}} - -\newif\if@appendixes\@appendixesfalse - - % thebibliography environment: formatting (adjust \@openbib@code hook default) \setlength\bibindent{\parindent} @@ -449,15 +407,7 @@ \setlength\parsep{\z@}} -% biblatex-chicago: set formatting defaults - -% biblatex-chicago: provide warning if loaded before turabian-formatting -\@ifpackageloaded{biblatex-chicago}% - {% - \PackageWarningNoLine{turabian-formatting}{Loading the 'biblatex-chicago' package after the 'turabian-formatting' package is recommended. See documentation for more information}% - }{} - -% biblatex-chicago: pass options +% biblatex-chicago: set formatting defaults and pass options \PassOptionsToPackage% {isbn=false, autolang=other, footmarkoff, backend=biber}% {biblatex-chicago} @@ -477,7 +427,9 @@ \DefineBibliographyStrings{english}{% references = {Bibliography}} \fi - \renewcommand{\bibsetup}{\singlespacing} + \renewcommand{\bibsetup}{% + \addcontentsline{toc}{\tf@topsecname}{\bibname} + \singlespacing} \renewcommand{\bibitemsep}{1\baselineskip} \renewcommand{\bibhang}{0.5in} }{}} diff --git a/Master/texmf-dist/tex/latex/turabian-formatting/turabian-researchpaper.cls b/Master/texmf-dist/tex/latex/turabian-formatting/turabian-researchpaper.cls index 27f7017ad9a..d7eb71c8bdc 100644 --- a/Master/texmf-dist/tex/latex/turabian-formatting/turabian-researchpaper.cls +++ b/Master/texmf-dist/tex/latex/turabian-formatting/turabian-researchpaper.cls @@ -27,7 +27,7 @@ \NeedsTeXFormat{LaTeX2e} -\ProvidesClass{turabian-researchpaper}[2016/07/18 Turabian Research Paper] +\ProvidesClass{turabian-researchpaper}[2016/09/17 Turabian Research Paper] % Default point size @@ -79,18 +79,46 @@ \RequirePackage{turabian-formatting} +% Part: formatting +\def\tf@partformat{\normalfont\bfseries\normalsize\singlespacing\centering} + +\def\@part[#1]#2{% + \ifnum \c@secnumdepth >-2\relax + \refstepcounter{part}% + \addcontentsline{toc}{part}% + {\protect\numberline{\thepart.}#1}% + \else + \addcontentsline{toc}{part}{#1}% + \fi + \markboth{}{}% + { \tf@partformat + \interlinepenalty \@M + \ifnum \c@secnumdepth >-2\relax + \partname\nobreakspace\thepart + \par\nobreak + \vspace*{1\baselineskip}% + \fi + \ifstrempty{#2}{}{#2\par\nobreak \vspace{1\baselineskip}}}} + +\def\@spart#1{% + { \tf@partformat + \interlinepenalty \@M + #1\par\nobreak + \vspace{1\baselineskip}}} + + % Sections: \section* adjustment to space after heading \newif\if@adjustssection\@adjustssectiontrue -\newlength\tf@ssectafterskip -\setlength\tf@ssectafterskip{1\p@} +\newlength\tf@ssect@afterskip +\setlength\tf@ssect@afterskip{1\p@} % Sections: command to disable differentiate and reformat \section* \gdef\noadjustssect{\@adjustssectionfalse} % Sections: adjustment to space after \section heading \newif\if@tf@adjustsection\@tf@adjustsectionfalse -\newlength\tf@sectafterskip -\setlength\tf@sectafterskip{1\p@} +\newlength\tf@sect@afterskip +\setlength\tf@sect@afterskip{1\p@} % Sections: redefine \@startsection to differentiate starred version \def\@startsection#1#2#3#4#5#6{% @@ -104,21 +132,21 @@ \if@nobreak \everypar{} \else \addpenalty\@secpenalty\addvspace\@tempskipa \fi - \setlength\tf@ssectafterskip{#5} + \setlength\tf@ssect@afterskip{#5} \if@adjustssection \ifstrequal{#1}{section}% - {\setlength\tf@ssectafterskip{\tf@singlelineskip}}% + {\setlength\tf@ssect@afterskip{\tf@singlelineskip}}% {} \fi - \setlength\tf@sectafterskip{#5} + \setlength\tf@sect@afterskip{#5} \if@tf@adjustsection \ifstrequal{#1}{section}% - {\setlength\tf@sectafterskip{\tf@singlelineskip}}% + {\setlength\tf@sect@afterskip{\tf@singlelineskip}}% {} \fi \@ifstar - {\@ssect{#3}{#4}{\tf@ssectafterskip}{#6}}% - {\@dblarg{\@sect{#1}{#2}{#3}{#4}{\tf@sectafterskip}{#6}}}} + {\@ssect{#3}{#4}{\tf@ssect@afterskip}{#6}}% + {\@dblarg{\@sect{#1}{#2}{#3}{#4}{\tf@sect@afterskip}{#6}}}} % Sections: formatting between \@svsec and heading \protected@edef\tf@secsep#1#2{\@empty} @@ -161,9 +189,35 @@ % Title page: commands for use with \maketitle +\newcommand{\subtitle}[1]{\gdef\tf@subtitle{#1}} +\subtitle{\@empty} + +\newcommand{\submissioninfo}[1]{\gdef\tf@submissioninfo{#1}} +\submissioninfo{\@empty} + \newcommand{\course}[1]{\gdef\tf@course{#1}} \course{\@empty} +% Title page: command for emptying/completing \maketitle +\newcommand{\tf@emptymaketitle}{% + \global\let\thanks\relax + \global\let\maketitle\relax + + \global\let\@thanks\@empty + \global\let\@author\@empty + \global\let\@date\@empty + \global\let\@title\@empty + \global\let\tf@subtitle\@empty + \global\let\tf@submissioninfo\@empty + \global\let\tf@course\@empty + + \global\let\title\relax + \global\let\author\relax + \global\let\date\relax + \global\let\subtitle\relax + \global\let\submissioninfo\relax + \global\let\course\relax} + % Title page: renew \maketitle command research paper \if@titlepage % Formatting for titlepage option @@ -186,9 +240,9 @@ \@date\par \parskip=\z@ \end{titlepage}% + % if not endnotes, reset footnote counter + \if@endnotesformat \else \setcounter{footnote}{0} \fi \tf@emptymaketitle - \global\let\tf@course\@empty - \global\let\course\relax \cleardoublepage} \else % Formatting for notitlepage option @@ -208,9 +262,9 @@ \@date\par \vspace*{0.5in} \vspace*{-1\baselineskip}} - \tf@emptymaketitle - \global\let\tf@course\@empty - \global\let\course\relax} + % if not endnotes, reset footnote counter + \if@endnotesformat \else \setcounter{footnote}{0} \fi + \tf@emptymaketitle} \fi @@ -218,6 +272,21 @@ \setcounter{tocdepth}{1} +\renewcommand*{\l@part}[2]{% + \ifnum \c@tocdepth >-2\relax + \addpenalty{-\@highpenalty}% + \addvspace{1\baselineskip}% + \setlength\@tempdima{3em}% + \vskip 1\baselineskip + { \parindent \z@ + \rightskip \z@ + \parfillskip -\@rightskip + \leavevmode + \advance\leftskip\@tempdima + \hskip -\leftskip + \bfseries #1\nobreak\hfil \nobreak\hb@xt@\@pnumwidth{\hss #2}\par} + \fi} + \renewcommand*{\l@section}[2]{% \ifnum \c@tocdepth >\z@ \addpenalty\@secpenalty @@ -242,7 +311,7 @@ \@dottedtocline{3}{1.0in}{\z@}} -% Figures and Tables: list formatting +% List of Figures: formatting \renewcommand*{\l@figure}[2]{% \def\tflist@beforesecnum{\hfil} \def\tflist@aftersecnum{\hspace{3.5em}} @@ -256,6 +325,9 @@ \leavevmode \advance\leftskip\@tempdima \null\nobreak\hskip -\leftskip #1\nobreak\hfil \nobreak\hb@xt@\@pnumwidth{\hss #2}\par}} + + +% List of Tables: formatting \def\l@table{\l@figure} @@ -284,17 +356,22 @@ % Appendixes: make environment \newenvironment{appendixes}% {% - \@appendixestrue \setcounter{secnumdepth}{1} \tf@appendixsecfrmt - \tf@appendix + \setcounter{section}{0}% + \setcounter{subsection}{0}% + \gdef\thesection{\@Alph\c@section}% }% {% \setcounter{secnumdepth}{0}% \setcounter{section}{0}% + \setcounter{subsection}{0}% \gdef\thesection{\@arabic\c@section}% }% +% Appendixes: remove \appendix command +\def\appendix{\@empty} + % Endnotes: Notes heading formatted as \section* \if@endnotesformat diff --git a/Master/texmf-dist/tex/latex/turabian-formatting/turabian-thesis.cls b/Master/texmf-dist/tex/latex/turabian-formatting/turabian-thesis.cls index 87bd482e3b4..e2b6e6e4a54 100644 --- a/Master/texmf-dist/tex/latex/turabian-formatting/turabian-thesis.cls +++ b/Master/texmf-dist/tex/latex/turabian-formatting/turabian-thesis.cls @@ -27,7 +27,7 @@ \NeedsTeXFormat{LaTeX2e} -\ProvidesClass{turabian-thesis}[2016/07/18 Turabian Theses and Dissertations] +\ProvidesClass{turabian-thesis}[2016/09/17 Turabian Theses and Dissertations] % Default point size @@ -89,52 +89,116 @@ \newif\if@doublenumerate\@doublenumeratetrue -% Document structure: formatting +% Figures: number formatting +\newif\if@figuredblnum\@figuredblnumfalse +\renewcommand{\thefigure}{\if@figuredblnum \thechapter.\fi \@arabic\c@figure} + + +% Tables: number formatting +\newif\if@tabledblnum\@tabledblnumfalse +\renewcommand{\thetable}{\if@tabledblnum \thechapter.\fi \@arabic\c@table} + +% Document structure: formatting \def\frontmatter{% - \cleardoublepage + \if@openright \cleardoublepage \else \clearpage \fi \@mainmatterfalse \pagenumbering{roman} - \pagestyle{empty}} + \pagestyle{empty} + \def\tf@tocpagestyle{\pagestyle{plain}}} \def\mainmatter{% - \cleardoublepage + \if@openright \cleardoublepage \else \clearpage \fi \@mainmattertrue \pagenumbering{arabic} \pagestyle{headings} - \if@doublenumerate - \setcounter{tf@tempchapfcnt}{\value{figure}} - \setcounter{tf@tempchaptcnt}{\value{table}} - \fi \addtocontents{toc}{\protect\addvspace{1\baselineskip}}} \def\backmatter{% \if@openright \cleardoublepage \else \clearpage \fi \@mainmatterfalse - \if@doublenumerate - \setcounter{chapter}{0} - \setcounter{figure}{\value{tf@tempchapfcnt}} - \setcounter{table}{\value{tf@tempchaptcnt}} - \fi \addtocontents{toc}{\protect\addvspace{1\baselineskip}}} -% Set top section command name to "chapter" -\def\tf@topsecname{chapter} +% Part: formatting +\renewcommand\part{% + \if@openright \cleardoublepage \else \clearpage \fi + \secdef\@part\@spart} + +\def\tf@partformat{\normalfont\bfseries\normalsize\singlespacing\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 + \else + \addcontentsline{toc}{part}{#1}% + \fi + \markboth{}{}% + { \tf@partformat + \interlinepenalty \@M + \thispagestyle{empty}% + \ifnum \c@secnumdepth >-2\relax + \if@mainmatter + \partname\nobreakspace\thepart + \par\nobreak + \vspace*{1\baselineskip}% + \fi + \fi + #2\par} + \@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 + \fi + \markboth{}{}% + { \tf@partformat + \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{1\baselineskip}}} + \@afterheading} +\def\@endpart{\if@openright \cleardoublepage \else \clearpage \fi} + + +% Chapter: set top section command name to "chapter" +\def\tf@topsecname{chapter} -% Figures and tables: adjust counters based on @doublenumerate +% Chapter: adjust figure/table counters based on @doublenumerate and chapter before \newcounter{tf@tempchapfcnt} \newcounter{tf@tempchaptcnt} + +\newif\if@tfchapterbefore\@tfchapterbeforefalse + \def\tf@chapcounter{% \if@doublenumerate - \if@mainmatter - \ifnum \c@chapter >\z@ \else - \setcounter{tf@tempchapfcnt}{\value{figure}} - \setcounter{tf@tempchaptcnt}{\value{table}} - \fi + \if@tfchapterbefore \else + \setcounter{tf@tempchapfcnt}{\value{figure}} + \setcounter{tf@tempchaptcnt}{\value{table}} \fi \refstepcounter{chapter} + \@tfchapterbeforetrue + \@figuredblnumtrue + \@tabledblnumtrue \else \setcounter{tf@tempchapfcnt}{\value{figure}} \setcounter{tf@tempchaptcnt}{\value{table}} @@ -142,11 +206,22 @@ \setcounter{figure}{\value{tf@tempchapfcnt}} \setcounter{table}{\value{tf@tempchaptcnt}} \fi} + +\def\tf@restoreftcounters{% + \if@doublenumerate + \if@tfchapterbefore + \setcounter{figure}{\value{tf@tempchapfcnt}} + \setcounter{table}{\value{tf@tempchaptcnt}} + \fi + \@tfchapterbeforefalse + \fi} - -% Chapters: formatting +% Chapter: formatting \def\tf@chapformat{\normalfont\bfseries\normalsize\singlespacing\centering} + \def\@chapter[#1]#2{% + \@figuredblnumfalse + \@tabledblnumfalse \ifnum \c@secnumdepth >\m@ne \if@mainmatter \tf@chapcounter @@ -154,6 +229,7 @@ \addcontentsline{toc}{chapter}% {\protect\numberline{\@chapapp\space\thechapter.}#1}% \else + \tf@restoreftcounters \addcontentsline{toc}{chapter}{#1}% \fi \else @@ -162,6 +238,14 @@ \chaptermark{#1}% \@makechapterhead{#2}% \@afterheading} + +\def\@schapter#1{% + \@figuredblnumfalse + \@tabledblnumfalse + \tf@restoreftcounters + \@makeschapterhead{#1}% + \@afterheading} + \def\@makechapterhead#1{% { \tf@chapformat \ifnum \c@secnumdepth >\m@ne @@ -172,10 +256,8 @@ \fi \fi \interlinepenalty\@M - \ifstrempty{#1}% - {}% - {#1\par\nobreak \vspace{1\baselineskip}}% - }} + \ifstrempty{#1}{}{#1\par\nobreak \vspace{1\baselineskip}}}} + \def\@makeschapterhead#1{% { \tf@chapformat \interlinepenalty\@M @@ -184,6 +266,11 @@ % Title page: commands for use with \maketitle +\newcommand{\subtitle}[1]{\gdef\tf@subtitle{#1}} +\subtitle{\@empty} + +\newcommand{\submissioninfo}[1]{\gdef\tf@submissioninfo{#1}} +\submissioninfo{\@empty} \newcommand{\institution}[1]{\gdef\tf@institution{#1}} \institution{\@empty} @@ -194,9 +281,31 @@ \newcommand{\location}[1]{\gdef\tf@location{#1}} \location{\@empty} +% Title page: command for emptying/completing \maketitle +\newcommand{\tf@emptymaketitle}{% + \global\let\thanks\relax + \global\let\maketitle\relax + + \global\let\@thanks\@empty + \global\let\@author\@empty + \global\let\@date\@empty + \global\let\@title\@empty + \global\let\tf@subtitle\@empty + \global\let\tf@submissioninfo\@empty + \global\let\tf@institution\@empty + \global\let\tf@department\@empty + \global\let\tf@location\@empty -% Title page: renew \maketitle for thesis/dissertation + \global\let\title\relax + \global\let\author\relax + \global\let\date\relax + \global\let\subtitle\relax + \global\let\submissioninfo\relax + \global\let\institution\relax + \global\let\department\relax + \global\let\location\relax} +% Title page: renew \maketitle for thesis/dissertation \submissioninfo{% A Dissertation Submitted to\par [Faculty]\par @@ -237,20 +346,30 @@ \end{center}% \end{titlepage}% \setcounter{page}{2} + % if not endnotes, reset footnote counter + \if@endnotesformat \else \setcounter{footnote}{0} \fi \tf@emptymaketitle - \global\let\tf@institution\@empty - \global\let\tf@department\@empty - \global\let\tf@location\@empty - \global\let\institution\relax - \global\let\department\relax - \global\let\location\relax \cleardoublepage} % Table of Contents: formatting - \setcounter{tocdepth}{0} +\renewcommand*{\l@part}[2]{% + \ifnum \c@tocdepth >-2\relax + \addpenalty{-\@highpenalty}% + \addvspace{1\baselineskip}% + \setlength\@tempdima{7.5em}% + \vskip 1\baselineskip + { \parindent \z@ + \rightskip \z@ + \parfillskip -\@rightskip + \leavevmode + \advance\leftskip\@tempdima + \hskip -\leftskip + \bfseries #1\nobreak\hfil \nobreak\hb@xt@\@pnumwidth{\hss #2}\par} + \fi} + \renewcommand*{\l@chapter}[2]{% \ifnum \c@tocdepth >\m@ne \addpenalty{-\@highpenalty}% @@ -280,15 +399,7 @@ \@dottedtocline{3}{2.5in}{\z@}} -% Figures and Tables: conditional double numeration formatting - -\renewcommand{\thefigure}{% - \if@doublenumerate \ifnum \c@chapter>\z@ \thechapter.\fi\fi \@arabic\c@figure} - -\renewcommand{\thetable}{% - \if@doublenumerate \ifnum \c@chapter>\z@ \thechapter.\fi\fi \@arabic\c@table} - -% Figures and Tables: list formatting +% List of Figures: formatting \renewcommand*{\l@figure}[2]{% \def\tflist@beforesecnum{\hfil} \if@doublenumerate @@ -306,6 +417,9 @@ \leavevmode \advance\leftskip\@tempdima \null\nobreak\hskip -\leftskip #1\nobreak\hfil \nobreak\hb@xt@\@pnumwidth{\hss #2}\par}} + + +% List of Tables: formatting \def\l@table{\l@figure} @@ -316,15 +430,16 @@ \newenvironment{appendixes}% {% - \@appendixestrue \@mainmattertrue - \tf@appendix - \def\tf@chapcounter{% - \refstepcounter{appendix} - \gdef\thechapter{\@Alph\c@appendix}} + \setcounter{section}{0}% + \def\@chapapp{\appendixname}% + \def\thechapter{\@Alph\c@appendix} + \def\tf@chapcounter{\refstepcounter{appendix}} \if@doublenumerate - \setcounter{tf@tempchapfcnt}{\value{figure}} - \setcounter{tf@tempchaptcnt}{\value{table}} + \if@tfchapterbefore \else + \setcounter{tf@tempchapfcnt}{\value{figure}} + \setcounter{tf@tempchaptcnt}{\value{table}} + \fi \setcounter{figure}{0} \setcounter{table}{0} \fi @@ -336,7 +451,10 @@ \setcounter{figure}{\value{tf@tempchapfcnt}} \setcounter{table}{\value{tf@tempchaptcnt}} \fi - }% + } + +% Appendixes: remove \appendix command +\def\appendix{\@empty} % Endnotes: layout and formatting -- cgit v1.2.3