Kontextsensitive Querverweise mit Cleveref und Varioref

Kontextsensitive Querverweise mit Cleveref und Varioref

Ich bin daran gehindert, einen Befehl (genannt \pref{<cross-reference>}) für Querverweise mit cleverefund zu erstellen varioref. Ich möchte, dass er sich an den Kontext anpassen kann:

  • Erstens möchte ich das Komma entfernen können, wenn sich der Verweis auf derselben Seite befindet wie das referenzierte Objekt. Das habe ich derzeit:
    Bildbeschreibung hier eingeben

  • Zweitens hätte ich gerne gewusst, ob es möglich ist, den Namen des Kapitels oder Abschnitts, auf den verwiesen wird, ohne Aufruf hinzuzufügen und so den Befehl mit seinem Standardverhalten in anderen Kontexten \crefformatverwenden zu können .\cref

Folgendes habe ich derzeit:
Bildbeschreibung hier eingeben

Folgendes möchte ich posten können:
Bildbeschreibung hier eingeben

\documentclass{article}
\usepackage{varioref, hyperref, cleveref}
\setlength{\parindent}{0pt}
\def\reftextcurrent{}
\def\reftextfaraway#1{p.~\pageref{#1}}
\crefformat{figure}{#2\textsc{Fig.}~#1#3}
\crefformat{section}{#2\textsc{Sec.}~#1#3}

\newcommand{\pref}[1]{(\cref{#1}, \vpageref{#1})}

\begin{document}
\pref{fig1}\qquad\pref{sec1}

\clearpage
\pref{fig1}\qquad\pref{sec1}\\
(\cref{sec1} : \textit{\nameref{sec1}}, \vpageref{sec1})% desired behaviour

\clearpage
\section{My section}\label{sec1}
\begin{figure}
    \centering\Huge Figure
    \caption{Bla bla.}
    \label{fig1}
\end{figure}
\pref{fig1}\qquad\pref{sec1}\\
(\cref{fig1})\qquad(\cref{sec1} : \textit{\nameref{sec1}})% desired behaviour

\clearpage
\pref{fig1}\qquad\pref{sec1}

\clearpage
\pref{fig1}\qquad\pref{sec1}
\end{document}

verwandte Informationen