PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : varioref, cleveref ignorieren Änderung in \reftextcurrent



Dirk2718
25-06-2012, 09:26
Hallo Zusammen,

ich nutze varioref zusammen mit hyperref und cleveref. Nun möchte ich auf der aktuellen Seite kein Verweis auf die aktuelle Seite haben, nur wenn der Verweis eine oder mehr Seiten entfernt ist. Dazu müsste man \reftextcurrent umdefinieren. Allerdings bringt das keinen Effekt. Hier ein Minimalbeispiel:

\documentclass{scrreprt}
\usepackage[ngerman]{babel}
\usepackage[T1]{fontenc}
\usepackage{selinput}
\SelectInputMappings{
adieresis={ä},
germandbls={ß},
Euro={€},
}
\usepackage[ngerman]{varioref}
\usepackage[ngerman]{cleveref}

% Varioref soll auf derselben Seite kein auf dieser Seite ausgeben
\renewcommand{\reftextcurrent}{}

\begin{document}


\begin{figure}[ht]
\centering
\rule{10ex}{10ex}
\caption{Testbild}
\label{figTest}
\end{figure}

\vref{figTest}

\end{document}

Die Ausgabe von \vref ist "Abbildung 0.1 auf dieser Seite". Weiß jemand warum das renewcommand nicht greift?

Vielen Dank und Grüße
Dirk

Dirk2718
25-06-2012, 10:11
In der Doku findet man, dass cleveref auf jeden Fall nach varioref zu laden ist.
Des weiteren ist dort auch beschrieben, dass cleveref die Befehle \vref aus varioref umschreibt und erweitert, aber varioref rotzdem voll unterstützt. Eigentlich müsste es demnach so funktionieren, tut es aber nicht.

rstuby
25-06-2012, 11:20
Also das ist mir jetzt rätselhaft. Deswegen hatte ich auch meine erste Antwort wieder gelöscht.

Es funktioniert, wenn man das

\renewcommand{\reftextcurrent}{}

nach \begin{document} setzt!

Dirk2718
28-06-2012, 13:00
Entschuldigt die späte Antwort, hab darüber keine Mail bekommen.

Yep, bei mir geht es so auch.

Ist nur die Frage, ob das so gewollt ist?
Mir passt das persönlich gar nicht, da ich meine Präambel in einem zweiten Dokument pflege und ich jetzt dieses renewcommand in jedem Dokument haben müsste.

Viele Grüße
Dirk

rais
30-06-2012, 07:47
Moin moin,


Mir passt das persönlich gar nicht, da ich meine Präambel in einem zweiten Dokument pflege und ich jetzt dieses renewcommand in jedem Dokument haben müsste.

dazu zwingt Dich ja niemand:


% Varioref soll auf derselben Seite kein auf dieser Seite ausgeben
\AtBeginDocument{%
\renewcommand{\reftextcurrent}{}%
}
MfG

Dirk2718
30-06-2012, 17:38
Sehr gut! Danke! :)