2

I'm trying to adapt the German bibliography norm DIN 1505 T2.

As seen in my minimal example, I almost managed it:

\documentclass{article}
\usepackage{filecontents}
\usepackage[style=alphabetic,backend=biber,maxnames=99,maxalphanames=1, backref=false,firstinits=true,]{biblatex}

\DeclareNameAlias{default}{last-first}
\renewcommand*{\multinamedelim}{\addspace\addsemicolon\addspace}
\renewcommand*{\finalnamedelim}{\addspace\addsemicolon\addspace}
\renewcommand*{\multilistdelim}{\addspace\addsemicolon\addspace}
\renewcommand*{\finallistdelim}{\addspace\addsemicolon\addspace}
\renewcommand*{\labelnamepunct}{\addcolon\addspace}
\renewcommand*{\subtitlepunct}{\addspace\addcolon\addspace}
\renewcommand*{\finentrypunct}{}

\DeclareFieldFormat*{title}{\emph{#1}}
\DeclareFieldFormat*{subtitle}{\emph{#1}}
\DeclareFieldFormat*{booktitle}{\emph{#1}}
\DeclareFieldFormat*{booksubtitle}{\emph{#1}}
\DeclareFieldFormat*{journaltitle}{#1}
\DeclareFieldFormat[periodical]{issuetitle}{\emph{#1}}
\DeclareFieldFormat*{maintitle}{\emph{#1}}

\renewcommand*{\labelalphaothers}{}
\renewcommand*{\intitlepunct}{}
\DefineBibliographyStrings{german}{in={}}
\DefineBibliographyStrings{english}{in={}}

\begin{filecontents*}{\jobname.bib}
@ARTICLE{Sun,
author={Yanhua Sun and Yick-Sing Ho and Lie Yu},
journal={IEEE Transactions on Magnetics},
title={Dynamic Stiffnesses of Active Magnetic Thrust Bearing Including Eddy-Current Effects},
year={2009},
month={Jan},
volume={45},
number={1},
}
@book{Moon,
  title={Field Theory Handbook},
  author={Moon, P. and Spencer, D.E.},
  year={1961},
  location={Berlin, Heidelberg},
  publisher={Springer}
}
\end{filecontents*}

\bibliography{\jobname.bib} 
\begin{document}
\cite{Sun,Moon}
\printbibliography
\end{document}

which gives: enter image description here

The last thing I can't manage to format are the sequences journal-volume-number-month-year for journal articles and location-publisher-year for books.

At the moment it looks like

journal volume.number (month year)

but I need it to be

journal volume.number, month year

I was able to remove the brackets by

\newbibmacro*{issue+date}{%
    \iffieldundef{issue}
      {\usebibmacro{date}}
      {\printfield{issue}%
       \setunit*{\addspace}%
       \usebibmacro{date}}%
       \newunit}

but I can't manage to get the simple comma ,. How to add the comma before the date?

A similar problem comes up with books, where I need

location: publisher date

instead of

location: publisher, date

How to remove the comma in this case?

1 Answer 1

2

I finally managed it. These three macros are required:

For journal volume.number, month year

% Comma before date; date not in parentheses
\renewbibmacro*{issue+date}{%
  \setunit*{\addcomma\space}%
  \iffieldundef{issue}
        {\usebibmacro{date}}
        {\printfield{issue}%
        \setunit*{\addcomma\addspace}%
        \usebibmacro{date}}%
  \newunit}

% Comma before and after journal volume
\renewbibmacro*{volume+number+eid}{%
  \setunit*{\addcomma\space}%
  \iffieldundef{eid}{
        \printfield{volume}%
        \setunit*{\adddot}%
        \printfield{number}%
        \setunit{\addcomma\space}%
  \newunit}%
  {
  \printfield{volume}%
  \setunit*{\adddot}%
  \printfield{number}%
  \setunit{\addcomma\space}%
  \printfield{eid}}}

and for location: publisher date

% remove comma after publisher
\newbibmacro*{publisher+location+date}{%
  \printlist{location}%
  \iflistundef{publisher}
        {\setunit*{\addcomma\space}}
        {\setunit*{\addcolon\space}}%
  \printlist{publisher}%
  \setunit*{\space}%
  \usebibmacro{date}%
  \newunit}

enter image description here

it is kind of improvised from what I think I understood. Please feel free to edit the answer if there are some unnecessary commands.

You must log in to answer this question.

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