texlive[56874] Master/texmf-dist: mlacls (7nov20)

commits+karl at tug.org commits+karl at tug.org
Sat Nov 7 23:02:22 CET 2020


Revision: 56874
          http://tug.org/svn/texlive?view=revision&revision=56874
Author:   karl
Date:     2020-11-07 23:02:21 +0100 (Sat, 07 Nov 2020)
Log Message:
-----------
mlacls (7nov20)

Modified Paths:
--------------
    trunk/Master/texmf-dist/doc/latex/mlacls/mla-example.pdf
    trunk/Master/texmf-dist/doc/latex/mlacls/mla-example.tex
    trunk/Master/texmf-dist/doc/latex/mlacls/mla.pdf
    trunk/Master/texmf-dist/source/latex/mlacls/mla.dtx
    trunk/Master/texmf-dist/tex/latex/mlacls/mla.cls

Added Paths:
-----------
    trunk/Master/texmf-dist/doc/latex/mlacls/mla-example-image.jpg

Added: trunk/Master/texmf-dist/doc/latex/mlacls/mla-example-image.jpg
===================================================================
(Binary files differ)

Index: trunk/Master/texmf-dist/doc/latex/mlacls/mla-example-image.jpg
===================================================================
--- trunk/Master/texmf-dist/doc/latex/mlacls/mla-example-image.jpg	2020-11-07 22:02:06 UTC (rev 56873)
+++ trunk/Master/texmf-dist/doc/latex/mlacls/mla-example-image.jpg	2020-11-07 22:02:21 UTC (rev 56874)

Property changes on: trunk/Master/texmf-dist/doc/latex/mlacls/mla-example-image.jpg
___________________________________________________________________
Added: svn:mime-type
## -0,0 +1 ##
+application/octet-stream
\ No newline at end of property
Modified: trunk/Master/texmf-dist/doc/latex/mlacls/mla-example.pdf
===================================================================
(Binary files differ)

Modified: trunk/Master/texmf-dist/doc/latex/mlacls/mla-example.tex
===================================================================
--- trunk/Master/texmf-dist/doc/latex/mlacls/mla-example.tex	2020-11-07 22:02:06 UTC (rev 56873)
+++ trunk/Master/texmf-dist/doc/latex/mlacls/mla-example.tex	2020-11-07 22:02:21 UTC (rev 56874)
@@ -2,7 +2,7 @@
 
 \title{Sample MLA Document}
 \author{John Doe}
-\professor{Dr. Suzie Que}
+\professor{Dr.\ Suzie Que}
 \course{\LaTeX\ 101}
 \date{\mladate} % see docs for `\mladate'
 
@@ -26,7 +26,7 @@
 as an example of the ``mla'' class' capabilities.
 
 Some professors may explicitly require or denounce use of headings.
-Dr. Suzie Que of Anytown, PA requires they be used for anything
+Dr.\ Suzie Que of Anytown, PA requires they be used for anything
 longer than five pages:
 \begin{blockquote}
 John---so help me God---if you turn in another twenty-page research
@@ -90,7 +90,7 @@
 
 \section{Using bibliographies}
 
-Dr. Suzie Que was cited in the above blockquote.
+Dr.\ Suzie Que was cited in the above blockquote.
 The ins-and-outs of ``biblatex'' will not be explained in this
 document, so please refer to online documentation such as the
 ``BibLaTeX Cheat Sheet''.

Modified: trunk/Master/texmf-dist/doc/latex/mlacls/mla.pdf
===================================================================
(Binary files differ)

Modified: trunk/Master/texmf-dist/source/latex/mlacls/mla.dtx
===================================================================
--- trunk/Master/texmf-dist/source/latex/mlacls/mla.dtx	2020-11-07 22:02:06 UTC (rev 56873)
+++ trunk/Master/texmf-dist/source/latex/mlacls/mla.dtx	2020-11-07 22:02:21 UTC (rev 56874)
@@ -27,7 +27,7 @@
 %<mla>\NeedsTeXFormat{LaTeX2e}
 %<mla>\ProvidesClass{mla}
 %<*mla>
-    [2020/08/16 v0.8 MLA Paper Class]
+    [2020/11/07 v0.9 MLA Paper Class]
 %</mla>
 
 %<*driver>
@@ -47,7 +47,6 @@
 \usepackage{verbatim}
 
 %% A couple things are cited in the docs
-\usepackage{filecontents}
 \begin{filecontents}{mla.bib}
 @book{mlahb,
 	author = {{Modern Language Association of America}},
@@ -92,12 +91,7 @@
 \DeclareAcronym{SE}{short=SE,long=Stack Exchange}
 
 %% For a few different things
-%%\usepackage{semantic-markup}
-\usepackage{csquotes}
-\newcommand{\foreign}[1]{\textit{#1}}
-\newcommand{\term}[1]{\textit{#1}}
-\newcommand{\soCalled}[1]{\textquote{#1}}
-\newcommand{\mentioned}[1]{\textquote{#1}}
+\usepackage{semantic-markup}
 
 %% Reset footnotes per page
 \usepackage[perpage]{footmisc}
@@ -106,7 +100,7 @@
 \interfootnotelinepenalty=10000
 
 %% Technical info
-\def\myemail{ssterling at firemail.cc}
+\def\myemail{sprice623 at aol.com}
 
 %% For the sake of consistency, I guess
 \GlossaryPrologue{\section{Change history}}
@@ -137,7 +131,7 @@
 %
 % \fi
 %
-% \CheckSum{299}
+% \CheckSum{401}
 %
 % \CharacterTable
 %  {Upper-case    \A\B\C\D\E\F\G\H\I\J\K\L\M\N\O\P\Q\R\S\T\U\V\W\X\Y\Z
@@ -240,7 +234,13 @@
 % \begin{macro}{\MLA at seven}
 % \begin{macro}{\MLA at eight}
 % \begin{macro}{\MLA at eightalt}
+% \begin{macro}{\MLA at figures}
+% \begin{macro}{\MLA at notes}
 % \begin{macro}{\MLA at microtype}
+% \begin{macro}{\MLA at paperheader}
+% \begin{macro}{\MLA at pageheader}
+% \begin{macro}{\MLA at plainheadings}
+% \begin{macro}{\MLA at fullpage}
 % The following are true/false switches to toggle certain features.
 %
 %    \begin{macrocode}
@@ -247,12 +247,24 @@
 \newif\ifMLA at seven
 \newif\ifMLA at eight
 \newif\ifMLA at eightalt
+\newif\ifMLA at figures
+\newif\ifMLA at notes
 \newif\ifMLA at microtype
+\newif\ifMLA at paperheader
+\newif\ifMLA at pageheader
+\newif\ifMLA at plainheadings
+\newif\ifMLA at fullpage
 %    \end{macrocode}
 % \end{macro}
 % \end{macro}
 % \end{macro}
 % \end{macro}
+% \end{macro}
+% \end{macro}
+% \end{macro}
+% \end{macro}
+% \end{macro}
+% \end{macro}
 %
 % \section{Options}
 % \label{sec:options}
@@ -285,6 +297,17 @@
 \DeclareOption{mla8alt}{\MLA at sevenfalse\MLA at eightfalse\MLA at eightalttrue}
 %    \end{macrocode}
 %
+% For those who do not plan on using figures and/or footnotes,
+% some time (and dependency disk space) might be saved by using the
+% \Dopt{nofigures} and/or \Dopt{nonotes} options, as they are enabled
+% by default.
+%    \begin{macrocode}
+\MLA at figurestrue
+\MLA at notestrue
+\DeclareOption{nofigures}{\MLA at figuresfalse}
+\DeclareOption{nonotes}{\MLA at notesfalse}
+%    \end{macrocode}
+%
 % The \Dpkg{microtype} package can be optionally included
 % with the \Dopt{microtype} option to offset the pain of using
 % the Times typeface.
@@ -292,6 +315,43 @@
 \DeclareOption{microtype}{\MLA at microtypetrue}
 %    \end{macrocode}
 %
+% \changes{v0.9}{2020/10/05}{Added \Dopt{nopaperheader},
+%	\Dopt{nopageheader} and \Dopt{noheaders} options to enable
+%	omission of paper headers, page headers or both paper
+%	and page headers respectively}
+% For rare cases in which the paper and page headers are omitted
+% or must be custom, the options \Dopt{nopaperheader} and
+% \Dopt{nopageheader} may be used respectively, or
+% \Dopt{noheaders} to omit both.
+%    \begin{macrocode}
+\MLA at paperheadertrue
+\MLA at pageheadertrue
+\DeclareOption{nopaperheader}{\MLA at paperheaderfalse}
+\DeclareOption{nopageheader}{\MLA at pageheaderfalse}
+\DeclareOption{noheaders}{\MLA at paperheaderfalse\MLA at pageheaderfalse}
+%    \end{macrocode}
+%
+% \changes{v0.9}{2020/10/05}{Added \Dopt{plainheadings} option to
+%	forego small-caps and auto-numbering in section headings}
+% For professors and/or writers who desire to format the section
+% headings manually and individually (and forego \cs{titleformat\{\}},
+% the \Dopt{plainheadings} option may be used.
+%    \begin{macrocode}
+\MLA at plainheadingsfalse
+\DeclareOption{plainheadings}{\MLA at plainheadingstrue}
+%    \end{macrocode}
+%
+% \changes{v0.9}{2020/11/07}{Added \Dopt{fullpage} option to explicitly
+%	allow widows and orphans}
+% Another edge case is in which a professor may require strict 24-line
+% papers, i.\,e.\ explicitly allowing orphans and widows, enabled using
+% the \Dopt{fullpage} option\footnote{In versions of \Dcls{mlacls}
+% prior to v0.9, disallowing widows and orphans was default behavior.}.
+%    \begin{macrocode}
+\MLA at fullpagefalse
+\DeclareOption{fullpage}{\MLA at fullpagetrue}
+%    \end{macrocode}
+%
 % \subsection{Processing}
 % \label{sec:processing}
 %
@@ -330,14 +390,12 @@
 % \changes{v0.6}{2019/05/29}{Added \Dpkg{float} package}
 % \changes{v0.7}{2019/06/01}{Changed \Dpkg{microtype} package
 %	to only load through \Dopt{microtype} class option}
+% \changes{v0.9}{2020/08/20}{Added \Dopt{nofigures} and \Dopt{nonotes}
+%	options to prevent loading unused dependencies}
 %    \begin{macrocode}
-\RequirePackage{caption}
-\RequirePackage{enotez}
 \RequirePackage{enumitem}
 \RequirePackage{fancyhdr}
-\RequirePackage{float}
 \RequirePackage{fullpage}
-\RequirePackage{graphicx}
 \RequirePackage{ragged2e}
 \RequirePackage{newtxtext}
 \RequirePackage{titlesec}
@@ -373,6 +431,27 @@
 \fi
 %    \end{macrocode}
 %
+% The \Dpkg{caption}, \Dpkg{float} and \Dpkg{graphicx} packages
+% are loaded by default, but can be disabled using the
+% \Dopt{nofigures} option.
+%
+%    \begin{macrocode}
+\ifMLA at figures
+    \RequirePackage{caption}
+    \RequirePackage{float}
+    \RequirePackage{graphicx}
+\fi
+%    \end{macrocode}
+%
+% Likewise, the \Dpkg{enotez} package can be disabled with
+% \Dopt{nonotes}.
+%
+%    \begin{macrocode}
+\ifMLA at notes
+    \RequirePackage{enotez}
+\fi
+%    \end{macrocode}
+%
 % The \Dpkg{microtype} package is loaded if the \Dopt{microtype}
 % option is specified.
 % 
@@ -473,16 +552,24 @@
 \@afterindenttrue
 %    \end{macrocode}
 %
-% And, for the sake of consistent 24-line papers,
-% orphans and widows are explicitly allowed.
+% Orphans and widows are explicitly banned\footnote{According to the
+% \ac{MLA} itself: \url{https://style.mla.org/orphaned-words/}}.
+% For the odd case in which papers must be consistently 24 lines
+% (i.\,e.\ explicitly allowing orphans and widows), the
+% \Dopt{fullpage} option may be used (see section~\ref{sec:options}).
 %
 %    \begin{macrocode}
-\widowpenalty=0
-\clubpenalty=0
-\interlinepenalty=0
+\ifMLA at fullpage
+    \widowpenalty=0
+    \clubpenalty=0
+    \interlinepenalty=0
+\else
+    \widowpenalty=10000
+    \clubpenalty=10000
+\fi
 %    \end{macrocode}
 %
-% For a final heinous crime against typesetting,
+% As a heinous crime against the art of typesetting,
 % the \citetitle{mlahb} advises flush-left/ragged-right alignment.
 % (This is acheived with the \Dpkg{ragged2e} package.)
 %
@@ -528,7 +615,9 @@
 % \label{sec:running_head}
 %
 % The running head in \ac{MLA} style is simply the author's surname
-% followed by the current page number, right-aligned.
+% (if defined) followed by the current page number, right-aligned,
+% unless specified otherwise using the \Dopt{nopageheader} option
+% (see section~\ref{sec:options}).
 % This is managed using the \Dpkg{fancyhdr} and \Dpkg{xstring} packages.
 %
 %    \begin{macrocode}
@@ -539,7 +628,13 @@
 \fancyhf{}
 \pagestyle{headings}
 \pagestyle{norule}
-\fancyhead[RO]{{\StrBehind{\@author}{ }[\last]\last} \thepage}
+\ifMLA at pageheader
+    \ifx\@author\@empty
+        \fancyhead[RO]{\thepage}
+    \else
+        \fancyhead[RO]{{\StrBehind{\@author}{ }[\last]\last} \thepage}
+    \fi
+\fi
 %    \end{macrocode}
 %
 % The following code is largely a hack to align the header
@@ -574,7 +669,7 @@
 %
 % \begin{macro}{\professor}
 % The instructor who assigned the paper, i.e.
-% \mentioned{Dr. Marjorie Stewart}.
+% \mentioned{Dr.\ Marjorie Stewart}.
 %
 %    \begin{macrocode}
 \newcommand*{\professor}[1]{\gdef\@professor{#1}}
@@ -610,15 +705,20 @@
 %	\term{day month year}}
 % \changes{v0.4.1}{2019/05/15}{Changed date format back to whatever
 %	is inside \cs{@date}}
+% \changes{v0.9}{2020/10/05}{Changed to ignore (not print) undefined
+%	header macros}
+% \changes{v0.9}{2020/10/05}{Fix weird bug where paragraph immediately
+%	after \cs{begin\{paper\}} (with no newline) is not indented}
 %    \begin{macrocode}
 \newcommand{\makemlaheader}{%
     \begin{noindent}
-        \@author \\
-        \@professor \\
-        \@course \\
-        \@date \\
-        \begin{center}\@title\end{center}
+	\ifx\@author\@empty\else\@author\\\fi
+	\ifx\@professor\@empty\else\@professor\\\fi
+	\ifx\@course\@empty\else\@course\\\fi
+	\ifx\@date\@empty\else\@date\\\fi
+        \ifx\@title\@empty\else\begin{center}\@title\end{center}\fi
     \end{noindent}
+    % for some reason, this blank line is necessary
 }
 %    \end{macrocode}
 % \end{macro}
@@ -630,12 +730,16 @@
 \renewcommand{\maketitle}{\makemlaheader}
 %    \end{macrocode}
 %
-% Finally, the header will print at the beginning of every document.
+% Finally, the header will print at the beginning of every document
+% unless specified otherwise using the \Dopt{nopaperheader} option
+% (see section~\ref{sec:options}).
 %
 % \changes{v0.5}{2019/05/18}{Moved header-printing process to
 %	\cs{AtBeginDocument}}
 %    \begin{macrocode}
-\AtBeginDocument{\maketitle}
+\ifMLA at paperheader
+    \AtBeginDocument{\maketitle}
+\fi
 %    \end{macrocode}
 %
 % \subsection{Sectioning}
@@ -643,6 +747,8 @@
 %
 % \changes{v0.7}{2019/08/30}{Replaced regular space after dot
 %	in section headings with \cs{enspace}}
+% \changes{v0.8}{2020/08/16}{Removed extraneous spacing and newlines
+%	in section headings}
 % \begin{macro}{\section}
 % \changes{v0.2}{2019/05/02}{Changed heading to small-caps}
 % \begin{macro}{\subsection}
@@ -659,7 +765,12 @@
 % the popular, oft-referenced \ac{OWL}: \citeurl{owlmla}.}.
 %
 % However, for the sake of clarity, the section headings in this class
-% will be set in small-caps.
+% will be set in small-caps by default.
+% Plain, unnumbered and entirely unformatted section headings can
+% be acheived using the \Dopt{plainheadings} option
+% (see section~\ref{sec:options}).
+% For custom headings other than these, refer to the
+% \Dpkg{fancyhdr} package documentation.
 %
 %    \begin{macrocode}
 \renewcommand{\thesection}{\@arabic\c at section}
@@ -670,12 +781,16 @@
 % Un-fancifying the headings is acheived using
 % the \Dpkg{titlesec} package.
 %
-% \changes{v0.8}{2020/08/16}{Removed extraneous spacing and newlines
-%	in section headings}
 %    \begin{macrocode}
-\titleformat{\section}[block]{\normalsize\sc}{\thetitle.\enspace}{0pt}{}[]
-\titleformat{\subsection}[block]{\normalsize\sc}{\thetitle.\enspace}{0pt}{}[]
-\titleformat{\subsubsection}[block]{\normalsize\sc}{\thetitle.\enspace}{0pt}{}[]
+\ifMLA at plainheadings
+    \titleformat{\section}[block]{\normalsize}{}{0pt}{}[]
+    \titleformat{\subsection}[block]{\normalsize}{}{0pt}{}[]
+    \titleformat{\subsubsection}[block]{\normalsize}{}{0pt}{}[]
+\else
+    \titleformat{\section}[block]{\normalsize\sc}{\thetitle.\enspace}{0pt}{}[]
+    \titleformat{\subsection}[block]{\normalsize\sc}{\thetitle.\enspace}{0pt}{}[]
+    \titleformat{\subsubsection}[block]{\normalsize\sc}{\thetitle.\enspace}{0pt}{}[]
+\fi
 \titlespacing*{\section}{0pt}{0pt}{0pt}
 \titlespacing*{\subsection}{0pt}{0pt}{0pt}
 \titlespacing*{\subsubsection}{0pt}{0pt}{0pt}
@@ -761,15 +876,17 @@
 % seems customary and logical.
 %
 %    \begin{macrocode}
-\setlength{\floatsep}{\baselineskip}
-\setlength{\intextsep}{\baselineskip}
-\setlength{\textfloatsep}{\baselineskip}
-\g at addto@macro\@floatboxreset\centering
+\ifMLA at figures
+    \setlength{\floatsep}{\baselineskip}
+    \setlength{\intextsep}{\baselineskip}
+    \setlength{\textfloatsep}{\baselineskip}
+    \g at addto@macro\@floatboxreset\centering
+\fi
 %    \end{macrocode}
 %
 % Thanks to a bug inherited from the \Dpkg{here} package
 % which has remained unfixed since 1987\footnote{See the \cs{par}
-% on p. 11, line 249 of \Dfile{ltfloat.dtx} from the \LaTeX\ kernel.},
+% on p.\ 11, line 249 of \Dfile{ltfloat.dtx} from the \LaTeX\ kernel.},
 % there is not only extra space after the figure but the inability to
 % insert a figure within a paragraph.
 % Miraculously, there is a fix for this\footnote{See David Carlisle's
@@ -777,12 +894,14 @@
 % \url{https://tex.stackexchange.com/a/310793}}.
 %
 %    \begin{macrocode}
-\renewcommand{\float at endH}{%
-    \vspace{-12pt}
-    \@endfloatbox\vskip\intextsep
-    \if at flstyle\setbox\@currbox\float at makebox\columnwidth\fi
-    \box\@currbox\vskip\intextsep\relax\@doendpe
-}
+\ifMLA at figures
+    \renewcommand{\float at endH}{%
+        \vspace{-12pt}
+        \@endfloatbox\vskip\intextsep
+        \if at flstyle\setbox\@currbox\float at makebox\columnwidth\fi
+        \box\@currbox\vskip\intextsep\relax\@doendpe
+    }
+\fi
 %    \end{macrocode}
 %
 % \end{environment}
@@ -795,14 +914,16 @@
 % \Dpkg{caption} package.
 %
 %    \begin{macrocode}
-\captionsetup{%
-    font={normalfont},
-    labelformat=simple,
-    labelsep=period,
-    position=bottom,
-    aboveskip=6pt,
-    belowskip=-10pt
-}
+\ifMLA at figures
+    \captionsetup{%
+        font={normalfont},
+        labelformat=simple,
+        labelsep=period,
+        position=bottom,
+        aboveskip=6pt,
+        belowskip=-10pt
+    }
+\fi
 %    \end{macrocode}
 %
 % In the author's personal experience, most \ac{MLA}-style papers
@@ -809,7 +930,9 @@
 % use \mentioned{Fig.} and not \mentioned{Figure}.
 %
 %    \begin{macrocode}
-\captionsetup[figure]{name=Fig.}
+\ifMLA at figures
+    \captionsetup[figure]{name=Fig.}
+\fi
 %    \end{macrocode}
 %
 % \end{environment}
@@ -865,13 +988,15 @@
 % This is acheived with the \Dpkg{enumitem} package.
 %
 %    \begin{macrocode}
-\newlist{mlanotes}{description}{1}
-\setlist[mlanotes]{%
-    parsep=0pt,
-    itemsep=0pt,
-    topsep=0pt,
-    leftmargin=\parindent
-}
+\ifMLA at notes
+    \newlist{mlanotes}{description}{1}
+    \setlist[mlanotes]{%
+        parsep=0pt,
+        itemsep=0pt,
+        topsep=0pt,
+        leftmargin=\parindent
+    }
+\fi
 %    \end{macrocode}
 %
 % The following initializes the \Dpkg{enotez} package to use
@@ -878,12 +1003,14 @@
 % the \Dlst{mlanotes} list format.
 %
 %    \begin{macrocode}
-\DeclareInstance{enotez-list}{mla}{list}{%
-    heading = {},
-    format = \normalsize\normalfont,
-    list-type = mlanotes
-}
-\setenotez{list-name={},list-style=mla,backref}
+\ifMLA at notes
+    \DeclareInstance{enotez-list}{mla}{list}{%
+        heading = {},
+        format = \normalsize\normalfont,
+        list-type = mlanotes
+    }
+    \setenotez{list-name={},list-style=mla,backref}
+\fi
 %    \end{macrocode}
 %
 % \subsubsection{Bibliography}

Modified: trunk/Master/texmf-dist/tex/latex/mlacls/mla.cls
===================================================================
--- trunk/Master/texmf-dist/tex/latex/mlacls/mla.cls	2020-11-07 22:02:06 UTC (rev 56873)
+++ trunk/Master/texmf-dist/tex/latex/mlacls/mla.cls	2020-11-07 22:02:21 UTC (rev 56874)
@@ -23,7 +23,7 @@
 
 \NeedsTeXFormat{LaTeX2e}
 \ProvidesClass{mla}
-    [2020/08/16 v0.8 MLA Paper Class]
+    [2020/11/07 v0.9 MLA Paper Class]
 
 \LoadClass[letterpaper,12pt]{article}
 \newcommand{\mladate}{%
@@ -47,23 +47,38 @@
 \newif\ifMLA at seven
 \newif\ifMLA at eight
 \newif\ifMLA at eightalt
+\newif\ifMLA at figures
+\newif\ifMLA at notes
 \newif\ifMLA at microtype
+\newif\ifMLA at paperheader
+\newif\ifMLA at pageheader
+\newif\ifMLA at plainheadings
+\newif\ifMLA at fullpage
 \DeclareOption{mla7}{\MLA at seventrue\MLA at eightfalse\MLA at eightaltfalse}
 \DeclareOption{mla8}{\MLA at sevenfalse\MLA at eighttrue\MLA at eightaltfalse}
 \DeclareOption{mla8alt}{\MLA at sevenfalse\MLA at eightfalse\MLA at eightalttrue}
+\MLA at figurestrue
+\MLA at notestrue
+\DeclareOption{nofigures}{\MLA at figuresfalse}
+\DeclareOption{nonotes}{\MLA at notesfalse}
 \DeclareOption{microtype}{\MLA at microtypetrue}
+\MLA at paperheadertrue
+\MLA at pageheadertrue
+\DeclareOption{nopaperheader}{\MLA at paperheaderfalse}
+\DeclareOption{nopageheader}{\MLA at pageheaderfalse}
+\DeclareOption{noheaders}{\MLA at paperheaderfalse\MLA at pageheaderfalse}
+\MLA at plainheadingsfalse
+\DeclareOption{plainheadings}{\MLA at plainheadingstrue}
+\MLA at fullpagefalse
+\DeclareOption{fullpage}{\MLA at fullpagetrue}
 \DeclareOption*{%
     \ClassWarning{mla}{Unknown option `\CurrentOption'; ignoring}
 }
 \ExecuteOptions{mla8}
 \ProcessOptions\relax
-\RequirePackage{caption}
-\RequirePackage{enotez}
 \RequirePackage{enumitem}
 \RequirePackage{fancyhdr}
-\RequirePackage{float}
 \RequirePackage{fullpage}
-\RequirePackage{graphicx}
 \RequirePackage{ragged2e}
 \RequirePackage{newtxtext}
 \RequirePackage{titlesec}
@@ -83,6 +98,14 @@
     \RequirePackage[style=mla,noremoteinfo=false,
                     showmedium=false,backend=biber]{biblatex}
 \fi
+\ifMLA at figures
+    \RequirePackage{caption}
+    \RequirePackage{float}
+    \RequirePackage{graphicx}
+\fi
+\ifMLA at notes
+    \RequirePackage{enotez}
+\fi
 \ifMLA at microtype
     \RequirePackage{microtype}
 \fi
@@ -101,9 +124,14 @@
 \setlength{\partopsep}{0em}
 \let\@afterindentfalse\@afterindenttrue
 \@afterindenttrue
-\widowpenalty=0
-\clubpenalty=0
-\interlinepenalty=0
+\ifMLA at fullpage
+    \widowpenalty=0
+    \clubpenalty=0
+    \interlinepenalty=0
+\else
+    \widowpenalty=10000
+    \clubpenalty=10000
+\fi
 \RaggedRight
 \renewenvironment{noindent}{%
     \edef\tmpind{\parindent}
@@ -121,7 +149,13 @@
 \fancyhf{}
 \pagestyle{headings}
 \pagestyle{norule}
-\fancyhead[RO]{{\StrBehind{\@author}{ }[\last]\last} \thepage}
+\ifMLA at pageheader
+    \ifx\@author\@empty
+        \fancyhead[RO]{\thepage}
+    \else
+        \fancyhead[RO]{{\StrBehind{\@author}{ }[\last]\last} \thepage}
+    \fi
+\fi
 \setlength{\headheight}{18pt}
 \setlength{\headsep}{12pt}
 \setlength{\voffset}{-34pt}
@@ -134,21 +168,30 @@
 \date{\mladate}
 \newcommand{\makemlaheader}{%
     \begin{noindent}
-        \@author \\
-        \@professor \\
-        \@course \\
-        \@date \\
-        \begin{center}\@title\end{center}
+\ifx\@author\@empty\else\@author\\\fi
+\ifx\@professor\@empty\else\@professor\\\fi
+\ifx\@course\@empty\else\@course\\\fi
+\ifx\@date\@empty\else\@date\\\fi
+        \ifx\@title\@empty\else\begin{center}\@title\end{center}\fi
     \end{noindent}
+    % for some reason, this blank line is necessary
 }
 \renewcommand{\maketitle}{\makemlaheader}
-\AtBeginDocument{\maketitle}
+\ifMLA at paperheader
+    \AtBeginDocument{\maketitle}
+\fi
 \renewcommand{\thesection}{\@arabic\c at section}
 \renewcommand{\thesubsection}{\thesection.\@arabic\c at subsection}
 \renewcommand{\thesubsubsection}{\thesubsection.\@arabic\c at subsubsection}
-\titleformat{\section}[block]{\normalsize\sc}{\thetitle.\enspace}{0pt}{}[]
-\titleformat{\subsection}[block]{\normalsize\sc}{\thetitle.\enspace}{0pt}{}[]
-\titleformat{\subsubsection}[block]{\normalsize\sc}{\thetitle.\enspace}{0pt}{}[]
+\ifMLA at plainheadings
+    \titleformat{\section}[block]{\normalsize}{}{0pt}{}[]
+    \titleformat{\subsection}[block]{\normalsize}{}{0pt}{}[]
+    \titleformat{\subsubsection}[block]{\normalsize}{}{0pt}{}[]
+\else
+    \titleformat{\section}[block]{\normalsize\sc}{\thetitle.\enspace}{0pt}{}[]
+    \titleformat{\subsection}[block]{\normalsize\sc}{\thetitle.\enspace}{0pt}{}[]
+    \titleformat{\subsubsection}[block]{\normalsize\sc}{\thetitle.\enspace}{0pt}{}[]
+\fi
 \titlespacing*{\section}{0pt}{0pt}{0pt}
 \titlespacing*{\subsection}{0pt}{0pt}{0pt}
 \titlespacing*{\subsubsection}{0pt}{0pt}{0pt}
@@ -177,25 +220,33 @@
     \endlist
     \vspace{-\topsep}
 }
-\setlength{\floatsep}{\baselineskip}
-\setlength{\intextsep}{\baselineskip}
-\setlength{\textfloatsep}{\baselineskip}
-\g at addto@macro\@floatboxreset\centering
-\renewcommand{\float at endH}{%
-    \vspace{-12pt}
-    \@endfloatbox\vskip\intextsep
-    \if at flstyle\setbox\@currbox\float at makebox\columnwidth\fi
-    \box\@currbox\vskip\intextsep\relax\@doendpe
-}
-\captionsetup{%
-    font={normalfont},
-    labelformat=simple,
-    labelsep=period,
-    position=bottom,
-    aboveskip=6pt,
-    belowskip=-10pt
-}
-\captionsetup[figure]{name=Fig.}
+\ifMLA at figures
+    \setlength{\floatsep}{\baselineskip}
+    \setlength{\intextsep}{\baselineskip}
+    \setlength{\textfloatsep}{\baselineskip}
+    \g at addto@macro\@floatboxreset\centering
+\fi
+\ifMLA at figures
+    \renewcommand{\float at endH}{%
+        \vspace{-12pt}
+        \@endfloatbox\vskip\intextsep
+        \if at flstyle\setbox\@currbox\float at makebox\columnwidth\fi
+        \box\@currbox\vskip\intextsep\relax\@doendpe
+    }
+\fi
+\ifMLA at figures
+    \captionsetup{%
+        font={normalfont},
+        labelformat=simple,
+        labelsep=period,
+        position=bottom,
+        aboveskip=6pt,
+        belowskip=-10pt
+    }
+\fi
+\ifMLA at figures
+    \captionsetup[figure]{name=Fig.}
+\fi
 \newenvironment{paper}{}{}
 \newenvironment{notes}{%
     \newpage
@@ -204,19 +255,23 @@
         \begin{center}Notes\end{center}
     \end{noindent}
 }{}
-\newlist{mlanotes}{description}{1}
-\setlist[mlanotes]{%
-    parsep=0pt,
-    itemsep=0pt,
-    topsep=0pt,
-    leftmargin=\parindent
-}
-\DeclareInstance{enotez-list}{mla}{list}{%
-    heading = {},
-    format = \normalsize\normalfont,
-    list-type = mlanotes
-}
-\setenotez{list-name={},list-style=mla,backref}
+\ifMLA at notes
+    \newlist{mlanotes}{description}{1}
+    \setlist[mlanotes]{%
+        parsep=0pt,
+        itemsep=0pt,
+        topsep=0pt,
+        leftmargin=\parindent
+    }
+\fi
+\ifMLA at notes
+    \DeclareInstance{enotez-list}{mla}{list}{%
+        heading = {},
+        format = \normalsize\normalfont,
+        list-type = mlanotes
+    }
+    \setenotez{list-name={},list-style=mla,backref}
+\fi
 \newenvironment{workscited}{%
     \newpage
     \begin{noindent}



More information about the tex-live-commits mailing list.