showlabels 在新页面上不起作用

showlabels 在新页面上不起作用

我使用 \showlabels 来跟踪定理、节和位移方程的标签。它对前两个有效,但对于位移方程,从第二页开始它就失效了。这是一个最小的工作示例:

\documentclass[12pt,letterpaper]{amsart}
\usepackage{showlabels}

\begin{document}

\begin{equation}
  (a+b)^2 = a^2 + 2ab + b^2  \label{sum}    
\end{equation}

\newpage

\begin{equation}
  (a-b)^2 = a^2 - 2ab + b^2   \label{diff}    
\end{equation}

\end{document}

在这个最小的例子中,\showlabels 适用于第一个方程,但不适用于第二个方程。如果我删除 \newpage,那么它在两种情况下都有效。

在实际文档中,在方程式之间我有很多段落(和方程式)。为了制作一个最小示例,我删除了它们并用 \newpage 替换它们(我花了很长时间才发现问题!)。

我尝试了 \showeyes 并且它可以工作(在此示例和原始文档中),但我更喜欢 \showlabels。

非常感谢!

答案1

showlabels 将标签打印在页面外。您可以尝试重置命令(我反复尝试选择了 60pt):

\documentclass[12pt,letterpaper]{amsart}
\usepackage{showlabels}
\makeatletter\def\SL@eqnlefttext #1{\hbox to 0pt{\kern 60pt %or something else
\llap{\SL@margintext{#1}\quad}\hss}}
\makeatother
\begin{document}

\begin{equation}
  (a+b)^2 = a^2 + 2ab + b^2  \label{sum}
\end{equation}

\newpage

\begin{equation}
  (a-b)^2 = a^2 - 2ab + b^2   \label{diff}
\end{equation}

\end{document}

相关内容