nocite durch Auswahl

nocite durch Auswahl

Ich möchte eine Bibliografie erstellen und dabei alle Einträge aus einer großen Bibliografiedatei auswählen, die einen bestimmten Autor enthalten und in einem bestimmten Jahr veröffentlicht wurden.

Bisher sehe ich den Befehl „nocite“ nur mit „*“, was alles ist, oder mit der manuellen Angabe einzelner Elemente, aber ich habe noch kein Beispiel mit einer allgemeineren Regel gesehen.

printbibliography scheint einige Regeln zu berücksichtigen, aber erste Tests zeigen, dass die Elemente nicht fortlaufend nummeriert werden, da sie aus der vollständigen Liste ausgewählt werden.

Ich könnte die Bib-Datei in ein GUI-Tool wie Zotero importieren, dort die gewünschten Elemente auswählen und sie wieder als neue Datei exportieren, aber ich hätte gerne eine Lösung, die im TeX-Bereich bleibt und beispielsweise für die Automatisierung der Auswahl verschiedener Jahre, Autoren usw. erweitert werden kann.

Antwort1

Hier ist eine Lösung mit Biblatex und „Source Maps“, die die Einträge ignorieren, an denen wir nicht interessiert sind:

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

Sie müssten einen regulären Ausdruck schreiben, der dem Autorennamen entspricht. Dabei wird nur das Feld betrachtet . Möglicherweise möchten Sie zusätzliche Regeln für Felder und andere authorverwenden .editor

Antwort2

bib2bib war das, was ich gesucht habe. (entgegen der Intuition im Paket bibtex2html enthalten)

verwandte Informationen