我可以用来\cpageref
输出页面引用列表。例如,标记:
You should check \cpageref{sec:section1,sec:section2,sec:section3}.
... 渲染为:
You should check pages 3, 5 and 7.
然而,在特定情况下我需要的是输出:
You should check pages 3, 5, 7.
有什么方法可以告诉\cpageref
我总是使用逗号而不是“and”?
答案1
如果您需要在整个文档中使用此行为,只需在序言中添加以下行
\newcommand{\creflastconjunction}{,\nobreakspace}
梅威瑟:
\documentclass{article}
\usepackage[sort]{cleveref}
\usepackage{lipsum} % just for the example
\newcommand{\creflastconjunction}{,\nobreakspace}
\begin{document}
\section{First}\label{sec:section1}
\lipsum[1-5]
\section{Second}\label{sec:section2}
\lipsum[1-5]
\section{Third}\label{sec:section3}
\lipsum[1-5]
\bigskip
You should check \cpageref{sec:section1,sec:section2,sec:section3}.
\end{document}
输出:
否则,如果你只需要在特定的地方使用它,请使用
{\renewcommand{\creflastconjunction}{,\nobreakspace}\cpageref{sec:section1,sec:section2,sec:section3}}
梅威瑟:
\documentclass{article}
\usepackage[sort]{cleveref}
\usepackage{lipsum} % just for the example
\begin{document}
\section{First}\label{sec:section1}
\lipsum[1-5]
\section{Second}\label{sec:section2}
\lipsum[1-5]
\section{Third}\label{sec:section3}
\lipsum[1-5]
\bigskip
You should check \cpageref{sec:section1,sec:section2,sec:section3}.
And now check again
{\renewcommand{\creflastconjunction}{,\nobreakspace}\cpageref{sec:section1,sec:section2,sec:section3}}.
\end{document}
输出: