Xindy, indextools et arabe
Je suis en train de travailler sur in un index en utisisant xindy, indextools utilisant `xindy` et `indextools` dans un fichier en langue arabe avec polyglossia. `polyglossia`.
Tout marche bien mais l'index est imprimé en mode LTR au lieu de RTL. RTL.
En plus, les lettres de l'alphabet arabe ne sont pas bien ordonnées. Merci d'avance pour vos commentaires et suggestions.
ordonnées.
Voici un exemple minimum: index-ex.tex
minimum, intitulé `index-ex.tex` :
\documentclass[12pt]{book}
\usepackage[xindy]{indextools}
\makeindex[title=\textarabic{فهرس اﻷسماء},program=xindy, columns=2]
\usepackage{polyglossia}
\setmainlanguage{french}
\setotherlanguage[locale = tunisia]{arabic}
\newfontfamily\arabicfont[Script = Arabic]{Amiri}
\newfontfamily\ayafont[Script = Arabic, Mapping = arabicdigits]{Amiri}
\begin{document}
\begin{Arabic}
خلافاَ للاعتقاد السائد فإن لوريم إيبسوم ليس نصاَ عشوائياً، بل إن له جذور في الأدب اللاتيني الكلاسيكي منذ العام 45 قبل الميلاد، مما يجعله أكثر من 2000 عام في القدم. قام البروفيسور "ريتشارد ماك لينتوك" (Richard McClintock) وهو \index{أسيل}
\index{رجب}
\index{أولاد!جلال}
\index{مرشد}
\index{نجم}
\index{سراج}
\index{أولاد!احمد}
\index{علي}
\index{أولاد!حسن}
\index{زكريا}
\index{يحيى}
\index{بنات!نور}
\index{بنات!رغد}
\index{ياسمين}
\index{بنات!عائشة}
\index{فتيحة}
\index{ليلى}
\index{هاجر}
بروفيسور اللغة اللاتينية في جامعة هامبدن-سيدني في فيرجينيا بالبحث عن أصول كلمة لاتينية غامضة في نص لوريم إيبسوم وهي "consectetur"، وخلال تتبعه لهذه الكلمة في الأدب اللاتيني اكتشف المصدر الغير قابل للشك. فلقد اتضح أن كلمات نص لوريم إيبسوم تأتي من الأقسام 1.10.32 و 1.10.33 من كتاب "حول أقاصي الخير والشر''
\newpage
\index{فاطمة|seealso{علي}}
\index{علي}
\index{أسيل}
\index{أمينة}
(\textfrench{de Finibus Bonorum et Malorum}) للمفكر شيشيرون (\textfrench{Cicero}) والذي كتبه في عام 45 قبل الميلاد. هذا الكتاب هو بمثابة مقالة علمية مطولة في نظرية الأخلاق، وكان له شعبية كبيرة في عصر النهضة. السطر الأول من لوريم إيبسوم "\textfrench{Lorem ipsum dolor sit amet...}" يأتي من سطر في القسم 1.20.32 من هذا الكتاب.\index{آية}
\index{بنات!نور}
\index{بنات!رغد}
\newpage
كذلك
\index{وائل}
\index{أسيل}
\index{أمينة}
\index{سمية}
\index{رجب|see{علي}}
\index{أولاد!احمد}
\printindex
\end{Arabic}
\end{document}
Voici le fichier style: test.xdy la feuille de style `test.xdy` que j'évoque pour produire le fichier .ind
`.ind` :
(markup-index :open "\begin{theindex}~n
\providecommand*\lettergroupDefault[1]{}
\providecommand*\lettergroup[1]{%
\par}"
:close "~n~n\end{theindex}~n"
:tree)
(define-crossref-class "see also")
(define-location-class "arabic-page-numbers"
("arabic-numbers") :min-range-length 1)
(markup-locclass-list :open " : " :sep ", ")
;; delim_n <string> ", "
(markup-locref-list :sep "، ")
;; delim_r <string> "--"
(markup-range :sep "-")
;; Local Variables:
;; mode: lisp
;; End:
Enfin, voici la commande Xindy `xindy` que j'utilise après une première compilation de XeLaTeX
`XeLaTeX` :
xindy -L persian-variant3 -C utf8 -M numeric-sort -M latex -M latex-loc-fmts -M texindy -M test index-ex.idx