0

ISO Date format with Biblatex/Biber? answers the same question for the ISO date format, but I can't find information on how to use the German format (dd.mm.yyyy). The documentation is of no help, as only year, short, long, terse, comp, ymd and edtf are covered and there is no information on how to change the separator from / to .. I am using american in babel and neither isodate nor datetime had an effect on the bibliography.

5
  • 1
    Welcome to TeX.SX! Do you want to change your whole bibliography or just some entries?
    – TeXnician
    Feb 20, 2017 at 17:25
  • Could you prepare an MWE and if you use American in your main document do you want to change all dates or only the dates of some entries?
    – moewe
    Feb 20, 2017 at 17:28
  • Datetime is obselete. It was replaced by datetime2. Have you tried if it works with that one? Feb 20, 2017 at 17:29
  • 1
    @ManuelWeinkauf isodate, datetime and datetime2 are meant for other purpose. biblatex has control over the entries.
    – Johannes_B
    Feb 20, 2017 at 17:33
  • @ManuelWeinkauf I doubt datetime2 has any bearing on the date in biblatex's bibliography.
    – moewe
    Feb 20, 2017 at 17:33

1 Answer 1

3

The date format depends on your language settings. This can be shown by the following example:

\documentclass[11pt]{article}
\usepackage[american,ngerman]{babel}
\usepackage[]{biblatex}
\addbibresource{biblatex-examples.bib}
\begin{document}
\selectlanguage{ngerman}
\section{ngerman}
\begin{refsection}

\cite{ctan}
\printbibliography
\end{refsection}

\selectlanguage{american}
\section{american}

\begin{refsection}
\cite{ctan}
\printbibliography
\end{refsection}
\end{document}

In your case you can use the default german definition of \mkbibdatelong/\mkbibdateshort to get your result:

\documentclass[11pt]{article}
\usepackage[american,ngerman]{babel}
\usepackage[]{biblatex}
\addbibresource{biblatex-examples.bib}

\DefineBibliographyExtras{american}{%
 %from german.lbx
  \protected\def\mkbibdatelong#1#2#3{%
    \iffieldundef{#3}
      {}
      {\mkbibordinal{\thefield{#3}}%
       \iffieldundef{#2}{}{\nobreakspace}}%
    \iffieldundef{#2}
      {}
      {\mkbibmonth{\thefield{#2}}%
       \iffieldundef{#1}{}{\space}}%
    \iffieldbibstring{#1}
      {\bibstring{\thefield{#1}}}
      {\dateeraprintpre{#1}\stripzeros{\thefield{#1}}}}%
  \protected\def\mkbibdateshort#1#2#3{%
    \iffieldundef{#3}
      {}
      {\mkdayzeros{\thefield{#3}}\adddot
       \iffieldundef{#2}{}{\thinspace}}%
    \iffieldundef{#2}
      {}
      {\mkmonthzeros{\thefield{#2}}%
       \iffieldundef{#1}
     {}
     {\iffieldundef{#3}{/}{\adddot\thinspace}}}%
    \iffieldbibstring{#1}
      {\bibstring{\thefield{#1}}}
      {\dateeraprintpre{#1}\mkyearzeros{\thefield{#1}}}}%
}
\begin{document}
\selectlanguage{ngerman}
\section{ngerman}
\begin{refsection}

\cite{ctan}
\printbibliography
\end{refsection}

\selectlanguage{american}
\section{american}

\begin{refsection}
\cite{ctan}
\printbibliography
\end{refsection}
\end{document}

enter image description here

0

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .