包含 microtype 和 smartef 的順序在 LuaLaTeX 中(僅)很重要

包含 microtype 和 smartef 的順序在 LuaLaTeX 中(僅)很重要

當使用套件的\label內部環境並匯入時,您會收到以下 MNWE 錯誤:alignamsmathcleverefmicrotype

\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)哪個有效。

  • amsmathcleverefmicrotype: 是不是工作
  • amsmathmicrotypecleveref:作品
  • cleverefamsmathmicrotype:作品
  • cleverefmicrotypeamsmath:作品
  • microtypeamsmathcleveref:作品
  • microtypecleverefamsmath:作品

結論:全部一個加載順序工作得很好,我很“幸運”地使用了這個。

相關內容