X-Git-Url: http://git.tpope.net/?p=latex-mlastyle.git;a=blobdiff_plain;f=mlastyle.dtx;h=d6566af6307128bfa527d2948651cabd3362ce72;hp=92944988ee5ae132a57dfa334b5b330e0b28426b;hb=5b3dc9b27b402c491d4b5d154267609edd1f8c16;hpb=3486c32c19a5e4b60ad034860a1a406019e31da1 diff --git a/mlastyle.dtx b/mlastyle.dtx index 9294498..d6566af 100644 --- a/mlastyle.dtx +++ b/mlastyle.dtx @@ -18,26 +18,28 @@ % \iffalse %\NeedsTeXFormat{LaTeX2e}[1999/12/01] %\ProvidesPackage{mlastyle} -% [2003/11/09 v0.9 .dtx mlastyle file] +% [2003/11/09 v0.9 MLA format and documentation style] % %<*driver> \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 + \usepackage[compat]{mlastyle} + \bibliographystyle{plain} + \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''}} \EnableCrossrefs \CodelineIndex @@ -121,6 +123,7 @@ % \DoNotIndex{\def} % \DoNotIndex{\do} % \DoNotIndex{\edef} +% \DoNotIndex{\egroup} % \DoNotIndex{\else} % \DoNotIndex{\end} % \DoNotIndex{\endcsname} @@ -205,6 +208,7 @@ % \DoNotIndex{\renewenvironment} % \DoNotIndex{\reset@font} % \DoNotIndex{\rhead} +% \DoNotIndex{\selectfont} % \DoNotIndex{\setlength} % \DoNotIndex{\settowidth} % \DoNotIndex{\sfcode} @@ -214,6 +218,7 @@ % \DoNotIndex{\string} % \DoNotIndex{\sw@llow} % \DoNotIndex{\the} +% \DoNotIndex{\thebibliography} % \DoNotIndex{\thepage} % \DoNotIndex{\topsep} % \DoNotIndex{\usecounter} @@ -239,7 +244,7 @@ % \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}} @@ -255,13 +260,20 @@ % \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. @@ -277,7 +289,7 @@ %\instructor{Professor Smith} %\course{English 101} %\date{1~Jan.\ 1970} -%\title{The Futility of Compulsory English Classes} +%\title{The Inherent Sadism of Compulsory English Classes} % %\begin{document} %\maketitle @@ -298,21 +310,20 @@ % 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 @@ -324,8 +335,8 @@ % \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. % @@ -339,32 +350,33 @@ % \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}{} % @@ -394,17 +406,18 @@ % |\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 |\citeN|, 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 % 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})| +% |(\citeN[42]{texbook}|\texttt{; }|\citeN[69]{latex})| % would be something like \examp[.]{(Knuth 42; Lamport 69)} % % \subsubsection{Using {\rm \BibTeX}} \label{sec:bibtex} @@ -441,18 +454,18 @@ % \emph{\LaTeX\/})} instead of \examp[.]{(Lamport, \emph{\LaTeX: A Document % Preparation System\/})} % -% \StopEventually{\PrintChanges\PrintIndex} +% \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 @@ -482,7 +495,7 @@ \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 @@ -513,12 +526,18 @@ \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 @@ -586,6 +605,7 @@ % \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} @@ -600,9 +620,10 @@ % ^^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} @@ -629,7 +650,7 @@ % \end{macrocode} % \end{environment} % \begin{environment}{workscited} -% Works Cited environment, for compatibility with \package{mla-paper}. +% Works cited environment, for compatibility with \package{mla-paper}. % \begin{macrocode} \newenvironment{workscited}% {\newpage{\centerline{Works Cited}}}{\newpage} @@ -733,6 +754,7 @@ \fi % \end{macrocode} % \subsubsection{Bibliography} +% \begin{environment}{thebibliography} % The definition of |\thebibliography| varies depending on the document % class. % \begin{macrocode} @@ -764,6 +786,7 @@ \sloppy%\sfcode`\.=1000\relax \catcode`/=13\let/=\mlastyle@slash}} % \end{macrocode} +% \end{environment} % \begin{macrocode} \fi % \ifmlastyle@format % \end{macrocode} @@ -792,6 +815,7 @@ % \end{macrocode} % \end{macro} % \subsubsection{MLA Style} +% \begin{macro}{\@cite} % \begin{macro}{\citeM} % If the \Lopt{mla} or \Lopt{style} options are used, the following is % executed. @@ -814,6 +838,7 @@ \let\citeC\mlastyle@relax % \end{macrocode} % \end{macro} +% \end{macro} % \iffalse % Place commas in-between citations in the same |\citeyear|, |\citeyearNP|, % |\citeN|, or |\shortciteN| command. @@ -883,14 +908,15 @@ % ^^A \item #1 \end{list}} % \subsubsection{Plain Style} % \begin{macro}{\citeC} -% This next block is used only if the \Lopt{compat} option is set. +% This next block is used if the \Lopt{compat} or \Lopt{format} option is +% set. % \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}} + \newcommand{\citeC}[2][]{~\@tempswafalse\@citex[]{#2}} \let\citeM\mlastyle@relax \let\citepageM\mlastyle@relax \let\citeindirectM\mlastyle@relax @@ -902,9 +928,9 @@ % ^^A\end{macro} % \end{macro} % \end{macro} -% \iffalse +% \begin{macrocode} % -% \fi +% \end{macrocode} % % \Finale \endinput