nocite por seleção

nocite por seleção

Quero criar uma bibliografia selecionando todos os itens de um grande arquivo bib que contém um autor específico e foi publicado em um ano específico.

Até agora vejo o comando nocite apenas com * que é tudo ou especificando itens únicos manualmente, mas não vi nenhum exemplo com uma regra mais geral.

A printbibliography parece seguir algumas regras, mas os primeiros testes mostram que os itens não serão numerados sequencialmente, uma vez que os seleciona na lista completa.

Eu poderia importar o arquivo bib em alguma ferramenta GUI como o Zotero, selecionar lá os itens que desejo e exportá-lo como novo arquivo novamente, mas gostaria de ter uma solução que ficasse no terreno do TeX e pudesse por exemplo ser expandida para automação selecionando diferentes anos, autores etc.

Responder1

Aqui está uma solução com Biblatex e "mapas de origem" que ignoram as entradas nas quais não estamos interessados:

\begin{filecontents}{\jobname.bib}
@book{one,
  author={Someone Else},
  year={2014},
  title={Uninteresting book},
}
@book{two,
  author={This Author},
  year={1999},
  title={Book that's too early},
}
@book{three,
  author={Author, This},
  year={2014},
  title={An interesting book},
}
@book{four,
  author={This Author},
  year={2014},
  title={Another interesting book},
}
@book{five,
  author={Someone Else and This Author},
  year={2014},
  title={Joint effort},
}
\end{filecontents}
\documentclass{article}

\usepackage{biblatex}
\addbibresource{\jobname.bib}
\DeclareSourcemap{
  \maps{
    \map{
      % Remove those not by chosen author
      \step[fieldsource=author,
            notmatch=\regexp{Author,\s+This|This\s+Author},
            final]
      \step[entrynull]
    }
    \map{
      % Remove those not from chosen year
      \step[fieldsource=year,
            notmatch={2014},
            final]
      \step[entrynull]
    }
  }
}
\begin{document}
\nocite{*}
\printbibliography
\end{document}

Você teria que escrever um regexp correspondente ao nome do autor. Isso só olha para o authorcampo. Pode-se querer usar regras extras para editorcampo e outros.

Responder2

bib2bib era o que eu procurava. (contra intuitivamente contido no pacote bibtex2html)

informação relacionada