برای این منظور میتوانید از بسته cleveref
استفاده نمایید. نمونهای از نحوه استفاده از این بسته در ادامه آورده شده است.
\documentclass{article}
\usepackage{amsmath}
\usepackage{xepersian}
\settextfont{Yas}
\usepackage{cleveref}
\newcommand{\crefrangeconjunction}{--}
\crefmultiformat{equation}{(#2#1#3)}%
{ و~(#2#1#3)}{, (#2#1#3)}{ و~(#2#1#3)}
\crefname{equation}{رابطه}{روابط}
\begin{document}
\begin{equation}\label{equ:one}
a=b
\end{equation}
\begin{equation}\label{equ:two}
c=d
\end{equation}
\begin{equation}\label{equ:three}
e=f
\end{equation}
\begin{equation}\label{equ:four}
g=h
\end{equation}
\begin{equation}\label{equ:five}
i=j
\end{equation}
\cref{equ:three,equ:one,equ:five,equ:two}
نشان میدهد که میتوان روابط را به صورت بسته نوشت. همچنین در نوشتار \Crefrange{equ:two}{equ:five} میتوان این نکته را ملاحظه نمود.
\end{document}
که خروجی آن به صورت زیر است:
همانگونه که در کد نوشته شده ملاحظه میگردد، به منظور تطابق دادن آن با زبان فارسی، چند دستور آن را تغییر دادهام. دستور اول که تعریف \crefrangeconjunction
میباشد، در واقع جداکننده میان چند ارجاع میباشد که به صورت پیشفرض to
میباشد و در این کد از خط تیره بدین منظور استفاده شده است.
دستور دوم در واقع نحوه نوشتار چند ارجاع را پشت سر هم مشخص میکند و من با وارد کردن «و»، آن را از حالت پیشفرض که and
میباشد به فارسی تبدیل کردهام.
همچنین با استفاده از دستور سوم (crefname
) کلمه قبل از روابط را بازتعریف نمودهام که اگر تنها یک رابطه باشد، کلمه رابطه را چاپ مینماید و در حالتی که چند رابطه در ارجاع وجود داشته باشد، کلمه روابط را چاپ مینماید.
در نهایت برای ارجاع به چند رابطه کافی است از دستور \cref
استفاده کنید و برای ارجاع به یک دسته رابطه از دستور \crefrange
استفاده نمایید.
برای اطلاع بیشتر از دستورات این بسته به راهنمای آن در توزیع تک خود مراجعه نمایید.