Anzeige:
Ergebnis 1 bis 2 von 2

Thema: Nur im Zitierstil cite den Autor kursiv

  1. #1
    Registrierter Benutzer
    Registriert seit
    20.10.2014
    Beiträge
    1

    Nur im Zitierstil cite den Autor kursiv

    Hallo Latex-Freunde,

    ich hänge bei folgender Latex-Zitierproblem. Nur wenn mit parencite zitiert wird, sollte der Autor kursiv erscheinen:
    Code:
    \parencite{chicago-82}
    . In allen anderen Zitierstilen, wie z.B. textcite soll der Autor nicht kursiv sein.
    Code:
    \textcite{chicago-82}
    Ich hab's bisher leider nur hingebracht, dass ich der Autor immer kursiv erscheint. Hat jemand eine Idee ?
    Vielen Dank und schöne Grüße.

    Anbei der Komplette Demo-Code:

    Code:
    \documentclass{article}
    \usepackage[a4paper, left=4cm, right=2.5cm, top=2cm, bottom=2 cm]{geometry}
    % Neue Deutsche Rechtschreibung
    \usepackage[ngerman]{babel}
    % UTF-8 zur Darstellung von Umlauten
    \usepackage[utf8]{inputenc}
    % Deutsch Schritfarten
    \usepackage[T1]{fontenc}
    % Deutsche Zitierweise
    % ----
    \usepackage[babel,german=quotes]{csquotes}
    
    \usepackage[
    style=authoryear,
    backend=bibtex
    ]{biblatex}
    
    \usepackage{filecontents}
    \begin{filecontents}{testt.bib}
    @Book{chicago-82,
      Title                    = {The {C}hicago Manual of Style},
      Author                   = {`Chicago'},
      Publisher                = {University of Chicago Press},
      Year                     = {1982},
      Edition                  = {13th}
    }
    \end{filecontents}
    
    \addbibresource{testt.bib}
    
    \renewcommand{\mkbibnamelast}[1]{\mkbibemph{#1}}
    % Revert formatting of the last name for bibliography
    \AtBeginBibliography{\renewcommand{\mkbibnamelast}[1]{#1}}
    
    %\bibliography{zitiere}
    
    \begin{document}
    parencite Autor soll nicht kursiv sein: \parencite{chicago-82} 
    
    textcite: Autor soll kursiv sein\textcite{chicago-82}
    
    \end{document}

  2. #2
    Registrierter Benutzer
    Registriert seit
    28.05.2009
    Beiträge
    407
    Schnellschuss ins Blaue: textcite umdefinieren. Ist zwar mehr Code als Deine drei Zeilen, sollte aber funktionieren. Da Du Dir selbst widersprichst habe ich mich an den Text im Dokument gehalten.
    Code:
    \renewbibmacro*{textcite}{%
      \ifnameundef{labelname}
        {\iffieldundef{shorthand}
           {\usebibmacro{cite:label}%
            \setunit{%
              \global\booltrue{cbx:parens}%
              \addspace\bibopenparen}%
            \ifnumequal{\value{citecount}}{1}
              {\usebibmacro{prenote}}
              {}%
            \usebibmacro{cite:labelyear+extrayear}}
           {\usebibmacro{cite:shorthand}}}
        {\mkbibemph{\printnames{labelname}}% hier kursiv
         \setunit{%
           \global\booltrue{cbx:parens}%
           \addspace\bibopenparen}%
         \ifnumequal{\value{citecount}}{1}
           {\usebibmacro{prenote}}
           {}%
         \usebibmacro{citeyear}}}
    Gruß

    \edit:
    Wenn parencite kursiv sein soll, dann könntest Du cite an sich umdefinieren, da textcite dieses bibmakro nicht aufruft.
    Code:
    \renewbibmacro*{cite}{%
      \iffieldundef{shorthand}
        {\ifthenelse{\ifnameundef{labelname}\OR\iffieldundef{labelyear}}
           {\usebibmacro{cite:label}%
            \setunit{\addspace}}
           {\mkbibemph{\printnames{labelname}}%
            \setunit{\nameyeardelim}}%
         \usebibmacro{cite:labelyear+extrayear}}
        {\usebibmacro{cite:shorthand}}}
    Das Ding ist, dass footcite auch auf cite zurückgreift. Wenn Du damit leben kannst, dann sollte es so gehen. Wenn nicht, dann würde ich ein zweites cite-bibmakro definieren und dann parencite anweisen, dieses statt des normalen cite zu verwenden. So etwa:

    Code:
    \newbibmacro*{citek}{%
      \iffieldundef{shorthand}
        {\ifthenelse{\ifnameundef{labelname}\OR\iffieldundef{labelyear}}
           {\usebibmacro{cite:label}%
            \setunit{\addspace}}
           {\mkbibemph{\printnames{labelname}}%
            \setunit{\nameyeardelim}}%
         \usebibmacro{cite:labelyear+extrayear}}
        {\usebibmacro{cite:shorthand}}}
    
    \DeclareCiteCommand{\parencite}[\mkbibparens]
      {\usebibmacro{prenote}}
      {\usebibmacro{citeindex}%
       \usebibmacro{citek}}
      {\multicitedelim}
      {\usebibmacro{postnote}}
    Gibt sicher elegantere Lösungen, aber ich werde selber erst warm mit Biblatex
    Geändert von Legion (27-10-2014 um 21:39 Uhr)
    MiKTex 2.9 | TeXstudio 2.8.2 | TeXworks 0.4.5

Stichworte

Lesezeichen

Berechtigungen

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