![Citando o conjunto de entradas do BibLaTeX como referências separadas](https://rvso.com/image/328803/Citando%20o%20conjunto%20de%20entradas%20do%20BibLaTeX%20como%20refer%C3%AAncias%20separadas.png)
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.
\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 ousebib
pacote 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:
- incluir
\usepackage{usebib}
(após o carregamentohyperref
); - habilite a
entryset
chave usando\newbibfield{entryset}
; - aponte para o arquivo bib usando
\bibinput{filename}
sem a.bib
extensão; - então você pode acessar o valor da
entryset
chave 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}