Interaktion zwischen „Refcontext“ und „Subbibliographie“

Interaktion zwischen „Refcontext“ und „Subbibliographie“

Ich versuche, die Lösungen anzupassenHierUndHier. Mein Ziel ist folgendes: Ich möchte eine Bibliographie, die in zwei Abschnitte unterteilt ist. Der erste Abschnitt sollte selbst in mehrere Unterabschnitte unterteilt sein, nach Zitattyp, und Zitate in diesem ersten Abschnitt sollten ein zusätzliches Präfix haben AOund farblich markiert sein. Zitate im zweiten Abschnitt haben kein Präfix, keine besondere Unterteilung und keine Farbmarkierung.

Mit dem folgenden Code kann ich fast etwas zufriedenstellendes erreichen:

\documentclass{article}

\usepackage{filecontents}
\begin{filecontents}{file1.bib}
@article{article1,
  author = {Onymous, Anne},
  title  = {First Bibliography: An Journal Article},
  date   = {2000},
}
@inproceedings{inproc1,
  author   = {Onymous, Anne},
  title    = {First Bibliography: A Conference Article},
  date     = {1899},
}
\end{filecontents}
\begin{filecontents}{file2.bib}
@article{article2,
  author = {Writer, William},
  title  = {Second Bibliography: A First Reference},
  date   = {2010},
}
@article{article2bis,
  author = {Poetaster, Paula},
  title  = {Second Bibliography: A Second Reference},
  date   = {1767},
}
\end{filecontents}

\usepackage[
  backend=biber,
  hyperref=true,
  backref=true,
  giveninits=true,
  citestyle=numeric-comp,
  bibstyle=numeric,
  sortcites=false,
  maxbibnames=99,
  maxcitenames=2,
  sorting=none,
  defernumbers=true,
]{biblatex}

\addbibresource{file1.bib}
\addbibresource{file2.bib}

\usepackage[dvipsnames]{xcolor}

% https://tex.stackexchange.com/questions/470852/different-colors-for-each-bib-file-and-custom-prefix

\DeclareSourcemap{
  \maps[datatype=bibtex,overwrite]{
    \map{
      \perdatasource{file1.bib}
      \step[fieldset=keywords, fieldvalue={,mypapers}, append]
    }
  }
  \maps[datatype=bibtex,overwrite]{
    \map{
      \perdatasource{file2.bib}
      \step[fieldset=keywords, fieldvalue={,otherpapers}, append]
    }
  }
}

% https://tex.stackexchange.com/questions/368247/how-to-colorise-specific-entries-in-the-bibliography-and-corresponding-reference
\renewbibmacro{in:}{}

\DeclareFieldFormat{labelprefix}{%
  \ifkeyword{mypapers}
    {\textcolor{red}{#1}}
    {#1}}

\DeclareFieldFormat{labelnumber}{%
  \ifkeyword{mypapers}
    {\textcolor{red}{#1}}
    {#1}}

\begin{document}

  \title{Citation Test}
  \author{Ann Onymous}

\maketitle
\cite{inproc1} \cite{article1} \cite{article2} \cite{article2bis}



\section*{Publications}

\newrefcontext[labelprefix=AO]
\printbibliography[type=inproceedings,keyword=mypapers,heading=subbibliography,title={Publications in Conference Post-Proceedings}]
\printbibliography[type=article,keyword=mypapers,heading=subbibliography,title={Journal Articles}]

\newrefcontext
\printbibliography[keyword=otherpapers]

\end{document}

Die Beschriftung ist jedoch falsch, die Zitate sind jeweils mit AO1, AO1wieder 2und beschriftet 3. Idealerweise hätte ich gerne, dass alle Zitate im ersten Abschnitt einen gemeinsamen Zähler haben, also mit , usw. beschriftet sind AO1und AO2die Zitate im zweiten Abschnitt wieder bei 1 beginnen, also mit , usw. beschriftet sind 1. 2Ich wäre zufrieden, wenn sie dort beginnen würden, wo die ersten enden, also 3in diesem Beispiel bei . Aber zwei verschiedene Zitate mit derselben Beschriftung sind einfach nicht möglich …

Wenn ich das entferne newrefcontext, erhalte ich die erwartete Farbgebung und eindeutige Nummerierung, verliere aber das Präfix, was bedauerlich ist.

Ich habe den resetnumbersSchlüssel zu gefunden \printbibliography, weiß aber nicht, wie ich ihn richtig anwenden kann.

Antwort1

Sie sind fast am Ziel, Sie brauchen nur noch einige resetnumbersin Ihren \printbiliographyBefehlen:

\newrefcontext[labelprefix=AO]
\printbibliography[type=inproceedings,keyword=mypapers,heading=subbibliography,title={Publications in Conference Post-Proceedings}]
\printbibliography[resetnumbers=false,type=article,keyword=mypapers,heading=subbibliography,title={Journal Articles}]

\newrefcontext
\printbibliography[resetnumbers=true,keyword=otherpapers]

Beachten Sie, dass defernumbersSie bei der Verwendung darauf achten müssen, wie oft Sie jedes Tool ausführen. Beginnen Sie mit einer leeren Tafel ohne jegliche Hilfsdateien (die meisten Editoren haben eine „Clean“-Funktion, um alle usw. Dateien zu löschen .aux) .bcf. Führen Sie dann aus latex->biber->latex->latex. Es ist zwingend erforderlich, dass Sie nach der Verwendung latexzweimal ausführen (siehe Dokumentation). Die meisten IDEs werden Sie dazu auffordern und Sie warnen, dass die Verwendung dies erfordert.biberdefernumbersbiblatexdefernumbers

Bildbeschreibung hier eingeben

Technischer Hinweis: Alle Filtersysteme für Bibliographien wie typeund keywordOptionen bis \printbibliographysowie erweiterte Filter mit \defbibfilterund \defbibcheckfunktionieren nach biberAbschluss, sodass die Datenlisten weiterhin alle Einträge in der Sortierreihenfolge enthalten, ohne Filterung. Wenn Sie also Dinge herausfiltern, hinterlassen Sie im Grunde „Löcher“ in der Sortierung/Nummerierung, sodass Sie die Nummerierung nach dem Filtern neu erstellen .bblmüssen , was den zusätzlichen Durchlauf erforderlich macht.defernumberslatex

verwandte Informationen