Bib(la)tex:一个“参考文献”条目中的多个引用+排序问题

Bib(la)tex:一个“参考文献”条目中的多个引用+排序问题

我正在使用该biblatex包进行我的论文(课程风格:book——尽管从技术上讲,我使用的是MastersDoctoralThesisGunn 和 Patel* 的模板)。

*来源: https://www.latextemplates.com/template/masters-doctoral-thesis

假设我从第 2 章开始撰写论文。我topic2.bib使用 \cite{Ref3} 和 \cite{Ref4} 引用了 Ref3 和 Ref4;它们在文中和“参考文献”部分中显示为 [1] 和 [2]。这里没有问题,因为这是我所做的第一次引用。但是,如果我想将 Ref3 和 Ref4 合并到一个“参考文献”条目中(因此文中的 [1] 将在“参考文献”中显示为“[1] Ref3, Ref4”)该怎么办。根据我的经验,我会使用\cite{Ref3,*Ref4}。但是,我发现这在这里不起作用。我尝试过使用mcite,但似乎 Ref4 只是被……吸收了?

我是否应该先定义一个“MySet”命令,然后使用\mcite{MySet,*Ref3,*Ref4}

假设我现在转到第 1 章。我刚刚将 Ref1 和 Ref2 添加topic1.bib到第 1 章。它们在我的“参考文献”中显示为 [3] Ref1 和 [4] Ref2,尽管它们出现在正文中第 2 章的 Ref3 和 Ref4。换句话说,我在文中的排序是 [3]、[4]、[1]、[2]。我该如何解决这个问题?

以下是最小的工作示例:

\documentclass[12pt,english,singlespacing]{MastersDoctoralThesis}
\usepackage[
    backend=bibtex, 
    natbib=true,
    mcite=true,
    style=phys,
    citestyle=numeric,
    biblabel=brackets,
    giveninits=true,
    abbreviate=false,
    doi=false, url=false, isbn=false, eprint=true,
    sortcites=true,
    block=space,
    backref=true, backrefstyle=two,
    ]{biblatex}
\addbibresource{topic1.bib}
\addbibresource{topic2.bib}
\addbibresource{topic3.bib}

\usepackage[autostyle=true]{csquotes}

...

\begin{document}

\chapter{Chapter One}

When Mr Bilbo Baggins of Bag End announced that he would shortly be celebrating his eleventifirst birthday with a party of special magnificence, there was much talk and excitement in Hobbiton \mcite{Ref1,*Ref2}.
...

\chapter{Chapter Two}

In the land of Mordor \cite{Ref3} where the shadows lie \cite{Ref4}.

...

\printbibliography[heading=bibintoc,title={References}]
\end{document}

经过 LaTex + BibTex + 2x LaTex 后,我的参考书目如下

参考

[1] 参考3

[2] 参考4

[3] 参考1

我非常抱歉在一篇帖子中问了这么多问题。一如既往,非常感谢您的任何指导!

答案1

这里有两个问题

  1. mcite的兼容接口语法biblatex与 略有不同mcite。详细信息请参见 §3.9.10 的 mcite 类引用命令文档biblatex

    尤其是,\mcite{Ref1,*Ref2}它不会只添加Ref2到 的参考书目条目中Ref1。相反,您需要说类似这样的话:\mcite{myset,*Ref1,*Ref2}创建一个myset包含Ref1和的“虚拟”集条目Ref2

    请记住,backend=bibtex,可能不完全支持mcite动态集。在 v3.15 (2020-08-16) 中添加了对部分可用功能的 BibTeX 支持,请参阅https://github.com/plk/biblatex/issues/921https://github.com/plk/biblatex/issues/985

  2. 因为您正在加载,所以style=phys, citestyle=numeric,您会得到排序顺序,sorting=nty,因此所有条目都按作者、标题和年份排序,而不是按文本中的出现次数排序。我认为在这里将style和分开没什么意义citestyle,所以我建议您使用

    style=phys,
    

    它会自动设置sorting=none,

    或者,如果您坚持要加载不同的样式,请sorting=none,明确强制并帮自己指定,bibstyle=phys,而不是style=phys,这样您就可以看到发生了什么。

    bibstyle=phys,
    citestyle=numeric,
    sorting=none,
    

修复这两个问题并使用.bib每个系统上可用的文件后biblatex,我会选择

\documentclass[12pt,english,singlespacing]{book}
\usepackage[
  backend=bibtex, 
  natbib=true,
  mcite=true,
  style=phys,
  biblabel=brackets,
  giveninits=true,
  abbreviate=false,
  doi=false, url=false, isbn=false, eprint=true,
  block=space,
  backref=true, backrefstyle=two,
]{biblatex}
\addbibresource{biblatex-examples.bib}

\usepackage[autostyle=true]{csquotes}

\begin{document}
\chapter{Chapter One}
Lorem \mcite{myset,*sigfridsson,*worman}.

\chapter{Chapter Two}
ipsum \cite{nussbaum}
dolor \cite{geer}.

\printbibliography[heading=bibintoc,title={References}]
\end{document}

参考书目。

相关内容