Cleveref 将对定理类环境的长引用列表格式化为“Thm. 1, Prop. 2, ..., and Cor. 3”。有没有办法在“and”之后允许换行?“Thm.”、 “Prop.”、 “Cor.”等之间的换行以及以下数字应该保持禁止。
例如,在下面的代码中,
没有性爱,但却是一段非常巧妙的填充空间的文字。(Thm. 1.1.1 和 Cor. 1.2.1.10)。
超出页边距,这不是我希望的。
\documentclass{article}
\usepackage{cleveref}
\usepackage{lipsum}
\newtheorem{thmSS}{Theorem}[subsection]
\newtheorem{corSSS}{Corollary}[subsubsection]
\crefname{thmSS}{Thm.}{Thms.}
\crefname{corSSS}{Cor.}{Cors.}
\begin{document}
\section{Clever section title}
\lipsum[1]
No sex, but an overly, very clever space-filling text. (\cref{mythm,mycor}).
\lipsum[1]
\subsection{Clever subsection title}
\begin{thmSS}\label{mythm}Clever theorem\end{thmSS}
\subsection{Another clever subsection title}
\subsubsection{Clever subsubsection title}
\begin{corSSS}Clever corollary\end{corSSS}
\begin{corSSS}Clever corollary\end{corSSS}
\begin{corSSS}Clever corollary\end{corSSS}
\begin{corSSS}Clever corollary\end{corSSS}
\begin{corSSS}Clever corollary\end{corSSS}
\begin{corSSS}Clever corollary\end{corSSS}
\begin{corSSS}Clever corollary\end{corSSS}
\begin{corSSS}Clever corollary\end{corSSS}
\begin{corSSS}Clever corollary\end{corSSS}
\begin{corSSS}\label{mycor}Clever corollary\end{corSSS}
\end{document}
我不想使用 \begin{sloppypar}...\end{sloppyppar},因为它会在“and”之前引入换行符,从而导致单词之间的空格在视觉上太长。
答案1
两者之间的连接是一个可以重新定义的命令(\crefpairgroupconjunction)。它应该在 \begin{document} 之后完成(或通过 \AtBeginDocument),如果涉及 babel,则应在语言设置中执行。但重新定义它并因此删除 nonbreakspace 不会对您的情况有太大帮助,TeX 仍然不会中断,您还需要一些 \emergencystretch:
\documentclass{article}
\usepackage{cleveref}
\usepackage{lipsum}
\newtheorem{thmSS}{Theorem}[subsection]
\newtheorem{corSSS}{Corollary}[subsubsection]
\crefname{thmSS}{Thm.}{Thms.}
\crefname{corSSS}{Cor.}{Cors.}
\begin{document}
\renewcommand\crefpairgroupconjunction{ and }
\section{Clever section title}
\lipsum[1]
{\emergencystretch2em No sex, but an overly, very clever space-filling text. (\cref{mythm,mycor}).\par}
\lipsum[1]
\subsection{Clever subsection title}
\begin{thmSS}\label{mythm}Clever theorem\end{thmSS}
\subsection{Another clever subsection title}
\subsubsection{Clever subsubsection title}
\begin{corSSS}Clever corollary\end{corSSS}
\begin{corSSS}Clever corollary\end{corSSS}
\begin{corSSS}Clever corollary\end{corSSS}
\begin{corSSS}Clever corollary\end{corSSS}
\begin{corSSS}Clever corollary\end{corSSS}
\begin{corSSS}Clever corollary\end{corSSS}
\begin{corSSS}Clever corollary\end{corSSS}
\begin{corSSS}Clever corollary\end{corSSS}
\begin{corSSS}Clever corollary\end{corSSS}
\begin{corSSS}\label{mycor}Clever corollary\end{corSSS}
\end{document}