包 lineno 工作不正常。跳过行。TexLive 2016

包 lineno 工作不正常。跳过行。TexLive 2016

我查看了有关在 Latex 文档中对每行进行编号的问题,并使用了软件包lineno,并尝试了问题和答案中显示的所有技巧,但对我而言都不起作用。软件包仍然没有对每行进行编号。我希望对每行进行编号,包括数学和文本。

最近有什么变化吗?我试过了

\usepackage[]{lineno}
\linenumbers 

尝试过

\usepackage[]{lineno}
\internallinenumbers

尝试过

\usepackage[]{lineno}
\linenumbers 
\setrunninglinenumbers
\runninglinenumbers

尝试过

\usepackage[]{lineno}
\internallinenumbers
\setrunninglinenumbers
\runninglinenumbers

最后一个做得最好,但它仍然会随机跳过一些方程式和一些文本行。

这是使用上述最后一种配置的 MWE,因为它似乎效果最好

\documentclass[12pt]{article}%
\usepackage{amsmath}
\usepackage{amsfonts}
\usepackage{amssymb}
\usepackage{graphicx}%

\usepackage[]{lineno}
\internallinenumbers
\setrunninglinenumbers
\runninglinenumbers

\begin{document}
\section{problem (a), page 88}%
\[
y^{\prime\prime}=\frac{1}{x^{5}}y
\]
Irregular singular point at $x\rightarrow0^{+}$. 
Let $y=e^{S_{0}\left(x\right)}$ and the above becomes%
\begin{align*}
y\left(  x\right)   &  =e^{S_{0}\left(  x\right)  }\\
y^{\prime}\left(  x\right)   &  =S_{0}^{\prime}e^{S}\\
y^{\prime\prime} &  =S_{0}^{\prime\prime}e^{S_{0}}+\left(  S_{0}^{\prime
}\right)  ^{2}e^{S_{0}}\\
&  =\left(  S_{0}^{\prime\prime}+\left(S_{0}^{\prime}\right) ^{2}\right)e^{S_{0}}
\end{align*}
Substituting back into $\frac{d^{2}}{dx^{2}}y=x^{-5}y$ gives

Hence%
\begin{align*}
S_{1}  & \thicksim-\int\frac{S_{0}^{\prime\prime}}{S_{0}^{\prime}}dx\\
& \thicksim-\ln S_{0}^{\prime}+c
\end{align*}
\end{document}

这是使用 lualatex foo.tex 生成的 pdf 您可以看到它跳过了行和一些数学运算。

Mathematica 图形

我尝试了给出的解决方案每页行数/16012#16012但答案中给出的代码甚至无法编译。错误很多。可能是因为答案太旧了,所以有些东西变了。

我的问题是:如何对文档中的每一行(数学和文本)进行编号?

答案1

这是对 OP 在聊天中的评论的回复。

如果您想要的只是在左边空白处添加一些数字,就像期刊在提交论文时添加的那种,那么这很简单。这些数字不一定与实际行数相对应,但它们可用于提供近似参考。由于行号对于数学来说定义不明确,因此这可能足以满足某些目的。

\documentclass[12pt]{article}
\usepackage{amsmath}
\usepackage{amssymb}
\usepackage{tikz,everypage}
\AtBeginDocument{%
  \AddEverypageHook{%
    \begin{tikzpicture}[remember picture,overlay]
      \path (current page.north west) --  (current page.south west) \foreach \i in {1,...,\fakelinenos} { node [pos={(\i-.5)/\fakelinenos}, xshift=\fakelinenoshift, line number style] {\i} }  ;
    \end{tikzpicture}%
  }%
}
\tikzset{%
  line numbers/.store in=\fakelinenos,
  line numbers=50,
  line number shift/.store in=\fakelinenoshift,
  line number shift=5mm,
  line number style/.style={text=gray},
}
\begin{document}
\section{problem (a), page 88}
\[
y^{\prime\prime}=\frac{1}{x^{5}}y
\]
Irregular singular point at $x\rightarrow0^{+}$.
Let $y=e^{S_{0}\left(x\right)}$ and the above becomes%
\begin{align*}
  y\left(  x\right)   &  =e^{S_{0}\left(  x\right)  }\\
  y^{\prime}\left(  x\right)   &  =S_{0}^{\prime}e^{S}\\
  y^{\prime\prime} &  =S_{0}^{\prime\prime}e^{S_{0}}+\left(  S_{0}^{\prime
  }\right)  ^{2}e^{S_{0}}\\
  &  =\left(  S_{0}^{\prime\prime}+\left(S_{0}^{\prime}\right) ^{2}\right)e^{S_{0}}
\end{align*}
Substituting back into $\frac{d^{2}}{dx^{2}}y=x^{-5}y$ gives

Hence
\begin{align*}
  S_{1}  & \thicksim-\int\frac{S_{0}^{\prime\prime}}{S_{0}^{\prime}}dx\\
  & \thicksim-\ln S_{0}^{\prime}+c
\end{align*}
\end{document}

伪造的行号

答案2

正如文档所述,displaymath 环境之前的数字可能会消失。对于标准 displaymath,您可以使用选项 mathlines 和 displaymath 来避免这种情况(并获得编号方程式)。但这不适用于 amsmath 环境。您可以用linenomath环境包围它们,但这样会在对齐末尾得到虚假数字(我不敢测试如果混合 amsmath 环境会发生什么):

\documentclass[12pt]{article}%
\usepackage{amsmath}
\usepackage{amsfonts}
\usepackage{amssymb}
\usepackage{graphicx}%

\usepackage[mathlines,displaymath]{lineno}

\runninglinenumbers

\begin{document}
\section{problem (a), page 88}%
\[
y^{\prime\prime}=\frac{1}{x^{5}}y
\]
Irregular singular point at $x\rightarrow0^{+}$.
Let $y=e^{S_{0}\left(x\right)}$ and the above becomes%
\begin{linenomath}
\begin{align*}
 y\left(  x\right)   &  =e^{S_{0}\left(  x\right)  }\\
y^{\prime}\left(  x\right)   &  =S_{0}^{\prime}e^{S}\\
y^{\prime\prime} &  =S_{0}^{\prime\prime}e^{S_{0}}+\left(  S_{0}^{\prime
}\right)  ^{2}e^{S_{0}}\\
&  =\left(  S_{0}^{\prime\prime}+\left(S_{0}^{\prime}\right) ^{2}\right)e^{S_{0}}
\end{align*}
\end{linenomath}
Substituting back into $\frac{d^{2}}{dx^{2}}y=x^{-5}y$ gives
Hence %
\begin{linenomath}%
\begin{align*}
S_{1}  & \thicksim-\int\frac{S_{0}^{\prime\prime}}{S_{0}^{\prime}}dx\\
& \thicksim-\ln S_{0}^{\prime}+c
\end{align*}%
\end{linenomath}


\end{document}

在此处输入图片描述

而使用linenomath*\internallinenumbers 也不太好。所以看起来 amsmath 环境似乎没有好的解决方案...

相关内容