5

This question is similar to this one, except the crux here is biblatex-chicago.

I understand it's been a little rough building polyglossia support for biblatex. Thus far, biblatex-chicago has been tested for babel instead.

To achieve British localization in biblatex-chicago, the manual says to load babel with the option british. When I instead use polyglossia and \setmainlanguage[variant=british]{english}, however, it loads cms-american.lbx, in effect the same situation noted in this question. In this answer to that question, one of the solutions is to manually pass (in that case) language=ngerman to biblatex. Accordingly, the option language=british works for my purposes with biblatex. If this option is passed to biblatex-chicago, however, something seems to go amiss in the loading of the localization file, as all bibliography strings remain undefined:

\documentclass{book}
\usepackage{fontspec}
\usepackage{filecontents}
\usepackage[style=british]{csquotes}
\usepackage{polyglossia}
\usepackage[notes,language=british]{biblatex-chicago}

\setdefaultlanguage[variant=british]{english}
\setmainfont[Ligatures=TeX]{Cardo}
\begin{filecontents}{book.bib}
@online{key1,
   title = {Stack Exchange},
   url = {http://www.stackexchange.com},
   urldate = {2014-09-16}
}
\end{filecontents}
\addbibresource{book.bib}

\begin{document}

See date formatting in footnote below.\autocite{key1}

\end{document}

Warnings returned:

Package biblatex Warning: Bibliography string 'urlseen' undefined
(biblatex)                at entry 'key1' on input line 21.

Package biblatex Warning: Bibliography string 'september' undefined
(biblatex)                at entry 'key1' on input line 21.

Output:

Undefined strings
(source: langeslag.org)

If I load ngerman instead it actually works, though obviously with the wrong localization. This suggests that british fails to be tied to a localization file.

I can think of a couple of workarounds:

  1. Opt for biblatex over biblatex-chicago and copy the relevant contents of biblatex-chicago.sty into my own preamble (as well as importing the contents of biblatex-chicago's cms-british.lbx somehow -- what's the elegant way of doing this?);
  2. Swap out polyglossia in favour of babel. Note that my document contains over a dozen European languages.

But what's the correct way of actually telling biblatex-chicago to load the localization from its own cms-british.lbx?

5

You can make biblatex-chicago into thinking that the language is indeed british:

\begin{filecontents}{\jobname.bib}
@online{key1,
   title = {Stack Exchange},
   url = {http://www.stackexchange.com},
   urldate = {2014-09-16}
}
\end{filecontents}
\documentclass{book}
\usepackage{fontspec}
\usepackage{filecontents}
\usepackage[style=british]{csquotes}
\usepackage{polyglossia}
\setdefaultlanguage[variant=british]{english}

\let\keptlanguagename\languagename
\def\languagename{british}
\usepackage[notes,language=british]{biblatex-chicago}
\let\languagename\keptlanguagename

\setmainfont[Ligatures=TeX]{Cardo}
\addbibresource{\jobname.bib}

\begin{document}

See date formatting in footnote below.\autocite{key1}

\end{document}

Proper support of polyglossia would require changing biblatex-chicago.sty.

enter image description here

1

Afaik, the polyglossia definition of the UK variant is

\setdefaultlanguage[variant=uk]{english}

so try changing the line

\setdefaultlanguage[variant=british]{english}

Hope it helps! Jigdrel

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.