Files
Frank14fandCursor 0ade812864 docs(jfm): establish traceable manuscript planning baseline
Track the research dossiers, section freezes, supporting manuscript materials, and round-aware agent controls so future drafting decisions can be reviewed across both repository mirrors.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-08-10 18:51:53 +08:00

114 lines
3.5 KiB
TeX

%\usepackage[switch]{lineno}
%\newcounter{lasttextlineno}
\usepackage[pagewise,mathlines]{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
%\pagewiselinenumbers%%
\newif \ifLineNumbers%
\linenumberdisplaymath
\def\linenumberfont{\normalfont\fontsize{8}{10}\selectfont}
\if@twocolumn
\setlength\marginparwidth{.75cm}
\setlength\marginparsep{19.5\p@}
\else
\setlength\marginparwidth{3.0cm}
\setlength\marginparsep{24\p@}
\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}%
}
\makeatletter
\setlength\marginparsep{12\p@}
\setlength\marginparpush{0\p@}
\setlength\marginparwidth{2.6pc}
\makeatother
\endinput