2

I'm writing a thesis and having a hard time customizing my biblatex bibliography.

This is what cited proceedings should look like:

Name, initials of surname (year). Title, in name of editor (ed.). Title of proceedings, pages.

And this is what I got:

Name, initials of surname (year). Title, in. name of editor (ed.): Title of proceedings, pages

My first problem is the dot behind 'in' and my second problem is the colon behind the editor.

Here is the MWE:

\documentclass[12pt,a4paper]{article}
\usepackage[latin1]{inputenc}
\usepackage[ngerman]{babel}
\usepackage[T1]{fontenc}
\usepackage{lmodern} 
\usepackage[babel,german=quotes]{csquotes}
\usepackage[ backend=biber, 
style=authoryear-icomp, 
mcite=true, 
backref=true, 
isbn=false, 
url=false, 
doi=false, 
urldate=long, 
minnames=1, 
maxbibnames=99, 
maxcitenames=2,dashed=false,
backref=false,
firstinits=true,isbn=false,url=false,doi=false,eprint=false]{biblatex}
\usepackage{xpatch}

\DefineBibliographyStrings{ngerman}{
byeditor = {ed\adddot},    
editor   = {ed\adddot}   
}   
\DeclareNameAlias{sortname}{last-first} 
\DeclareNameAlias{default}{last-first}
\DeclareFieldFormat[article, inproceedings,book]{title}{{#1}}

\renewcommand*{\intitlepunct}{\space}   % no colon behind 'in'

\renewcommand{\finalnamedelim}{\//}
\AtBeginBibliography{%
\renewcommand{\finalnamedelim}{\addsemicolon\space}}

\newcommand*{\bibmultinamedelim}{\addsemicolon\space}% 
\newcommand*{\bibfinalnamedelim}{\addsemicolon\space}% 
\AtBeginBibliography{% 
\let\multinamedelim\bibmultinamedelim 
\let\finalnamedelim\bibfinalnamedelim 
}

\renewbibmacro*{in:}{%  
\setunit{\addcomma\space}%          % comma before title of proceeding
\ifentrytype{article}{}{\printtext{\bibstring{in}\intitlepunct}}    
% no "in" for articles
}


\renewbibmacro*{byeditor+others}{%           % (ed.) behind editor names
\ifnameundef{editor}
{}
{\printnames[byeditor]{editor}%
    \setunit{\addspace}%
    \usebibmacro{byeditor+othersstrg}%
    \clearname{editor}%
    \newunit}%
\usebibmacro{byeditorx}%
\usebibmacro{bytranslator+others}}

% booktitle after editors
\renewbibmacro*{maintitle+booktitle}{%
\iffieldundef{maintitle}
{}
{\usebibmacro{maintitle}%
    \newunit\newblock
    \iffieldundef{volume}
    {}
    {\printfield{volume}%
        \printfield{part}%
    }}%
\newunit}

\renewbibmacro*{byeditor+others}{%
\ifnameundef{editor}
{}
{\printnames[byeditor]{editor}%
    \setunit{\addspace}%
    \usebibmacro{byeditor+othersstrg}%
    \clearname{editor}%
    \newunit}%
\usebibmacro{byeditorx}%
\usebibmacro{bytranslator+others}
\setunit{\addcolon\space}
\usebibmacro{booktitle}}
\xpatchbibmacro{byeditor+othersstrg}{\printtext}{\printtext[parens]}{}{}

\addbibresource{ref.bib}

\begin{document}
\printbibliography
\end{document}

And here's the ref.bib:

@inproceedings{Kocher.2016,
author = {K{\"o}cher, S{\"o}ren and Jannach, Dietmar and Jugovac, Michael 
and Holzm{\"u}ller, Hartmut H.},
title = {Investigating Mere-Presence Effects of Recommendations on the 
Consumer Choice Process},
pages = {2--5},
bookpagination = {page},
editor = {Brusilovsky, Peter and Felfernig, Alexander and Lops, Pasquale 
and O'Donovan, John and Semeraro, Giovanni and Tintarev, Nava and 
Willemsen, Martijn C.},
booktitle = {Proceedings of the Joint Workshop on Interfaces and Human 
Decision Making for Recommender Systems co-located with ACM Conference on 
Recommender Systems (RecSys 2016)},
year = {2016}
}

Any help would be appreciated.

1
\renewbibmacro*{in:}{%  
  \setunit{\addcomma\space}%
  \ifentrytype{article}{}{\printtext{\bibstring{in}\printunit{\intitlepunct}}}%
}

and

\renewbibmacro*{byeditor+others}{%
  \ifnameundef{editor}
    {}
    {\printnames[byeditor]{editor}%
     \setunit{\addspace}%
     \usebibmacro{byeditor+othersstrg}%
     \clearname{editor}%
     \newunit}%
  \usebibmacro{byeditorx}%
  \usebibmacro{bytranslator+others}%
  \newunit\newblock
  \usebibmacro{booktitle}}

should do it.

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.