當使用套件的\label
內部環境並匯入時,您會收到以下 MNWE 錯誤:align
amsmath
cleveref
microtype
\documentclass[11pt]{scrbook}
\usepackage{amsmath}
\usepackage{cleveref}
\usepackage{microtype}
\begin{document}
\begin{align}
\label{eq1}
1 < 2
\end{align}
\end{document}
運行它會產生以下錯誤:
$ lualatex test.tex
[...]
! Use of \label doesn't match its definition.
<argument> \label {
eq1} 1 < 2
l.10 \end{align}
這似乎只是 LuaLaTeX 的問題。它適用於 pdfLaTeX 和 XeLaTeX。此外,它可以與對齊一起使用,\begin{equation}
但不能與對齊一起使用。
答案1
嘗試後答案是cleveref
應該加載後 microtype
。因此將範例更改為
\documentclass[11pt]{scrbook}
\usepackage{amsmath}
\usepackage{microtype}
\usepackage{cleveref}
\begin{document}
\begin{align}
\label{eq1}
1 < 2
\end{align}
\end{document}
工作正常。
編輯:
看來問題確實是這三個包的組合,因為有不同的順序(還有一個cleveref
包含在其中)前 microtype
)哪個有效。
amsmath
→cleveref
→microtype
: 是不是工作amsmath
→microtype
→cleveref
:作品cleveref
→amsmath
→microtype
:作品cleveref
→microtype
→amsmath
:作品microtype
→amsmath
→cleveref
:作品microtype
→cleveref
→amsmath
:作品
結論:全部但一個加載順序工作得很好,我很“幸運”地使用了這個。