Bei Verwendung mathtools
der Option showonlyrefs
finde ich einen falschen vertikalen Abstand. Ich habe eineähnlichFrage, aber das Problem dort war eine lange Gleichung, was nicht mein Fall ist. Betrachten Sie die MWE
\documentclass{minimal}
\usepackage{mathtools}
\mathtoolsset{showonlyrefs}
\begin{document}
\begin{equation}
\label{eq}
a=b
\end{equation}
This is an equation %\refeq{eq}
\end{document}
Wenn man die Kommentierung entfernt \refeq
, wird der vertikale Abstand nach der Gleichung verringert. Irgendwelche Ideen?
Antwort1
Bis mathtools
zur Veröffentlichung von Version 1.23 gibt es hier einen Patch, der das Problem behebt
Das Tag muss immer eine Breite ungleich Null haben, sonst equation
wird möglicherweise eine Leerzeile eingefügt. Der Verarbeitungszweig für deckte jedoch showonlyref
nicht alle Fälle ab.
\usepackage{xpatch}
\MHInternalSyntaxOn
\xpatchcmd{\MT_extended_tagform:n}{
\@ifundefined{MT_r_\df@label}{}
}{%
\@ifundefined{MT_r_\df@label}{\kern1sp}
}{}{\typeout{patch failed}}
\xpatchcmd{\MT_extended_tagform:n}{
\@ifundefined{MT_r_\df@label}{\global\MH_set_boolean_F:n {manual_tag}}
}{%
\@ifundefined{MT_r_\df@label}{\global\MH_set_boolean_F:n {manual_tag}\kern1sp}
}{}{\typeout{patch failed}}
\MHInternalSyntaxOff
Antwort2
Dies ist wahrscheinlich ein „Feature“ der problematischen Gleichungsumgebung (siehe verschiedene Beiträge auf dieser Site). Es verschwindet im folgenden Beispiel.
\documentclass{minimal}
\usepackage{mathtools}
\mathtoolsset{showonlyrefs}
\begin{document}
\begin{gather}
\label{eq}
a=b
\end{gather}
This is an equation %\refeq{eq}
\end{document}
Antwort3
Das autonum
Paket scheint darin besser zu sein:
\documentclass{article}
\usepackage{amsmath}
\usepackage{autonum}
\usepackage{lipsum} % for mock text
\begin{document}
\lipsum*[2]
\begin{equation}
\label{eq1}
a=b
\end{equation}
This is an equation \eqref{eq1}.
\lipsum*[2]
\begin{equation}
\label{eq2}
a=b
\end{equation}
\lipsum[2]
\end{document}
Antwort4
verwenden align
stattequation
\begin{align}\label{eq}
a &= b
\end{align}
This is an equation \refeq{eq}