1

I'm currently swapping from pdfLaTeX to XeLaTeX and everything works quite smoothly. Unfortunately, there seems to be a problem with my biber on TeXmaker. I need a quite extensively changed bibliography due to my university's prerequesites:

\usepackage[nottoc,notlot,notlof]{tocbibind}
\usepackage[backend=biber,style=authoryear,sorting=nyt]{biblatex}
\addbibresource{Bibliography.bib}
\DefineBibliographyStrings{german}{references={Bibliographie}}
\DeclareFieldFormat{superedition}{\textsuperscript{#1}}
\DeclareNameAlias{sortname}{last-first}
\renewbibmacro*{date+extrayear}{%
  \iffieldundef{\thefield{datelabelsource}year}%
    {}{%
       \printtext[parens]{%
         \iffieldnum{edition}{\printfield[superedition]{edition}\global\clearfield{edition}}{}%
         \iffieldsequal{year}{\thefield{datelabelsource}year}%
           {\printdateextralabel}{\printfield{labelyear}\printfield{extrayear}}%
       }%
      }%
}
\renewcommand*{\bibpagespunct}{\addcomma\space}
\DeclareFieldFormat{pages}{#1}
\DeclareFieldFormat{editortype}{\mkbibparens{#1}}
\renewbibmacro*{byeditor+others}{%
  \ifnameundef{editor}
   {}{%
      \printnames[byeditor]{editor}%
      \setunit{\addspace}%
      \usebibmacro{byeditor+othersstrg}%
      \clearname{editor}\newunit%
   }%
   \usebibmacro{byeditorx}%
   \usebibmacro{bytranslator+others}%
}
\renewbibmacro*{byeditor+othersstrg}{\usebibmacro{editor+othersstrg}}
\renewbibmacro*{bytranslator+othersstrg}{\usebibmacro{translator+othersstrg}}
\renewbibmacro*{bytypestrg}[2]{%
  \iffieldundef{#1type}{\bibstring{#2}}{%
    \ifbibxstring{\thefield{#1type}}%
      {\bibstring{\thefield{#1type}}}{\printtext{\thefield{#1type}}}%
  }%
}
\renewcommand*{\multinamedelim}{/}
\renewcommand*{\finalnamedelim}{/}
\renewcommand*{\postnotedelim}{\addcolon\space}
\DeclareFieldFormat{postnote}{#1}
\DeclareFieldFormat{multipostnote}{#1}

@Book{coseriu1992,
  Title                    = {Einführung in die Allgemeine Sprachwissenschaft \textup{(Uni-Taschenbücher 1372)}},
  Author                   = {Coseriu, Eugenio},
  Location                 = {Tübingen},
  Publisher                = {Francke},
  Year                     = {1992},
  Edition                  = {2},
}

\begin{document}
\tableofcontents
\newpage

Blub\parencite[cf.][9]{coseriu1992}
\newpage

\printbibliography[heading=bibintoc]
\end{document}

It should still be produce the same outpout as through pdfLaTeX but all I get is this error message:

This is BibTeX, Version 0.99d (TeX Live 2017/TeX Live for SUSE Linux) The top-level auxiliary file: KonSysRum.aux I found no \citation commands---while reading file KonSysRum.aux I found no \bibdata command---while reading file KonSysRum.aux I found no \bibstyle command---while reading file KonSysRum.aux

I've already tried to change the {ngerman} to {german} because I think {ngerman} is part of babel, I've changed the way I quote from mostly \parencite* to just \cite and I've deleted the .aux-file but nothing changes. My .aux-file really does not contain the three commands from the error message...

  • 1
    Without a minimal full example, it's hard to guess. However, you can try deleting all the auxiliary files and check the .bib files is utf8-encoded. – Bernard Aug 11 '17 at 17:11
  • 5
    You need to run biber instead of BiBTeX ... – Mensch Aug 11 '17 at 17:11
  • 1
    Please add a minimal working example with bibliography (MWEB), starting with \documentclass and ending with \end{document}. – Bobyandbob Aug 13 '17 at 7:16
  • 1
    You need to run Biber and not BibTeX, refer to Biblatex with Biber: Configuring my editor to avoid undefined citations for help on how to make your editor do that for you. – moewe Aug 13 '17 at 13:51
  • 1
    Please consider adding complete MWEs to your question and not just lines of code from your preamble. That way you can make sure that we start from the same assumptions as you. – moewe Aug 13 '17 at 13:52
4

The code from my earlier answer to BibLaTeX: Edition as superscript in front of year, but year after author(s) needs updating for newer versions of biblatex.

The \renewbibmacro*{date+extradate} needs to be

\renewbibmacro*{date+extradate}{%
  \iffieldundef{labelyear}
    {}
    {\printtext[parens]{%
       \iflabeldateisdate
         {\iffieldnum{edition}
            {\printfield[superedition]{edition}%
             \global\clearfield{edition}}
            {}%
          \printdateextra}
         {\printlabeldateextra}}}}

now.

MWE

\documentclass[a4paper,12pt,numbers=endperiod]{scrartcl}
\usepackage[utf8]{inputenc}
\usepackage[T1]{fontenc}
\usepackage[ngerman]{babel}
\usepackage{csquotes}
\usepackage[backend=biber,style=authoryear]{biblatex}

\addbibresource{biblatex-examples.bib}

\DefineBibliographyStrings{ngerman}{references={Bibliographie}}

\DeclareFieldFormat{editortype}{\mkbibparens{#1}}
\renewbibmacro*{byeditor+others}{%
  \ifnameundef{editor}
    {}
    {\printnames[byeditor]{editor}%
     \setunit{\addspace}%
     \usebibmacro{byeditor+othersstrg}%
     \clearname{editor}%
     \newunit}%
  \usebibmacro{byeditorx}%
  \usebibmacro{bytranslator+others}}
\renewbibmacro*{byeditor+othersstrg}{\usebibmacro{editor+othersstrg}}
\renewbibmacro*{bytranslator+othersstrg}{\usebibmacro{translator+othersstrg}}
\renewbibmacro*{bytypestrg}[2]{%
  \iffieldundef{#1type}
    {\bibstring{#2}}
    {\ifbibxstring{\thefield{#1type}}
       {\bibstring{\thefield{#1type}}}
       {\printtext{\thefield{#1type}}}}}

\DeclareDelimFormat{multinamedelim}{/}
\DeclareDelimAlias{finalnamedelim}{multinamedelim}

\DeclareDelimFormat[bib,biblist]{nametitledelim}{\addcolon\space}
\renewcommand*{\postnotedelim}{\addcolon\space}
\DeclareFieldFormat{postnote}{#1}
\DeclareFieldFormat{multipostnote}{#1}

\DeclareFieldFormat{superedition}{\textsuperscript{#1}}

\renewbibmacro*{date+extradate}{%
  \iffieldundef{labelyear}
    {}
    {\printtext[parens]{%
       \iflabeldateisdate
         {\iffieldnum{edition}
            {\printfield[superedition]{edition}%
             \global\clearfield{edition}}
            {}%
          \printdateextra}
         {\printlabeldateextra}}}}

\renewcommand*{\bibpagespunct}{\addcolon\space}
\DeclareFieldFormat{pages}{#1}

\DeclareNameAlias{sortname}{family-given}

\begin{document}
\nocite{sigfridsson,companion,cotton,iliad,malinowski,
        gaonkar:in,westfahl:space,pines,brandt,hyman,kant:kpv}
\printbibliography
\end{document}

bibliography section of the MWE

This answer was updated to reflect changes in newer versions of biblatex. In case you use an older version and can not update, refer to the edit history.

  • This was it! Thank you so much! Just one last question and then I can get back to typing my paper: how do I use "extrayear"? I have two citations where I'd like to have the first appearance in front of the current edition like this Doe, Jane [1979] 22003: Title etc. – LajosH Aug 18 '17 at 15:58
  • @LajosH Do you mean origyear? The standard styles don't use that field. So if you need an implementation, please ask a new question about that. – moewe Aug 18 '17 at 16:03

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.