当我创建引文(如 \cite{a,b})时,结果是 [a,b]。但是,如何才能使以下命令 \cite{a,b} 产生引文 [1-2]?
对于 natbib 包,同样的问题也得到了解答:引用 [1-2] 而不是 [1, 2]
答案1
您可以使用包\renewcommand\citepunct{-}
中的cite
。它将所有逗号替换为-
。但如果您的命令中有超过 2 个引用,这会很奇怪\cite
(如果您引用参考文献 1 和参考文献 3,您将获得 [1-3],其内容为:参考文献 1 至参考文献 3,包括参考文献 2)。
在下面的代码中,\usepackage{filecontents}
在较新的 LaTeX 版本(例如 2022 版本)中可以省略。
\documentclass{article}
\usepackage{filecontents}
\begin{filecontents}{bibliotest.bib}
@book{Knu86,
author = {Knuth, Donald E.},
year = {1986},
title = {The \TeX book},
}
@book{Lam86,
title = {LaTeX: a document preparation system},
author = {Lamport, Leslie},
year = {1986},
}
\end{filecontents}
\usepackage{cite}
\renewcommand\citepunct{-}
\begin{document}
\cite{Knu86,Lam86}
\bibliographystyle{plain}
\bibliography{bibliotest}
\end{document}