为什么当段落后面跟着缩进的公式时,lineno 不会对段落进行编号?

为什么当段落后面跟着缩进的公式时,lineno 不会对段落进行编号?

在寻找缺失行号的来源时,我发现紧接着公式的段落没有行号,但添加空格后这个问题就解决了,

例如,以下文档没有行号:

\documentclass[12pt]{article}
\usepackage{amsmath}
\usepackage{lineno}
\linenumbers
\begin{document}
Lorem ipsum dolor sit amet, consectetur adipiscing elit: 
$$1+1=2$$ 
\end{document}

但是这个确实如此:

\documentclass[12pt]{article}
\usepackage{amsmath}
\usepackage{lineno}
\linenumbers
\begin{document}
Lorem ipsum dolor sit amet, consectetur adipiscing elit: 

$$1+1=2$$ 
\end{document}

唯一的区别是等式上方的空间。

  • 为什么会出现这种情况(有没有简单的解决方法)?

  • 在段落中包含缩进的方程式是否不正确,或者这只是一个“特征” lineno

答案1

$$...$$已经过时,请参阅为什么 \[ ... \] 比 $$ ... $$ 更可取?如果您使用正确的 LaTeX 显示数学环境,则编号无需空行即可工作:

\documentclass[12pt]{article}
\usepackage{amsmath}
\usepackage{lineno}
\linenumbers
\begin{document}
Lorem ipsum dolor sit amet, consectetur adipiscing elit: 
\[1+1=2\] 
\end{document}

在此处输入图片描述

答案2

为了正确完成行号,必须使用\begin{linenomath*}\end{linenomath*}代码包装数学环境:

\documentclass[12pt]{article}
\usepackage{amsmath}
\usepackage{lineno}
\linenumbers
\begin{document}
For line numbering to be done correctly the math environments has to be wrapped using the ''linenomath`` code as follows: 

\begin{linenomath*}
    \begin{equation}
        a^2=b^2+c^2
    \end{equation}
\end{linenomath*}
some text here some text here  some text here some text here some text here some text here some text here some text here some text here some text here some text here some text here some text here some text here some text heresome text here. 
\end{document}

在此处输入图片描述

答案3

数学环境需要被包裹\begin{linenomath*}\end{linenomath*}正如Bamzi 的回答

更改所有方程式的一个快速方法是通过添加代码来更新方程式环境

\let\oldequation\equation
\let\oldendequation\endequation

\renewenvironment{equation}
  {\linenomathNonumbers\oldequation}
  {\oldendequation\endlinenomath}

\begin{document}

答案4

使用mathlineslineno 选项并写入:

\begin{linenomath}
\begin{align*}
z_{1}&=x_{1}+y_{1}\\
z_{2}&=x_{2}+y_{2}
\end{align*}
\end{linenomath}

获得

在此处输入图片描述

相关内容