cleveref, nameref i varioref w Scissor LaTeX
Pakiet cleveref w większości działa w Scissor LaTeX: \cref i \Cref działają z pojedynczymi etykietami, listami i zakresami, podobnie jak \cpageref, \namecref, opcje capitalise, noabbrev i nameinlink oraz \crefname; \nameref wypisuje numer zamiast tytułu, a \vref nie podaje wskazówki o stronie.
Do czego służą pakiety
cleveref dodaje do odsyłacza rodzaj obiektu: \cref{fig:plot} wypisuje „fig. 1” bez wpisywania tego słowa, a \cref{a,b} łączy kilka etykiet w „figs. 1 and 2”. nameref wypisuje tytuł rozdziału zamiast jego numeru. varioref dodaje za pomocą \vref wskazówki o stronie, takie jak „on the next page”.
Co tu działa
| Polecenie | W Scissor LaTeX | Uwagi |
|---|---|---|
\cref{label} | Działa | „section 1”, „fig. 1”, „table 1”, „eq. (1)”. |
\Cref{label} | Działa | Wielką literą, bez skrótów: „Figure 1”, „Equation (1)”. |
\cref{a,b}, \cref{a,b,c} | Działa | „sections 1 and 2”. |
\crefrange{a}{b} | Działa | „eqs. (1) to (2)”. |
\cpageref{label} | Działa | „page 1”. |
\namecref{label}, \labelcref{label} | Działa | Sama nazwa („eq.”) lub sam numer („(1)”). |
\crefname, \Crefname | Działa | Własne nazwy, w preambule. |
Opcje capitalise, noabbrev, nameinlink | Działa | Pozostałe opcje są ignorowane. |
\nameref{label} (nameref) | Częściowo | Wypisuje numer, a nie tytuł. |
\vref, \Vref (varioref) | Częściowo | Wypisuje numer, bez wskazówki o stronie. |
Przykłady
\cref sam nazywa rodzaj obiektu i łączy kilka etykiet:
\cref i \Cref
\section{Data}\label{sec:data}
\section{Method}\label{sec:method}
\begin{figure}[h]
\centering
\fbox{A plot of the 44 samples}
\caption{Samples.}\label{fig:samples}
\end{figure}
\begin{table}[h]
\centering
\begin{tabular}{lr} Erika & 44 \\ Hans & 38 \\ \end{tabular}
\caption{Counts.}\label{tab:counts}
\end{table}
As \cref{sec:data,sec:method} explain, \cref{fig:samples} shows
the samples. \Cref{tab:counts} counts them.Równania, zakresy i odsyłacze do stron:
Równania, \crefrange i \cpageref
\begin{equation} a + b = 44 \label{eq:sum} \end{equation}
\begin{equation} a - b = 2 \label{eq:diff} \end{equation}
Adding \crefrange{eq:sum}{eq:diff} gives $a = 23$; \Cref{eq:sum}
is on \cpageref{eq:sum}.Opcje capitalise i noabbrev wszędzie wypisują pełne nazwy wielką literą, a \crefname ustawia własne. Z capitalise polecenie \cref używa Twojej nazwy pisanej wielką literą, więc part poniżej wypisuje się jako „Part”:
Opcje i \crefname
\documentclass{article}
\usepackage[capitalise,noabbrev]{cleveref}
\crefname{section}{part}{parts}
\begin{document}
\section{Overview}\label{sec:overview}
\begin{figure}[h]
\centering
\fbox{Diagram}
\caption{A diagram.}\label{fig:diagram}
\end{figure}
\cref{fig:diagram} belongs to \cref{sec:overview}.
\end{document}\nameref wypisuje tutaj numer rozdziału, a nie jego tytuł:
\nameref wypisuje numer
\section{Related work}\label{sec:related}
John Doe's results are summarised in \nameref{sec:related}.Zgodność
- Z instalacji TeX do Scissor LaTeX: odsyłacze z
\crefi pokrewnymi poleceniami wyglądają tak jak w instalacji TeX.\namerefdaje numer zamiast tytułu, a\vrefnie ma wskazówki „on the next page”. - Ze Scissor LaTeX do instalacji TeX: dokumenty kompilują się tam bez zmian. Wczytuj
cleverefpohyperref, jak zaleca jego dokumentacja.
Pełne dokumentacje są dostępne w CTAN: ctan.org/pkg/cleveref, ctan.org/pkg/nameref oraz ctan.org/pkg/varioref. Poradnik znajdziesz na stronie Etykiety i odsyłacze, a o \autoref przeczytasz na stronie hyperref.
Pytania i odpowiedzi
Czym różni się \cref od \Cref?
\cref używa krótkich nazw małymi literami, takich jak „fig. 1” czy „eq. (1)”. \Cref wypisuje je w całości wielką literą, na początek zdania. Opcja capitalise sprawia, że \cref wszędzie zachowuje się jak \Cref.
Czy \nameref wypisuje tytuł rozdziału?
Jeszcze nie. Wypisuje numer rozdziału, więc zdanie nadal ma sens, choć brzmi inaczej. Jeśli tytuł jest ważny, wpisz go ręcznie.
Każdy przykład na tej stronie jest składany przez Scissor LaTeX podczas budowania witryny. Ostatnia aktualizacja: 2026-11-07.