如何使范围引用使用短破折号?

如何使范围引用使用短破折号?

我刚刚读到:

如何引用范围而不是单独的数字?

但接受的答案并不完全符合我的要求:我希望得到sections 1--4,而不是sections 1 to 4。后者完全没问题,只是不是我的偏好。我可以这样做吗?

举个例子,以防万一:

\documentclass[]{article}
\usepackage{cleveref}

\begin{document}
\section{The first  section}\label{sec:first}
\section{The second section}\label{sec:second}
\section{The third  section}\label{sec:third}
\section{The fourth section}\label{sec:fourth}
\section{The fifth  section}\label{sec:fifth}

The reference: \cref{sec:first,sec:second,sec:third,sec:fourth,sec:fifth}
\end{document}

答案1

此特定用途已记录在cleveref文档中。使用

\newcommand{\crefrangeconjunction}{--}

其中\crefrangeconjunction控制 cleveref 范围引用中的合取格式。

\documentclass[]{article}
\usepackage{cleveref}
\newcommand{\crefrangeconjunction}{--}

\begin{document}
    \section{The first  section}\label{sec:first}
    \section{The second section}\label{sec:second}
    \section{The third  section}\label{sec:third}
    \section{The fourth section}\label{sec:fourth}
    \section{The fifth  section}\label{sec:fifth}

    The reference: \cref{sec:first,sec:second,sec:third,sec:fourth,sec:fifth}
\end{document}

参考文献

答案2

为了使特定的引用类型(例如,部分)实现这一点,我们可以使用:

\crefrangeformat{section}{sections~(#3#1#4)--(#5#2#6)}

正如cleveref 包的手册。谢谢@Troy。

...但是!这不会改变所有引用类型的默认值。所以这不是最好的答案。

相关内容