cleveref، nameref و varioref در Scissor LaTeX
بستهٔ cleveref در Scissor LaTeX بیشترش کار میکند: \cref و \Cref با برچسبهای تکی، فهرستها و بازهها کار میکنند، و همچنین \cpageref، \namecref، گزینههای capitalise، noabbrev و nameinlink، و \crefname؛ \nameref به جای عنوان یک شماره چاپ میکند و \vref اشارهای به صفحه نمیدهد.
کار این بستهها
cleveref نوع شیء را به ارجاع میافزاید: \cref{fig:plot} بدون اینکه خودتان واژه را تایپ کنید «fig. 1» چاپ میکند، و \cref{a,b} چند برچسب را در «figs. 1 and 2» ترکیب میکند. nameref به جای شمارهٔ یک بخش عنوان آن را چاپ میکند. varioref با \vref اشارههایی به صفحه مانند «on the next page» اضافه میکند.
آنچه اینجا کار میکند
| دستور | در Scissor LaTeX | یادداشتها |
|---|---|---|
\cref{label} | کار میکند | «section 1»، «fig. 1»، «table 1»، «eq. (1)». |
\Cref{label} | کار میکند | با حرف بزرگ، بدون کوتهنوشت: «Figure 1»، «Equation (1)». |
\cref{a,b}، \cref{a,b,c} | کار میکند | «sections 1 and 2». |
\crefrange{a}{b} | کار میکند | «eqs. (1) to (2)». |
\cpageref{label} | کار میکند | «page 1». |
\namecref{label}، \labelcref{label} | کار میکند | فقط نام («eq.») یا فقط شماره («(1)»). |
\crefname، \Crefname | کار میکند | نامهای خودتان، در مقدمهٔ سند. |
گزینههای capitalise، noabbrev، nameinlink | کار میکند | گزینههای دیگر نادیده گرفته میشوند. |
\nameref{label} (nameref) | تا حدی | شماره را چاپ میکند، نه عنوان را. |
\vref، \Vref (varioref) | تا حدی | شماره را بدون اشاره به صفحه چاپ میکند. |
نمونهها
\cref نوع شیء را برایتان نام میبرد و چند برچسب را ترکیب میکند:
\cref و \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.معادلهها، بازهها و ارجاع به صفحه:
معادلهها، \crefrange و \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}.گزینههای capitalise و noabbrev همهجا نامهای کامل و با حرف بزرگ مینویسند و \crefname نامهای خودتان را تنظیم میکند. با capitalise، \cref شکل با حرف بزرگ نام شما را به کار میبرد، پس part در زیر به شکل «Part» چاپ میشود:
گزینهها و \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 اینجا شمارهٔ بخش را چاپ میکند، نه عنوانش را:
\nameref یک شماره چاپ میکند
\section{Related work}\label{sec:related}
John Doe's results are summarised in \nameref{sec:related}.سازگاری
- از یک نصب TeX به اینجا: ارجاعهایی با
\crefو دستورهای همخانوادهاش همانطور به نظر میرسند که در یک نصب TeX.\namerefبه جای عنوان یک شماره میدهد و\vrefاشارهٔ «on the next page» ندارد. - از اینجا به یک نصب TeX: سندها بدون تغییر آنجا کامپایل میشوند. همانطور که راهنمای آن میخواهد،
cleverefرا پس ازhyperrefبارگذاری کنید.
راهنماهای کامل در CTAN هستند: ctan.org/pkg/cleveref، ctan.org/pkg/nameref و ctan.org/pkg/varioref. برای یک راهنما، برچسبها و ارجاعهای درونی را ببینید، و برای \autoref، hyperref را.
پرسش و پاسخ
تفاوت \cref و \Cref چیست؟
\cref نامهای کوتاه و با حرف کوچک مانند «fig. 1» یا «eq. (1)» به کار میبرد. \Cref آنها را کامل و با حرف بزرگ مینویسد، برای آغاز جمله. گزینهٔ capitalise باعث میشود \cref همهجا مانند \Cref رفتار کند.
آیا \nameref عنوان بخش را چاپ میکند؟
هنوز نه. شمارهٔ بخش را چاپ میکند، پس جمله همچنان خوانا است، اما به شکلی دیگر. اگر عنوان مهم است، آن را کامل بنویسید.
هر مثال این صفحه هنگام ساخت سایت با Scissor LaTeX حروفچینی میشود. آخرین بهروزرسانی: 2026-11-07.