Ich schreibe meine Masterarbeit und zitiere im APA-Stil. Unten ist ein Bild, wie es im Moment aussieht:
Obwohl es im Großen und Ganzen gut aussieht, würde ich das Jahr gerne ändern und in Klammern setzen. Außerdem würde ich das Komma nach dem Autor löschen, das nach dem Jahr aber stehen lassen, sodass die endgültige Version so aussieht:
Ruoff et al. (1953), S. 135. 16
Da ich den Code kopiert habe, um ihn in die nahezu endgültige Version zu bringen, weiß ich nicht, wie ich ihn weiter ändern kann, um ihn in die gewünschte Form zu bringen.
Der Code, den ich in der Präambel habe, sieht wie folgt aus:
\documentclass[12pt]{report}
\usepackage{natbib}
\makeatletter
\newcommand*{\ibid}{Ibid.}
\let\@predcite\@empty
\let\@currcite\@empty
\def\citef{\kernel@ifnextchar[\citef@{\citef@[]}}
\def\citef@[#1]{\kernel@ifnextchar[{\citef@@[{#1}]}{\citef@@[][{#1}]}}
\def\citef@@[#1][#2]#3{%
\def\@currcite{#3}%
\unskip
\ifx\@currcite\@predcite
\footnote{#1 \ifx\tempa\@empty\unskip\fi%
\ibid\ifx\tempb\@empty\else\NAT@cmt #2\fi}%
\else%
\footnote{\citealp[#1][#2]{#3}}%
\fi
\gdef\@predcite{#3}%
}
\makeatother
\bibliographystyle{apalike}
Darüber hinaus zitiere ich im Text wie folgt (dies gilt für das im Bild oben gezeigte Beispiel):
\citef[p. 16]{ruoff53}
Im Voraus vielen Dank für Ihren Rat. Ihre Hilfe wird sehr geschätzt!
BEARBEITEN:
Nach Bernards Tipps habe ich nun folgenden Code:
Können Sie mir weitere Hinweise geben? Ich habe den Text wie folgt geändert, aber es scheint ein komplettes Durcheinander zu sein ...
\documentclass[12pt]{report}
\setcounter{tocdepth}{4}
\setcounter{secnumdepth}{4}
\usepackage[utf8]{inputenc}
\usepackage{natbib}
\usepackage[american]{babel}
\usepackage{csquotes}
\usepackage[style=apa,backend=biber]{biblatex}
\DeclareLanguageMapping{american}{american-apa}
\addbibresource{biblio.bib}
\usepackage{rotating}
\makeatletter
\newcommand*{\ibid}{Ibid.}
\let\@predcite\@empty
\let\@currcite\@empty
\def\citef{\kernel@ifnextchar[\citef@{\citef@[]}}
\def\citef@[#1]{\kernel@ifnextchar[{\citef@@[{#1}]}{\citef@@[][{#1}]}}
\def\citef@@[#1][#2]#3{%
\def\@currcite{#3}%
\unskip
\ifx\@currcite\@predcite
\footnote{#1 \ifx\tempa\@empty\unskip\fi%
\ibid\ifx\tempb\@empty\else\NAT@cmt #2\fi}%
\else%
\footnote{\citealp[#1][#2]{#3}}%
\fi
\gdef\@predcite{#3}%
}
\makeatother
\begin{document}
\chapter{Introduction}
\input{ma_chapters/introduction}
.
.
.
.
\bibliographystyle{apalike}
\bibliography{biblio}
Antwort1
Vorausgesetzt, Sie sind mit dem apalike
Bibliografiestil, dem natbib
Zitationsverwaltungspaket und BibTeX im Allgemeinen einverstanden, können Sie ein neues Makro erstellen, das das gewünschte Zitationsformat implementiert.
\newcommand\mycite[2][]{\citeauthor{#2}\ (\citeyear{#2})\ifx#1\undefined\else, #1\fi}
Wenn das erste, optionale Argument nicht angegeben ist, wird nach nichts ausgedruckt \citeyear{#2}
; wenn kein optionales Argument angegeben ist, \mycite
verhält es sich tatsächlich wie \citet
would.
\documentclass[12pt]{report}
\usepackage{filecontents}
\begin{filecontents}{biblio.bib}
@article{ruoff,
author = "A. Ruoff and B. Woof and C. Zoot",
title = "Thoughts",
journal= "Circularity Today",
year = 1953,
}
\end{filecontents}
\usepackage{natbib}
\bibliographystyle{apalike}
\newcommand\mycite[2][]{%
\citeauthor{#2}\ (\citeyear{#2})\ifx#1\undefined\else, #1\fi}
\begin{document}
\mycite[p.~16]{ruoff} % with optional argument
\mycite{ruoff} % without optional argument -- no comma is printed
\citet{ruoff} % compare with output of "\citet"
\bibliography{biblio}
\end{document}
Nachtrag: Um diese Zitathinweise in eine Fußnote einzufügen, können Sie ein Makro wie verwenden \myfootcite
, das wie folgt definiert ist:
\newcommand\myfootcite[2][]{\footnote{\mycite[#1]{#2}.}}
Wenn Sie am Ende des Fußnotenmaterials keinen Punkt wünschen, lassen Sie das .
Nachher einfach weg {#2}
.
Zweiter Nachtrag, um der Anfrage des OP nach einem Zitatmakro nachzukommen, das „Ebenda“ ausgibt, wenn der letzte Eintrag mit dem des vorhergehenden Zitatbefehls übereinstimmt:
Im Vergleich zur vorherigen Lösung muss nur ein Test hinzugefügt werden, ob der Schlüssel der aktuellen Zitierung mit dem der vorherigen Zitierung übereinstimmt. Der folgende Code bietet zwei Benutzermakros: \tcite
, für Zitate im Text und \fcite
, für Zitate in Fußnoten.
\documentclass[12pt]{report}
\usepackage[textheight=2in]{geometry} %% just for this example
\usepackage{filecontents}
\begin{filecontents}{biblio.bib}
@article{ruoff,
author = "A. Ruoff and B. Woof and C. Zoot",
title = "Thoughts",
journal= "Circularity Today",
year = 1953,
}
@article{abc,
author = "Anna Andersen and Bertha Branson and Carla Carlsson",
title = "Further Thoughts",
journal= "Circularity Today",
year = 2053,
}
\end{filecontents}
\usepackage{natbib}
\bibliographystyle{apalike}
\def\prevcite{} % initialize \prevcite
%% macro for in-text citation
\newcommand\tcite[2][]{%
\def\newcite{#2}
\ifx\prevcite\newcite
Ibid.%
\else%
\gdef\prevcite{#2}% update \prevcite
\citeauthor{#2}\ (\citeyear{#2})%
\fi
\ifx#1\undefined\else, #1\fi}
%% macro for in-footnote citation
\newcommand\fcite[2][]{\footnote{\tcite[#1]{#2}}}
\begin{document}
bla bla\fcite{ruoff}
more bla bla\fcite[p.~75]{ruoff}
still more bla bla\fcite[p.~101]{abc}
further bla bla\fcite{abc}
final bla bla\fcite[p.~999]{abc}
\bibliography{biblio}
\end{document}
Antwort2
Eine Möglichkeit, Dinge mit zu tun . Sie können natbib-Befehle mit der Option biblatex-apa
emulieren :natbib
\documentclass[12pt]{report}
\usepackage[utf8]{inputenc}
\usepackage[american]{babel}
\usepackage{csquotes}
\usepackage[style=apa, backend=biber, natbib]{biblatex}
\DeclareLanguageMapping{american}{american-apa}
\addbibresource{biblio.bib}
\usepackage{filecontents}
\begin{filecontents}{biblio.bib}
@article{ruoff,
author = "A. Ruoff and B. Woof and C. Zoot",
title = "Thoughts",
journal= "Circularity Today",
year = 1953,
}
\end{filecontents}
\renewcommand*{\nameyeardelim}{\addspace}
%
\usepackage{xpatch}
\makeatletter
\newbibmacro*{cite}{%
\iffieldequals{namehash}{\cbx@lasthash}
% Multiple cites in one command
{\setunit{\compcitedelim}%
\usebibmacro{cite:plabelyear+extrayear}}%
% \bibcloseparen%
% Single cite
{\ifthenelse{\ifnameundef{labelname}\OR\iffieldequalstr{entrytype}{patent}}
% No author/editor
{\usebibmacro{cite:noname}%
\setunit{\ifbool{cbx:np}%
{\nameyeardelim}%
{\global\booltrue{cbx:parens}\addspace\bibopenparen}}%
\usebibmacro{cite:plabelyear+extrayear}%
\bibcloseparen%
\savefield{namehash}{\cbx@lasthash}}
% Normal cite
{\ifnameundef{shortauthor}
{\printnames[labelname][-\value{listtotal}]{labelname}}%
{\cbx@apa@ifnamesaved
{\printnames{shortauthor}}
{\printnames[labelname][-\value{listtotal}]{author}\addspace\printnames[sabrackets]{shortauthor}}}%
\setunit{\ifbool{cbx:np}%
{\nameyeardelim}%
{\global\booltrue{cbx:parens}\addspace\bibopenparen}}%
\usebibmacro{cite:plabelyear+extrayear}%
\bibcloseparen%
\savefield{namehash}{\cbx@lasthash}}}%
\setunit{\multicitedelim}}
\makeatother
\begin{document}
\chapter{Introduction}
\cite[p.~16]{ruoff} % with optional argument
\textcite{ruoff} % without optional argument -- no comma is printed
\citet{ruoff} % compare with output of "\citet"
\printbibliography
\end{document}