103 lines
		
	
	
		
			3.4 KiB
		
	
	
	
		
			TeX
		
	
	
	
	
	
			
		
		
	
	
			103 lines
		
	
	
		
			3.4 KiB
		
	
	
	
		
			TeX
		
	
	
	
	
	
| \usepackage[switch,mathlines,displaymath]{lineno}
 | |
| %\runninglinenumbers %% for continous line numbering regardless of box and minipage but only on left side in single/double column
 | |
| \linenumbers %% properly in single/double column but boxes and minipage linenos not getting continuous
 | |
| 
 | |
| \def\linenumberfont{\usefont{T1}{ptm}{m}{n}\color{red}\fontsize{8}{10}\selectfont}
 | |
| \if@twocolumn
 | |
| \setlength\marginparwidth{.75cm}
 | |
| \setlength\marginparsep{19.5\p@}
 | |
| \else
 | |
| \setlength\marginparwidth{20pt}
 | |
| \setlength\marginparsep{24pt}
 | |
| \fi
 | |
| \newcommand\linenomathWithnumbersforams{%
 | |
|   \ifLineNumbers
 | |
|   %\ifx\@@par\@@@par\else
 | |
|     \ifnum\interlinepenalty>-\linenopenaltypar
 | |
|       \global\holdinginserts\thr@@
 | |
|       \advance\interlinepenalty \linenopenalty
 | |
|      \ifhmode                                   % v4.3
 | |
|       \advance\predisplaypenalty \linenopenalty
 | |
|      \fi
 | |
|       %\advance\postdisplaypenalty \linenopenalty
 | |
|       \advance\interdisplaylinepenalty \linenopenalty
 | |
|     \fi
 | |
|   \fi
 | |
|   \ignorespaces
 | |
|   }
 | |
| 
 | |
| \newcommand\linenomathWithnumbersformultline{%
 | |
|   \ifLineNumbers
 | |
|   %\ifx\@@par\@@@par\else
 | |
|     \ifnum\interlinepenalty>-\linenopenaltypar
 | |
|       \global\holdinginserts\thr@@
 | |
|       \advance\interlinepenalty \linenopenalty
 | |
|      \ifhmode                                   % v4.3
 | |
|       %\advance\predisplaypenalty \linenopenalty
 | |
|      \fi
 | |
|       %\advance\postdisplaypenalty \linenopenalty
 | |
|       \advance\interdisplaylinepenalty \linenopenalty
 | |
|     \fi
 | |
|   \fi
 | |
|   \ignorespaces
 | |
|   }
 | |
| 
 | |
| 
 | |
| 
 | |
| \newcommand*\patchAmsMathEnvironmentForLineno[1]{%
 | |
| \expandafter\let\csname old#1\expandafter\endcsname\csname #1\endcsname
 | |
| \expandafter\let\csname oldend#1\expandafter\endcsname\csname end#1\endcsname
 | |
| \renewenvironment{#1}%
 | |
| {\def\linenomath{\linenomathWithnumbersforams}%added
 | |
|  \@namedef{linenomath*}{\linenomathNonumbers}%added
 | |
| \linenomath\csname old#1\endcsname}%
 | |
| {\csname oldend#1\endcsname\endlinenomath}}%
 | |
| \newcommand*\patchBothAmsMathEnvironmentsForLineno[1]{%
 | |
| \patchAmsMathEnvironmentForLineno{#1}%
 | |
| \patchAmsMathEnvironmentForLineno{#1*}%
 | |
| }%
 | |
| 
 | |
| \AtBeginDocument{%
 | |
| \patchBothAmsMathEnvironmentsForLineno{equation}% deleted
 | |
| \patchBothAmsMathEnvironmentsForLineno{align}%
 | |
| \patchBothAmsMathEnvironmentsForLineno{flalign}%
 | |
| \patchBothAmsMathEnvironmentsForLineno{alignat}%
 | |
| \patchBothAmsMathEnvironmentsForLineno{gather}%
 | |
| %\patchBothAmsMathEnvironmentsForLineno{multline}%
 | |
| %\patchBothAmsMathEnvironmentsForLineno{split}%
 | |
| \patchAmsMathEnvironmentForLineno{array}%
 | |
| %\patchAmsMathEnvironmentForLineno{split}%
 | |
| }
 | |
| 
 | |
| %%\AtBeginDocument{%
 | |
|   \let\LN@align\align
 | |
|   \let\LN@endalign\endalign
 | |
|   \renewenvironment{align}%
 | |
|      {\linenomath\LN@align}%
 | |
|      {\LN@endalign\endlinenomath}%
 | |
| %%}
 | |
| 
 | |
| 
 | |
| \renewenvironment{multline}{\linenomathWithnumbersformultline%
 | |
|   \start@multline\st@rredfalse
 | |
| }{%
 | |
|   \iftagsleft@ \@xp\lendmultline@ \else \@xp\rendmultline@ \fi
 | |
|   \ignorespacesafterend
 | |
| \endlinenomath}
 | |
| \renewenvironment{multline*}{\linenomathWithnumbersformultline\start@multline\st@rredtrue}{\endmultline\endlinenomath}
 | |
| 
 | |
| \def\insplit@{%
 | |
|   \global\setbox\z@\vbox\bgroup
 | |
|     \Let@ \chardef\dspbrk@context\@ne \restore@math@cr
 | |
|     \default@tag % disallow use of \tag here
 | |
|     \ialign\bgroup
 | |
|       \hfil%
 | |
|       \strut@
 | |
|        $\m@th\displaystyle{##}$% 
 | |
|      &$\m@th\displaystyle{{}##}$%
 | |
|       \hfill % Why not \hfil?---dmj, 1994/12/28
 | |
|       \crcr\noalign{\global\advance\c@linenumber\@ne}%
 | |
| }
 | |
| 
 | |
| \endinput
 |