同一括号内有多个引用

同一括号内有多个引用

假设我在同一处引用了两个

\cite{ref1}, \cite{ref2}

它看起来就像

[1], [2]

有时我会看到类似这样的引用

[1, 2]

在 TeX 中如何实现这一点?此外,我什么时候应该使用其中一个而不是另一个?

答案1

可以使用以下方法在同一位置实现多次引用

\cite{ref1,ref2,...}

有些书目样式(ieee例如)会将多个引用(即 [1,2])转换为 [1], [2]。因此,对于第二部分,这是所用样式和习惯的问题。

答案2

只需将多个源放入\cite{}参数字段内:

\documentclass{article}

\usepackage[]{biblatex}
\addbibresource{refs.bib} %Import the bibliography file

\begin{document}
multiple citation example: \cite{article1,article2,article3}
\end{document}

输出:

在此处输入图片描述

citestyle=您可以通过指定包内的选项来选择数字样式的变体{biblatex},例如:

\usepackage[citestyle=numeric-comp,]{biblatex}

在此处输入图片描述

还有单独查看的选项:

\usepackage[citestyle=numeric-verb,]{biblatex}

在此处输入图片描述

答案3

如果你想包含页码,你可以使用 BibLaTex 的\cites命令(如所述这里) 或者您可以使用 BibTex 包xparse并定义您自己的命令。

\usepackage{xparse}

% Takes up to 4 pairs of citations with optional page reference
\NewDocumentCommand{\multicite}{ogogogog}{%
    \citetext{%
        \IfValueT{#2}{%
            \IfValueT{#1}{\citealp[p.~#1]{#2}}%
            \IfNoValueT{#1}{\citealp{#2}}%
        }%
        \IfValueT{#4}{%
            ;
            \IfValueT{#3}{\citealp[p.~#3]{#4}}%
            \IfNoValueT{#3}{\citealp{#4}}%
        }%
        \IfValueT{#6}{%
            ;
            \IfValueT{#5}{\citealp[p.~#5]{#6}}%
            \IfNoValueT{#5}{\citealp{#6}}%
        }%
        \IfValueT{#8}{%
            ;
            \IfValueT{#7}{\citealp[p.~#7]{#8}}%
            \IfNoValueT{#7}{\citealp{#8}}%
        }%
    }
}

用法示例:
\multicite[1]{Sjostrom2018}{Kerly2007}[3]{Winkler2019}
导致:

(Sjöström 等人,2018 年,第 1 页;Kerly 等人,2007 年;Winkler und Roos,2019 年,第 3 页)

相关内容