Seite 1 von 1

Ebd bzw Ibid

Verfasst: Mi 13. Sep 2017, 18:29
von Biber
Ich habe einen Biblatex Stil, der ziemlich genau so aussieht wie ich es mir vorstelle. Nur funktioniert durch die Anpassungen Ebd. bzw Ibid nicht mehr.
\begin{filecontents}{\jobname.bib}
 
@Book{xxx,
 shorttitle = {Kurztitel},
 author = {Name, Vorname},
 year = {1994},
 title = {Langtitel},
 publisher = {Verlag},
 location = {Verlagsort},
 }
 \end{filecontents}

\documentclass{scrreprt}
\usepackage[german =swiss]{csquotes}
\usepackage{xpatch}
\usepackage[backend=biber, style=authoryear-ibid, sorting=anyt]{biblatex}
\addbibresource{\jobname.bib}
\renewcommand{\mkbibnamefamily}[1]{\textsc{#1}}
\renewcommand{\mkbibnamegiven}[1]{\textsc{#1}}
\xpatchbibmacro{date+extrayear}{%
\printtext[parens]}{%
\printtext[brackets]}{}{}
\setlength{\bibitemsep}{0.5em}     
\renewbibmacro*{cite}{%
\printtext{}
 \iffieldundef{shorthand}
 {\ifthenelse{\ifnameundef{labelname}\OR\iffieldundef{labelyear}}
 {\usebibmacro{cite:label}%
 \setunit{\printdelim{nonameyeardelim}}}
 {\printnames{labelname}%
 \setunit{\addcolon\addspace}
\iffieldundef{shorttitle}{\printfield[title:hook]{title}}{\printfield[title:hook]{shorttitle}}
\setunit{\printdelim{nameyeardelim}}}
\printfield[parens]{labelyear}}
{\usebibmacro{cite:shorthand}}}

\DeclareFieldFormat{pages}{#1}
\DeclareFieldFormat{postnote}{#1.} 

\renewcommand*{\newunitpunct}{\addsemicolon\space}  
\renewcommand{\labelnamepunct}{\space} 



\begin{document}

abc\footnote{Vgl. \cite[123]{xxx}} und 123\footnote{Vgl. \cite[123]{xxx}} und 

\printbibliography
\end{document}
Was übersehe ich?

Verfasst: Mi 13. Sep 2017, 18:55
von Gast
Vor nicht allzu langer Zeit hatten wir http://golatex.de/stil-des-kurzbelegs-a ... 19715.html

Von dort würde ich
\documentclass{scrreprt}
\usepackage[ngerman]{babel}
\usepackage[german=swiss]{csquotes}
\usepackage{xpatch}
\usepackage[backend=biber, style=authoryear-ibid, autocite=footnote]{biblatex}
\begin{filecontents}{\jobname.bib}
@book{xxx,
 shorttitle = {Kurztitel},
 author = {Name, Vorname},
 year = {1994},
 title = {Langtitel},
 publisher = {Verlag},
 location = {Verlagsort},
 }
 \end{filecontents}
\addbibresource{\jobname.bib}

\setlength{\bibitemsep}{0.5em}    

\renewcommand{\mkbibnamefamily}[1]{\textsc{#1}}
\renewcommand{\mkbibnamegiven}[1]{\textsc{#1}}

\xpatchbibmacro{date+extrayear}{%
  \printtext[parens]}{%
  \printtext[brackets]}
  {}{}

\renewcommand*{\newunitpunct}{\addsemicolon\space}
\DeclareDelimFormat{nametitledelim}{\addcolon\space}
\renewcommand{\labelnamepunct}{\addspace}
\DeclareDelimFormat{titleyeardelim}{\addspace}

\newbibmacro*{cite:title}{%
  \printtext[bibhyperref]{%
    \printfield[citetitle]{labeltitle}}}

\renewbibmacro*{cite}{%
  \global\boolfalse{cbx:loccit}%
  \iffieldundef{shorthand}
    {\ifthenelse{\ifciteibid\AND\NOT\iffirstonpage}
       {\usebibmacro{cite:ibid}}
       {\ifthenelse{\ifnameundef{labelname}\OR\iffieldundef{labelyear}}
          {\usebibmacro{cite:label}}
          {\printnames{labelname}}%
        \setunit{\printdelim{nametitledelim}}%
        \usebibmacro{cite:title}%
        \setunit{\printdelim{titleyeardelim}}%
        \printtext[parens]{\usebibmacro{cite:labelyear+extrayear}}}}
    {\usebibmacro{cite:shorthand}}}

\DeclareFieldFormat{pages}{#1}
\DeclareFieldFormat{postnote}{#1}

\begin{document}

abc\footnote{Vgl.\ \cite[123]{xxx}} und 123\footnote{Vgl. \cite[123]{xxx}} und

abc\autocite[Vgl.][123]{xxx} und 123\autocite[Vgl.][123]{xxx}

\printbibliography
\end{document}
vorschlagen. Meine Kommentare dort gelten natürlich auch hier.

Dein Code hatte einfach keinen Code für den Ibid-Fall.

Man beachte, dass es einfacher ist \autocite (oder \footcite]) zu nutzen als \footnote{\cite}. Außerdem schien mir sorting=anyt hier nicht sinnvoll, da Du kein labelalpha hast.

Verfasst: Mi 13. Sep 2017, 19:16
von Gast
Nur für die Verlinkung: https://tex.stackexchange.com/q/385518/ scheint wohl die Quelle des Codes zu sein.

Tausend Dank

Verfasst: Mi 13. Sep 2017, 19:52
von Biber
Wow. Danke. Das passt perfekt, dass werde ich jetzt versuchen zu verstehen. Ganz vielen Dank, das hilft mir gerade immens.

Es passt noch nicht...

Verfasst: Fr 1. Dez 2017, 11:07
von Biber
Eine Rückfrage, weil es mir erst jetzt aufgefallen ist:
In meinem Beispiel sind in der Fußnote die Titel immer kursiv (Im Literaturverzeichnis sind Aufsatztitel in Anführungszeichen; Buchtitel kursiv).

Mit dem geänderten Code funktioniert das ebd. hervorragend, dafür sind nun die Kurztitel von Inbook, Electronik und Artikeln in der Fußnote mit Anführungszeichen und nicht mehr kursiv.

MWE:
\documentclass{scrreprt} 
\usepackage[ngerman]{babel} 
\usepackage[german=swiss]{csquotes} 
\usepackage{xpatch} 
\usepackage[backend=biber, style=authoryear-ibid, autocite=footnote]{biblatex} 
\begin{filecontents}{\jobname.bib} 
@book{xxx, 
 shorttitle = {Kurztitel}, 
 author = {Name, Vorname}, 
 year = {1994}, 
 title = {Langtitel}, 
 publisher = {Verlag}, 
 location = {Verlagsort}, 
 } 
 
 @InBook{yyy,
 shorttitle = {Artikel},
 author = {Mueller, Hans},
 year = {2001},
 title = {In Book Aufsatz},
 pages = {166-190},
 booktitle = {Buchtitel},
 editor	= {Rausgeber, Herr},
 publisher = {Verlag},
 location = {Ort},
 }
 \end{filecontents} 
\addbibresource{\jobname.bib} 

\setlength{\bibitemsep}{0.5em}     

\renewcommand{\mkbibnamefamily}[1]{\textsc{#1}} 
\renewcommand{\mkbibnamegiven}[1]{\textsc{#1}} 

\xpatchbibmacro{date+extrayear}{% 
  \printtext[parens]}{% 
  \printtext[brackets]} 
  {}{} 

\renewcommand*{\newunitpunct}{\addsemicolon\space} 
\DeclareDelimFormat{nametitledelim}{\addcolon\space} 
\renewcommand{\labelnamepunct}{\addspace} 
\DeclareDelimFormat{titleyeardelim}{\addspace} 

\newbibmacro*{cite:title}{% 
  \printtext[bibhyperref]{% 
    \printfield[citetitle]{labeltitle}}} 

\renewbibmacro*{cite}{% 
  \global\boolfalse{cbx:loccit}% 
  \iffieldundef{shorthand} 
    {\ifthenelse{\ifciteibid\AND\NOT\iffirstonpage} 
       {\usebibmacro{cite:ibid}} 
       {\ifthenelse{\ifnameundef{labelname}\OR\iffieldundef{labelyear}} 
          {\usebibmacro{cite:label}} 
          {\printnames{labelname}}% 
        \setunit{\printdelim{nametitledelim}}% 
        \usebibmacro{cite:title}% 
        \setunit{\printdelim{titleyeardelim}}% 
        \printtext[parens]{\usebibmacro{cite:labelyear+extrayear}}}} 
    {\usebibmacro{cite:shorthand}}} 

\DeclareFieldFormat{pages}{#1} 
\DeclareFieldFormat{postnote}{#1} 

\begin{document} 

abc\footnote{Vgl.\ \cite[123]{xxx}} und 123\footnote{Vgl. \cite[123]{xxx}} und 

abc\footnote{Vgl.\ \cite[123]{yyy}} und 123\footnote{Vgl. \cite[123]{yyy}} und 



\printbibliography 
\end{document}
Das Literaturverzeichnis stimmt. Nur der Titel in der Fußnote solle durchgängig kursiv sein. Ich habe ohne Erfolg bereits versucht den Code zu verändern und komme einfach nicht weiter.
Ich bin für jede Hilfe Dankbar.

Verfasst: Fr 1. Dez 2017, 14:41
von Gast
Das ist zwar inkonsistent, geht aber alles
\DeclareFieldFormat*{citetitle}{\mkbibemph{#1}}
sollte genug sein.

Dank!

Verfasst: Sa 2. Dez 2017, 20:22
von Biber
Danke, genau das war gesucht.

Perfekt! Einfach vielen Dank.