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?

2 Answers2

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}

moewe
  • 175,683
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}%
}
  • biblatex doesn't define a command called \print. Unless it is defined elsewhere, \print{\mkbibbold{(Hrsg.):}} will error. – moewe May 04 '22 at 19:27