Fixed nested underlining
[latex-mlastyle.git] / mlastyle.dtx
index 580b71b08f7e4605d03eb5410320d23a7ef595b2..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}
 % \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