(Hrsg.) hinter Herausgeber

Erstellung eines Literaturverzeichnisses mit BibTeX, Biber, BibLaTeX und Co.


Gast

(Hrsg.) hinter Herausgeber

Beitrag von Gast »

Wie bekomme ich das standardmäßige hrsg. von ... geändert in ... (Hrsg.)?
Die gefundenen "Lösungen aus dem Internet helfen mir nicht.

Code: Alles auswählen

\documentclass{article} 
\usepackage[ngerman]{babel} 

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

\usepackage{filecontents} 
\begin{filecontents*}{\jobname.bib} 
@inproceedings{test2019, 
title = {Test}, 
author = {Max Mustermann},
editor = {Maria Musterfrau},
}


\end{filecontents*} 
\addbibresource{\jobname.bib} 


\begin{document} 
\nocite{*}
\printbibliography 
\end{document}

MoeWe
Forum-Guru
Forum-Guru
Beiträge: 309
Registriert: Fr 30. Aug 2019, 15:35
Kontaktdaten:

Beitrag von MoeWe »

In dem Beispieleintrag fehlt der booktitle. Eigentlich spielt das für das Format des "Hrsg." keine Rolle. Aber es wäre interessant zu wissen, in welcher Reihenfolge editor und booktitle erscheinen sollen.

Wenn Du "In: <editor> (Hrsg.). <booktitle>" möchtest, dann bieten sich die biblatex-ext-Stile und ihre Option innamebeforetitle an

Code: Alles auswählen

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

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

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

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

\addbibresource{biblatex-examples.bib}

\begin{document}
\cite{sigfridsson,westfahl:space,gaonkar:in,pines}
\printbibliography
\end{document}
Wenn Du die Reihenfolge der Standardstile beibehalten möchtest und gern "In: <booktitle>. <editor> (Hrsg.)" hättest, dann kann biblatex-ext uns nicht weiter helfen. Da bräuchte man in etwa so etwas

Code: Alles auswählen

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

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

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

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

\makeatletter
\newbibmacro*{editorx+othersstrg}[1]{%
  \iffieldundef{#1type}
    {\ifboolexpr{
       test {\ifnumgreater{\value{#1}}{1}}
       or
       test {\ifandothers{#1}}
     }
       {\def\abx@tempa{editors}}
       {\def\abx@tempa{editor}}}
    {\ifboolexpr{
       test {\ifnumgreater{\value{#1}}{1}}
       or
       test {\ifandothers{#1}}
     }
       {\edef\abx@tempa{\thefield{editortype}s}}
       {\edef\abx@tempa{\thefield{editortype}}}}%
  \let\abx@tempb=\empty
  \ifnamesequal{#1}{translator}
    {\appto\abx@tempa{tr}%
     \appto\abx@tempb{\clearname{translator}}}
    {}%
  \ifnamesequal{#1}{commentator}
    {\appto\abx@tempa{co}%
     \appto\abx@tempb{\clearname{commentator}}}
    {\ifnamesequal{#1}{annotator}
       {\appto\abx@tempa{an}%
        \appto\abx@tempb{\clearname{annotator}}}
       {}}%
  \ifnamesequal{#1}{introduction}
    {\appto\abx@tempa{in}%
     \appto\abx@tempb{\clearname{introduction}}}
    {\ifnamesequal{#1}{foreword}
       {\appto\abx@tempa{fo}%
        \appto\abx@tempb{\clearname{foreword}}}
       {\ifnamesequal{#1}{afterword}
          {\appto\abx@tempa{af}%
           \appto\abx@tempb{\clearname{afterword}}}
          {}}}%
  \ifbibxstring{\abx@tempa}
    {\printtext[editortype]{\bibstring{\abx@tempa}}\abx@tempb}
    {\usebibmacro{editorstrg}}}

\newbibmacro{editorx:x}[1]{%
  \ifnameundef{#1}
    {}
    {\printnames{#1}%
     \setunit{\printdelim{editortypedelim}}%
     \usebibmacro{editorx+othersstrg}{#1}%
     \clearname{#1}%
     \newunit}}

\newbibmacro*{editorx}{%
  \usebibmacro{editorx:x}{editora}%
  \usebibmacro{editorx:x}{editorb}%
  \usebibmacro{editorx:x}{editorc}}

\renewbibmacro*{byeditor+others}{%
  \ifnameundef{editor}
    {}
    {\printnames{editor}%
     \setunit{\printdelim{editortypedelim}}%
     \usebibmacro{editorstrg}%
     \clearname{editor}}%
  \usebibmacro{editorx}%
  \usebibmacro{translator+others}}
\makeatother


\addbibresource{biblatex-examples.bib}

\begin{document}
\cite{sigfridsson,westfahl:space,gaonkar:in,pines}
\printbibliography
\end{document}

Gast

Beitrag von Gast »

Danke, das innametitle kombiniert mit:

Code: Alles auswählen

 \DeclareFieldFormat{editortype}{\mkbibparens{#1}} %Hg in Klammern

\DeclareDelimFormat{editortypedelim}{\addspace} %kein Komma vor (Hg./Hgg.)
ist das was ich gesucht habe. Dankeschön.

Antworten