Используйте персидские сноски внутри латинской среды xepersian

Используйте персидские сноски внутри латинской среды xepersian

Когда я нахожусь внутри latinсреды, я не могу изменить знак сноски сарабскийстиль дляперсидский(арабо-индийский) стиль.

Вот код, который я использую:

\documentclass[a4paper, 12pt]{article}

%packages:
\usepackage{caption}
\usepackage{subcaption}
\usepackage{graphicx, float}
\usepackage{amsmath, amsfonts, amssymb}
\usepackage[table]{xcolor}

\usepackage{xepersian}
% fonts
\settextfont{HM FElmi}
\setlatintextfont{FreeSerif}
\defpersianfont\Bismillah[Scale=14]{A_Bismillah}
\setpersiansansfont[Scale=1]{HM FElmi}

\begin{document}
سلام
\footnote{
    در این جا مشکلی وجود ندارد
}
\vspace{\fill}
\begin{latin}
Translate
\RTLfootnote{ترجمه}
\end{latin}
\end{document}

И результат выглядит так:

введите описание изображения здесь

Как вы видите, второй знак сноски находится варабскийстиль, который нежелателен. Как я могу изменить его наперсидскийстиль?

Я думаю о некоторых командах, таких как \roman{}, \arabic{}и т. д., есть ли такая команда в XePersianпакете, чтобы избавиться от этой проблемы?

решение1

Это правильное поведение, и как должны быть набраны сноски (и знаки сносок). Однако, если по какой-либо причине вы хотите, чтобы "2" было персидским, вы можете написать:

\begin{latin}
Translate\rl{\footnotemark}
\RTLfootnotetext{ترجمه}
\end{latin}

или просто:

\begin{latin}
Translate\rl{\RTLfootnote{ترجمه}}
\end{latin}

и если вы хотите, чтобы все знаки сносок были на персидском, переопределите @makefnmark

\makeatletter
\def\@makefnmark{\hbox{\rl{\@textsuperscript{\normalfont\@thefnmark}}}}%
\makeatother

Связанный контент