Backref in sekundärer Multibib-Bibliographie mit Natbib deaktivieren

Backref in sekundärer Multibib-Bibliographie mit Natbib deaktivieren

Ich schließe meine Doktorarbeit ab, die ich mit LaTeX verfasst habe.

Ich habe einen Abschnitt, in dem ich meine eigenen Veröffentlichungen und die vollständige Referenzliste ganz am Ende des Dokuments aufliste. Diese Liste ist ziemlich lang und ich habe beschlossen, Rückverweise einzuschließen, um das Lesen zu erleichtern. Ich habe eine Kombination aus natbib, multibibund verwendet backref. Leider wurden sie dadurch auch auf die sekundäre Bibliographie mit meinen eigenen Veröffentlichungen angewendet.

Wie kann ich Rückverweise für Publikationen deaktivieren und für die Bibliographie aktivieren? Ich glaube, mein Gehirn ist kaputt und ich kann alleine keine Lösung finden! Im Anhang finden Sie ein minimales funktionierendes Beispiel.

Bonus-Frage:Ich habe meine eigenen Arbeiten aufgenommen und sie in (der Hauptbibliographie-Datenbank) publications.bibwiederholt, indem ich ihren Schlüsseln ein Suffix hinzugefügt habe, um sie nicht zu verfälschen. Gibt es einen clevereren Weg als den, den ich verfolgt habe, um sie zu zitieren und im Absatz der Arbeit aufzulisten und sie in der Hauptbibliographie mit allen Rückverweisen außer denen im Absatz aufzulisten?biblio,bibcopyPublicationsPublications

main.tex

\documentclass{scrreprt}

\usepackage[english]{babel}
\usepackage[utf8]{inputenc}
\usepackage[T1]{fontenc}

\usepackage[square,numbers,sort&compress]{natbib}
\usepackage[resetlabels]{multibib}
\newcites{publications}{\null}

\usepackage[pdftex]{hyperref}
\usepackage[hyperpageref]{backref}
\usepackage{bookmark}

\newcommand{\backrefnotcitedstring}{\relax} %(Not cited.)
\newcommand{\backrefcitedsinglestring}[1]{\\\textsmaller{(Cited on page~#1)}}
\newcommand{\backrefcitedmultistring}[1]{\\\textsmaller{(Cited on pages~#1)}}
\renewcommand{\backreftwosep}{ and~} % separate 2 pages
\renewcommand{\backreflastsep}{, and~} % separate last of longer list
\renewcommand*{\backref}[1]{}  % disable standard
\renewcommand*{\backrefalt}[4]{\ifcase #1 \backrefnotcitedstring \or \backrefcitedsinglestring{#2} \else \backrefcitedmultistring{#2} \fi}

\begin{document}
    \chapter*{Publications}
    Some ideas and figures have previously and partially appeared in \citep{me2012a,me2012b}.
    \begingroup     
        \let\clearpage\relax    
        \vspace{-6ex}
        \nocitepublications{*}
        \bibliographystylepublications{abbrvnat}
        \bibliographypublications{publications}
    \endgroup

    \chapter{Introduction} 
    In this thesis I take some of the concepts that I introduced in \citep{me2012acopy,me2012bcopy} and I quote others proposed in \citep{he2011,she2011,them2011}.

    \appendix   
    \bibliographystyle{abbrvnat}
    \bibliography{biblio}
\end{document}

publications.bib

@article {me2012a,
  author = {Me, I},
  title = {Title 1},
  journal = {A Journal},
  journaltitle = {A Journal},
  year = {2012}
}

@article {me2012b,
  author = {Me, I},
  title = {Title 2},
  journal = {A Journal},
  journaltitle = {A Journal},
  year = {2012}
}

biblio.bib

@article {me2012acopy,
  author = {Me, I},
  title = {Title 1},
  journal = {A Journal},
  journaltitle = {A Journal},
  year = {2012}
}

@article {me2012bcopy,
  author = {Me, I},
  title = {Title 2},
  journal = {A Journal},
  journaltitle = {A Journal},
  year = {2012}
}

@article {he2011,
  author = {He, Author},
  title = {Title He},
  journal = {A Journal},
  journaltitle = {A Journal},
  year = {2011}
}

@article {she2011,
  author = {She, Author},
  title = {Title She},
  journal = {A Journal},
  journaltitle = {A Journal},
  year = {2011}
}

@article {them2011,
  author = {Them, Authors},
  title = {Title Them},
  journal = {A Journal},
  journaltitle = {A Journal},
  year = {2011}
}

Antwort1

Zu Ihrer Hauptfrage, wie Sie die Rückverweise für die Bibliografie „Publikationen“ deaktivieren, aber für die Hauptbibliografie aktivieren können, können Sie die Backref-Makros einfach so einstellen, dass sie innerhalb der TeX-Gruppe für die erste Bibliografie nichts tun (dies sind die Makros \backrefcitedsinglestringund \backrefcitedmultistring):

\documentclass{scrreprt}

\usepackage[english]{babel}
\usepackage[utf8]{inputenc}
\usepackage[T1]{fontenc}

\usepackage[square,numbers,sort&compress]{natbib}
\usepackage[resetlabels]{multibib}
\newcites{publications}{\null}

\usepackage[pdftex]{hyperref}
\usepackage[hyperpageref]{backref}
\usepackage{bookmark}
\usepackage{relsize}

\newcommand{\backrefnotcitedstring}{\relax} %(Not cited.)
\newcommand{\backrefcitedsinglestring}[1]{\\\textsmaller{(Cited on page~#1)}}
\newcommand{\backrefcitedmultistring}[1]{\\\textsmaller{(Cited on pages~#1)}}
\renewcommand{\backreftwosep}{ and~} % separate 2 pages
\renewcommand{\backreflastsep}{, and~} % separate last of longer list
\renewcommand*{\backref}[1]{}  % disable standard
\renewcommand*{\backrefalt}[4]{\ifcase #1 \backrefnotcitedstring \or \backrefcitedsinglestring{#2} \else \backrefcitedmultistring{#2} \fi}

\begin{document}
    \chapter*{Publications}
    Some ideas and figures have previously and partially appeared in \citeppublications{me2012a,me2012b}.
    \begingroup
        % disable backref here
        \renewcommand{\backrefcitedsinglestring}[1]{}%
        \renewcommand{\backrefcitedmultistring}[1]{}%
        % end changes added by cyberSingularity
        \let\clearpage\relax
        \vspace{-6ex}
        \nocitepublications{*}
        \bibliographystylepublications{abbrvnat}
        \bibliographypublications{publications}
    \endgroup

    \chapter{Introduction} 
    In this thesis I take some of the concepts that I introduced in \citep{me2012acopy,me2012bcopy} and I quote others proposed in \citep{he2011,she2011,them2011}.

    \appendix
    \bibliographystyle{abbrvnat}
    \bibliography{biblio}
\end{document}

relsize(Das Paket hat Ihnen auch in Ihrem MWE gefehlt .)

Ihre „Bonusfrage“ unterscheidet sich ausreichend, um eine eigene Frage mit einem entsprechenden Titel zu rechtfertigen.

verwandte Informationen