PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : Biblatex: Hrsg. korrekt anzeigen + Prefixes



Kathrin_B
15-07-2010, 14:49
Hallo zusammen,

ich arbeite mit Biblatex und habe gestern (erst) auf die aktuelle Version 0.9a umgestellt. Hierdurch klappt es leider nicht mehr, dass mir Collections so angezeigt werden:

Name, Vorname; Name, Vorname (Hrsg.) (2010): Titel. Weitere Angaben etc.

Standard ist:

Name, Vorname; Name, Vorname, Hrsg. (2010): Titel. Weitere Angaben etc.

Ich möchte also, dass die Angabe "Hrsg." in Klammern angezeigt wird. Das Komma konnte ich schon entfernen, indem ich bbx:editor angepasst habe (s. Minimalbeispiel). In der frühreren biblatex-Version konnte ich Klammern hinzufügen, indem ich editorstrg angepasst habe. Aber das funktioniert jetzt leider nicht mehr :-(

Ein ähnliches Problem habe ich bei incollections, bei denen ich nicht "Hrsg. von Editor" haben möchte, sondern auch "Editor (Hrsg.)". Alle meine weiteren Anpassungen in biblatex funktionieren prima und sind deshalb nicht im Minimalbeispiel aufgeführt.

Ein weiteres Problem sind die Prefixe (von, van, de etc.). In der Doku zu biblatex habe ich die Option useprefix gefunden, aber es nützt nichts, wenn ich sie auf true setze. Setze ich die Option an falscher Stelle oder warum klappt es nicht?


\RequirePackage{filecontents}
\begin{filecontents*}{Literatur.bib}

@INCOLLECTION{gremhaesgul2004,
author = {Wim Van Grembergen and Steven De Haes and Erik Guldentops},
title = {Structures, Processes and Relational Mechanisms for IT Governance},
booktitle = {Strategies for Information Technology Governance},
publisher = {Idea Group Publishing},
year = {2004},
editor = {Wim Van Grembergen},
pages = {1-36}
}

@COLLECTION{grembergen2004,
editor = {Wim Van Grembergen},
title = {Strategies for Information Technology Governance},
year = {2004},
publisher = {Idea Group Publishing},
location = {Hershey}´
}

\makeatletter

%kein Komma zwischen Namen und (Hrsg.)
\renewbibmacro*{bbx:editor}[1]{%
\ifthenelse{\ifuseeditor\AND\NOT\ifnameundef{edito r}}
{\ifthenelse{\iffieldequals{fullhash}{\bbx@lasthas h}\AND
\NOT\iffirstonpage\AND
\(\NOT\boolean{bbx@inset}\OR
\iffieldequalstr{entrysetcount}{1}\)}
{\bibnamedash}
{\printnames{editor}%
\setunit{\addspace}%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% %%%%%%%%%%%%%%%statt "`\addcomma\space"' nur "`\addspace"'
\usebibmacro{bbx:savehash}}%
\usebibmacro{#1}%
\clearname{editor}%
\setunit{\addspace}}%
{\global\undef\bbx@lasthash
\usebibmacro{labeltitle}%
\setunit*{\addspace}}%
\usebibmacro{date+extrayear}}

\makeatother

\end{filecontents*}

\documentclass{scrbook}
\usepackage[latin1]{inputenc} %"'deutsche"' Schriftarten, Umlaute, etc.
\usepackage[T1]{fontenc}
\usepackage[english,ngerman]{babel}

\usepackage[style=authoryear,maxnames=3,autocite=footnote, uniquename=false, dashed=false, sorting=nyt, sortcites=true, isbn=false, useprefix=true]{biblatex}
\bibliography{Literatur}

\begin{document}

\nocite{*}
\printbibliography[maxnames=99]

\end{document}

Vielend Dank schonmal für eure Hilfe.

Grüße,
Kathrin

lockstep
15-07-2010, 15:06
Ein weiteres Problem sind die Prefixe (von, van, de etc.). In der Doku zu biblatex habe ich die Option useprefix gefunden, aber es nützt nichts, wenn ich sie auf true setze. Setze ich die Option an falscher Stelle oder warum klappt es nicht?

Die Präfixe müssen in der bib-Datei klein geschrieben werden.

lockstep

lockstep
15-07-2010, 15:53
Ich möchte also, dass die Angabe "Hrsg." in Klammern angezeigt wird. Das Komma konnte ich schon entfernen, indem ich bbx:editor angepasst habe (s. Minimalbeispiel).



\makeatletter
\renewbibmacro*{bbx:editor}[1]{%
\ifthenelse{\ifuseeditor\AND\NOT\ifnameundef{edito r}}
{\ifthenelse{\iffieldequals{fullhash}{\bbx@lasthas h}\AND
\NOT\iffirstonpage\AND
\(\NOT\boolean{bbx@inset}\OR
\iffieldequalstr{entrysetcount}{1}\)}
{\bibnamedash}
{\printnames{editor}%
\setunit{\addspace}% GEÄNDERT
\usebibmacro{bbx:savehash}}%
\printtext[parens]{\usebibmacro{#1}}% GEÄNDERT
\clearname{editor}%
\setunit{\addspace}}%
{\global\undef\bbx@lasthash
\usebibmacro{labeltitle}%
\setunit*{\addspace}}%
\usebibmacro{date+extrayear}}
\makeatother


Deine Umdefinition war zwar ein richtiger erster Schritt, nützte jedoch vor \documentclass nur wenig. ;)

lockstep

lockstep
15-07-2010, 20:34
Ein ähnliches Problem habe ich bei incollections, bei denen ich nicht "Hrsg. von Editor" haben möchte, sondern auch "Editor (Hrsg.)".

Ich nehme zusätzlich an: Vor dem Titel der collection.

Das Folgende funktioniert bei mir, ich kann aber Nebenwirkungen und vor allem Inkonsistenzen zu anderen Eintragstypen nicht ausschließen.



\DeclareBibliographyDriver{incollection}{%
\usebibmacro{bibindex}%
\usebibmacro{begentry}%
\usebibmacro{author/translator+others}%
\setunit{\labelnamepunct}\newblock
\usebibmacro{title}%
\newunit
\printlist{language}%
\newunit\newblock
\usebibmacro{byauthor}%
\newunit\newblock
\usebibmacro{in:}%
\begingroup% NEU
\renewbibmacro*{date+extrayear}{}% NEU
\usebibmacro{editor+others}% NEU
\newunit\newblock% NEU
\endgroup% NEU
\usebibmacro{maintitle+booktitle}%
\newunit\newblock
% \usebibmacro{byeditor+others}%
% \newunit\newblock
\printfield{edition}%
\newunit
\iffieldundef{maintitle}
{\printfield{volume}%
\printfield{part}}
{}%
\newunit
\printfield{volumes}%
\newunit\newblock
\usebibmacro{series+number}%
\newunit\newblock
\printfield{note}%
\newunit\newblock
\usebibmacro{publisher+location+date}%
\newunit\newblock
\usebibmacro{chapter+pages}%
\newunit\newblock
\iftoggle{bbx:isbn}
{\printfield{isbn}}
{}%
\newunit\newblock
\usebibmacro{doi+eprint+url}%
\newunit\newblock
\usebibmacro{addendum+pubstate}%
\newunit\newblock
\usebibmacro{pageref}%
\usebibmacro{finentry}}


lockstep

Kathrin_B
16-07-2010, 10:23
Hallo lockstep,

vielen Dank für deine Änderungen, es funktioniert alles und ich habe es in mein Projekt eingebunden. Ich hätte ja auch selber drauf kommen können, eigentlich war es ja total simpel :o Und mit dem Einbinden nach documentclass hattest du natürlich auch recht, habe es in meinem Projekt natürlich so gemacht. Ist mir wohl beim Erstellen des Minimalbeispiels untergegangen :rolleyes:

Eine Frage habe ich noch: in dem Makro bbx:editor wird \usebibmacro{#1} verwendet, weißt du, welches Makro damit aufgerufen wird? In der alten biblatex-Version wurde hier nämlich editorstrg aufgerufen, das ich dann geändert habe. Deshalb funktionierten meine Änderungen in der neuen Version nicht mehr.

Kathrin

Kathrin_B
16-07-2010, 10:55
Eine Frage habe ich noch: in dem Makro bbx:editor wird \usebibmacro{#1} verwendet, weißt du, welches Makro damit aufgerufen wird? In der alten biblatex-Version wurde hier nämlich editorstrg aufgerufen, das ich dann geändert habe. Deshalb funktionierten meine Änderungen in der neuen Version nicht mehr.

Kathrin

Ich glaube, ich habe mir die Frage schon selbst beantwortet: hier wird aufgerufen, was beim Aufruf von bbx:editor übergeben wird. Meist ist das editor+othersstrg. Da das Makro aber sehr verschachtelt ist, ist deine Lösung deutlich einfacher als in editor+otherstrg rumzuwurschteln.

Kathrin_B
16-07-2010, 12:08
Hallo zusammen,

ich habe noch eine weitere Frage zu Biblatex. Ich habe zu manchen Einträgen URLs mit Abrufdatum angegeben, einige Einträge brauchen noch den Zusatz "kostenlose Registrierung erforderlich". Diese Notiz soll hinter das Abrufdatum geschrieben werden. Ich dachte mir, dass ich hierzu das Feld comment verwende, da es in allen meinen Bibeinträgen leer ist. Hierzu habe ich das Bibmakro url+urldate umgeschrieben, leider funktioniert es nicht. Hat jemand einen Tipp für mich?


\RequirePackage{filecontents}
\begin{filecontents*}{Literatur.bib}

@BOOK{denz2005,
author = {Denz, Hermann},
title = {Grundlagen einer empirischen Soziologie: Der Beitrag des quantitativen
Ansatzes},
publisher = {Lit},
location = {Münster},
year = {2005},
url={http://www.google.de},
urldate={2010-07-26}
}

@INCOLLECTION{gremhaesgul2004,
author = {Wim van Grembergen},
title = {Structures, Processes and Relational Mechanisms for IT Governance},
booktitle = {Strategies for Information Technology Governance},
publisher = {Idea Group Publishing},
year = {2004},
editor = {Wim Van Grembergen},
pages = {1-36},
url={http://www.google.de},
urldate={2010-07-26},
comment={kostenlose Registrierung notwendig}
}

\end{filecontents*}

\documentclass{scrbook}
\usepackage[latin1]{inputenc} %"'deutsche"' Schriftarten, Umlaute, etc.
\usepackage[T1]{fontenc}
\usepackage[english,ngerman]{babel}

\usepackage[style=authoryear,maxnames=3,autocite=footnote, uniquename=false, dashed=false, sorting=nyt, sortcites=true, isbn=false, useprefix=true]{biblatex}
\bibliography{Literatur}

\renewbibmacro*{url+urldate}{%
\printfield{url}%
\iffieldundef{urlyear}
{}
{\setunit*{\addspace}%
\iffieldundef{comment}% NEU
{\printtext[urldate]{\printurldate}}%
{\printtext[urldate]{\printurldate\addcomma\addspace\printfield{commen t}}}}} % NEU

\begin{document}

\nocite{*}
\printbibliography[maxnames=99]

\end{document}

Danke im Voraus!
Kathrin

lockstep
18-07-2010, 12:38
biblatex kennt kein Feld "comment". Als Näherungslösung könntest du die Anmerkung in das Feld "addendum" eintragen (hierzu muss kein Makro umdefiniert werden).

lockstep

Kathrin_B
19-07-2010, 12:34
Hallo lockstep,

das erklärt natürlich, warum es nicht funktioniert hat. Danke für den Tipp!

Die Ausgabe von addendum im Literaturverzeichnis gefiel mir nicht, stattdessen habe ich das Feld usera genommen und das Makro url+urldate angepasst. So bleibt mir außerdem das Feld addendum erhalten, wer weiß wozu ich es später nochmal gebrauchen kann :).

Kathrin

skarts
17-02-2011, 14:44
Hallo Forum, hallo lockstep!

Ich habe mich auch schon länger mit ähnlichen Änderungswünschen wie
Katrhin_B herumgeschlagen und die Beiträge von lockstep waren wirklich Gold wert – vielen Dank!

Allerdings gibt es in meinem Falle ein unerwünschtes Ergebnis:
Ich habe den Eintrag für "incollection" in meiner modifizierten bbx-Datei wie folgt geändert (Der Stil basiert auf "authoryear", biblatex 0.9):



\DeclareBibliographyDriver{incollection}{%
\usebibmacro{bibindex}%
\usebibmacro{begentry}%
\usebibmacro{author/translator+others}%
\setunit{\labelnamepunct}\newblock
\usebibmacro{title}%
\newunit
\printlist{language}%
\newunit\newblock
\usebibmacro{byauthor}%
\newunit\newblock
\usebibmacro{in:}%
\begingroup % NEU
\renewbibmacro*{date+extrayear}{} % NEU
\usebibmacro{editor+others} % NEU
\setunit{\addcolon\space} % NEU
\endgroup % NEU
\usebibmacro{maintitle+booktitle}%
\newunit\newblock
% \usebibmacro{byeditor+others}% NEU
% \newunit\newblock% NEU
\printfield{edition}%
\newunit
\iffieldundef{maintitle}
{\printfield{volume}%
\printfield{part}}
{}%
\newunit
\printfield{volumes}%
\newunit\newblock
\usebibmacro{series+number}%
\newunit\newblock
\printfield{note}%
\newunit\newblock
\usebibmacro{publisher+location+date}%
\newunit\newblock
\usebibmacro{chapter+pages}%
\newunit\newblock
\iftoggle{bbx:isbn}
{\printfield{isbn}}
{}%
\newunit\newblock
\usebibmacro{doi+eprint+url}%
\newunit\newblock
\usebibmacro{addendum+pubstate}%
\newunit\newblock
\usebibmacro{pageref}%
\usebibmacro{finentry}}



Das Makro für "editor" sieht wie folgt aus.



\renewbibmacro*{editor}{%
\usebibmacro{bbx:editor}{editorstrg}}
\renewbibmacro*{editor+others}{%
\usebibmacro{bbx:editor}{editor+othersstrg}}
\newbibmacro*{bbx:editor}[1]{%
\ifthenelse{\ifuseeditor\AND\NOT\ifnameundef{edito r}}
{\ifthenelse{\iffieldequals{fullhash}{\bbx@lasthas h}\AND
\NOT\iffirstonpage\AND
\(\NOT\boolean{bbx@inset}\OR
\iffieldequalstr{entrysetcount}{1}\)}
{\bibnamedash}
{\printnames{editor}%
\setunit{\addspace}% NEU
\usebibmacro{bbx:savehash}}%
\printtext[parens]{\usebibmacro{#1}}% NEU
\clearname{editor}%
\setunit{\addspace}}%
{\global\undef\bbx@lasthash
\usebibmacro{labeltitle}%
\setunit*{\addspace}}%
\usebibmacro{date+extrayear}}



Hier nun ein Auszug aus meinem Literaturverzeichnis

http://www.students.uni-mainz.de/muelsven/hdir/auszug_bib.jpg


Woher kommt der Strich, der offensichtlich die Herausgeber des Sammelbandes ersetzt? Ich habe alle Änderungen Schritt für Schritt durchgeführt und das Problem tritt auf, nach dem die Zeile



\usebibmacro{editor+others} % NEU



in den incollection-Driver geschrieben wird.

Hat jemand eine Idee, was hier schief läuft?

Für jeden Tip dankbar,

beste Grüße

skarts

shortener
17-02-2011, 19:10
Wenn Du ein lauffähiges Minimalbeispiel (http://minimalbeispiel.de/) zur Verfügung stellen würdest, könnte ich mir das mal anschauen ...

Edit:
Ich rate mal: Du hast nicht dashed=false gesetzt?
Versuchs mal mit \usepackage[dashed=false]{biblatex}

skarts
19-02-2011, 08:40
Hallo shortener,

gleich vorne weg: mit \usepackage[dashed=false]{biblatex} klappt's hervorragend.
Tausend Dank schon mal!

Allerdings verschwinden damit alle abkürzenden Striche im Literaturverzeichnis - oder?
Es wäre gut, wenn ein Autor nur einmal aufgeführt würde und bei weiteren Titeln dann mit einem Strich und der jehweiligen Jahreszahl erscheinen würde (sich wiederholende Jahreszahlen entsprechend mit Kleinbuchstaben versehen).

Ich poste hier also trotdem mal mein Minimalbeispiel, mit zwei Bibliographieeinträgen des gleichen Autors und ohne \usepackage[dashed=false]{biblatex}:





\RequirePackage{filecontents}
\begin{filecontents*}{Literatur.bib}

@incollection{koe91a,
Author = {K{\"o}nig, Ekkehard},
Booksubtitle = {Ein internationales Handbuch der zeitgen{\"o}ssischen Forschung},
Booktitle = {Semantik},
Editor = {Stechow, Arnim and Wunderlich, Dieter},
Location = {Berlin and New York},
Number = {6},
Pages = {631-639},
Publisher = {de Gruyter},
Series = {Handb{\"u}cher zur Sprach- und Kommunikationswissenschaft},
Title = {Konzessive Konjunktionen},
Year = {1991}}


@incollection{koe91b,
Author = {K{\"o}nig, Ekkehard},
Booksubtitle = {Ein internationales Handbuch der zeitgen{\"o}ssischen Forschung},
Booktitle = {Semantik},
Editor = {Stechow, Arnim and Wunderlich, Dieter},
Location = {Berlin and New York},
Number = {6},
Pages = {631-639},
Publisher = {de Gruyter},
Series = {Handb{\"u}cher zur Sprach- und Kommunikationswissenschaft},
Title = {Konzessive Konjunktionen},
Year = {1991}}

\end{filecontents*}

\documentclass[]{article}

\usepackage[T1]{fontenc}
\usepackage[ngerman]{babel}

\usepackage[style=authoryear]{biblatex}
\bibliography{Literatur}

%Der modifizierte incollection-Eintrag

\DeclareBibliographyDriver{incollection}{%
\usebibmacro{bibindex}%
\usebibmacro{begentry}%
\usebibmacro{author/translator+others}%
\setunit{\labelnamepunct}\newblock
\usebibmacro{title}%
\newunit
\printlist{language}%
\newunit\newblock
\usebibmacro{byauthor}%
\newunit\newblock
\usebibmacro{in:}%
\begingroup % NEU
\renewbibmacro*{date+extrayear}{} % NEU
\usebibmacro{editor+others} % NEU
\setunit{\addcolon\space} % NEU
\endgroup % NEU
\usebibmacro{maintitle+booktitle}%
\newunit\newblock
% \usebibmacro{byeditor+others}% NEU
% \newunit\newblock % NEU
\printfield{edition}%
\newunit
\iffieldundef{maintitle}
{\printfield{volume}%
\printfield{part}}
{}%
\newunit
\printfield{volumes}%
\newunit\newblock
\usebibmacro{series+number}%
\newunit\newblock
\printfield{note}%
\newunit\newblock
\usebibmacro{publisher+location+date}%
\newunit\newblock
\usebibmacro{chapter+pages}%
\newunit\newblock
\iftoggle{bbx:isbn}
{\printfield{isbn}}
{}%
\newunit\newblock
\usebibmacro{doi+eprint+url}%
\newunit\newblock
\usebibmacro{addendum+pubstate}%
\newunit\newblock
\usebibmacro{pageref}%
\usebibmacro{finentry}}


\begin{document}

\nocite{*}
\printbibliography

\end{document}




Vielleicht gibt es ja noch eine alternative Lösung.
Auf jeden Fall schon mal vielen Dank!

skarts

shortener
19-02-2011, 11:35
Ok, also wir versuchens ohne dashed=false:

Dies fügst Du zusätzlich zu Deinem Code vor \begin{document} ein.


\makeatletter
\renewbibmacro*{bbx:editor}[1]{%
\ifboolexpr{
test \ifuseeditor
and
not test {\ifnameundef{editor}}
}%
{\printnames{editor}%
\setunit{\addcomma\space}%
\usebibmacro{bbx:savehash}
\usebibmacro{#1}%
\clearname{editor}%
\setunit{\addspace}
}%
{\global\undef\bbx@lasthash
\usebibmacro{labeltitle}%
\setunit*{\addspace}
}%
\usebibmacro{date+extrayear}
}
\makeatother


Stimmt es so für Dich?

skarts
21-02-2011, 09:56
[...] es klappt perfekt.

Vielen lieben Dank!
Ich habe noch nicht ganz nachvollzogen, was genau in den
geänderten Zeilen steckt, aber so stimmt's auf jeden Fall.

Merci, beste Grüße

skarts

kuntabunta
02-05-2011, 10:32
Hallo liebe mrunix-User,

ich habe ähnliches Problem und konnte mit Hilfe von locksteps' Anleitung schon erreichen, dass bei "incollection" statt.

Hrsg. von

der

Hrsg.

im Anschluss an den Herausgebernamen erfolgt.

Die Eliminierung des Kommas und die Klammern um den Herausgeber funktionieren jedoch seltsamer Weise nicht nach der Anleitung von lockstep.

Kann mir jemand helfen? Hier das "Minimalbeispiel":

[CODE]

\RequirePackage{filecontents}
\begin{filecontents*}{LitMin.bib}

@article{Persson.2002,
author = {Persson, Per and Andersson, Jessica and Gorton, Lo and Larsson, Simona and Nilvebrant, Nils-Olof and J{\"o}nsson, Leif J.},
year = {2002},
title = {Effect of Different Forms of Alkali Treatment on Specific Fermentation Inhibitors and on the Fermentability of Lignocellulose Hydrolysates for Production of Fuel Ethanol},
pages = {5318--5325},
volume = {50},
number = {19},
issn = {0021-8561},
journal = {Journal of Agricultural and Food Chemistry}
}

@incollection{Alriksson.2005,
author = {Alriksson, Bj{\"o}rn and Horvath, Ilona S{\'a}rv{\'a}ri and Sj{\"o}de, Anders and Nilvebrant, Nils-Olof and J{\"o}nsson, Leif J.},
title = {Ammonium Hydroxide Detoxification of Spruce Acid Hydrolysates},
pages = {911--922},
publisher = {Humana Press},
isbn = {978-1-58829-697-9},
editor = {Davison, Brian H. and Evans, Barbara R. and Finkelstein, Mark and McMillan, James D.},
booktitle = {Twenty-Sixth Symposium on Biotechnology for Fuels and Chemicals},
year = {2005},
address = {Totowa, NJ}

@book{McMillan.2006,
year = {2006},
title = {ABAB Symposium},
address = {Totowa, NJ},
publisher = {Humana Press},
isbn = {978-1-58829-866-9},
editor = {McMillan, James D. and Adney, William S. and Mielenz, Jonathan R. and Klasson, K. Thomas}
}

\end{filecontents*}

\documentclass[a4paper,oneside,11pt]{scrreprt}

\usepackage[style=numeric,sorting=none,maxbibnames=3,language= german,maxnames=3]{biblatex}
\bibliography{LitMin}

\renewcommand{\labelnamepunct}{\addcolon\space}

\DeclareNameAlias{default}{last-first}
\renewcommand*{\mkbibnamelast}[1]{\MakeUppercase{#1}}

\DeclareBibliographyDriver{incollection}{%
\usebibmacro{bibindex}%
\usebibmacro{begentry}%
\usebibmacro{author/translator+others}%
\setunit{\labelnamepunct}\newblock
\usebibmacro{title}%
\newunit
\printlist{language}%
\newunit\newblock
\usebibmacro{byauthor}%
\newunit\newblock
\usebibmacro{in:}%
\begingroup% NEU
\renewbibmacro*{date+extrayear}{}% NEU
\usebibmacro{editor+others}% NEU
\newunit\newblock% NEU
\endgroup% NEU
\usebibmacro{maintitle+booktitle}%
\newunit\newblock
% \usebibmacro{byeditor+others}%
% \newunit\newblock
\printfield{edition}%
\newunit
\iffieldundef{maintitle}
{\printfield{volume}%
\printfield{part}}
{}%
\newunit
\printfield{volumes}%
\newunit\newblock
\usebibmacro{series+number}%
\newunit\newblock
\printfield{note}%
\newunit\newblock
\usebibmacro{publisher+location+date}%
\newunit\newblock
\usebibmacro{chapter+pages}%
\newunit\newblock
\iftoggle{bbx:isbn}
{\printfield{isbn}}
{}%
\newunit\newblock
\usebibmacro{doi+eprint+url}%
\newunit\newblock
\usebibmacro{addendum+pubstate}%
\newunit\newblock
\usebibmacro{pageref}%
\usebibmacro{finentry}}

\DeclareFieldFormat*{title}{\mkbibemph{#1}}

\DeclareFieldFormat{title}{#1\isdot}

\DeclareFieldFormat*{number}{Nr.~#1}

\renewbibmacro*{volume+number+eid}{%
\printfield{volume}%
\setunit*{\addspace}
\usebibmacro{issue+date}
\setunit*{\addcomma\space}%
\printfield{number}%
\setunit{\addcomma\space}%
\printfield{eid}}

\renewbibmacro*{journal+issuetitle}{%
\usebibmacro{journal}%
\setunit*{\addspace}%
\iffieldundef{series}
{}
{\newunit
\printfield{series}%
\setunit{\addspace}}%
\usebibmacro{volume+number+eid}%
% \setunit{\addspace}%
% \usebibmacro{issue+date}%
\setunit{\addcolon\space}%
\usebibmacro{issue}%
\newunit}

\usepackage{hyperref}

\begin{document}

Man zitiert hier\cite{Persson.2002} und dort \cite{Alriksson.2005} und da sowieso\cite{McMillan.2006}.

\printbibliography

\end{document}

[\CODE]

Ist schon etwas lang - tut mir leid!

Viele Grüße und vielen Dank für Hilfe jeglicher Art,

Kuntabunta

kuntabunta
02-05-2011, 10:38
Hier in schön!


Hallo liebe mrunix-User,

ich habe ähnliches Problem und konnte mit Hilfe von locksteps' Anleitung schon erreichen, dass bei "incollection" statt.

Hrsg. von

der

Hrsg.

im Anschluss an den Herausgebernamen erfolgt.

Die Eliminierung des Kommas und die Klammern um den Herausgeber funktionieren jedoch seltsamer Weise nicht nach der Anleitung von lockstep.

Kann mir jemand helfen? Hier das "Minimalbeispiel":




\RequirePackage{filecontents}
\begin{filecontents*}{LitMin.bib}

@article{Persson.2002,
author = {Persson, Per and Andersson, Jessica and Gorton, Lo and Larsson, Simona and Nilvebrant, Nils-Olof and J{\"o}nsson, Leif J.},
year = {2002},
title = {Effect of Different Forms of Alkali Treatment on Specific Fermentation Inhibitors and on the Fermentability of Lignocellulose Hydrolysates for Production of Fuel Ethanol},
pages = {5318--5325},
volume = {50},
number = {19},
issn = {0021-8561},
journal = {Journal of Agricultural and Food Chemistry}
}

@incollection{Alriksson.2005,
author = {Alriksson, Bj{\"o}rn and Horvath, Ilona S{\'a}rv{\'a}ri and Sj{\"o}de, Anders and Nilvebrant, Nils-Olof and J{\"o}nsson, Leif J.},
title = {Ammonium Hydroxide Detoxification of Spruce Acid Hydrolysates},
pages = {911--922},
publisher = {Humana Press},
isbn = {978-1-58829-697-9},
editor = {Davison, Brian H. and Evans, Barbara R. and Finkelstein, Mark and McMillan, James D.},
booktitle = {Twenty-Sixth Symposium on Biotechnology for Fuels and Chemicals},
year = {2005},
address = {Totowa, NJ}

@book{McMillan.2006,
year = {2006},
title = {ABAB Symposium},
address = {Totowa, NJ},
publisher = {Humana Press},
isbn = {978-1-58829-866-9},
editor = {McMillan, James D. and Adney, William S. and Mielenz, Jonathan R. and Klasson, K. Thomas}
}

\end{filecontents*}

\documentclass[a4paper,oneside,11pt]{scrreprt}

\usepackage[style=numeric,sorting=none,maxbibnames=3,language= german,maxnames=3]{biblatex}
\bibliography{LitMin}

\renewcommand{\labelnamepunct}{\addcolon\space}

\DeclareNameAlias{default}{last-first}
\renewcommand*{\mkbibnamelast}[1]{\MakeUppercase{#1}}

\DeclareBibliographyDriver{incollection}{%
\usebibmacro{bibindex}%
\usebibmacro{begentry}%
\usebibmacro{author/translator+others}%
\setunit{\labelnamepunct}\newblock
\usebibmacro{title}%
\newunit
\printlist{language}%
\newunit\newblock
\usebibmacro{byauthor}%
\newunit\newblock
\usebibmacro{in:}%
\begingroup% NEU
\renewbibmacro*{date+extrayear}{}% NEU
\usebibmacro{editor+others}% NEU
\newunit\newblock% NEU
\endgroup% NEU
\usebibmacro{maintitle+booktitle}%
\newunit\newblock
% \usebibmacro{byeditor+others}%
% \newunit\newblock
\printfield{edition}%
\newunit
\iffieldundef{maintitle}
{\printfield{volume}%
\printfield{part}}
{}%
\newunit
\printfield{volumes}%
\newunit\newblock
\usebibmacro{series+number}%
\newunit\newblock
\printfield{note}%
\newunit\newblock
\usebibmacro{publisher+location+date}%
\newunit\newblock
\usebibmacro{chapter+pages}%
\newunit\newblock
\iftoggle{bbx:isbn}
{\printfield{isbn}}
{}%
\newunit\newblock
\usebibmacro{doi+eprint+url}%
\newunit\newblock
\usebibmacro{addendum+pubstate}%
\newunit\newblock
\usebibmacro{pageref}%
\usebibmacro{finentry}}

\DeclareFieldFormat*{title}{\mkbibemph{#1}}

\DeclareFieldFormat{title}{#1\isdot}

\DeclareFieldFormat*{number}{Nr.~#1}

\renewbibmacro*{volume+number+eid}{%
\printfield{volume}%
\setunit*{\addspace}
\usebibmacro{issue+date}
\setunit*{\addcomma\space}%
\printfield{number}%
\setunit{\addcomma\space}%
\printfield{eid}}

\renewbibmacro*{journal+issuetitle}{%
\usebibmacro{journal}%
\setunit*{\addspace}%
\iffieldundef{series}
{}
{\newunit
\printfield{series}%
\setunit{\addspace}}%
\usebibmacro{volume+number+eid}%
% \setunit{\addspace}%
% \usebibmacro{issue+date}%
\setunit{\addcolon\space}%
\usebibmacro{issue}%
\newunit}

\usepackage{hyperref}

\begin{document}

Man zitiert hier\cite{Persson.2002} und dort \cite{Alriksson.2005} und da sowieso\cite{McMillan.2006}.

\printbibliography

\end{document}



Ist schon etwas lang - tut mir leid!

Viele Grüße und vielen Dank für Hilfe jeglicher Art,

Kuntabunta

kuntabunta
02-05-2011, 12:09
Mit




\DefineBibliographyStrings{ngerman}{andothers={et \addabbrvspace al\adddot},editor = {(Hrsg.)},editors = {(Hrsg.)}}



konnte ich fast alles beheben. Hrsg. erscheint in Klammern.

Das Problem mit dem Komma konnte ich aber weiterhin nicht lösen.

Dabei ist mir ein weiteres Problem aufgefallen. Bei normalen wisschenschaftlichen Artikeln konnte ich durch




\renewcommand{\labelnamepunct}{\addcolon\space}



einen Doppelpunkt vor dem Titel von normalen "articles" erzeugen. Bei "incollection" sowie "book" klappt das jedoch nicht, da hier kein "author" sondern ein "editor" vorgegeben wird.

Jemand eine Idee?

Besten Gruß und vielen Dank,

Gunnar

Folke Tolk
13-06-2012, 16:35
Die Lösung von lockstep funktioniert soweit gut. Aber welcher Befehl beeinflusst die Zeichensetzung nach (Hrsg.)? Da kommt bei mir immer ein . Gewünscht wäre aber ein :
Diese Lösung hilft leider NICHT http://www.mrunix.de/forums/showthread.php?t=72922
Ich poste erstmal kein Minimalbeispiel, vielleicht ist es ja nur eine einfache, kleine Sache, die mein ungeübtes Auge einfach nicht sieht...
EDIT:
Hat sich erledigt. Der Doppelpunkt erscheint an der gewünschten Stelle, wenn man hier:

\usebibmacro{in:}%
\renewbibmacro*{date+extrayear}{}%
\usebibmacro{editor+others}%
\setunit{\labelnamepunct}\newblock% Dieser Befehl ist es!

entsprechend ändert. Setzt natürlich voraus, dass \labelnamepunct entsprechend definiert ist!