Take the 2-minute tour ×
TeX - LaTeX Stack Exchange is a question and answer site for users of TeX, LaTeX, ConTeXt, and related typesetting systems. It's 100% free, no registration required.

I have a problem with my multilingual APA reference. I use LuaTeX, BibLaTeX and biber. I use the BibLaTeX option babel=other to activate language switching. Switching gets done by adding an hyphenation entry at every reference in the BibLaTeX file.

Now here is the problem: Some strings get translated properly but some look very odd. The English entry is completely fine. The German entry also works at least partly because Ed. is properly translated as Hrsg. and S. as p.. But when it comes to Retrieved from and Original work published the German version looks odd. It doesn't even stay with the English version but has strings in bold reading retrieved from and origyear.

Here is an example:

LaTeX file:

\documentclass{article}
\usepackage[ngerman,american]{babel}
\usepackage[style=apa,backend=biber,babel=other]{biblatex}
\DeclareLanguageMapping{american}{american-apa}
\usepackage{csquotes}
\bibliography{biblatex.bib} 

\begin{document}
\parencite{Entry1}
\parencite{Entry2}
\printbibliography
\end{document}

biblatex.bib file:

% Encoding: UTF8

@INBOOK{Entry1,
  title = {Liebe},
  booktitle = {Buch der Stimmungen},
  year = {1999},
  origdate = {1950},
  editor = {Peter Schmidt},
  publisher = {Der Verlag},
  location = {Hamburg},
  pages = {118--119},
  URL = {http://somepage.de},
  hyphenation = {ngerman},
}

@INBOOK{Entry2,
  title = {Hatred},
  booktitle = {Books of feelings},
  date = {1998},
  origdate = {1950},
  editor = {Peter Schmidt},
  publisher = {Publishing House},
  location = {New York},
  pages = {117},
  URL = {http://somepage.com},
  hyphenation = {american},
}

Any idea? Help much appreciated!

share|improve this question
    
Log: Package biblatex Warning: Bibliography string 'retrieved' undefined (for 'from' and 'origyear', too) –  Qrrbrbirlbel Oct 2 '12 at 23:52
add comment

2 Answers 2

up vote 3 down vote accepted

The bold "labels" tell you that bibstrings are not defined.

The reason that is happening is because the bibstrings for "retrieved from" and "origyear" are not defined in the "standard" language definition files (like ngerman.lbx), but by the APA style in ngerman-apa.lbx. You have mapped american to american-apa.lbx, but you haven't mapped ngerman to ngerman-apa.lbx -- so biblatex is looking for bibstrings in the default file and not finding them.

If you add the line

\DeclareLanguageMapping{ngerman}{ngerman-apa}

you get the strings you need. (I hesitated about this, because I thought I recalled some limitation on the number of such statements you could have; but I can't find that in the documentation, and it seems to work.)

share|improve this answer
    
Thanks alot that worked! In the biblatex manual it says: "Declaring the same mapping more than once is possible. Subsequent declarations will simply overwrite any previous ones." So maybe they are not completely overwritten if babel=other is used. Thanks alot also to everyone else who gave an answer! –  Psychic Birdy Oct 4 '12 at 11:19
add comment

I don't know a direct BibLaTeX solution (is there a user macro for this sort of thing?) but I could solve that problem with a modified ngerman.lbx that is then put in your localtexmf folder. After refreshing the database the phrases “Zugriff unter” and “Erstveröffentlichung” will be substituted for “Retrieved from” and “origyear”.

ngerman.lbx

\ProvidesFile{ngerman.lbx}
[\abx@lbxid]

\InheritBibliographyExtras{german}

\DeclareBibliographyStrings{%
  inherit          = {german},
  citedas          = {{im Folgenden zitiert als}{im Folgenden zit\adddotspace als}},
% alternative spelling, uncomment to enable:
% section          = {{Paragraf}{\S}},
% sections         = {{Paragrafen}{\S\S}},
  retrieved        = {{Zugriff}{Zugriff}},
  from             = {{unter}{unter}},
  origyear         = {{Erstver\"offentlichung}{Erstver\"offtl\adddot}},
}

\DeclareHyphenationExceptions{%
  Pa-tent-an-mel-dung
  Pa-tent-an-meld
}

\endinput
share|improve this answer
add comment

Your Answer

 
discard

By posting your answer, you agree to the privacy policy and terms of service.

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