Wie ändere ich die Farbe des Jahres in einem Zitat?

Wie ändere ich die Farbe des Jahres in einem Zitat?

Ich verwende einen bestimmten Bibliografiestil und kann ihn derzeit nicht meinen Wünschen entsprechend ändern ;)

Reproduktionsschritte:

  1. Herunterladenhttp://acl2016.org/files/acl2016.zip
  2. Extrahieren Sie acl2016.bib, acl2016.sty, undacl2016.bst
  3. Verwenden Sie dieses minimale Arbeitsbeispiel:

    \documentclass[10pt]{article}
    \usepackage{acl2016}
    \begin{document}
    \cite{Aho:72}
    \newcite{Aho:72}
    \bibliography{acl2016}
    \bibliographystyle{acl2016}
    \end{document}
    

Das führt zu

(Aho and Ullman, 1972) Aho and Ullman (1972)

Ich möchte für die Jahreszahl eine andere Schriftfarbe (z. B. blau) verwenden, aber nur für die Jahreszahl. Und die Farbe soll sich nur ändern, wenn ich zitiere \citeund \newcitenicht im Literaturverzeichnis. Wie kann ich das mit dem acl2016Style erreichen?

Antwort1

Wenn Sie diesen speziellen Stil verwenden, um Ihre Arbeit irgendwo einzureichen, sollten Sie ihn nicht ändern. Andernfalls ist das Ändern der .bst-Datei nicht trivial, daher schlage ich vor, biblatexund zu verwenden hyperref.

Auf diese Weise hat das Jahr nicht nur eine andere Farbe, sondern stellt auch einen Link zur Referenz dar. Wahrscheinlich ist der Standardreferenzstil nicht das, was Sie erwartet/benötigen/gewünscht haben, sondern es biblatexhandelt sich um ein sehr konfigurierbares Paket.

mwe

\documentclass{article}
\usepackage[colorlinks,citecolor=blue]{hyperref}
\usepackage[style=authoryear,natbib=true]{biblatex}
\addbibresource{IEEEexample.bib}
\begin{document}
Bla bla bla \citep{IEEEexample:articleetal} bla bla.
\printbibliography
\end{document}

Soweit ich sehe, gibt beispielsweise der folgende Code Ihr MWE exakt wieder:

mwe

\documentclass[10pt]{article}
\usepackage{acl2016}
\usepackage[colorlinks,citecolor=blue]{hyperref}
\usepackage[style=authoryear,natbib=true]{biblatex}
\addbibresource{acl2016.bib}

 \DeclareBibliographyDriver{book}{%
  \printnames{author}\newunit%
  \printfield{year}\newunit%
  \printfield{title}\newunit%
  \printlist{publisher}\newunit%
  \printlist{location} \finentry} 
  \DeclareNameAlias{sortname}{first-last}
\begin{document}
\citep{Aho:72}
\citet{Aho:72}
\printbibliography
\end{document}

verwandte Informationen