Fixed nested underlining
[latex-mlastyle.git] / mlastyle.dtx
index 48fd55b3116f7709349d218835259ea1f4cfafec..d70be821ebcb279f81b6b69bb529b8e8f60ecb3c 100644 (file)
 \documentclass[draft]{ltxdoc}
 \iftrue
   \usepackage[compat]{mlastyle}
-  \addtolength{\headsep}{-25pt}
-  \addtolength{\headheight}{-12pt}
+  \addtolength{\headsep}{-5pt}
+  %\addtolength{\headheight}{-12pt}
   \addtolength{\topmargin}{-17pt}
-  \addtolength{\textheight}{58pt}
+  \addtolength{\textheight}{22pt}
   \IfFileExists{ulem.sty}{\usepackage[normalem]{ulem}}{\let\uline\emph}
 \else
   \usepackage[mla]{mlastyle}
 % \DoNotIndex{\fancyhf}
 % \DoNotIndex{\fancypagestyle}
 % \DoNotIndex{\fi}
-% \DoNotIndex{\fontselect}
 % \DoNotIndex{\futurelet}
 % \DoNotIndex{\gdef}
 % \DoNotIndex{\hangindent}
 % \DoNotIndex{\renewenvironment}
 % \DoNotIndex{\reset@font}
 % \DoNotIndex{\rhead}
+% \DoNotIndex{\selectfont}
 % \DoNotIndex{\setlength}
 % \DoNotIndex{\settowidth}
 % \DoNotIndex{\sfcode}
 % |\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
 % \StopEventually{\PrintChanges\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
   \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
 % ^^A\end{macro}
 % \end{macro}
 % \end{macro}
-% \iffalse
+%    \begin{macrocode}
 %</package>
-% \fi
+%    \end{macrocode}
 %
 % \Finale
 \endinput