0

my Format definition in the bbx file looks like this:

\DeclareFieldFormat
  [article,inbook,incollection,inproceedings,patent,thesis,unpublished]
  {title}{\mkbibquote{#1\isdot}}
% Modify the name format
  {
    \DeclareNameFormat{family-given-bold}{\mkbibbold{%
        \renewcommand*{\multinamedelim}{\addsemicolon\addspace}%
        \renewcommand*{\finalnamedelim}{\addsemicolon\addspace}%
        \printunit{\mkbibbold{\addcolon\addspace}}%
{\usebibmacro{name:family-given}
      {\namepartfamily}
      {\namepartgiveni}
      {\namepartprefix}
      {\namepartsuffix}}
 \usebibmacro{name:andothers}}}
\DeclareNameAlias{sortname}{family-given-bold}
\DeclareNameAlias{author}{family-given-bold}
\DeclareNameAlias{editor}{family-given-bold}
\DeclareNameAlias{translator}{family-given-bold}
% Custom field formats 
\DeclareFieldFormat*{title}{#1}
\DeclareFieldFormat[report]{title}{#1}
\DeclareFieldFormat[book,collection,inproceedings]{title}{#1}
\DeclareFieldFormat{url}{\url{#1}}
\DeclareFieldFormat{journaltitle}{#1\isdot} %journal non-italic
\DeclareFieldFormat[article]{volume}{\bibstring{volume}#1}
% Simple modifications to punctuation, etc.
\renewcommand*{\begrelateddelim}{\addsemicolon\space}%
\renewcommand*{\finalnamedelim}{\addsemicolon\space}{%
\renewcommand*{\intitlepunct}{\addspace}
\renewcommand*{\labelnamepunct}{\addspace}
\renewcommand*{\newunitpunct}{\addcomma\addspace}

The Declarebibliographydriver- part looks like:

\DeclareBibliographyDriver{article}{%
  \usebibmacro{bibindex}%
  \usebibmacro{begentry}%
  \usebibmacro{author/translator+others}%
  \setunit{\labelnamepunct}\newblock
  \iftoggle{bbx:articletitle}
    {%
      \usebibmacro{title}%
      \printunit{\addcomma\addspace}%
    }
    {}%
  \usebibmacro{byauthor}%
  \newunit\newblock
  \usebibmacro{bytranslator+others}%
  \newunit\newblock
  \printfield{version}%
  \setunit{\addspace}%
  \usebibmacro{journal+issuetitle}%
  \newunit
  \usebibmacro{byeditor+others}%
  \newunit
  \usebibmacro{note+pages}%
  \newunit\newblock
  \iftoggle{bbx:isbn}
    {\printfield{issn}}
    {}%
  \newunit\newblock
  \usebibmacro{doi+eprint+url}%
  \newunit\newblock
  \usebibmacro{addendum+pubstate}%
  \setunit{\bibpagerefpunct}\newblock
  \usebibmacro{pageref}%
  \usebibmacro{finentry}%
}

\DeclareBibliographyDriver{book}{%
  \usebibmacro{bibindex}%
  \usebibmacro{begentry}%
  \usebibmacro{author/translator+others}%
  \setunit{\labelnamepunct}\newblock
  \usebibmacro{maintitle+title}%
  \setunit{\addcomma\space}%
  \printfield{edition}%
  \newunit
  \printfield{volumes}%
  \newunit\newblock
  \usebibmacro{byauthor}%
  \setunit{\addcomma\space}%
  \usebibmacro{editor+others}%
  \setunit{\addcomma\space}%
  \newunit\newblock
  \printfield{note}%
  \setunit{\addcomma\space}%
  \usebibmacro{publisher+location+date}%
  \setunit{\addcomma\space}
  \iftoggle{bbx:isbn}
    {\printfield{isbn}}
    {}%
  \newunit\newblock
  \usebibmacro{doi+eprint+url}%
  \newunit\newblock
  \usebibmacro{addendum+pubstate}%
  \setunit{\bibpagerefpunct}\newblock
  \usebibmacro{pageref}%
  \newunit\newblock
  \iftoggle{bbx:related}
    {\usebibmacro{related:init}%
     \usebibmacro{related}}
    {}%
  \usebibmacro{finentry}%
}

\DeclareBibliographyDriver{booklet}{%
  \usebibmacro{bibindex}%
  \usebibmacro{begentry}%
  \usebibmacro{author/editor+others/translator+others}%
  \setunit{\labelnamepunct}\newblock
  \usebibmacro{title}%
  \newunit
  \usebibmacro{byauthor}%
  \newunit\newblock
  \usebibmacro{byeditor+others}%
  \newunit\newblock
  \printfield{howpublished}%
  \newunit\newblock
  \printfield{type}%
  \newunit\newblock
  \printfield{note}%
  \setunit{\addsemicolon\space}%
  \usebibmacro{location+date}%
  \setunit{\addsemicolon\space}%
  \printfield{volume}%
  \setunit{\addsemicolon\space}%
  \usebibmacro{chapter+pages}%
  \newunit
  \printfield{pagetotal}%
  \newunit\newblock
  \usebibmacro{doi+eprint+url}%
  \newunit\newblock
  \usebibmacro{addendum+pubstate}%
  \setunit{\bibpagerefpunct}\newblock
  \usebibmacro{pageref}%
  \newunit\newblock
  \iftoggle{bbx:related}
    {\usebibmacro{related:init}%
     \usebibmacro{related}}
    {}%
  \usebibmacro{finentry}%
}

\DeclareBibliographyDriver{collection}{%
  \usebibmacro{bibindex}%
  \usebibmacro{begentry}%
  \usebibmacro{maintitle+title}%
  \newunit
  \printfield{edition}%
  \newunit
  \printfield{volumes}%
  \newunit  
  \printlist{language}%
  \setunit{\addsemicolon\space}%
  \usebibmacro{editor+others}%
  \newunit\newblock
  \setunit{\addsemicolon\space}%
  \usebibmacro{series+number}%
  \newunit\newblock
  \printfield{note}%
  \setunit{\addsemicolon\space}%
  \usebibmacro{publisher+location+date}%
  \setunit{\addsemicolon\space}%
  \printfield{volume}
  \setunit{\addsemicolon\space}%
  \usebibmacro{chapter+pages}%
  \newunit
  \printfield{pagetotal}%
  \newunit\newblock
  \iftoggle{bbx:isbn}
    {\printfield{isbn}}
    {}%
  \newunit\newblock
  \usebibmacro{doi+eprint+url}%
  \newunit\newblock
  \usebibmacro{addendum+pubstate}%
  \setunit{\bibpagerefpunct}\newblock
  \usebibmacro{pageref}%
  \newunit\newblock
  \iftoggle{bbx:related}
    {\usebibmacro{related:init}%
     \usebibmacro{related}}
    {}%
  \usebibmacro{finentry}%
}

\DeclareBibliographyDriver{inbook}{%
  \usebibmacro{bibindex}%
  \usebibmacro{begentry}%
  \usebibmacro{author/translator+others}%
  \setunit{\labelnamepunct}\newblock
  \usebibmacro{byauthor}%
  \newunit
  \iftoggle{bbx:chaptertitle}
    {\usebibmacro{title}}
    {}%
  \setunit{\addspace}%
  \usebibmacro{in:}%
  \usebibmacro{bybookauthor}%
  \setunit{\addspace}%
  \usebibmacro{maintitle+booktitle}%
  \newunit\newblock
  \usebibmacro{editor+others}%
  \newunit\newblock
  \printfield{edition}%
  \newunit
  \printfield{volumes}%
  \setunit{\addsemicolon\space}%
  \usebibmacro{series+number}%
  \newunit\newblock
  \printfield{note}%
  \setunit{\addsemicolon\space}%
  \usebibmacro{publisher+location+date}%
  \setunit{\addsemicolon\space}%
  \printfield{colume}%
  \setunit{\addsemicolon\space}%
  \usebibmacro{chapter+pages}%
  \newunit\newblock
  \iftoggle{bbx:isbn}
    {\printfield{isbn}}
    {}%
  \newunit\newblock
  \usebibmacro{doi+eprint+url}%
  \newunit\newblock
  \usebibmacro{addendum+pubstate}%
  \setunit{\bibpagerefpunct}\newblock
  \usebibmacro{pageref}%
  \newunit\newblock
  \iftoggle{bbx:related}
    {\usebibmacro{related:init}%
     \usebibmacro{related}}
    {}%
  \usebibmacro{finentry}%
}

\DeclareBibliographyDriver{incollection}{%
  \usebibmacro{bibindex}%
  \usebibmacro{begentry}%
  \usebibmacro{author/translator+others}%
  \setunit{\labelnamepunct}\newblock
  \usebibmacro{byauthor}%
  \newunit
  \iftoggle{bbx:chaptertitle}
    {\usebibmacro{title}}
    {}%
  \setunit{\addspace}%
  \usebibmacro{in:}%
  \usebibmacro{maintitle+booktitle}%
  \newunit\newblock
  \usebibmacro{editor+others}%
  \newunit\newblock
  \printfield{edition}%
  \newunit
  \printfield{volumes}%
  \setunit{\addsemicolon\space}%
  \usebibmacro{series+number}%
  \newunit\newblock
  \printfield{note}%
  \setunit{\addsemicolon\space}%
  \usebibmacro{publisher+location+date}%
  \setunit{\addsemicolon\space}%
  \printfield{volume}%
  \setunit{\addsemicolon\space}%
  \usebibmacro{chapter+pages}%
  \newunit\newblock
  \iftoggle{bbx:isbn}
    {\printfield{isbn}}
    {}%
  \newunit\newblock
  \usebibmacro{doi+eprint+url}%
  \newunit\newblock
  \usebibmacro{addendum+pubstate}%
  \setunit{\bibpagerefpunct}\newblock
  \usebibmacro{pageref}%
  \newunit\newblock
  \iftoggle{bbx:related}
    {\usebibmacro{related:init}%
     \usebibmacro{related}}
    {}%
  \usebibmacro{finentry}%
}
\DeclareBibliographyDriver{inproceedings}{%
  \usebibmacro{bibindex}%
  \usebibmacro{begentry}%
  \usebibmacro{author/translator+others}%
  \setunit{\labelnamepunct}\newblock
  \usebibmacro{byauthor}%
  \setunit{\addspace}%
  \usebibmacro{in:}%
  \usebibmacro{maintitle+booktitle}%
  \newunit\newblock
  \usebibmacro{event+venue+date}%
  \newunit\newblock
  \usebibmacro{byeditor+others}%
  \newunit\newblock
  \printfield{volumes}%
  \setunit{\addsemicolon\space}%
  \printfield{note}%
  \newunit\newblock
  \usebibmacro{publisher+location+date}%
  \setunit{\addsemicolon\space}%
  \printfield{volume}%
  \setunit{\addsemicolon\space}%
  \usebibmacro{chapter+pages}%
  \newunit\newblock
  \iftoggle{bbx:isbn}
    {\printfield{isbn}}
    {}%
  \newunit\newblock
  \usebibmacro{doi+eprint+url}%
  \newunit\newblock
  \usebibmacro{addendum+pubstate}%
  \setunit{\bibpagerefpunct}\newblock
  \usebibmacro{pageref}%
  \newunit\newblock
  \iftoggle{bbx:related}
    {\usebibmacro{related:init}%
     \usebibmacro{related}}
    {}%
  \usebibmacro{finentry}%
}

\DeclareBibliographyDriver{manual}{%
  \usebibmacro{bibindex}%
  \usebibmacro{begentry}%
  \usebibmacro{author/editor}%
  \setunit{\labelnamepunct}\newblock
  \usebibmacro{title}%
  \newunit
  \usebibmacro{byauthor}%
  \newunit\newblock
  \usebibmacro{byeditor}%
  \newunit\newblock
  \printfield{edition}%
  \newunit\newblock
  \usebibmacro{series+number}%
  \newunit\newblock
  \printfield{type}%
  \newunit
  \printfield{version}%
  \newunit
  \printfield{note}%
  \setunit{\addsemicolon\space}%
  \printlist{organization}%
  \newunit
  \usebibmacro{publisher+location+date}%
  \newunit\newblock
  \usebibmacro{chapter+pages}%
  \newunit
  \printfield{pagetotal}%
  \newunit\newblock
  \iftoggle{bbx:isbn}
    {\printfield{isbn}}
    {}%
  \newunit\newblock
  \usebibmacro{doi+eprint+url}%
  \newunit\newblock
  \usebibmacro{addendum+pubstate}%
  \setunit{\bibpagerefpunct}\newblock
  \usebibmacro{pageref}%
  \newunit\newblock
  \iftoggle{bbx:related}
    {\usebibmacro{related:init}%
     \usebibmacro{related}}
    {}%
  \usebibmacro{finentry}%
}

\DeclareBibliographyDriver{online}{%
  \usebibmacro{bibindex}%
  \usebibmacro{begentry}%
  \usebibmacro{author/editor+others/translator+others}%
  \setunit{\labelnamepunct}\newblock
  \usebibmacro{title}%
  \printunit{\addspace}%
  \usebibmacro{byauthor}%
  \newunit\newblock
  \usebibmacro{byeditor+others}%
  \newunit\newblock
  \printfield{version}%
  \newunit
  \printfield{note}%
  \newunit\newblock
  \printlist{organization}%
  \newunit\newblock
  \iftoggle{bbx:eprint}
    {\usebibmacro{eprint}}
    {}%
  \newunit\newblock
  \usebibmacro{url+urldate}%
  \newunit\newblock
  \usebibmacro{addendum+pubstate}%
  \setunit{\bibpagerefpunct}\newblock
  \usebibmacro{pageref}%
  \newunit\newblock
  \iftoggle{bbx:related}
    {\usebibmacro{related:init}%
     \usebibmacro{related}}
    {}%
  \usebibmacro{finentry}%
}

\DeclareBibliographyDriver{patent}{%
  \usebibmacro{bibindex}%
  \usebibmacro{begentry}%
  \usebibmacro{author}%
  \setunit{\addspace}%
  \usebibmacro{byholder}%
  \setunit{\labelnamepunct}\newblock
  \usebibmacro{title}%
  \newunit
  \usebibmacro{byauthor}%
  \setunit{\addspace}%
  \printfield{type}%
  \newunit
  \printfield{number}%
  \iflistundef{location}
    {}
    {\setunit*{\addspace}%
     \printtext[parens]{%
       \printlist[][-\value{listtotal}]{location}}}%
  \newunit\newblock
  \newunit\newblock
  \printfield{note}%
  \newunit\newblock
  \usebibmacro{date}%
  \newunit\newblock
  \usebibmacro{doi+eprint+url}%
  \newunit\newblock
  \usebibmacro{addendum+pubstate}%
  \setunit{\bibpagerefpunct}\newblock
  \usebibmacro{pageref}%
  \newunit\newblock
  \iftoggle{bbx:related}
    {\usebibmacro{related:init}%
     \usebibmacro{related}}
    {}%
  \usebibmacro{finentry}%
}

\DeclareBibliographyDriver{report}{%
  \usebibmacro{bibindex}%
  \usebibmacro{begentry}%
  \usebibmacro{author}%
  \setunit{\labelnamepunct}\newblock
  \usebibmacro{title}%
  \newunit
  \usebibmacro{byauthor}%
  \setunit{\addsemicolon\space}%
  \printfield{type}%
  \setunit*{\addspace}%
  \printfield{number}%
  \newunit\newblock
  \printfield{version}%
  \newunit
  \printfield{note}%
  \setunit{\addsemicolon\space}%
  \usebibmacro{institution+location+date}%
  \newunit\newblock
  \usebibmacro{chapter+pages}%
  \newunit
  \printfield{pagetotal}%
  \newunit\newblock
  \iftoggle{bbx:isbn}
    {\printfield{isrn}}
    {}%
  \newunit\newblock
  \usebibmacro{doi+eprint+url}%
  \newunit\newblock
  \usebibmacro{addendum+pubstate}%
  \setunit{\bibpagerefpunct}\newblock
  \usebibmacro{pageref}%
  \newunit\newblock
  \iftoggle{bbx:related}
    {\usebibmacro{related:init}%
     \usebibmacro{related}}
    {}%
  \usebibmacro{finentry}%
}

So my reference looks like this:
Böckh, P.; Wetzel, T.: Wärmeübertragung, Springer Berlin Heidelberg: Berlin, Heidelberg, 2015.

But i want to have an exception for @misc. @misc should show the publisher as author and after the publisher name it should print (Hrsg.) in the reference:
Pfeiffer Vacuum (Hrsg.): The Vacuum Technology Book Volume II, Know-how Book 2013

What should i add to \DeclareFieldformat and \DeclareBibliographyDriver?

1
  • Welcome to TeX.SE!
    – Mensch
    Commented May 3, 2022 at 9:58

2 Answers 2

0

i managed to work out a solution. It may not be the best solution, but it works :D

Thank you for your help.

%Exception for publisher = author
\newbibmacro*{company}{%
  \printlist{publisher}
  %
}
\DeclareBibliographyDriver{misc}{%
  \usebibmacro{bibindex}%
  \usebibmacro{begentry}%
  \usebibmacro{company}%
  \print{\mkbibbold{(Hrsg.):}}
  \usebibmacro{maintitle+title}%
  \setunit{\addcomma\addspace}%
  \printfield{edition}%
  \newunit
  \printfield{volumes}%
  \newunit\newblock
  \usebibmacro{byauthor}%
  \setunit{\addcomma\space}%
  \usebibmacro{editor+others}%
  \setunit{\addcomma\space}%
  \newunit\newblock
  \printfield{note}%
  \setunit{\addcomma\space}%
  \usebibmacro{date}%
  \setunit{\addcomma\space}
  \iftoggle{bbx:isbn}
    {\printfield{isbn}}
    {}%
  \newunit\newblock
  \usebibmacro{doi+eprint+url}%
  \newunit\newblock
  \usebibmacro{addendum+pubstate}%
  \setunit{\bibpagerefpunct}\newblock
  \usebibmacro{pageref}%
  \newunit\newblock
  \iftoggle{bbx:related}
    {\usebibmacro{related:init}%
     \usebibmacro{related}}
    {}%
  \usebibmacro{finentry}%
}
1
  • biblatex doesn't define a command called \print. Unless it is defined elsewhere, \print{\mkbibbold{(Hrsg.):}} will error.
    – moewe
    Commented May 4, 2022 at 19:27
0

I wouldn't rewrite the driver for this.

If someone or some institution or company is the editor (Herausgeber) of a work and should be shown at the beginning of the entry, just put them in the editor field.

For the example you could even make the case that Pfeiffer Vacuum is the author, not the editor of the work.

There is no restriction that says that authors or editors have to be real people. They may very well be companies, corporations or institutions. What matters is authorship/editorship (a property of the work) and not if the entity is a person or not (a property of the respective entity). Just remember that non-person names should be wrapped in an additional pair of curly braces to stop Biber and BibTeX from parsing them into family and given names (as would be done for people's names). See Using a 'corporate author' in the "author" field of a bibliographic entry (spelling out the name in full).

\documentclass[ngerman]{article}
\usepackage[T1]{fontenc}
\usepackage{babel}
\usepackage{csquotes}

\usepackage[backend=biber, style=authortitle]{biblatex}

\begin{filecontents}{\jobname.bib}
@book{vacuum,
  author    = {{Pfeiffer Vacuum}},
  maintitle = {The Vacuum Technology Book},
  volume    = {2},
  part      = {2},
  title     = {Know how book},
  year      = {2013},
}
\end{filecontents}
\addbibresource{\jobname.bib}
\addbibresource{biblatex-examples.bib}

\begin{document}
Lorem \autocite{sigfridsson,vacuum}

\printbibliography
\end{document}

Pfeiffer Vacuum. The Vacuum Technology Book. Bd. 2.2: Know how book. 2013.

If you need more stuff bold, you can still get away without redefining drivers.

\documentclass[ngerman]{article}
\usepackage[T1]{fontenc}
\usepackage{babel}
\usepackage{csquotes}

\usepackage[backend=biber, style=authortitle, punctfont]{biblatex}

\DeclareNameWrapperFormat{bold}{\mkbibbold{#1}}

\DeclareNameWrapperAlias{sortname}{bold}
\DeclareNameWrapperAlias{author}{sortname}
\DeclareNameWrapperAlias{editor}{sortname}
\DeclareNameWrapperAlias{translator}{sortnamed}

\DeclareFieldFormat{editortype}{\mkbibbold{\mkbibparens{#1}}}
\DeclareDelimFormat{editortypedelim}{\addspace}

\DeclareFieldAlias{translatortype}{editortype}
\DeclareDelimAlias{translatortypedelim}{editortypedelim}

\begin{filecontents}{\jobname.bib}
@book{vacuum,
  editor    = {{Pfeiffer Vacuum}},
  maintitle = {The Vacuum Technology Book},
  volume    = {2},
  part      = {2},
  title     = {Know how book},
  year      = {2013},
}
\end{filecontents}
\addbibresource{\jobname.bib}
\addbibresource{biblatex-examples.bib}

\begin{document}
Lorem \autocite{sigfridsson,vacuum}

\printbibliography
\end{document}
2
  • The Problem is that (Hrsg.) and the colon have to be printed bold behind the publisher name.
    – Niklas
    Commented May 4, 2022 at 10:52
  • @Niklas For that you shouldn't have to redefine the driver, either. See the edit.
    – moewe
    Commented May 4, 2022 at 19:13

You must log in to answer this question.

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