% \iffalse
%<package>\NeedsTeXFormat{LaTeX2e}[1999/12/01]
%<package>\ProvidesPackage{mlastyle}
-%<package> [2003/11/09 v0.9 .dtx mlastyle file]
+%<package> [2003/11/09 v0.9 MLA format and documentation style]
%
%<*driver>
+\begin{filecontents}{mlastyle.bib}
+@PREAMBLE{"\def\BibTex{\rmfamily B\kern -.05em\textsc {i\kern -.025emb}\kern -.08emT\kern -.1667em\lower .7ex\hbox {E}\kern -.125emX}"}
+
+@BOOK{handbook,
+ AUTHOR = "Joseph Gibaldi",
+ TITLE = "MLA Handbook for Writers of Research Papers",
+ KEY = "MLA Handbook",
+ EDITION = "Sixth",
+ ADDRESS = "New York",
+ PUBLISHER = "MLA",
+ YEAR = "2003"}
+
+@BOOK{latexdps,
+ AUTHOR = "Leslie Lamport",
+ TITLE = "{\LaTeX}: A Document Preparation System",
+ KEY = "{\LaTeX}",
+ EDITION = "Second",
+ ADDRESS = "Reading",
+ PUBLISHER = "Addison-Wesley",
+ YEAR = "1994"}
+
+@MANUAL{lshort,
+ AUTHOR = "Tobias Oetker and Hubert Partl and Irene Hyna and Elisabeth
+Schlegl",
+ TITLE = "The Not So Short Introduction to {\LaTeXe}",
+ KEY = "Not So Short",
+ YEAR = "2000",
+ MONTH = dec,
+ VERSION = "4.0",
+ ACCESSDATE = "1~"#nov#"~2003",
+ URL = "CTAN://info/lshort/"}
+
+@MANUAL{btxdoc,
+ AUTHOR = "Oren Patashnik",
+ TITLE = "{\BibTex ing}",
+ YEAR = "1988",
+ MONTH = feb,
+ ACCESSDATE = "1~"#nov#"~2003",
+ URL = "CTAN://biblio/bibtex/distribs/doc/btxdoc.tex"}
+\end{filecontents}
\documentclass[draft]{ltxdoc}
-\iftrue
- \usepackage[compat]{mlastyle}
- \addtolength{\headsep}{-25pt}
- \addtolength{\headheight}{-12pt}
- \addtolength{\topmargin}{-17pt}
- \addtolength{\textheight}{58pt}
- \IfFileExists{ulem.sty}{\usepackage[normalem]{ulem}}{\let\uline\emph}
-\else
+\iffalse
\usepackage[mla]{mlastyle}
+ \bibliographystyle{mlastyle}
\addtolength{\marginparwidth}{1in}
\addtolength{\textwidth}{-1in}
\addtolength{\headwidth}{-1in}
+\else
+ \IfFileExists{natbib.sty}{
+ \usepackage{natbib}
+ \citeindextrue
+ \bibpunct{[}{]}{,}{n}{}{,}%{
+ \bibliographystyle{plainnat}}
+ {\bibliographystyle{plain}}
+ \IfFileExists{url.sty}{\usepackage{url}}{}
+ \usepackage[compat]{mlastyle}
+ %\addtolength{\headsep}{-5pt}
+ %\addtolength{\headheight}{-12pt}
+ %\addtolength{\topmargin}{-17pt}
+ %\addtolength{\textheight}{22pt}
+ \IfFileExists{ulem.sty}{\usepackage[normalem]{ulem}}{\let\uline\emph}
\fi
\IfFileExists{times.sty}%
- {\newcommand{\examp}[2][]{{\let\emph\uline\fontfamily{ptm}\selectfont##2}##1}}%
- {\newcommand{\examp}[2][]{``##2##1''}}
+{\newcommand{\examp}[2][]{{\let\emph\uline\fontfamily{ptm}\selectfont##2}##1}}%
+{\newcommand{\examp}[2][]{``##2##1''}}
+{\makeatletter\gdef\NAT@MLA#1{#1}\gdef\NAT@idxtxt
+{\expandafter\NAT@MLA\NAT@name{} \NAT@open\NAT@num\NAT@close}}
\EnableCrossrefs
\CodelineIndex
\RecordChanges
%
% \GetFileInfo{mlastyle.sty}
%
-% \DoNotIndex{\ }
-% \DoNotIndex{\.}
-% \DoNotIndex{\@afterindentfalse}
-% \DoNotIndex{\@afterindenttrue}
+% \makeatletter ^^A Get |\ | out of my index, damn it!
+% \def\DoNotIndex{\begingroup \MakePrivateLetters
+% \catcode`\\12
+% \catcode`\ 12
+% \do@not@index}
+% \index@excludelist{\ }
+% \makeatother
+% \DoNotIndex{\ ,\:,\/,\.}
+% \DoNotIndex{\@afterindentfalse,\@afterindenttrue}
% \DoNotIndex{\@arabic}
% \DoNotIndex{\@author}
% \DoNotIndex{\@auxout}
-% \DoNotIndex{\@citea}
-% \DoNotIndex{\@citeb}
+% \DoNotIndex{\@biblabel,\@citea,\@citeb,\@citex}
% \DoNotIndex{\@date}
% \DoNotIndex{\@empty}
-% \DoNotIndex{\@firstofone}
% \DoNotIndex{\@for}
-% \DoNotIndex{\@ifundefined}
+% \DoNotIndex{\@ifnextchar,\@ifstar,\@ifundefined}
% \DoNotIndex{\@latex@warning}
% \DoNotIndex{\@listI}
-% \DoNotIndex{\@listi}
-% \DoNotIndex{\@listii}
-% \DoNotIndex{\@listiii}
-% \DoNotIndex{\@listiv}
-% \DoNotIndex{\@listv}
-% \DoNotIndex{\@listvi}
+% \DoNotIndex{\@listi,\@listii,\@listiii}
+% \DoNotIndex{\@listiv,\@listv,\@listvi}
+% \DoNotIndex{\@m}
+% \DoNotIndex{\@noitemerr}
+% \DoNotIndex{\@setfontsize}
% \DoNotIndex{\@startsection}
% \DoNotIndex{\@tempswafalse}
% \DoNotIndex{\@title}
% \DoNotIndex{\@undefined}
+% \DoNotIndex{\@xiipt}
+% \DoNotIndex{\@width,\@height,\@depth}
+% \DoNotIndex{\@minus,\@plus}
% \DoNotIndex{\DeclareOption}
% \DoNotIndex{\ExecuteOptions}
% \DoNotIndex{\G@refundefinedtrue}
+% \DoNotIndex{\NAT@@citetp,\NAT@citetp,\NAT@ctype,\NAT@date,\NAT@sep}
+% \DoNotIndex{\hyper@natlinkbreak,\hyper@natlinkend,\hyper@natlinkstart}
+% \DoNotIndex{\@citec,\@extra@b@citeb,\@firstofone,\@namedef}
+% \DoNotIndex{\NAT@@close,\NAT@@open,\NAT@alias,\NAT@all@names,\NAT@aysep}
+% \DoNotIndex{\NAT@cite@list,\NAT@citeundefined,\NAT@cmt,\NAT@exlab}
+% \DoNotIndex{\NAT@last@nm,\NAT@last@yr,\NAT@name,\NAT@nm,\NAT@nmfmt}
+% \DoNotIndex{\NAT@parse,\NAT@sort@cites,\NAT@temp,\NAT@year,\NAT@yrsep}
+% \DoNotIndex{\ifNAT@par,\ifNAT@swa,\ifNAT@full,\ifNAT@longnames}
+% \DoNotIndex{\PackageWarning,\PackageWarningNoLine,\MessageBreak}
% \DoNotIndex{\ProcessOptions}
% \DoNotIndex{\RequirePackage}
+% \DoNotIndex{\UL@start,\UL@stop}
+% \DoNotIndex{\url@samestyle,\urlstyle,\UrlBigBreaks,\UrlBreakPenalty}
+% \DoNotIndex{\do@url@hyp}
+% \DoNotIndex{\abovedisplayskip,\abovedisplayshortskip}
+% \DoNotIndex{\belowdisplayshortskip,\belowdisplayskip}
% \DoNotIndex{\addtolength}
% \DoNotIndex{\advance}
% \DoNotIndex{\baselineskip}
+% \DoNotIndex{\bibpreamble,\bibpunct,\bibsep}
% \DoNotIndex{\begin}
% \DoNotIndex{\bfseries}
+% \DoNotIndex{\bgroup,\egroup,\begingroup,\endgroup}
% \DoNotIndex{\c@enumiv}
% \DoNotIndex{\catcode}
% \DoNotIndex{\centering}
% \DoNotIndex{\centerline}
% \DoNotIndex{\chapter}
% \DoNotIndex{\citation}
+% \DoNotIndex{\citet,\citep}
% \DoNotIndex{\clearpage}
+% \DoNotIndex{\color@begingroup,\color@endgroup}
% \DoNotIndex{\csname}
% \DoNotIndex{\day}
% \DoNotIndex{\def}
% \DoNotIndex{\edef}
% \DoNotIndex{\else}
% \DoNotIndex{\end}
+% \DoNotIndex{\endnote,\footnote}
% \DoNotIndex{\endcsname}
% \DoNotIndex{\endlist}
% \DoNotIndex{\exhyphenpenalty}
% \DoNotIndex{\fi}
% \DoNotIndex{\futurelet}
% \DoNotIndex{\gdef}
+% \DoNotIndex{\global}
+% \DoNotIndex{\hbox,\hfill,\hrule}
% \DoNotIndex{\hangindent}
-% \DoNotIndex{\headrulewidth}
+% \DoNotIndex{\headrulewidth,\footrulewidth}
+% \DoNotIndex{\ignorespaces}
% \DoNotIndex{\if@filesw}
% \DoNotIndex{\if@tempswa}
-% \DoNotIndex{\ifcase}
+% \DoNotIndex{\if,\ifcase,\ifcat,\ifdim,\ifhmode,\ifnum,\ifx}
% \DoNotIndex{\ifmlastyle@bibstyle}
% \DoNotIndex{\ifmlastyle@format}
+% \DoNotIndex{\ifmlastyle@pages}
% \DoNotIndex{\ifmlastyle@papersize}
% \DoNotIndex{\ifmlastyle@style}
% \DoNotIndex{\ifmlastyle@times}
% \DoNotIndex{\ifmlastyle@underline}
-% \DoNotIndex{\ifx}
% \DoNotIndex{\immediate}
+% \DoNotIndex{\insert,\insertpenalties}
% \DoNotIndex{\item}
% \DoNotIndex{\itemindent}
% \DoNotIndex{\itemsep}
-% \DoNotIndex{\labelsep}
-% \DoNotIndex{\labelwidth}
+% \DoNotIndex{\kern}
+% \DoNotIndex{\labelsep,\labelwidth}
+% \DoNotIndex{\lastname,\citeN}
+% \DoNotIndex{\leaders}
% \DoNotIndex{\leavevmode}
% \DoNotIndex{\leftmargin}
% \DoNotIndex{\leftmargini,\leftmarginii,\leftmarginiii}
% \DoNotIndex{\leftmarginiv,\leftmarginv,\leftmarginvi}
-% \DoNotIndex{\let}
+% \DoNotIndex{\let,\long}
% \DoNotIndex{\linespread}
% \DoNotIndex{\list}
% \DoNotIndex{\listparindent}
+% \DoNotIndex{\mathchardef}
% \DoNotIndex{\makeenmark}
% \DoNotIndex{\mbox}
+% \DoNotIndex{\ml@}
% \DoNotIndex{\mlastyle@bibstylefalse}
% \DoNotIndex{\mlastyle@bibstyletrue}
% \DoNotIndex{\mlastyle@cite}
% \DoNotIndex{\mlastyle@formattrue}
% \DoNotIndex{\mlastyle@instructor}
% \DoNotIndex{\mlastyle@intbib}
+% \DoNotIndex{\mlastyle@intnfs}
+% \DoNotIndex{\mlastyle@pagesfalse}
+% \DoNotIndex{\mlastyle@pagestrue}
% \DoNotIndex{\mlastyle@papersizefalse}
% \DoNotIndex{\mlastyle@papersizetrue}
+% \DoNotIndex{\mlastyle@prevsplit}
% \DoNotIndex{\mlastyle@qspread}
% \DoNotIndex{\mlastyle@sl@sh}
% \DoNotIndex{\mlastyle@slash}
% \DoNotIndex{\mlastyle@slashnext}
% \DoNotIndex{\mlastyle@slashx}
+% \DoNotIndex{\mlastyle@star}
% \DoNotIndex{\mlastyle@stylefalse}
% \DoNotIndex{\mlastyle@styletrue}
% \DoNotIndex{\mlastyle@surname}
% \DoNotIndex{\mlastyle@timestrue}
% \DoNotIndex{\mlastyle@underlinefalse}
% \DoNotIndex{\mlastyle@underlinetrue}
+% \DoNotIndex{\mlastyle@urldate}
% \DoNotIndex{\month}
% \DoNotIndex{\newblock}
% \DoNotIndex{\newcommand}
+% \DoNotIndex{\newdimen}
% \DoNotIndex{\newenvironment}
% \DoNotIndex{\newif}
% \DoNotIndex{\newpage}
% \DoNotIndex{\parindent}
% \DoNotIndex{\parsep}
% \DoNotIndex{\penalty}
+% \DoNotIndex{\protected@xdef}
% \DoNotIndex{\relax}
+% \DoNotIndex{\relpenalty}
% \DoNotIndex{\renewcommand}
% \DoNotIndex{\renewenvironment}
-% \DoNotIndex{\reset@font}
% \DoNotIndex{\rhead}
+% \DoNotIndex{\reset@font,\selectfont}
+% \DoNotIndex{\rule,\strut,\strutbox}
+% \DoNotIndex{\splittopskip}
% \DoNotIndex{\setlength}
% \DoNotIndex{\settowidth}
% \DoNotIndex{\sfcode}
% \DoNotIndex{\sloppy}
% \DoNotIndex{\space}
% \DoNotIndex{\string}
-% \DoNotIndex{\sw@llow}
% \DoNotIndex{\the}
+% \DoNotIndex{\thebibliography}
% \DoNotIndex{\thepage}
% \DoNotIndex{\topsep}
% \DoNotIndex{\usecounter}
-% \DoNotIndex{\vskip}
+% \DoNotIndex{\unskip}
+% \DoNotIndex{\vbox,\vskip,\vss}
+% \DoNotIndex{\xdef}
% \DoNotIndex{\write}
% \DoNotIndex{\year}
% \DoNotIndex{\z@}
+% \DoNotIndex{\footnotesep,\footins,\@finalstrut,\@makefnmark}
+% \DoNotIndex{\bibhang}
% \DoNotIndex{\evensidemargin}
% \DoNotIndex{\headheight}
-% \DoNotIndex{\headsep}
+% \DoNotIndex{\headsep,\footskip}
% \DoNotIndex{\hoffset}
% \DoNotIndex{\marginparwidth}
% \DoNotIndex{\oddsidemargin}
% \DoNotIndex{\pdfpagewidth}
% \DoNotIndex{\special}
%
-% \hyphenation{pre-am-ble pro-fess-ors}
+% \hyphenation{pre-am-ble wide-spread}
%
% \newcommand{\Lopt}[1]{\textsf {#1}}
% \newcommand{\file}[1]{\texttt {#1}}
% \surname{Pope}
%
% \maketitle
+%
% \tableofcontents
%
% \section{Introduction}
%
-% MLA style consists of a set of documentation conventions that has gained
-% widespread acceptance in the humanites. \LaTeX{} is a
-% document preparation system enjoying populatity in the scientific field.
+% ^^A MLA style, consisting of a set of documentation conventions, has
+% ^^A gained widespread acceptance in the humanities.
+% According to the {\em MLA Handbook for Writers of Research
+% Papers}\citeC{handbook}, MLA style is a set of ``commonly agreed-on
+% rules for documenting quotations, facts, opinions and paraphrases'' that
+% ``is preferred by a substantial majority of scholarly journals in
+% language and literature{\makeatletter\ifmlastyle@style
+% .''\citeM[xvi]{handbook}\else.''\fi} \LaTeX{} is a
+% document preparation system enjoying popularity in the scientific field.
% It should come as no surprise that complete, up-to-date implementations
% of MLA style for \LaTeX{} are in short supply. The \LaTeX{} package
% \package{mlastyle} aims to fill this void.
%\instructor{Professor Smith}
%\course{English 101}
%\date{1~Jan.\ 1970}
-%\title{The Futility of Compulsory English Classes}
+%\title{The Sadism Inherent in Compulsory English Classes}
%
%\begin{document}
%\maketitle
% MLA style recommends the DD~Mon.~YYYY format for specifying dates;
% \DescribeMacro{\today}|\today| has been conveniently redefined to this.
% However, other formats can be used as long as done so consistently
-% throughout the document. Also note that the date in the header should
-% be the due date of the assignment; students who finish assignments early
-% would be wise to call |\date|\marg{due date}.
+% throughout the document. Also note that the date in the
+% heading\index{heading|usage} should be the due date of the assignment;
+% students who finish assignments early would be wise to call
+% |\date|\marg{due date}.
%
% \subsection{Environments}
-% \DescribeEnv{verse}
-% \DescribeEnv{quote}
-% \DescribeEnv{quotation}
% Three environments have been modified from standard \LaTeX to better
-% suit MLA format. To typeset poetry\index{poetry|usage} and
-% drama\index{drama|usage}, use the |verse| environment.
-% Quotations\index{quotations|usage} of a single paragraph or less always
-% use the |quote| environment. For longer passages, use the |quotation|
-% environment if the beginning of the passage marks the beginning of a
-% paragraph. Otherwise, use the |quote| environment.
+% suit MLA format. To typeset \index{poetry|usage}poetry and
+% \index{drama|usage}drama, use the \DescribeEnv{verse}|verse|
+% environment. Quotations\index{quotations|usage} of a single paragraph
+% or less always use the \DescribeEnv{quote}|quote| environment. For
+% longer passages, use the \DescribeEnv{quotation}|quotation| environment
+% if the beginning of the passage marks the beginning of a paragraph.
+% Otherwise, use the |quote| environment.
%
% Be sure to follow MLA guidelines when using these environments. Short
% quotes should be enclosed in quotation marks and included directly in
% \OptionIndex{format}\Lopt{format}
% option tells \package{mlastyle} to use MLA format (i.e., 1 inch margins,
% double-spaced, etc.). The \OptionIndex{style}\Lopt{style} option tells
-% \package{mlastyle} to use MLA style (i.e., parenthetical documentation
-% includes the author and page number, etc). Each of these options
+% \package{mlastyle} to use MLA style (i.e., the format of parenthetical
+% documentation, etc). Each of these options
% disables the other; to use both MLA format and MLA style, specify the
% \OptionIndex{mla}\Lopt{mla} option, or nothing at all.
%
% \package{mlastyle}.
%
% \subsubsection{Italics vs.\ Underlining} \index{underlining|usage}
-% \index{italics|usage}
-% MLA format dictates that emphasis should be indicated by underlining the
-% text. Thus, the \package{ulem} package is loaded by default
-% in \Lopt{mla} and \Lopt{format} modes. To disable this, use the
-% \OptionIndex{italics}\Lopt{italics} option. Conversely, if underlining
-% is desired in \Lopt{style} or \Lopt{compat} mode, the
-% \OptionIndex{underline}\Lopt{underline} option can be used.
+% \index{italics|usage}\label{sec:italics}
+% The {\em MLA Handbook\/}\citeC{handbook} dictates that emphasis should
+% be indicated by underlining the text\citeM[94]{handbook}. Thus, the
+% \package{ulem} package, which underlines all emphasized
+% text, is loaded by default in \Lopt{mla} and \Lopt{format} modes. To
+% disable this, use the \OptionIndex{italics}\Lopt{italics} option.
+% Conversely, if underlining is desired in \Lopt{style} or \Lopt{compat}
+% mode, the \OptionIndex{underline}\Lopt{underline} option can be used.
%
% \subsubsection{Fonts}
% By default, \package{mlastyle} uses \TeX's standard Computer Modern
-% font. Some professors\penalty\exhyphenpenalty---particularly those
-% concerned with document length---mandate that assignments be set in
-% \examp[.]{Times} This can be achieved with the
+% font. Some profess\-ors\penalty500---particularly those
+% concerned with document length---require assignments to be set in
+% \examp[.]{Times New Roman} This can be achieved with the
% \OptionIndex{times}\Lopt{times} option, which simply loads the
-% \package{times} package. This option can be cancelled with
-% the \OptionIndex{cm}\Lopt{cm} option, which reverts to Computer Modern.
+% \package{times} package. This opposite of this option is
+% \OptionIndex{cm}\Lopt{cm}, which reverts to Computer Modern.
%
% \index{works cited|usage}
% \subsection{Documenting Sources} \label{sec:documentation}
%
-% The \package{mlastyle} package reimpliments the
+% The \package{mlastyle} package reimplements the
% \DescribeEnv{thebibliography}|thebibliography| environment to generate
-% the list of works cited in MLA style. Use of \LaTeX's bibliography
-% features is beyond the scope of this document; however, the following
-% example, which should be included just before |\end{document}|, might
-% prove to be a useful starting point:
+% the list of works cited in MLA style. Instruction in the basic use of
+% \LaTeX's bibliography features is beyond the scope of this document;
+% however, the following example, which should be included just before
+% |\end{document}|, might prove to be a useful starting point:
%\begin{verbatim}
%\begin{thebibliography}{}
%
-%\bibitem[Lamport]{latex}
+%\bibitem[Lamport]{latexdps}
%Lamport, Leslie.
-%\newblock {\em \LaTeX: A Document Preparation System}.
+%\newblock \emph{\LaTeX: A Document Preparation System}.
%\newblock 2nd.~ed.
%\newblock Reading: Addison-Wesley, 1994.
%
%\end{thebibliography}\end{verbatim}
-%
% In this example, |Lamport| is the author's last name (for use in
-% citations) and |latex| is the marker used to reference it (see
+% citations) and |latexdps| is the marker used to reference it (see
% section~\ref{sec:parenthetical}).
%
% For information on automatically generating the list of works cited with
% |\cite|\oarg{pages}|{|\meta{marker
% 1}\texttt{,}\penalty\exhyphenpenalty\meta{marker 2}\ldots|}|; however, page
% numbers can currently be specified only for the last referenced source.
-% To work around this limitation |\citeN|, explained below, can be used.
+% To work around this limitation, use |\citealp|, explained below.
%
% Three additional citation commands are provided, all of which take the
% same arguments as |\cite|. To omit the author information from the
% citation, use \DescribeMacro{\citepage}|\citepage|. Indirect
-% citations---those of the format \examp{(qtd. in Brown 6)}---can be
+% citations---those of the format \examp{(qtd. in Pope
+% \pageref{sec:italics})}---can be
% created with \DescribeMacro{\citeindirect}|\citeindirect|. Finally, the
-% parentheses are omitted by \DescribeMacro{\citeN}|\citeN|. This was
+% parentheses are omitted by \DescribeMacro{\citealp}|\citealp|. This was
% intended for use in cross references, but it can also help in citing
% multiple works. The result of
-% |(\citeN[42]{knuth}|\texttt{; }|\citeN[69]{lamport})|
+% |(\citealp[42]{texbook}|\texttt{; }|\citealp[69]{latexdps})|
% would be something like \examp[.]{(Knuth 42; Lamport 69)}
%
% \subsubsection{Using {\rm \BibTeX}} \label{sec:bibtex}
% and \Lopt{style} modes and a bibliography style of |plain| in
% \Lopt{format} and \Lopt{compat} modes.
%
-% Use of \BibTeX{} is also beyond the scope of this document; instead,
-% another example is provided. To use it, substitute
+% Use of \BibTeX{} is also beyond the scope of this document; consult
+% Patashnik\citeC{btxdoc} for an introduction.
+% Briefly, to use the following example, substitute
% |\bibliography|\marg{filename} for the |thebibliography| environment.
% Then create \meta{filename}\file{.bib} with the contents below.
% Generating the document entails running \file{latex} on the \file{.tex}
% file, \file{bibtex} on the resulting \file{.aux} file, then \file{latex}
% twice more.
%\begin{verbatim}
-%@BOOK{latex,
+%@BOOK{latexdps,
% AUTHOR = "Leslie Lamport",
-% TITLE = "\LaTeX: A Document Preparation System",
-% KEY = "\LaTeX",
+% TITLE = "{\LaTeX}: A Document Preparation System",
+% KEY = "{\LaTeX}",
% EDITION = "Second",
% ADDRESS = "Reading",
% PUBLISHER = "Addison-Wesley",
% YEAR = "1994"}\end{verbatim}
+%
% In \package{mlastyle}, The |KEY| field serves the additional purpose of
% specifying an abbreviated title. This is unnecessary in the above
% example. If an additional book by Leslie Lamport was included, however,
-% the |KEY| field would allow |\cite{lamport}| to yield \examp{(Lamport,
-% \emph{\LaTeX\/})} instead of \examp[.]{(Lamport, \emph{\LaTeX: A Document
-% Preparation System\/})}
+% the |KEY| field would allow |\cite{latexdps}| to yield \examp{(Lamport,
+% \emph{\LaTeX\/})} instead of \examp[.]{(Lamport, \emph{\LaTeX: A
+% Doc\-um\-ent Pre\-pa\-ra\-tion Sys\-tem\/})}
%
-% \StopEventually{\PrintChanges\PrintIndex}
+% Note that only entries referenced by a citation are included in the list
+% of works cited; to force the inclusion of an entry or all entries, use
+% |\nocite|\marg{marker} and |\nocite{*}|, respectively.
+%
+% \StopEventually{\PrintChanges\bibliography{mlastyle}\PrintIndex}
%
% \section{Implementation}
-% \iffalse
+% \begin{macrocode}
%<*package>
-% \fi
-% \subsection{Options}
+% \end{macrocode}
%
+% \subsection{Options}
% \begin{macro}{\ifmlastyle@*}
% \begin{macro}{\mlastyle@*true}
% \begin{macro}{\mlastyle@*false}
-% Most options are implemented by modifying a |\newif| declared for this
+% Most options are implemented by modifying a |\newif| declared for that
% purpose.
% \begin{macrocode}
\newif\ifmlastyle@bibstyle
\mlastyle@formatfalse
\mlastyle@underlinefalse}
\DeclareOption{singlespacequotes}{
- \def\mlastyle@qspread{\linespread{1}\normalsize\vskip\baselineskip}}
+ \def\mlastyle@qspread{\linespread{1}\selectfont\vskip\baselineskip}}
\DeclareOption{doublespacequotes}{\let\mlastyle@qspread\relax}
\ExecuteOptions{nobibstyle,nopapersize,mla,cm,doublespacequotes}
\ProcessOptions
\fi
\fi % \ifmlastyle@papersize
% \end{macrocode}
-% If the \Lopt{bibstyle} option is set, specify the bibliography style.
-% \begin{macrocode}
-\ifmlastyle@bibstyle
- \ifmlastyle@style
- \bibliographystyle{mlastyle}
- \else
- \bibliographystyle{plain}
- \fi
-\fi % \ifmlastyle@bibstyle
-% \end{macrocode}
+% \begin{macro}{\UL@onin}
% Load the \package{ulem} package if the \Lopt{underline} option is set.
+% By default, \package{ulem} does multiple underlining for nested
+% emphasis. This is changed to MLA-style behavior with the redefinition
+% of |\UL@onin|.
% \begin{macrocode}
\ifmlastyle@underline
\RequirePackage{ulem}
+ \def\UL@onin#1{\egroup\UL@stop#1\UL@start}
\fi % \ifmlastyle@underline
% \end{macrocode}
+% \end{macro}
% Load the \package{times} package if the \Lopt{times} option is set.
% \begin{macrocode}
\ifmlastyle@times
% Define the surname, along with an obsolete synonym.
% \begin{macrocode}
\def\surname#1{\gdef\mlastyle@surname{#1}}
-\def\mlastyle@surname{\def\sw@llow##1 {}\expandafter\sw@llow\@author}
+\def\mlastyle@surname{\def\ml@##1 ##2,##3@@{##2}%
+ \def\and##1 {\unskip, }\expandafter\ml@\@author, ,@@}
\let\lastname\surname
% \end{macrocode}
% \end{macro}
+% \begin{macro}{\urldate}
+% \begin{macro}{\theurldate}
+% These next two respectively set and get the default access date for URLs
+% in the works cited.
+% \begin{macrocode}
+\def\urldate#1{\gdef\mlastyle@urldate{#1}}
+\def\theurldate{\mlastyle@urldate}
+\let\mlastyle@urldate\@date
+% \end{macrocode}
+% \end{macro}
+% \end{macro}
+% \subsection{Style}
+% \begin{macro}{\bibstyle@mlastyle}
+% This first block is the beginnings of an implementation for
+% \package{natbib}. (Surely there is a better way to do this.)
+% \begin{macrocode}
+\newcommand{\bibstyle@mlastyle}{%
+ \bibpunct[ ]{(}{)}{;}{a}{,}{,}
+ \@ifundefined{chapter}
+ {\gdef\refname{Works Cited}}
+ {\gdef\bibname{Works Cited}}}
+% \end{macrocode}
+% \end{macro}
+% \begin{macro}{\NAT@citex}
+% The year field is normally empty but contains the title field if it is
+% needed. This is handled inconsistantly by \package{natbib}, so it is
+% fixed up here.
+% \begin{macrocode}
+\RequirePackage{natbib}
+\def\NAT@citex
+ [#1][#2]#3{%
+ \NAT@sort@cites{#3}%
+ \let\@citea\@empty
+ \let\@citec\@empty
+ \ifNAT@swa
+ \if*#1*\if*#2*\def\@citea{\def\@citec{\NAT@@close}\NAT@@open}\else
+ \NAT@@open\def\@citea{\def\@citec
+ {\NAT@cmt#2\NAT@@close}}\def\@citec{#2\NAT@@close}\fi\else
+ \NAT@@open#1\ \if*#2*\def\@citec{\unskip\NAT@@close}\else
+ \def\@citec{#2\NAT@@close}\def\@citea{\def\@citec
+ {\NAT@cmt#2\NAT@@close}}\fi\fi
+ \fi
+ \let\NAT@nm\@empty\let\NAT@year\@empty
+ \@for\@citeb:=\NAT@cite@list\do
+ {\edef\@citeb{\expandafter\@firstofone\@citeb}%
+ \if@filesw\immediate\write\@auxout{\string\citation{\@citeb}}\fi
+ \@ifundefined{b@\@citeb\@extra@b@citeb}{\@citea%
+ {\reset@font\bfseries ?}\NAT@citeundefined
+ \PackageWarning{natbib}%
+ {Citation `\@citeb' on page \thepage \space undefined}%
+ \def\NAT@date{}}%
+ {\let\NAT@last@nm=\NAT@nm\let\NAT@last@yr=\NAT@year
+ \NAT@parse{\@citeb}%
+ \ifNAT@longnames\@ifundefined{bv@\@citeb\@extra@b@citeb}{%
+ \let\NAT@name=\NAT@all@names
+ \global\@namedef{bv@\@citeb\@extra@b@citeb}{}}{}%
+ \fi
+ \ifNAT@full\let\NAT@nm\NAT@all@names\else
+ \let\NAT@nm\NAT@name\fi
+ \ifNAT@swa\ifcase\NAT@ctype
+ \if*\NAT@date*
+ \@citea\hyper@natlinkstart{\@citeb\@extra@b@citeb}%
+ \NAT@nmfmt{\NAT@nm}\NAT@date\hyper@natlinkend
+ \else
+ \ifx\NAT@last@nm\NAT@nm\NAT@yrsep
+ \ifx\NAT@last@yr\@empty\let\NAT@last@yr\relax\fi
+ \ifx\NAT@last@yr\NAT@year
+ \def\NAT@temp{{?}}%
+ \ifx\NAT@temp\NAT@exlab\PackageWarningNoLine{natbib}%
+ {Multiple citation on page \thepage: same authors and
+ year\MessageBreak without distinguishing extra
+ letter,\MessageBreak appears as question mark}\fi
+ \hyper@natlinkstart{\@citeb\@extra@b@citeb}\NAT@exlab
+ \hyper@natlinkend
+ \else\unskip
+ \ \hyper@natlinkstart{\@citeb\@extra@b@citeb}\NAT@date
+ \hyper@natlinkend
+ \fi
+ \else\@citea\hyper@natlinkstart{\@citeb\@extra@b@citeb}%
+ \NAT@nmfmt{\NAT@nm}%
+ \hyper@natlinkbreak{\NAT@aysep\ }{\@citeb\@extra@b@citeb}%
+ \NAT@date\hyper@natlinkend
+ \fi
+ \fi
+ \def\@citea{\NAT@sep\ }%
+ \or\@citea\hyper@natlinkstart{\@citeb\@extra@b@citeb}%
+ \NAT@nmfmt{\NAT@nm}\hyper@natlinkend
+ \def\@citea{\NAT@sep\ }%
+ \or\if*\NAT@date*\else
+ \@citea\hyper@natlinkstart{\@citeb\@extra@b@citeb}%
+ \NAT@date\hyper@natlinkend
+ \def\@citea{\NAT@sep\ }\fi
+ \or\@citea\hyper@natlinkstart{\@citeb\@extra@b@citeb}%
+ \NAT@alias\hyper@natlinkend
+ \def\@citea{\NAT@sep\ }%
+ \fi
+ \else\ifcase\NAT@ctype
+ \if*\NAT@date*
+ \@citea\hyper@natlinkstart{\@citeb\@extra@b@citeb}%
+ \NAT@nmfmt{\NAT@nm}\hyper@natlinkend
+ \if*#1*\def\@citea{\NAT@sep\ }%
+ \if*#2*\let\@citec\@empty\else
+ \def\@citec{\ \NAT@@open#2\NAT@@close}\fi
+ \else\ \NAT@@open\def\@citea{\NAT@@close\NAT@sep\ }
+ \if*#2*\def\@citec{\NAT@@close}\else
+ \def\@citec{\ #2\NAT@@close}\fi\fi
+ \else
+ \ifx\NAT@last@nm\NAT@nm\NAT@yrsep
+ \ifx\NAT@last@yr\NAT@year
+ \def\NAT@temp{{?}}%
+ \ifx\NAT@temp\NAT@exlab\PackageWarningNoLine{natbib}%
+ {Multiple citation on page \thepage: same authors and
+ year\MessageBreak without distinguishing extra
+ letter,\MessageBreak appears as question mark}\fi
+ \hyper@natlinkstart{\@citeb\@extra@b@citeb}\NAT@exlab
+ \hyper@natlinkend
+ \else\unskip
+ \ \hyper@natlinkstart{\@citeb\@extra@b@citeb}\NAT@date
+ \hyper@natlinkend
+ \fi
+ \else\@citea\hyper@natlinkstart{\@citeb\@extra@b@citeb}%
+ \NAT@nmfmt{\NAT@nm}%
+ \hyper@natlinkbreak{\ \NAT@@open\if*#1*\else#1\ \fi}%
+ {\@citeb\@extra@b@citeb}%
+ \NAT@date\hyper@natlinkend\fi
+ \if*#2*\def\@citec{\NAT@@close}\else
+ \def\@citec{\NAT@cmt#2\NAT@@close}\fi
+ \def\@citea{\NAT@@close\NAT@sep\ }%
+ \fi
+ \or\@citea\hyper@natlinkstart{\@citeb\@extra@b@citeb}%
+ \NAT@nmfmt{\NAT@nm}\hyper@natlinkend
+ \if*#2*\let\@citec\@empty\else
+ \def\@citec{ \NAT@@open#2\NAT@@close}\fi
+ \def\@citea{\NAT@sep\ }%
+ \or\if*\NAT@date*\else\@citea
+ \NAT@@open
+ \def\@citea{\NAT@@close\NAT@sep\ }%
+ \if*#2*\def\@citec{\NAT@@close}\else
+ \def\@citec{\NAT@cmt#2\NAT@@close}\fi
+ \hyper@natlinkstart{\@citeb\@extra@b@citeb}%
+ \NAT@date\hyper@natlinkend\fi
+ \or\@citea\hyper@natlinkstart{\@citeb\@extra@b@citeb}%
+ \NAT@alias\hyper@natlinkend
+ \def\@citea{\NAT@sep\ }%
+ \fi
+ \fi
+ }}%
+ \@citec\ifhmode\unskip\fi\endgroup}
+% \end{macrocode}
+% \end{macro}
+% \begin{macro}{\NAT@parse@date}
+% |\NAT@parse@date| fails if the date contains a control sequence, so it
+% is also redefined.
+% \begin{macrocode}
+\def\NAT@parse@date#1#2#3#4#5#6@@{%
+ \ifcat\relax#1\def\NAT@year{}\def\NAT@exlab{}\else
+ \ifcat a#1\def\NAT@year{}\def\NAT@exlab{#1}\else
+ \ifcat a#2\def\NAT@year{#1}\def\NAT@exlab{#2}\else
+ \ifcat a#3\def\NAT@year{#1#2}\def\NAT@exlab{#3}\else
+ \ifcat a#4\def\NAT@year{#1#2#3}\def\NAT@exlab{#4}\else
+ \def\NAT@year{#1#2#3#4}\def\NAT@exlab{{#5}}\fi\fi\fi\fi\fi}
+% \end{macrocode}
+% \end{macro}
+% \begin{macro}{\cite}
+% \begin{macro}{\citealp}
+% ^^A\begin{macro}{\citepage}
+% ^^A\begin{macro}{\citequote}
+% The following macros, combined with \file{mlastyle.bst}, provide
+% for a bibliography in MLA style. Note that the definition of |\cite|,
+% |\citealp|, etc.\ vary depending on the options passed to
+% \package{mlastyle}.
+%
+% \begin{macro}{\mlastyle@intcite}
+% The original |\cite| is stored
+% in |\mlastyle@intcite|.
+% \begin{macrocode}
+%\let\mlastyle@intcite\cite
+% \end{macrocode}
+% \end{macro}
+% \begin{macro}{\mlastyle@relax}
+% This macro does nothing. Depending on the options, either |\citeC| or
+% |\citeM| and its ilk will utilize it.
+% \begin{macrocode}
+\newcommand{\mlastyle@relax}[2][]{\unskip}
+% \end{macrocode}
+% \end{macro}
+% \subsubsection{MLA Style}
+% \begin{macro}{\citeM}
+% If the \Lopt{mla} or \Lopt{style} options are used, the following is
+% executed.
+% \begin{macrocode}
+\ifmlastyle@style
+% \end{macrocode}
+% If the \Lopt{bibstyle} option is set, specify the bibliography style.
+% \begin{macrocode}
+ \ifmlastyle@bibstyle
+ \bibliographystyle{mlastyle}
+ \fi
+% \end{macrocode}
+% \end{macro}
+% \begin{macrocode}
+ \let\cite\citep
+ \let\mlastyle@citequeue\@empty
+ \def\mlastyle@cite#1#2#3{\csname#1\endcsname[#2]{#3}}
+ \newcommand\citeflush{\ifhmode\unskip\fi
+ \ifx\mlastyle@citequeue\@empty\else\ \let\@citea\relax
+ \citetext{\@for\@citeb:=\mlastyle@citequeue\do{\@citea
+ \expandafter\mlastyle@cite\@citeb\def\@citea{\NAT@sep\ }}}%
+ \global\let\mlastyle@citequeue\@empty\fi}
+ \newcommand\mlastyle@citeadd[3]{\ifx\mlastyle@citequeue\@empty
+ \xdef\mlastyle@citequeue{{#1}{#2}{#3}}\else
+ \xdef\mlastyle@citequeue{\mlastyle@citequeue,%
+ {#1}{#2}{#3}}\fi}
+ \newcommand\citeadd[2][]{\mlastyle@citeadd{citealp}{#1}{#2}}
+ \newcommand\citea{\@ifstar
+ {\let\mlastyle@star*\mlastyle@citea}
+ {\let\mlastyle@star\@empty\mlastyle@citea}}
+ \newcommand\mlastyle@citea[2][]{\expandafter\citeauthor
+ \mlastyle@star{#2}\mlastyle@citeadd{citeyear}{#1}{#2}}
+ \newcommand\Citea{\@ifstar
+ {\let\mlastyle@star*\mlastyle@Citea}
+ {\let\mlastyle@star\@empty\mlastyle@Citea}}
+ \newcommand\mlastyle@Citea[2][]{\expandafter\Citeauthor
+ \mlastyle@star{#2}\mlastyle@citeadd{citeyear}{#1}{#2}}
+ \newcommand\citepage[2][]{\citeyearpar[#1]{#2}}
+ \newcommand\citepageM[2][]{\unskip\ \citeyearpar[#1]{#2}}
+ \newcommand\citeindirect[2][]{\citep[qtd.\ in][#1]{#2}}
+ \newcommand\citeindirectM[2][]{\unskip{} \citep[qtd.\ in][#1]{#2}}
+ \let\citeN\citealp
+ \let\citeC\mlastyle@relax
+% \end{macrocode}
+% \subsubsection{Plain Style}
+% \begin{macro}{\citeC}
+% This next block is used if the \Lopt{compat} or \Lopt{format} option is
+% set.
+% \begin{macrocode}
+\else
+% \end{macrocode}
+% If the \Lopt{bibstyle} option is set, specify the bibliography style.
+% \begin{macrocode}
+ \ifmlastyle@bibstyle
+ \bibliographystyle{plain}
+ \fi
+ \ifx\@undefined\citet
+ \newcommand{\mlastyle@cite}[2][]{\@tempswafalse\@citex[]{#2}}
+ \newcommand{\citeC}[2][]{~\@tempswafalse\@citex[]{#2}}
+ \else
+ \newcommand{\mlastyle@cite}[2][]{\citep[]{#2}}
+ \def\citeC{ \citep}
+ \fi
+ \let\cite\mlastyle@cite
+ \let\citepage\mlastyle@cite
+ \let\citeindirect\mlastyle@cite
+ \let\citeM\mlastyle@relax
+ \let\citepageM\mlastyle@relax
+ \let\citeindirectM\mlastyle@relax
+\fi
+% \end{macrocode}
+% \end{macro}
+%
+% ^^A\end{macro}
+% ^^A\end{macro}
+% \end{macro}
+% \end{macro}
% \subsection{Formatting}
-% Formatting is done if the \Lopt{mla} or \Lopt{format} option is set.
+% \begin{macro}{\urlstyle@mlastyle}
+% This first bit is always done, even if formatting is disabled.
+% \begin{macrocode}
+\RequirePackage{url}
+\def\url@mlastyle{\url@samestyle
+ \mathchardef\UrlBreakPenalty 0
+ \relpenalty\UrlBreakPenalty
+ \def\UrlBigBreaks{\do\/\do@url@hyp}
+}
+% \end{macrocode}
+% \end{macro}
+% \begin{macro}{\mlastyle@i}
+% This is the standard MLA format indent.
+% \begin{macrocode}
+ \newdimen\mlastyle@i \mlastyle@i=.5in
+% \end{macrocode}
+% \end{macro}
+% Everything else is done only if the \Lopt{mla} or \Lopt{format} option
+% is set.
% \begin{macrocode}
\ifmlastyle@format
% \end{macrocode}
% \subsubsection{Macros}
% \begin{macro}{\maketitle}
+% \begin{macro}{\and}
% |\maketitle| generates a heading in MLA format.
% \begin{macrocode}
\renewcommand{\maketitle}{\begin{flushleft}
\@date\end{flushleft}
\begin{center}\@title\end{center}\par
}
+ \let\and\par
% \end{macrocode}
% \end{macro}
+% \end{macro}
% \begin{macro}{\today}
% |\today| is redefined to DD~Mon.~YYYY format.
% \begin{macrocode}
% \end{macrocode}
% \end{macro}
% \begin{macro}{\slash}
-% No penalty for |\slash|, and plain /'s permit line breaks if necessary.
+% No penalty for |\slash|.
% ^^A\let\mlastyle@sl@sh=/
% \begin{macrocode}
- \def\slash{/\penalty\z@}
- \def\mlastyle@slash{/\futurelet\mlastyle@slashnext\mlastyle@slashx}
- \def\mlastyle@slashx{\ifx\mlastyle@slashnext/\else
- \penalty\exhyphenpenalty\fi}
+ \edef\slash{/\penalty\z@}
% \end{macrocode}
+% ^^A \def\mlastyle@slash{/\futurelet\mlastyle@slashnext\mlastyle@slashx}
+% ^^A \def\mlastyle@slashx{\ifx\mlastyle@slashnext/\else
+% ^^A \penalty\exhyphenpenalty\fi}
% \end{macro}
% \begin{macro}{\section}
% \begin{macro}{\subsection}
+% \begin{macro}{\subsubsection}
% Sections are formatted by centering the section name and beginning a new
% page. Subsections simply center the section name.
% \begin{macrocode}
% ^^A\def\verbatim@font{\mlastyle@qspread\mlastyle@vfont}
% \end{macro}
% \end{macro}
+% \end{macro}
% \subsubsection{Environments}
-% ^^A%\newenvironment{blocks}{\begin{quote} \linespread{1} \small \normalsize}{\end{quote} \linespread{2} \small \normalsize}
-% ^^A%\newenvironment{blockm}{\begin{quotation} \linespread{1} \small \normalsize}{\end{quotation} \linespread{2} \small \normalsize}
+% ^^A%\newenvironment{blocks}{\begin{quote} \linespread{1} \selectfont}{\end{quote} \linespread{2} \small \selectfont}
+% ^^A%\newenvironment{blockm}{\begin{quotation} \linespread{1} \selectfont}{\end{quotation} \linespread{2} \selectfont}
% \begin{environment}{verse}
% Indented 1 inch, with an additional .25 inch hanging indent.
% \begin{macrocode}
\renewenvironment{verse}{\list{}{\mlastyle@qspread
- \advance\leftmargin.75in\itemindent-.25in
+ \advance\leftmargin1.5\mlastyle@i\itemindent-.5\mlastyle@i
\listparindent\itemindent}\item\relax}{\endlist}
% \end{macrocode}
% \end{environment}
% Indented 1 inch, with a paragraph indent of an additional .25 inches.
% \begin{macrocode}
\renewenvironment{quotation}{\list{}{\mlastyle@qspread
- \advance\leftmargin.5in\itemindent.25in
+ \advance\leftmargin\mlastyle@i\itemindent.5\mlastyle@i
\listparindent\itemindent}\item\relax}{\endlist}
% \end{macrocode}
% \end{environment}
% indented.
% \begin{macrocode}
\renewenvironment{quote}{\list{}{\mlastyle@qspread
- \advance\leftmargin.5in
- \listparindent.25in}\item\relax}{\endlist}
+ \advance\leftmargin\mlastyle@i
+ \listparindent.5\mlastyle@i}\item\relax}{\endlist}
% \end{macrocode}
% \end{environment}
% \begin{environment}{workscited}
-% Works Cited environment, for compatibility with \package{mla-paper}.
+% \begin{macro}{\bibent}
+% Works cited environment, for compatibility with \package{mla-paper}.
% \begin{macrocode}
\newenvironment{workscited}%
{\newpage{\centerline{Works Cited}}}{\newpage}
- \newcommand{\bibent}{\noindent \hangindent .5in}
+ \newcommand{\bibent}{\noindent\hangindent\mlastyle@i}
% \end{macrocode}
+% \end{macro}
% \end{environment}
% \subsubsection{Margins}
% Top and bottom margins are 1 inch each. The header is flush with the
-% right margin at .5 inches from the top of the page.
-% ^^A\addtolength{\headheight}{-1pt}
-% ^^A\setlength{\headheight}{1.4\headheight}% kludge
+% right margin, .5 inches from the top of the page.
% \begin{macrocode}
- \addtolength{\voffset}{-0.5in}
+ \addtolength{\voffset}{-.5in}
\setlength{\textheight}{\paperheight}
\addtolength{\textheight}{-2in}
\setlength{\topmargin}{0in}
\setlength\headheight\f@baselineskip
- \setlength{\headsep}{0.5in}
+ \setlength{\headsep}{.5in}
\addtolength{\headsep}{-\headheight}
\setlength{\footskip}{0.25in}
\raggedbottom
% \end{macrocode}
% Left and right margins in MLA format are each 1 inch wide.
% \begin{macrocode}
- \addtolength{\hoffset}{-0.5in}
+ \addtolength{\hoffset}{-.5in}
\setlength{\textwidth}{\paperwidth}
\addtolength{\textwidth}{-2in}
- \setlength{\oddsidemargin}{0.5in}
- \setlength{\evensidemargin}{0.5in}
- \setlength{\marginparwidth}{0.5in}
+ \setlength{\oddsidemargin}{.5in}
+ \setlength{\evensidemargin}{.5in}
+ \setlength{\marginparwidth}{.5in}
% \end{macrocode}
% \subsubsection{Paragraphs}
% Paragraphs should be left justified, with the first line indented .5
% inches.
% \begin{macrocode}
\raggedright
- \setlength{\parindent}{.5in}
+ \setlength\parindent\mlastyle@i
% \end{macrocode}
% MLA format specifies that all paragraphs should be indented, even those
% beginning a new section. This snippet from \package{indentfirst} changes
\let\@afterindentfalse\@afterindenttrue
\@afterindenttrue
% \end{macrocode}
-% Double space {\em everywhere}.
+% Double space {\em everywhere}. In a 12pt font, the default
+% |\baselineskip| is changed from 14.5pt to 14.4pt.
% ^^A\RequirePackage{doublespace}
% \begin{macrocode}
- \linespread{2.0}
+ \normalsize
+ \ifdim\baselineskip=14.5pt
+ \renewcommand\normalsize{%
+ \@setfontsize\normalsize\@xiipt{14.4}%
+ \abovedisplayskip 12\p@ \@plus3\p@ \@minus7\p@
+ \abovedisplayshortskip \z@ \@plus3\p@
+ \belowdisplayshortskip 6.5\p@ \@plus3.5\p@ \@minus3\p@
+ \belowdisplayskip \abovedisplayskip
+ \let\@listi\@listI}\normalsize
+ \fi
+ \linespread{2}
\leftmargini\parindent
\def\@listi{\leftmargin\leftmargini
\parsep\z@\itemsep\z@\topsep -3\p@\relax}
\def\@listvi{\leftmargin\leftmarginvi
\parsep\z@\itemsep\z@\topsep -3\p@\relax}
% \end{macrocode}
+% \begin{macro}{\nonfrenchspacing}
+% Only one space after colons, unless someone else has already tinkered
+% with its space factor.
+% \begin{macrocode}
+ \let\mlastyle@intnfs\nonfrenchspacing
+ \def\nonfrenchspacing{\mlastyle@intnfs
+ \ifnum\the\sfcode`\:=2000\sfcode`\:=1999\fi}
+\ifnum\the\sfcode`\:=2000\sfcode`\:=1999\fi
+% \end{macrocode}
+% \end{macro}
% \subsubsection{Header}
% The last name and page number appear on every page, including the first.
% \begin{macrocode}
\pagestyle{mlastyle}
% \end{macrocode}
% \subsubsection{Notes}
-% Footnotes should be indented .5 inches; however .56 inches is used
-% in a crude attempt to compensate for
-% the alignment provided by the \package{footmisc} package. Endnotes are
-% preferred in MLA style anyway, so this should not be a problem in most
-% circumstances.
-% \begin{macrocode}
- \RequirePackage[ragged,norule]{footmisc}
- \def\footnotelayout{\linespread{1}\footnotesize\raggedright{} }
- \footnotemargin .56in
- \skip\footins=2\baselineskip
- \footnotesep 1.2\footnotesep
- \addtolength\footnotesep{\baselineskip}
- \def\footnotesize{\normalsize}
-% \end{macrocode}
-% ^^A\let\footnoterule\relax
+% \begin{macro}{\@footnotetext}
+% \begin{macro}{\footnoterule}
+% This code is terrible, but seems to work in practice. Suggestions
+% welcome.
+% \begin{macrocode}
+ \def\footnoterule{
+ \ifnum\mlastyle@prevsplit=\z@\else
+ \vbox to \z@{\linespread{1}\normalsize\vss\vbox{\noindent
+ \leaders\hrule\@height 3\p@\@depth-2.6\p@
+ %\leaders\hbox{-}
+ \hfill\strut}\kern\z@}%
+ \fi
+ \xdef\mlastyle@prevsplit{\the\insertpenalties}}
+ \def\mlastyle@prevsplit{0}
+ \skip\footins=\f@baselineskip\relax
+ \skip\footins=2.15\skip\footins
+ \long\def\@footnotetext#1{\insert\footins{%
+ \linespread{1}\normalsize
+ \splittopskip1.7\baselineskip
+ \color@begingroup
+ \parindent\mlastyle@i
+ \rule\z@{1.7\baselineskip}
+ \@makefnmark{}
+ \ignorespaces#1\@finalstrut\strutbox
+ \color@endgroup}}
+% \end{macrocode}
+% \end{macro}
+% \end{macro}
+% \begin{macro}{\enoteformat}
+% \begin{macro}{\enoteheading}
+% \begin{macro}{\enotesize}
% Endnotes are supported, but only if the \package{endnotes} package is
% loaded {\em before\/} this package.
% \begin{macrocode}
- \ifx\@undefined\endnote\else
+ \ifx\@undefined\endnote
+ \let\note\footnote\else
\def\enoteheading{\newpage\section*{\notesname}}
\def\enoteformat{\leavevmode\makeenmark{} }
\def\enotesize{\normalsize}
+ \let\note\endnote
\fi
% \end{macrocode}
-% \subsubsection{Bibliography}
-% The definition of |\thebibliography| varies depending on the document
-% class.
-% \begin{macrocode}
- \@ifundefined{chapter}
-% \end{macrocode}
-% Article class.
-% \begin{macrocode}
- { \def\thebibliography#1{\newpage\section*{\refname}
- \list{\@biblabel{\@arabic\c@enumiv}}%
- {\settowidth\labelwidth{\@biblabel{#1}}}
- \leftmargin\labelwidth
- \advance\leftmargin\labelsep
- \itemindent-\leftmargin
- \def\newblock{}
- \usecounter{enumiv}
- \sloppy%\sfcode`\.=1000\relax
- \catcode`/=13\let/=\mlastyle@slash}}
-% \end{macrocode}
-% Report/book class.
-% \begin{macrocode}
- { \def\thebibliography#1{\chapter*{\bibname}
- \list{\@biblabel{\@arabic\c@enumiv}}%
- {\settowidth\labelwidth{\@biblabel{#1}}}
- \leftmargin\labelwidth
- \advance\leftmargin\labelsep
- \itemindent-\leftmargin
- \def\newblock{}
- \usecounter{enumiv}
- \sloppy%\sfcode`\.=1000\relax
- \catcode`/=13\let/=\mlastyle@slash}}
-% \end{macrocode}
-% \begin{macrocode}
-\fi % \ifmlastyle@format
-% \end{macrocode}
-% \subsection{Style}
-% \begin{macro}{\cite}
-% \begin{macro}{\citeN}
-% ^^A\begin{macro}{\citepage}
-% ^^A\begin{macro}{\citequote}
-% The following macros, combined with \file{mlastyle.bst}, provide
-% for a bibliography in MLA style. Note that the definition of |\cite|,
-% |\citeN|, etc.\ vary depending on the options passed to
-% \package{mlastyle}.
-%
-% \begin{macro}{\mlastyle@intcite}
-% The original |\cite| is stored
-% in |\mlastyle@intcite|.
-% \begin{macrocode}
-\let\mlastyle@intcite\cite
-% \end{macrocode}
% \end{macro}
-% \begin{macro}{\mlastyle@relax}
-% This macro does nothing. Depending on the options, either |\citeC| or
-% |\citeM| and its ilk will utilize it.
-% \begin{macrocode}
-\newcommand{\mlastyle@relax}[2][]{}
-% \end{macrocode}
% \end{macro}
-% \subsubsection{MLA Style}
-% \begin{macro}{\citeM}
-% If the \Lopt{mla} or \Lopt{style} options are used, the following is
-% executed.
-% \begin{macrocode}
-\ifmlastyle@style
- \def\@cite#1#2{(#1\if@tempswa{} #2\fi)}
- \def\cite{\def\@cite##1##2{(##1\if@tempswa{}
- ##2\fi)}\mlastyle@intcite}
- \def\citeN{\def\@cite##1##2{##1\if@tempswa{}
- ##2\fi}\mlastyle@intcite}
- \def\citeM{\def\@cite##1##2{ (##1\if@tempswa{}
- ##2\fi)}\mlastyle@intcite}
- \def\citepage{\def\@cite##1##2{\if@tempswa(##2)\fi}\mlastyle@intcite}
- \def\citepageM{\def\@cite##1##2{\if@tempswa{}
- (##2)\fi}\mlastyle@intcite}
- \def\citeindirect{\def\@cite##1##2%
- {(qtd. in ##1\if@tempswa{} ##2\fi)}\mlastyle@intcite}
- \def\citeindirectM{\def\@cite##1##2%
- { (qtd. in ##1\if@tempswa{} ##2\fi)}\mlastyle@intcite}
- \let\citeC\mlastyle@relax
-% \end{macrocode}
% \end{macro}
-% \iffalse
-% Place commas in-between citations in the same |\citeyear|, |\citeyearNP|,
-% |\citeN|, or |\shortciteN| command.
-% Use something like |\citeN{ref1,ref2,ref3}| and |\citeN{ref4}| for a list.
-%
-% \@citedata and \@citedatax:
-% \def\@citedata{%
-% \@ifnextchar [{\@tempswatrue\@citedatax}%
-% {\@tempswafalse\@citedatax[]}%
-% }
-% \def\@citedatax[#1]#2{%
-% \let\@citea\@empty
-% \if@filesw\immediate\write\@auxout{\string\citation{#2}}\fi%
-% \def\@citea{}\@cite{\@for\@citeb:=#2\do%
-% {\@citea\def\@citea{; }\@ifundefined% by Young
-% {b@\@citeb}{{\bf ?}%
-% \@warning{Citation `\@citeb' on page \thepage \space undefined}}%
-% {\csname b@\@citeb\endcsname}}}{#1}}%
-% \fi
-% \begin{macro}{\@citex}
-% This is the original |\@citex| from \LaTeX{} modified to use semicolons.
+% \subsubsection{Bibliography}
+% \begin{macro}{\url@mlastyle}
+% |\url| is needed to format urls in the bibliography.
% \begin{macrocode}
-\def\@citex[#1]#2{%
- \let\@citea\@empty
- \@cite{\@for\@citeb:=#2\do
- {\@citea\def\@citea{;\penalty-1\ }%
- \edef\@citeb{\expandafter\@firstofone\@citeb\@empty}%
- \if@filesw\immediate\write\@auxout{\string\citation{\@citeb}}\fi
- \@ifundefined{b@\@citeb}{\mbox{\reset@font\bfseries ?}%
- \G@refundefinedtrue
- \@latex@warning
- {Citation `\@citeb' on page \thepage \space undefined}}%
- {{\csname b@\@citeb\endcsname}}}}{#1}}
+\urlstyle{mla}
% \end{macrocode}
% \end{macro}
-% \begin{macro}{\@biblabel}
-% No labels in the bibliography.
+% ^^A\ifx\@undefined\url{
+% ^^A \catcode`/=13
+% ^^A \gdef\url{\bgroup\catcode`/=13
+% ^^A \let/\slash\mlastyle@url}
+% ^^A \gdef\mlastyle@url#1{#1\egroup}}
+% ^^A}\fi
+% \begin{environment}{thebibliography}
+% The definition of |thebibliography| varies depending on the document
+% class.
% \begin{macrocode}
- \def\@biblabel#1{#1}
- \labelsep\z@
- \let\mlastyle@intbib\thebibliography
- \def\thebibliography#1{\mlastyle@intbib{#1}
- \itemindent-\leftmargin\def\@biblabel##1{}}
+\ifx\@undefined\citet
+ \renewenvironment\thebibliography#1{\clearpage
+ \@ifundefined{chapter}
+ {\section*{\refname}}
+ {\chapter*{\bibname}}
+ \list{\@biblabel{\@arabic\c@enumiv}}%
+ {\settowidth\labelwidth{\@biblabel{#1}}}
+ \leftmargin\labelwidth
+ \advance\leftmargin\labelsep
+ \itemindent-\leftmargin
+ \let\newblock\@empty
+ %\sfcode`\.=\@m
+ \usecounter{enumiv}
+ \sloppy
+ }
+ {\def\@noitemerr
+ {\@latex@warning{Empty `thebibliography' environment}}%
+ \endlist}
% \end{macrocode}
-% \end{macro}
-% Title either the bibliography or the references ``Works Cited,''
-% depending on the document class.
-% \begin{macrocode}
- \@ifundefined{chapter}
- {\renewcommand\refname{Works Cited}}
- {\renewcommand\bibname{Works Cited}}
-% \end{macrocode}
-%
-% ^^A% Define the command \workscited{bib}{style}{nocite}
-% ^^A%\newcommand{\workscited}[3]{%
-% ^^A% \ifx\chapter\@undefined%
-% ^^A% \addcontentsline{toc}{chapter}{\bfseries\bibname}% report style
-% ^^A% \else
-% ^^A% \addcontentsline{toc}{section}{\bfseries\refname}% article style
-% ^^A% \fi
-% ^^A% \bibliography{#1}\bibliographystyle{#2}\nocite{#3}}
-% ^^A% \fi
-% ^^A\newcommand{\annote}[1]{\begin{list}{}{%
-% ^^A \setlength{\labelwidth}{0pt}
-% ^^A \addtolength{\leftmargin}{\parindent}
-% ^^A \setlength{\labelsep}{0pt}}%
-% ^^A \item #1 \end{list}}
-% \subsubsection{Plain Style}
-% \begin{macro}{\citeC}
-% This next block is used only if the \Lopt{compat} option is set.
+% \end{environment}
+% If the \package{natbib} package is loaded, the following is executed
+% instead.
% \begin{macrocode}
\else
- \newcommand{\mlastyle@cite}[2][]{\@tempswafalse\@citex[]{#2}}
- \let\cite\mlastyle@cite
- \let\citepage\mlastyle@cite
- \let\citeindirect\mlastyle@cite
- \newcommand{\citeC}[2][]{ \@tempswafalse\@citex[]{#2}}
- \let\citeM\mlastyle@relax
- \let\citepageM\mlastyle@relax
- \let\citeindirectM\mlastyle@relax
+ \bibhang\mlastyle@i\bibsep\z@
\fi
% \end{macrocode}
-% \end{macro}
-%
-% ^^A\end{macro}
-% ^^A\end{macro}
-% \end{macro}
-% \end{macro}
-% \iffalse
+% ^^A \newcommand\bibpreamble{%
+% ^^A \@ifundefined{citet}{}%
+% ^^A {\bibhang\mlastyle@i\bibsep\z@}}
+% \begin{macrocode}
+\fi % \ifmlastyle@format
+% \end{macrocode}
+
+% \begin{macrocode}
%</package>
-% \fi
+% \end{macrocode}
%
% \Finale
\endinput