1

I get an 'Undefined control sequence \autocite{donnellanSpeakingNothing1974}' error with the following MWE:

\documentclass{article}
\usepackage[style=chicago-authordate]{biblatex}
\addbibresource{bibliography.bib}
\begin{document}
\autocite{donnellanSpeakingNothing1974}
\printbibliography
\end{document}

and bibliography.bib:

@Article{donnellanSpeakingNothing1974,
  author       = {Donnellan, Keith S.},
  title        = {Speaking of Nothing},
  journaltitle = {The Philosophical Review},
  date         = {1974},
  volume       = {83},
  number       = {1},
  pages        = {3--31},
  doi          = {10.2307/2183871},
}

This is not a duplicate of "Undefined control sequence." when using autocite and biblatex-chicago because I am not using bibtex.

What do I need to do to use \autocite with biblatex-chicago?

I want to use autocite, because I want to make the .tex file with Pandoc and that's how it writes citations.

I am passing a style option to biblatex.sty because that's how Pandoc's templates work. This may be the source of my problems: Difference between biblatex [style=chicago] and biblatex-chicago packages?

According to page 87 of the biblatex-chicago manual I should use xstring.sty and nameref.sty. That doesn't help; the following gives me the same error:

\documentclass{article}
\usepackage{xstring}
\usepackage{nameref}
\usepackage[style=chicago-authordate]{biblatex}
\addbibresource{bibliography.bib}
\begin{document}
\autocite{donnellanSpeakingNothing1974}
\printbibliography
\end{document}
twsh
  • 2,718

3 Answers3

1

Edit

Seems the \autocite is the problem. Got it to work, though:

Try this:

\documentclass{article}
\usepackage[T1]{fontenc}
\usepackage[american]{babel}
\usepackage{csquotes}
\usepackage{xstring, nameref}

\begin{filecontents}[overwrite]{bibliography.bib} @Article{donnellanSpeakingNothing1974, author = {Donnellan, Keith S.}, title = {Speaking of Nothing}, journaltitle = {The Philosophical Review}, date = {1974}, volume = {83}, number = {1}, pages = {3--31}, doi = {10.2307/2183871}, } \end{filecontents}

\usepackage[style=chicago-authordate,autocite=inline]{biblatex} \addbibresource{bibliography.bib} \begin{document}

This is a citing test \autocite{donnellanSpeakingNothing1974}

\printbibliography \end{document}

Forgot the output:

Autocite inline

phil-elkabat
  • 2,055
  • 1
    According to page 3 of the biblatex-chicago manual, the option 'chicago-authordate' exists. I don't get an error about that, as I would if I used 'style=foo'. – twsh Aug 06 '20 at 14:30
  • The alternative you give works, but I can't do it that way because I have to pass options to biblatex.sty. – twsh Aug 06 '20 at 14:31
  • 1
    style=chicago-authordate exists.https://tex.stackexchange.com/q/59222/91556 – hesham Aug 06 '20 at 14:35
  • I'm not sure, but it seems to me that loading biblatex-chicago has become mandatory. Can anyone confirm this? – phil-elkabat Aug 06 '20 at 14:37
  • @phil-elkabat The manual for biblatex-chicago says that it is recommended, not mandatory (page 87). – twsh Aug 06 '20 at 14:45
  • I wouldn't need 'style=chicago-authordate' if I was calling biblatex-chicago.sty. I could use 'authordate' as in the first version of this answer. – twsh Aug 06 '20 at 14:47
  • @twsh, Got it to work, see the newest edit. – phil-elkabat Aug 06 '20 at 14:49
  • @phil-elkabat That works, but it's still calling biblatex-chicago.sty. I want to make it work by passing options to biblatex.sty because that's what pandoc will do. But maybe that's not possible. – twsh Aug 06 '20 at 14:55
  • @twsh, yeah sorry. I should probably call it a day. I think it works now. What i did was to add autocite=inline as an option. Could you try it and let me know? – phil-elkabat Aug 06 '20 at 15:08
  • That works. Thanks for your help. – twsh Aug 06 '20 at 15:12
1

Styles from the biblatex-chicago bundle are supposed to be loaded via the wrapper package biblatex-chicago. This is a quirk of that particular style bundle, but it is established by now.

You cannot expect to get the same result as

\usepackage[authordate]{biblatex-chicago}

from \usepackage[style=chicago-authordate]{biblatex}.

Amongst other things the wrapper package sets a lot of package loading options for the style you selected. The following should be pretty close to what \usepackage{biblatex-chicago} would give you

\documentclass{article}
\usepackage{xstring}
\usepackage{nameref}
\usepackage[style=chicago-authordate]{biblatex}

\makeatletter \ExecuteBibliographyOptions{% pagetracker=true,autocite=inline,alldates=comp,labeldateparts=true, citetracker=true,uniquename=minfull,useeditor=true,usetranslator=true, usenamec=true,alltimes=12h,urltime=24h,datecirca=true,datezeros=false, dateuncertain=true,timezones=true,compressyears=true, ibidtracker=constrict,sorting=cms,punctfont,cmslos=true,nodates, uniquelist=minyear,maxbibnames=10,minbibnames=7,sortcase=false, abbreviate=false,dateabbrev=false,avdate=true} \makeatother

\addbibresource{biblatex-examples.bib} \begin{document} \autocite{sigfridsson} \printbibliography \end{document}

or if you prefer to pass the options directly to biblatex

\documentclass{article}
\usepackage{xstring}
\usepackage{nameref}
\usepackage[style=chicago-authordate,
  pagetracker=true,autocite=inline,alldates=comp,labeldateparts=true,
  citetracker=true,uniquename=minfull,useeditor=true,usetranslator=true,
  usenamec=true,alltimes=12h,urltime=24h,datecirca=true,datezeros=false,
  dateuncertain=true,timezones=true,compressyears=true,
  ibidtracker=constrict,sorting=cms,punctfont,cmslos=true,nodates,
  uniquelist=minyear,maxbibnames=10,minbibnames=7,sortcase=false,
  abbreviate=false,dateabbrev=false,avdate=true,
]{biblatex}

\addbibresource{biblatex-examples.bib} \begin{document} \autocite{sigfridsson} \printbibliography \end{document}

The immediate error about \autocite can also be removed with the shorter

\documentclass{article}
\usepackage{xstring}
\usepackage{nameref}
\usepackage[style=chicago-authordate, autocite=inline,]{biblatex}

\addbibresource{biblatex-examples.bib} \begin{document} \autocite{sigfridsson} \printbibliography \end{document}

but then other parts of the style may not be as intended by the style author (and required by the CMS).

Note that even the two long option invocations don't do everything \usepackage{biblatex-chicago} does. If you are interested in that you can copy everything after (and not including) \expandafter\ExecuteBibliographyOptions\expandafter{\cms@options} up to (and again not including) \endiput from biblatex-chicago.sty into your preamble between \makeatletter...\makeatother.

moewe
  • 175,683
0

I had the same problem and ended up using \citet{} and \citep{}...

Mensch
  • 65,388