authortitle-dw: \citetitle mit hyperref

Antwort erstellen


Diese Frage dient dazu, das automatisierte Versenden von Formularen durch Spam-Bots zu verhindern.
Smilies
:D :) :( :o :shock: :? 8) :lol: :-x :P :oops: :cry: :evil: :twisted: :roll: :wink: :!: :?: :idea: :arrow: :| :mrgreen:

BBCode ist eingeschaltet
[img] ist eingeschaltet
[flash] ist ausgeschaltet
[url] ist eingeschaltet
Smilies sind eingeschaltet

Die letzten Beiträge des Themas

Ich habe die Datenschutzerklärung gelesen und bin damit einverstanden.

   

Wenn du eine Datei oder mehrere Dateien anhängen möchtest, gib die Details unten ein.

Ansicht erweitern Die letzten Beiträge des Themas: authortitle-dw: \citetitle mit hyperref

von iTob » So 20. Feb 2011, 22:42

Ja wozu es gedacht war ist klar …
Es ging mir auch nicht darum, ob ein Leser Probleme mit der Eindeutigkeit hätte sondern eher, ob es technische Problem, also zum Beispiel mit hyperref.

Ich verwende es auch in dem von dir genannten Zusammenhang, hätte nur eben gerne, dass ein (PDF-)Leser auf den Titel klicken kann, um den Eintrag im Verzeichnis zu finden, in dem ein weiterführender Link steht.

von domwass » So 20. Feb 2011, 20:20

Na ja, \citetitle ist ja für Fälle gedacht wie etwa:
Wie schon \citeauthor{iTob2011} in seinem Werk \citetitle{iTob2011} schrieb, …
\citetitle gibt nur das title-Feld des Werkes wieder, bzw. das shorttitle-Feld,
sofern eins vorhanden ist. Ggf. kannst du also zur Unterscheidung shorttitle
heranziehen.

Gruß,
Dominik.-

von iTob » So 20. Feb 2011, 16:14

Wusste ich doch, dass das nicht so schwer sein kann :) Danke dir sehr!

Hab ich denn irgendwas zu befürchten, wenn ich Werke mit dem gleichen Titel habe?

Tobi

von domwass » So 20. Feb 2011, 15:29

Dass mit deinem Code kein Link erzeugt wird, liegt daran, dass der Befehl
\citetitle das bibmacro citetitle gar nicht aufruft. Du musst also stattdessen
den Befehl \citetitle umdefinieren:
\DeclareCiteCommand{\citetitle}
  {\boolfalse{citetracker}%
   \boolfalse{pagetracker}%
   \usebibmacro{prenote}}
  {\ifciteindex
     {\indexfield{indextitle}}
     {}%
   \printtext[bibhyperref]{%
    \printfield[citetitle]{labeltitle}}}
  {\multicitedelim}
  {\usebibmacro{postnote}}
Gruß,
Dominik.-

authortitle-dw: \citetitle mit hyperref

von iTob » So 20. Feb 2011, 01:44

Guten Abend,

ich hätte gerne, dass \citetitle auch zu einem Link ins Literaturverzeichnis führt, genau wie der Titel bei \cite ja auch einen Link erhält.

Hier mein Beispiel:
\documentclass[11pt,a4paper,ngerman]{scrartcl}
\usepackage[latin1]{inputenc}
\usepackage[T1]{fontenc}

\usepackage{filecontents}
\begin{filecontents}{\jobname.bib}
@misc{test,
    author = {Mustermann, H.},
    year = {2010},
    title = {Test},
}
\end{filecontents}

\usepackage[%
	hyperref=true,
	style=authortitle-dw,
]{biblatex}
\usepackage[babel,german=quotes]{csquotes}
\bibliography{\jobname}

% Erfolgloser Versuch:
\renewbibmacro*{citetitle}{%
  \global\boolfalse{cbx:loccit}%
  \iffieldundef{shorthand}
    {\ifthenelse{\ifciteibid\AND\NOT\iffirstonpage}
       {\printtext[bibhyperref]{%
                \printfield[citetitle]{labeltitle}}}
       {\printtext[bibhyperref]{%
                \printfield[citetitle]{labeltitle}}}}%
    {\printtext[bibhyperref]{\usebibmacro{cite:shorthand}}}}

\usepackage{hyperref}

\begin{document}
Test \texttt{cite}: \cite{test} (Titel bekommt Link, sehr gut)

Test \texttt{citeauthor}: \citeauthor{test} (Autor ohne Link, noch o.\,k. \dots)

Test \texttt{citetitle}: \citetitle{test} (Titel ohne Link, nicht o.\,k.)

\printbibliography
\end{document}
Soweit ich das verstanden habe, sorgt printtext[bibhyperref]{…} für einen Link, aber in meinem Versuch nicht. Was mache ich also falsch?

Was muss ich tun, damit auch der Autor einen Link bekommt (bei \citeauthor)?

Und muss ich mit Problemem rechnen, wenn ich Werke mit dem selbsten Titel habe bzw. vom gleichen Autor (bei \citeauthor)? Verhakelt sich hyperref dann mit uneindeutigen Links?

Vielen Dank und
liebe Grüße!
Tobi

Nach oben