Biblatex: habe "und" im Zitat, aber "&" in der Bibliographie

Biblatex: habe "und" im Zitat, aber "&" in der Bibliographie

Ich beginne damit, BibLatex/biber zu verwenden, um meine bibliographischen Einträge in Latex zu verarbeiten. Ich beginne mit dem Stil authoryear und passe ihn dann an, um dem redaktionellen Stil der Zeitschrift zu entsprechen, bei der ich meinen Artikel einreichen werde. Eine der Anpassungen besteht darin, das standardmäßige „und“ durch ein Et-Zeichen (&) vor dem letzten Autor in der Bibliographie zu ersetzen, und zwar mit dem folgenden Code:

% Add a comma and replace "and" with "&" before last coauthor
\renewcommand*{\finalnamedelim}{%
   \ifnumgreater{\value{liststop}}{2}{\finalandcomma}{}%
   \addcomma\addspace\&\space}

Leider ersetzt dieser Code auch das „und“ in Zitaten, im Gegensatz zu dem, was die Zeitschrift für Zitate verlangt.

Meine Frage ist, wie man „und“ nur in der Bibliographie durch „&“ ersetzt. Es scheint, als ob biblatex-dw diese Option hat, aber mein Dokument wird mit diesem Stil nicht kompiliert.

Antwort1

Ich bin sicher, BibLaTeXes gibt Möglichkeiten für bessere und effizientere Lösungen, ein schneller Hack ist der folgende

\documentclass{article}

\usepackage{filecontents}
\usepackage{etoolbox}
\usepackage[style=authoryear]{biblatex}

\newtoggle{incitation}
\pretocmd{\citesetup}{\toggletrue{incitation}}{}{}
\pretocmd{\bibsetup}{\togglefalse{incitation}}{}{}
\newcommand{\biband}{\iftoggle{incitation}{and}{\&}}

\renewcommand*{\finalnamedelim}{%
   \ifnumgreater{\value{liststop}}{2}{\finalandcomma}{}%
   \addcomma\addspace\biband\space}

\begin{filecontents}{\jobname.bib}
@article{test,
 author = "Family, Given and FamilyTwo, GivenTwo",
 title = "title",
 journal = "Journal",
 year = "2012"}
\end{filecontents}

\addbibresource{\jobname.bib}

\begin{document}

\cite{test}

\printbibliography

\end{document}  

BEARBEITEN

Basierend auf dem Vorschlag von @Audrey

\documentclass{article}

\usepackage{filecontents}
\usepackage[style=authoryear]{biblatex}

\newcommand{\biband}{\ifcurrentname{labelname}{\bibstring{and}}{\&}}

\renewcommand*{\finalnamedelim}{%
   \ifnumgreater{\value{liststop}}{2}{\finalandcomma}{}%
   \addcomma\addspace\biband\space}

\begin{filecontents}{\jobname.bib}
@article{test,
 author = "Family, Given and FamilyTwo, GivenTwo",
 title = "title",
 journal = "Journal",
 year = "2012"}
\end{filecontents}

\addbibresource{\jobname.bib}

\begin{document}

\cite{test}

\printbibliography

\end{document}                    

Antwort2

\documentclass{article}

\usepackage{filecontents}
\usepackage[style=authoryear,backend=biber]{biblatex}% delete backend= when running bibtex

\begin{filecontents}{\jobname.bib}
@article{test,
 author = "Family, Given and FamilyTwo, GivenTwo and Family3, Given3",
 title = "title",
 journal = "Journal",
 year = "2012"}
\end{filecontents}

\addbibresource{\jobname.bib}

\begin{document}
foo\cite{test}

\begingroup
\renewcommand*\finalnamedelim{ \& }
\printbibliography
\endgroup
\end{document}

verwandte Informationen