0

I need to do some custom modification to the bibliography. Here is a MWE:

\documentclass{book}
\usepackage{a4wide}
\usepackage{fancyhdr}
\usepackage{graphicx}
\usepackage{polyglossia}
\setmainlanguage[spelling=new,babelshorthands=true]{german}
\usepackage[autostyle]{csquotes}
\usepackage[style=authortitle-dw,
edsuper=true,
namefont=smallcaps,
useprefix=true,
ibidemfont=smallcaps,
idemfont=smallcaps,
idembibformat=dash,
shorthandibid=true,
backref=false,
backrefstyle=none,
hyperref=true,
isbn=false,
backend=biber,
citereset=chapter,
bibencoding=utf8]{biblatex}
\DeclareFieldFormat{pages}{#1}
\DeclareFieldFormat{page}{#1}
\DeclareNameAlias{sortname}{last-first}
\DefineBibliographyStrings{german}{
    and={/},
    page={},
    andothers = {{et\,al\adddot}},
    editor = {{ Hg\adddot }} ,
    editors = {{ Hg\adddot }}
}


\usepackage{filecontents}
\begin{filecontents}{file.bib}

@book{b2,
    year = {2014},
    title = {Redefreiheit: Öffentliche Debatten der Bevölkerung im Herbst 1989},
    address = {Leipzig},
    edition = {1},
    publisher = {Leipziger Uni-Vlg},
    isbn = {386583888X},
    editor = {Ahbe, Thomas and Stiehler, Volker and Hofmann, Michael},
    shorttitle = {Redefreiheit}
}
\end{filecontents}

\addbibresource{file.bib}
\begin{document}
    text \footcite{b2} text.
    text \footcite{b2} haha. 
    \printbibliography
\end{document}

I would like to change the following things:

  1. The first red square: all authors should be separated by slashes. I managed to do it for the last author with DefineBibliographyStrings, but I couldnt find out how to do it for more authors

  2. The second red square: the separator before the location should be a dot, not a comma

Many thanks for the help!

bibliography

4
  • The delimiter of the authors is stored in \renewcommand*{\bibmultinamedelim}{\addnbspace\slash\space} Mar 31, 2017 at 20:47
  • 1
    Any reason why you add a space before the editors-string (editor = {{ Hg\adddot }} , editors = {{ Hg\adddot }})? Mar 31, 2017 at 21:00
  • no reason at all, just weird formatting :)
    – Philipp
    Apr 1, 2017 at 9:01
  • I would not use page={}, to suppress the page prefix, \DeclareFieldFormat{pages}{#1} should work just fine, maybe in combination with \DeclareFieldFormat{postnote}{#1}.
    – moewe
    Apr 1, 2017 at 10:56

1 Answer 1

2

Your manipulation of and isn't the correct way.

Use the following:

ad 1 -- adding slashes

\renewcommand*{\multinamedelim}{\addnbspace\slash\space}
\let\finalnamedelim\multinamedelim
\renewcommand*{\bibmultinamedelim}{\addnbspace\slash\space}
\let\bibfinalnamedelim\bibmultinamedelim

ad 2:

\renewbibmacro*{publisher+location+date}{%
  \setunit{\addperiod\space}%
  \printlist{location}%
  \iflistundef{publisher}
    {\setunit*{\addcomma\space}}
    {\setunit*{\addcolon\space}}%
  \printlist{publisher}%
  \setunit*{\addcomma\space}%
  \usebibmacro{date}%
  \newunit}

Hints:

  • Don't use spaces inside \DefineBibliographyStrings

Example:

\documentclass{book}
\usepackage{a4wide}
\usepackage{fancyhdr}
\usepackage{graphicx}
\usepackage{polyglossia}
\setmainlanguage[spelling=new,babelshorthands=true]{german}
\usepackage[autostyle]{csquotes}
\usepackage[style=authortitle-dw,
edsuper=true,
namefont=smallcaps,
useprefix=true,
ibidemfont=smallcaps,
idemfont=smallcaps,
idembibformat=dash,
shorthandibid=true,
backref=false,
backrefstyle=none,
hyperref=true,
isbn=false,
backend=biber,
citereset=chapter,
bibencoding=utf8]{biblatex}
\DeclareFieldFormat{pages}{#1}
\DeclareFieldFormat{page}{#1}
\DeclareNameAlias{sortname}{last-first}
\DefineBibliographyStrings{german}{
    andothers = {{et\,al\adddot}},
    editor = {{Hg\adddot}} ,
    editors = {{Hg\adddot}}
}

\renewcommand*{\multinamedelim}{\addnbspace\slash\space}
\let\finalnamedelim\multinamedelim
\renewcommand*{\bibmultinamedelim}{\addnbspace\slash\space}
\let\bibfinalnamedelim\bibmultinamedelim

\renewbibmacro*{publisher+location+date}{%
  \setunit{\addperiod\space}%
  \printlist{location}%
  \iflistundef{publisher}
    {\setunit*{\addcomma\space}}
    {\setunit*{\addcolon\space}}%
  \printlist{publisher}%
  \setunit*{\addcomma\space}%
  \usebibmacro{date}%
  \newunit}

\usepackage{filecontents}
\begin{filecontents}{file.bib}

@book{b2,
    year = {2014},
    title = {Redefreiheit: Öffentliche Debatten der Bevölkerung im Herbst 1989},
    address = {Leipzig},
    edition = {1},
    publisher = {Leipziger Uni-Vlg},
    isbn = {386583888X},
    editor = {Ahbe, Thomas and Stiehler, Volker and Hofmann, Michael},
    shorttitle = {Redefreiheit}
}
\end{filecontents}

\addbibresource{file.bib}
\begin{document}
    text \footcite{b2} text.
    text \footcite{b2} haha. 
    \printbibliography
\end{document}
6
  • I don't think there is any use in retaining the \finalandcomma in the final delimiters. Additionally, if the final delimiter should not have special handling I would just set it to be \multinamedelim, same with the bib versions. So I would cut down the first block to \renewcommand*{\multinamedelim}{\addnbspace\slash\space} \renewcommand*{\finalnamedelim}{\multinamedelim} \renewcommand*{\bibmultinamedelim}{\multinamedelim} \renewcommand*{\bibfinalnamedelim}{\bibmultinamedelim}
    – moewe
    Apr 1, 2017 at 11:00
  • Ad 2) I would use \addperiod instead of \adddot (even though the OP said 'dot'; periods are full stops, dots end abbreviations). I also don't like to start bibmacros with punctuation commands, but accept that it is probably the smoothest course of action here.
    – moewe
    Apr 1, 2017 at 11:03
  • @moewe: ad1: I used the shorter form, thanks. ad2: I know what you mean, however in this case it's the easiest way. Apr 1, 2017 at 17:47
  • @moewe the solution for ad 2 kills the edsuper=true option in biblatex-dw, i.e. it does not print the edition in superscript anymore, it rather does not print it at all. Do you have an idea how to have the edition printed as superscript and still use this solution?
    – Philipp
    Jun 21, 2018 at 22:13
  • @Philipp Please ask a new question about that. I hope I'll be able to fix it, but certainly not in the comments here.
    – moewe
    Jun 22, 2018 at 6:00

You must log in to answer this question.

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