Zitieren von BibLaTeX-Einträgen als separate Referenzen

Zitieren von BibLaTeX-Einträgen als separate Referenzen

BibLaTeX ermöglicht die Erstellung vonEintragssätzewelches aus einer Reihe von Referenzen besteht, z. B.

@set{set1,
    entryset = {member1, member2}
}

Wenn Sie diese jedoch mit zitieren \cite{set1}, erscheinen alle Referenzen in der endgültigen Bibliografie als einzelnes Element. Gibt es eine Option, um jedes Mitglied des Sets als einzelnes Element anzuzeigen? Im Wesentlichen möchte ich denselben Effekt wie erzielen \cite{member1,member2}, aber indem ich den Namen des Sets anstelle der einzelnen Mitglieder zitiere.

Antwort1

Aus den Kommentaren geht hervor, dass Eintragssätze nicht das relevante Konzept sind und Sie nur nach einer Abkürzung suchen, um mehrere Referenzen aufzulisten. Einfache LaTeX-Makros reichen hierfür aus. Definieren Sie einfach

\newcommand{\myreflist}{key1,key2,...}

und dann können Sie \cite{\myreflist}usw. verwenden, wie Sie diese Einträge zitieren möchten.

Hier ist ein Beispiel, das zeigt, dass Funktionen wie die Zitatsortierung immer noch funktionieren.

Beispielausgabe

\documentclass{article}

\usepackage[sortcites=true]{biblatex}
\addbibresource{biblatex-examples.bib}

\newcommand{\myreflist}{westfahl:space,glashow,baez/article}

\begin{document}

Here some citations \cite{\myreflist}.

\printbibliography

\end{document}

Antwort2

Du kannst den ... benutzenusebibPaket von@egregzu diesem Zweck. Die Paketdokumentation enthält praktisch alle erforderlichen Erklärungen, nämlich die folgenden Schritte, die der Präambel nacheinander hinzugefügt werden sollten:

  1. include \usepackage{usebib}(nach dem Laden hyperref);
  2. Aktivieren Sie die entrysetTaste mit \newbibfield{entryset};
  3. verweisen Sie auf die Bib-Datei \bibinput{filename}ohne die .bibErweiterung;
  4. Anschließend können Sie mit auf den Wert des entrysetSchlüssels zugreifen \usebibentry{cite_key}{entryset}.

Insgesamt erhalten Sie das gewünschte Ergebnis über \cite{\usebibentry{set1}{entryset}. Natürlich können Sie bei Bedarf auch einen einfachen newcommand definieren, der dies verkürzt, wie zum Beispiel

\newcommand{\citeset}[1]{\cite{\usebibentry{#1}{entryset}}}

dann können Sie einfach verwenden \citeset{set1}. Unten sehen Sie ein minimales funktionierendes Beispiel.


test.bib

@misc{foo1,
    author = {Foo, F. and Bar, B.},
    year = {2021},
    title = {Foo 1},
}
@misc{foo2,
    author = {Foo, F. and Bar, B.},
    year = {2021},
    title = {Foo 2},
}
@set{foo,
    entryset = {foo1, foo2}
}

test.tex

\documentclass{article}

\usepackage{biblatex}
\addbibresource{test.bib}

\usepackage{usebib}
\newbibfield{entryset}
\bibinput{test}

\begin{document}

This is the entryset key: \usebibentry{foo}{entryset}

Here we cite foo as individual references.\autocite{\usebibentry{foo}{entryset}}

\printbibliography
\end{document}

Ergebnis

Einen Satz als separate Referenzen zitieren

verwandte Informationen