将 cleverefs 连词更改为一个引用

将 cleverefs 连词更改为一个引用

对于单一引用使用不同的连词的最佳做法是什么cleveref

背景:我想要制作类似“定理~1、引理~2 和[外部参考]”的东西。

如果我使用

\cref{th:1,lem:2} and \cite{ext}

我得到了“定理~1 和引理~2 和 [...]”,因为cleveref只看到这对参考文献而看不到以下内容\cite

我目前的解决方法:

{\renewcommand\crefpairgroupconjunction{, }\cref{th:1,lem:2}} and \cite{ext}

(请注意,我使用了\crefpairgroupconjunction而不是,\crefpairconjunction因为两个引用的类型不同)

有没有更好的解决方法?

答案1

Cleveref很聪明,但不是无所不知。它对交叉引用后面的引用一无所知。不管怎样,你都必须告诉他们cleveref,你想对这个特定的交叉引用的正常排版进行例外处理。

尝试自动化一次性异常不会带来任何好处。只需按您希望的方式“手动”排版即可:

\cref{th:1}, \cref{lem:2} and \cite{ext}

在这里没有必要太过聪明:-)

相关内容