Anzeige:
Ergebnis 1 bis 7 von 7

Thema: Fussnoten in biblatex anpassen

Hybrid-Darstellung

Vorheriger Beitrag Vorheriger Beitrag   Nächster Beitrag Nächster Beitrag
  1. #1
    Registrierter Benutzer
    Registriert seit
    02.06.2009
    Beiträge
    49
    Vielen Dank für deine Antwort!

    Es hat wunderbar geklappt.

  2. #2
    Registrierter Benutzer
    Registriert seit
    02.06.2009
    Beiträge
    49
    Zitat Zitat von shortener Beitrag anzeigen
    Vielen Dank für deine Antwort!

    Es hat wunderbar geklappt.
    Es gibt nun doch noch ein Problem, dass ich vorher noch nicht entdeckt hatte und zwar folgendes:

    Ich hab folgende Anpassungen vorgenommen
    Code:
    \DeclareCiteCommand{\cite}
        {\usebibmacro{prenote}}
        {\usebibmacro{citeindex}
        \iffieldequalstr{entrytype}{online}
            {\usebibmacro{meincite-online}}
            {\usebibmacro{cite}}
      {\multicitedelim}
      {\usebibmacro{cite:postnote}}
    und für footnote
    Code:
    \DeclareCiteCommand{\footcite}[\mkbibfootnote]
      {\bibsentence
       \usebibmacro{prenote}}
      {\usebibmacro{citeindex}%
        \iffieldequalstr{entrytype}{online}
            {\usebibmacro{meincite-online}}
            {\usebibmacro{cite}}
      {\multicitedelim}
      {\usebibmacro{cite:postnote}}
    und

    Code:
    \newbibmacro*{urldate}{
      \iffieldundef{urlyear}
        {}
        {\setunit{\addspace}
         \printtext[urldate]{\biburldate}}}
    
    \newbibmacro{meincite-online}{
        \printnames{author}
        \iffieldundef{shorttitle}
            {\printfield{title}}
            {\printfield{shorttitle}}
        \addspace
        \iffieldundef{date}
            {\usebibmacro{urldate}}
            {\usebibmacro{date}}
    }
    Das funktioniert soweit ganz gut. Wenn man aber genau hinschaut erkennt man ein Problem:



    Es entsteht ein Leerraum zwischen der Zahl und dem ersten Buchstaben.

    Ich hoffe, dass du mir helfen kannst.
    Geändert von shortener (02-08-2009 um 09:38 Uhr) Grund: footnote vergessen

  3. #3
    Registrierter Benutzer
    Registriert seit
    02.06.2009
    Beiträge
    49
    So, ich habe jetzt eine Lösung gefunden. Ich weiss nicht, ob sie perfekt ist, aber auf den ersten Blick scheint sie zu funktionieren.

    Ich spreche jetzt nur für footcite. Der Rest funktioniert ja analog.

    Code:
    \DeclareCiteCommand{\footcite}[\mkbibfootnote]
        {%\bibsentence
        \usebibmacro{prenote}}
        {\usebibmacro{citeindex}%
        \iffieldequalstr{entrytype}{online} %if entrytype = @online
            {{\usedriver{\DeclareNameAlias{sortname}{default}}{footcite:\thefield{entrytype}}}} %true
             {\usebibmacro{cite}} %false
      {\multicitedelim}
      {\usebibmacro{cite:postnote}}
    darunter definiere ich Folgendes:

    Code:
    \newbibmacro*{urldate}{
        \iffieldundef{urlyear}
            {}
            {\setunit{\addspace}\printtext[urldate]{\biburldate}}
    }
    
    \DeclareBibliographyDriver{footcite:online}{
        \usebibmacro{author}
        \newunit
        \printfield{labeltitle}
        \newunit
        \usebibmacro{urldate}
    }
    Mit diesen Anpassungen funktioniert es ganz gut. Den input für diese Idee habe ich im biblatex manual ab S. 153 (4.10.1 Mixing programming interfaces) gefunden.

    (keine Gewähr, dass alle Klammern richtig geschlossen sind. Hab das nur schnell mal zusammenkopiert)

    edit: Bis anhin hat es funktioniert. Jetzt tut es wieder nicht. Manchmal sind in der PDF-Ausgabe auch die anderen Fussnoten verschoben...
    Ich habe keine Ahnung was da los ist.
    Geändert von shortener (02-08-2009 um 13:28 Uhr)

  4. #4
    Registrierter Benutzer
    Registriert seit
    19.03.2009
    Beiträge
    180
    Danke für den Hinweis mit den Lücken, die hatte ich auch, ohne sie zu bemerken...

    Habe das Problem bei mir gelöst, indem ich jedes Makro mit Stern definiert und an die Enden jeder Zeile ein % gesetzt habe. Versuchs doch mal so:
    Code:
    \newbibmacro*{urldate}{%
      \iffieldundef{urlyear}%
        {}%
        {\setunit{\addspace}%
         \printtext[urldate]{\biburldate}}}
    
    \newbibmacro*{meincite-online}{%
        \printnames{author}%
        \iffieldundef{shorttitle}%
            {\printfield{title}}%
            {\printfield{shorttitle}}%
        \addspace%
        \iffieldundef{date}%
            {\usebibmacro{urldate}}%
            {\usebibmacro{date}}%
    }

  5. #5
    Registrierter Benutzer
    Registriert seit
    02.06.2009
    Beiträge
    49
    Super, danke dir! Es funktioniert einwandfrei. Hoffentlich bleibt das so

Stichworte

Lesezeichen

Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • Anhänge hochladen: Nein
  • Beiträge bearbeiten: Nein
  •