[Tex/LaTex] Problem Footcite Biblatex

biblatexcitingfootnotes

I need some help for using the \footcite command together with Biblatex. I’m using the authoryear style.

According to the guidelines for my thesis, the footnote must have the following structure:

Last name of Author (Year), p. X.

I already found the following solution for this problem:

\renewbibmacro*{cite:labelyear+extrayear}{%
\iffieldundef{labelyear}
{}
{
\printtext[bibhyperref]{%
\printtext[parens]{
\printfield{labelyear}%
\printfield{extrayear}}}}}

But when I use this, the following output is generated:
Footnote http://dl.dropbox.com/u/1005161/Footnote.JPG

The problem is the space after the bracket. Do you have any idea, why this happens? Also how can I disable the first name in the footnote citation?

Also the perfect solution would be a space between the numberof the footnote and the author. But that is not so important.

Best Answer

If the first name is displayed with style=authoryear and \footcite, you're doing something wrong -- my guess is an additional set of braces around the author in your .bib file.

The formatting of the footnote has nothing to do with biblatex. You may use, e.g., the scrextend package (part of KOMA-Script) to get a space between footnote mark and text.

EDIT: Added solution for "semicolon after title of articles".

EDIT 2: It seems you need semicolons after every "unit". Try to remove the redefinition of the in: bibmacro and add instead \renewcommand*{\newunitpunct}{\addsemicolon\space}.

\documentclass{article}

\usepackage{scrextend}
\deffootnote{1.5em}{1em}{\textsuperscript{\thefootnotemark}~}

\usepackage[style=authoryear,autocite=footnote]{biblatex}

\renewbibmacro*{cite:labelyear+extrayear}{%
\iffieldundef{labelyear}
  {}
  {\printtext[bibhyperref]{%
   \printtext[parens]{% <- space
   \printfield{labelyear}%
   \printfield{extrayear}}}}}

\renewbibmacro{in:}{%
  \ifentrytype{article}{%
    \setunit{\addsemicolon\space}%
    \printtext{\bibstring{in}\intitlepunct}%
  }{%
    \printtext{\bibstring{in}\intitlepunct}%
  }%
}

\usepackage{filecontents}

\begin{filecontents}{\jobname.bib}
@article{A01,
  author = {Author, A.},
  year = {2001},
  title = {Alpha},
  journaltitle = {A Journal},
  volume = {1},
  number = {1},
}
@misc{B02,
  author = {{Buthor, B.}},% Too many braces!
  year = {2002},
  title = {Bravo},
  location = {There},
}
\end{filecontents}

\addbibresource{\jobname.bib}

\begin{document}

Some text \autocite{A01}.

Some text \autocite{B02}.

\printbibliography

\end{document}
Related Question