goLaTeX - Mein LaTeX-Forum

Mein LaTeX-Forum


Login  | Registrieren
Direktlinks:
Zuletzt aktive Beiträge
Unbeantwortete Beiträge
[Erweitert]

Forenstatistik:
Beiträge: 99651
Top-Poster: Johannes_B (5057)

Wir begrüßen unseren neuesten Benutzer derFragensteller.

Links:


Mit Unterstützung von DANTE e.V.: Deutschsprachige Anwendervereinigung TeX. Danke den Mitgliedern!





Forum
      Option
[Erweitert]
  • Diese Seite weiterempfehlen
     


Gehe zu:  
Neues Thema eröffnen Neue Antwort erstellen

Leerzeichenproblem aus einer Vorlage

 

Gast


Beiträge: ---
Anmeldedatum: ---
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 20.09.2019, 20:57     Titel: Leerzeichenproblem aus einer Vorlage
  Antworten mit Zitat      
Ich habe von einem netten Community-Member einen Code erstellt bekommen, mit dem ebd., a.a.O. sowie ders. beim zitieren. Der Code in einem Minimalbeispiel sieht wie folgt aus:

Code

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

   \usepackage[
style=ext-authortitle-ibid,
backend=biber,
ibidtracker=constrict,
idemtracker=constrict,  
loccittracker=constrict,
]{biblatex}

\usepackage{filecontents}
\begin{filecontents*}{\jobname.bib}
@book{test2019,
Author    = {Max Mustermann and Maria Musterfrau and Peter Pan
},
title = {Test},
pages ={123-234},
series = {Eine Reihe von Buechern}
}
@book{test2018,
title = {Test
},
pages ={123-234},
series = {Eine Reihe von Buechern}
}

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

   \makeatletter
\def\blx@loccit@stricttracker#1{%
   \global\csundef{blx@lastnote@#1@\abx@field@entrykey}%
   \blx@ifcitesingle
   {\blx@imc@iffieldundef{postnote}
      {\@firstoftwo}
      {\expandafter\blx@imc@ifpages
         \expandafter{\abx@field@postnote
}}
      {\global\cslet{blx@lastnote@#1@\abx@field@entrykey}\abx@field@postnote
         \xifinlistcs\abx@field@entrykey{blx@trackkeys@#1}
         {}
         {\listcsxadd{blx@trackkeys@#1
}\abx@field@entrykey}}
      {}}
   {}}

\def\blx@loccit@numcheck#1{%
   \blx@imc@iffieldundef{postnote}
   {\ifcsundef{blx@lastnote@#1@\abx@field@entrykey}}
   {\expandafter\blx@imc@ifpages
      \expandafter{\abx@field@postnote
}
      {\blx@imc@iffieldequalcs{postnote}{blx@lastnote@#1@\abx@field@entrykey}}
      {\@secondoftwo}}}
\makeatother

\newtoggle{cbx:droppageprefix}

\renewbibmacro*{cite:ibid}{%
   \ifloccit
   {\printtext[bibhyperref]{\bibstring[\mkibid]{ibidem}}%
      \global\booltrue{cbx:loccit}}
   {\printtext[bibhyperref]{\bibstring[\mkibid]{loccit}}%
      \global\toggletrue{cbx:droppageprefix}}}

\renewbibmacro*{cite}{%
   \global\boolfalse{cbx:loccit}%
   \global\togglefalse{cbx:droppageprefix}%
   \iffieldundef{shorthand}   {\ifthenelse{
         \ifciteibid\AND\NOT\iffirstonpage
}
      {\usebibmacro{cite:ibid}}
      {\ifthenelse{\ifciteidem\AND\NOT\iffirstonpage}
         {\bibstring[\mkibid]{idem\thefield{gender}}}
         {\printnames{labelname}}
         \setunit*{\printdelim{nametitledelim}}%
         \usebibmacro{cite:title}}}%    
   {\ifthenelse{
         \ifciteibid\AND\NOT\iffirstonpage
}
      {\usebibmacro{cite:ibid}}
      {\ifthenelse{\ifciteidem\AND\NOT\iffirstonpage}
         {\bibstring[\mkibid]{idem\thefield{gender}}}
         {\printnames{labelname}}
         \setunit*{\printdelim{nametitledelim}}%
         \usebibmacro{cite:shorthand}}}
}%

\begin{document}
Test.\footcite[123]{test2019}

Test.\footcite[123]{test2019}\footcite[125]{test2019}\footcite[123]{test2018}

Test.\footcite[123]{test2018}
\printbibliography
\end{document}
 


Nun ist das Problem, was dabei aufgetaucht ist, dass im Falle von keinem Autor ein Leerzeichen vor dem Titel steht in der Fußnote. Da ich leider nicht so bewandert bin, versteh ich den erstellten Code nicht und kann daher auch nicht nachvollziehen, woher dieses Leerzeichen kommt. Wenn ich den Code lösche, gibt es kein Problem mit dem Leerzeichen, also muss es an irgendeiner Stelle im Code liegen.

Danke schon mal im Voraus.

MoeWe
Forum-Anfänger
Forum-Anfänger

Beiträge: 48
Anmeldedatum: 30.08.19
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 20.09.2019, 23:25     Titel:
  Antworten mit Zitat      
In der Definition von cite fehlten zwei %s, jeweils nach den Klammern mit dem \printnames{labelname}.

Ich würde übrigens dazu raten, die Einrückung vom Code zu übernehmen oder - wenn Dir die Einrückung nicht gefällt - sie sinnvoll umzuarbeiten. So war der Code extrem schwer zu lesen, da die Einrückung fast völlig gegen die Struktur ging.

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

\usepackage[
style=ext-authortitle-ibid,
backend=biber,
ibidtracker=constrict,
idemtracker=constrict,  
loccittracker=constrict,
]{biblatex}

\usepackage{filecontents}
\begin{filecontents*}{\jobname.bib}
@book{test2019,
Author    = {Max Mustermann and Maria Musterfrau and Peter Pan
},
title = {Test},
pages ={123-234},
series = {Eine Reihe von Buechern}
}
@book{test2018,
title = {Test
},
pages ={123-234},
series = {Eine Reihe von Buechern}
}

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

\makeatletter
\def\blx@loccit@stricttracker#1{%
  \global\csundef{blx@lastnote@#1@\abx@field@entrykey}%
  \blx@ifcitesingle
    {\blx@imc@iffieldundef{postnote}
       {\@firstoftwo}
       {\expandafter\blx@imc@ifpages
        \expandafter{\abx@field@postnote
}}
       {\global\cslet{blx@lastnote@#1@\abx@field@entrykey}\abx@field@postnote
        \xifinlistcs\abx@field@entrykey{blx@trackkeys@#1}
          {}
          {\listcsxadd{blx@trackkeys@#1
}\abx@field@entrykey}}
       {}}
    {}}

\def\blx@loccit@numcheck#1{%
  \blx@imc@iffieldundef{postnote}
    {\ifcsundef{blx@lastnote@#1@\abx@field@entrykey}}
    {\expandafter\blx@imc@ifpages
     \expandafter{\abx@field@postnote
}
       {\blx@imc@iffieldequalcs{postnote}{blx@lastnote@#1@\abx@field@entrykey}}
       {\@secondoftwo}}}
\makeatother

\newtoggle{cbx:droppageprefix}

\renewbibmacro*{cite:ibid}{%
  \ifloccit
    {\printtext[bibhyperref]{\bibstring[\mkibid]{ibidem}}%
     \global\booltrue{cbx:loccit}}
    {\printtext[bibhyperref]{\bibstring[\mkibid]{loccit}}%
     \global\toggletrue{cbx:droppageprefix}}}

\renewbibmacro*{cite}{%
  \global\boolfalse{cbx:loccit}%
  \global\togglefalse{cbx:droppageprefix}%
  \iffieldundef{shorthand}
    {\ifthenelse{\ifciteibid\AND\NOT\iffirstonpage}
       {\usebibmacro{cite:ibid}}
       {\ifthenelse{\ifciteidem\AND\NOT\iffirstonpage}
          {\bibstring[\mkibid]{idem\thefield{gender}}}
          {\printnames{labelname}}%
        \setunit*{\printdelim{nametitledelim}}%
        \usebibmacro{cite:title}}}%
    {\ifthenelse{\ifciteibid\AND\NOT\iffirstonpage}
       {\usebibmacro{cite:ibid}}
       {\ifthenelse{\ifciteidem\AND\NOT\iffirstonpage}
          {\bibstring[\mkibid]{idem\thefield{gender}}}
          {\printnames{labelname}}%
        \setunit*{\printdelim{nametitledelim}}%
        \usebibmacro{cite:shorthand}}}}

\begin{document}
Test.\footcite[123]{test2019}

Test.\footcite[123]{test2019}\footcite[125]{test2019}\footcite[123]{test2018}

Test.\footcite[123]{test2018}
\printbibliography
\end{document}
Private Nachricht senden Benutzer-Profile anzeigen

Neues Thema eröffnen Neue Antwort erstellen



Options and Permissions
Beiträge der letzten Zeit anzeigen:

Du kannst Beiträge in dieses Forum schreiben.
Du kannst auf Beiträge in diesem Forum antworten.
Du kannst deine Beiträge in diesem Forum nicht bearbeiten.
Du kannst deine Beiträge in diesem Forum nicht löschen.
Du kannst an Umfragen in diesem Forum nicht mitmachen.
Du kannst Dateien in diesem Forum nicht posten
Du kannst Dateien in diesem Forum herunterladen
.

goLaTeX ist Teil der goForen
goForen.de goMATLAB.de goLaTeX.de


  Datenschutzerklärung | Impressum | FAQ | goLaTeX RSS Button RSS-Feed

Copyright © 2008 - 2019 goLaTeX.de