![如何使用 \usepackage{cite} 引用 [1-2]?](https://linux22.com/image/460399/%E5%A6%82%E4%BD%95%E4%BD%BF%E7%94%A8%20%5Cusepackage%7Bcite%7D%20%E5%BC%95%E7%94%A8%20%5B1-2%5D%EF%BC%9F.png)
当我创建引文(如 \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}