biblatex
Ist es möglich, mit , hyperref
, und cleverref
unter der memoir
Klasse einen Querverweislink zur Bibliografie selbst einzufügen – nicht nur zu einzelnen Einträgen in der Bibliografie ?
Das heißt, wie in der folgenden Quelle: Welche Beschriftung könnte wo und wie erstellt werden, damit das \cref{WHAT}
im Vorwort gezeigte auf die Bibliografie verweist? (So dass man beim Klicken auf diesen Link auf die erste Seite der Bibliografie gelangt.)
\documentclass[12pt]{memoir}
\usepackage[backend=bibtex]{biblatex}
\usepackage{hyperref}
\hypersetup{hyperindex,colorlinks, citecolor=red}
\begin{filecontents}{biblatexdoc.bib}
@article{Archimedes200,author = {Archimedes},title = {Pi's the limit },
journal = {Syracuse J. Gastronom.\ Math.}, year = {200BCE},volume = {10},pages={\textsc{CCCXV}--\textsc{CCCXIV}}}
@article{EulerE1776,Author = {Euler, Leonhard},Title = {All about E},
Journal = {Math.\ Psychol.},Year = {1776},Volume = {4},pages={1--2718}}
\end{filecontents}
\addbibresource{biblatexdoc}
\begin{document}
\frontmatter
\tableofcontents
\chapter{Prefarc}
The Bibliography (\cref{WHAT}) includes only works actually cited.
\chapter{Math}
Archimedes~\cite{Archimedes200} and Euler~\cite{EulerE1776} studied the constants, $\pi$ and $e$, respectively.
\printbibliography
\end{document}
Antwort1
\nameref{WHAT}
scheint eine bessere Variante zu sein als \cref{WHAT}
, letztere erfordert eine Bezeichnung für einen Zähler (also, \nameref
braucht das auch, aber es ist einfacher, die Bezeichnung beispielsweise mit einem Wrapper vorzutäuschen, \biblabel
der intern verwendet wird \label
und automatisch den Hyperlink zur Bibliographie hinzufügt.
\documentclass[12pt]{memoir}
\usepackage[backend=bibtex]{biblatex}
\usepackage{hyperref}
\hypersetup{hyperindex,colorlinks, citecolor=red}
\usepackage{cleveref}
\begin{filecontents}{biblatexdoc.bib}
@article{Archimedes200,author = {Archimedes},title = {Pi's the limit },
journal = {Syracuse J. Gastronom.\ Math.}, year = {200BCE},volume = {10},pages={\textsc{CCCXV}--\textsc{CCCXIV}}}
@article{EulerE1776,Author = {Euler, Leonhard},Title = {All about E},
Journal = {Math.\ Psychol.},Year = {1776},Volume = {4},pages={1--2718}}
\end{filecontents}
\addbibresource{biblatexdoc}
\makeatletter
\newcommand{\biblabel}[1]{%
\phantomsection
\edef\@currentlabel{\bibname}%
\edef\@currentlabelname{\bibname}% Provide the \nameref - anchor name
\label{#1}%
}
\makeatother
\begin{document}
\frontmatter
\tableofcontents
\chapter{Preface}
The \nameref{WHAT} includes only works actually cited.
\chapter{Math}
Archimedes~\cite{Archimedes200} and Euler~\cite{EulerE1776} studied the constants, $\pi$ and $e$, respectively.
\printbibliography\biblabel{WHAT}
\end{document}
Aktualisieren
Unterstützung für mehr als eine Bibliographie.
\documentclass[12pt]{memoir}
\usepackage[backend=bibtex]{biblatex}
\usepackage{hyperref}
\hypersetup{hyperindex,colorlinks, citecolor=red}
\usepackage{cleveref}
\begin{filecontents}{biblatexdoc.bib}
@article{Archimedes200,author = {Archimedes},title = {Pi's the limit },
journal = {Syracuse J. Gastronom.\ Math.}, year = {200BCE},volume = {10},pages={\textsc{CCCXV}--\textsc{CCCXIV}}}
@article{EulerE1776,Author = {Euler, Leonhard},Title = {All about E},
Journal = {Math.\ Psychol.},Year = {1776},Volume = {4},pages={1--2718}}
\end{filecontents}
\addbibresource{biblatexdoc}
\makeatletter
\define@key{blx@bib2}{title}{\gdef\blx@thetitle{#1}}
\newcommand{\biblabel}[1]{%
\phantomsection
\edef\@currentlabel{\bibname}%
\@ifundefined{blx@thetitle}{%
\edef\@currentlabelname{\bibname}%
}{%
\edef\@currentlabelname{\blx@thetitle}%
}%
\label{#1}%
}
\makeatother
\begin{document}
\frontmatter
\tableofcontents
\chapter{Preface}
The \nameref{WHAT} includes only works actually cited, however, there is another \nameref{WHATOTHER}.
\chapter{Math}
Archimedes~\cite{Archimedes200} and Euler~\cite{EulerE1776} studied the constants, $\pi$ and $e$, respectively.
\printbibliography[title={My sophisticated bibliography}]\biblabel{WHAT}
\printbibliography[title=Bib2]\biblabel{WHATOTHER}
\end{document}
Update für mehrseitige Bibliographien
\documentclass[12pt]{memoir}
\usepackage[backend=bibtex]{biblatex}
\usepackage{hyperref}
\hypersetup{hyperindex,colorlinks, citecolor=red}
%\usepackage{msc}
\usepackage{cleveref}
\begin{filecontents}{biblatexdoc.bib}
@article{Archimedes200,author = {Archimedes},title = {Pi's the limit },
journal = {Syracuse J. Gastronom.\ Math.}, year = {200BCE},volume = {10},pages={\textsc{CCCXV}--\textsc{CCCXIV}}}
@article{EulerE1776,Author = {Euler, Leonhard},Title = {All about E},
Journal = {Math.\ Psychol.},Year = {1776},Volume = {4},pages={1--2718}}
\end{filecontents}
\addbibresource{biblatexdoc}
\addbibresource{biblatex-examples}
\makeatletter
\define@key{blx@bib2}{title}{\gdef\blx@thetitle{#1}}
\newcommand{\biblabel}[1]{%
\phantomsection
\@ifundefined{blx@thetitle}{%
\edef\@currentlabelname{\bibname}%
\edef\@currentlabel{\bibname}%
}{%
\edef\@currentlabel{\blx@thetitle}%
\edef\@currentlabelname{\blx@thetitle}%
}%
\label{#1}%
}
\newcommand{\biblabelnote}[1]{%
\defbibnote{#1}{\biblabel{#1}}%
}
\makeatother
\begin{document}
\frontmatter
\tableofcontents
\chapter{Preface}
The \nameref{WHAT} includes only works actually cited, however, there is another \nameref{WHATOTHER}.
\chapter{Math}
\nocite{*}
Archimedes~\cite{Archimedes200} and Euler~\cite{EulerE1776} studied the constants, $\pi$ and $e$, respectively.
\biblabelnote{WHAT}
\printbibliography[title={My sophisticated bibliography},prenote={WHAT}]
\biblabelnote{WHATOTHER}
\printbibliography[title=Bib2,prenote={WHATOTHER}]
\end{document}
Antwort2
Eine weitere Möglichkeit (wenn auch nicht sehr ausgefeilt; teilweisevon hier): Platzieren Sie das \label
darunter \printbibliography
. Schreiben Sie im Kapitel Vorwort:
The \hyperref[WHAT]{Bibliography} includes only works actually cited.