Измените номера деталей на слова на арабском языке

Измените номера деталей на слова на арабском языке

Аналогичным образом, показано на

Измените номера глав на слова на арабском языке.

Как написать «Часть первая» вместо «часть 1», но на арабском языке:

Замените слово «часть» на «الجزء», поскольку слово «القسم» не подходит.

Мне удалось выполнить эту замену с помощью команды:

\gappto\captionsarabic{\renewcommand{\partname}{الجزء}}

Однако я не знаю, как заменить число его арабским переводом, написанным буквами.

Вот MWE:


\documentclass[a4paper,12pt,twoside]{book}
\usepackage[a4paper,top=2.5cm,bottom=2.5cm,margin=2.5cm,bindingoffset=0.5cm]{geometry} 

\usepackage{hyperref} 

\usepackage{arabluatex}
\setcounter{secnumdepth}{6} 
\setcounter{tocdepth}{6}
    

\usepackage[bidi=basic,layout=lists.tabular]{babel}
\babelprovide[import=ar,mapdigits,main]{arabic}
\babelprovide[import=en,language=Default]{english}

\babelfont{rm}{Latin Modern Roman}
\babelfont[arabic]{rm}{Simplified Arabic}
\babelfont[english]{rm}{Times New Roman}








 %%%%%  END MACRO Litteral Numbering of chapters 
     
    \newcommand\words[1]{\expandafter\xwords\csname c@#1\endcsname}
    \def\xwords#1{\ifcase#1\or
    الأول\or
    الثاني\or
    الثالث\or
    الرابع\or
    الخامس\or
    السادس\or
    السابع\or
    الثامن\or
    التاسع\or
    العاشر\or
الحادي عشر\or 
الثاني عشر\or 
الثالث عشر\or 
الرابع عشر\or 
الخامس عشر\or 
السادس عشر\or  
السابع عشر\or
الثامن عشر\or 
التاسع عشر\or 
العشرون\or 
    \else
    I need more words أحتاج إلى المزيد من ترقيمات الأبواب بالحروف في ملف arbbook.cls\fi}

     
    %next three lines is to make chapter naming use the above wordings (literal numbering in Arabic words)

% The below commands so that chapter name apear in header as Chapter one instead of chapter1
\usepackage{etoolbox} 
\makeatletter
\pretocmd{\Hy@org@chapter}
  {\begingroup \renewcommand{\thechapter}{{\words{chapter}}}}
  {}
  {}
\patchcmd{\Hy@org@chapter} 
% Controls how chapter namin apear in table of contents
  {\addcontentsline{toc}{chapter}{\protect\numberline{\thechapter}#1}}
  {\addcontentsline{toc}{chapter}{\@chapapp\space\words{chapter}\space#1}}
  {}
  {}
\apptocmd{\Hy@org@chapter}
  {\endgroup}
  {}
  {}
\patchcmd{\@makechapterhead}
  {\thechapter}
  {\words{chapter}}
  {}
  {}
\makeatother
 
 


% The below commands so that part name apear in header as part one instead of part 1
\makeatletter
\pretocmd{\Hy@org@part}
  {\begingroup \renewcommand{\thepart}{{\words{part}}}}
  {}
  {}
\patchcmd{\Hy@org@part} 
% Controls how part namin apear in table of contents
  {\addcontentsline{toc}{part}{\protect\numberline{\thepart}#1}}
  {\addcontentsline{toc}{part}{\partname\space\words{part}\space#1}}
  {}
  {}
\apptocmd{\Hy@org@part}
  {\endgroup}
  {}
  {}
\patchcmd{\@makeparthead}
  {\thepart}
  {\words{part}}
  {}
  {}
\makeatother


% part Naming
\gappto\captionsarabic{\renewcommand{\partname}{الجزء}} %to name the part title   الجزء instead of القسم

% Chapter Naming
\gappto\captionsarabic{\renewcommand{\chaptername}{الباب}}
 
\gappto\captionsarabic{\renewcommand{\appendixname}{الملحق}}






\begin{document}

\part{تمهيد}
\chapter{شكر وتقدير} 
\subsection{سيشسي}
\subsubsection{شسيسشسي}


\end{document}

решение1

Вот общий механизм, предоставляемый для babelустановки зависящих от локали счетчиков и переопределения строк. Есть некоторые упрощения, но обратите внимание, что счетчик «слов» появляется в номере раздела (однако вы можете переопределить его). Требуется относительно недавняя версия.

\documentclass[a4paper,12pt,twoside]{book}
\usepackage[a4paper,top=2.5cm,bottom=2.5cm,
            margin=2.5cm,bindingoffset=0.5cm]
           {geometry} 

\usepackage{hyperref} 

\setcounter{secnumdepth}{6} 
\setcounter{tocdepth}{6}

\usepackage[english, bidi=basic, layout=lists.tabular]{babel}
\babelprovide[
  import,
  mapdigits,
  main, % Space separated list. Use braces in multi-word items:
  counters/words = الأول الثاني الثالث الرابع الخامس السادس السابع
     الثامن التاسع العاشر {الحادي عشر} {الثاني عشر}]{arabic}

\babelfont{rm}{Simplified Arabic} % The main font for the main lang
\babelfont[english]{rm}{Latin Modern Roman} % Secondary font/lang

\renewcommand{\thepart}{\localecounter{words}{part}}
\renewcommand{\thechapter}{\localecounter{words}{chapter}}

\setlocalecaption{arabic}{part}{الجزء}
\setlocalecaption{arabic}{chapter}{الباب}
\setlocalecaption{arabic}{appendix}{الملحق}

\begin{document}

\part{تمهيد}
\chapter{شكر وتقدير} 
\subsection{سيشسي}
\subsubsection{شسيسشسي}

\end{document}

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

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