Citando o conjunto de entradas do BibLaTeX como referências separadas

Citando o conjunto de entradas do BibLaTeX como referências separadas

BibLaTeX permite a criação deconjuntos de entradaque consiste em uma série de referências, por exemplo

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

Porém, ao citá-las usando \cite{set1}, todas as referências aparecem como um único item na bibliografia final. Existe uma opção para mostrar cada membro do conjunto como itens individuais? Essencialmente, quero obter o mesmo efeito que \cite{member1,member2}, mas citando o nome do conjunto em vez dos membros individuais.

Responder1

A partir dos comentários, verifica-se que conjuntos de entradas não são o conceito relevante e você está apenas procurando um atalho para listar várias referências. Macros simples de LaTeX são suficientes para isso. Apenas defina

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

e então você pode usar \cite{\myreflist}, etc., conforme desejar para citar essas entradas.

Aqui está um exemplo que demonstra que esses recursos de classificação de citações ainda funcionam.

Exemplo de saída

\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}

Responder2

Você pode usar ousebibpacote por@egregpara este propósito. A documentação do pacote contém praticamente todas as explicações necessárias, nomeadamente os seguintes passos, que devem ser adicionados ao preâmbulo em sequência:

  1. incluir \usepackage{usebib}(após o carregamento hyperref);
  2. habilite a entrysetchave usando \newbibfield{entryset};
  3. aponte para o arquivo bib usando \bibinput{filename}sem a .bibextensão;
  4. então você pode acessar o valor da entrysetchave usando \usebibentry{cite_key}{entryset}.

Ao todo, você consegue o que deseja via \cite{\usebibentry{set1}{entryset}. Claro, se desejar, você também pode definir um novo comando simples que reduza isso, como

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

então você pode simplesmente usar \citeset{set1}. Abaixo está um exemplo mínimo de trabalho.


teste.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}
}

teste.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}

Resultado

Citando um conjunto como referências separadas

informação relacionada