> For the complete documentation index, see [llms.txt](https://overleaf-pro.ayaka.space/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://overleaf-pro.ayaka.space/latex/ar/bnyh-almstnd/04-indices.md).

# الفهارس

في بعض المستندات الكبيرة، على سبيل المثال الكتب، من المعتاد إعداد قائمة أبجدية تحتوي على المصطلحات الرئيسية. باستخدام LaTeX وبرنامج الدعم **imakeidx**، يمكن إنشاء فهرس بسهولة كبيرة.

## مقدمة

لِنَرَ مثالًا عمليًا بسيطًا.

```latex
\documentclass{article}
\usepackage[T1]{fontenc}
\usepackage{imakeidx}
\makeindex

\begin{document}
\section{Introduction}
في هذا المثال، ستُستخدم عدة كلمات مفتاحية\index{keywords}
وهي مهمة وتستحق أن تظهر في الفهرس\index{Index}.

مصطلحات مثل generate\index{generate} و some\index{others} ست
ظهر أيضًا.

\printindex
\end{document}
```

[افتح هذا المثال في Overleaf](https://www.overleaf.com/docs?engine=pdflatex\&snip_name=Index+example\&snip=%5Cdocumentclass%7Barticle%7D%0A%5Cusepackage%5BT1%5D%7Bfontenc%7D%0A%5Cusepackage%7Bimakeidx%7D%0A%5Cmakeindex%0A%0A%5Cbegin%7Bdocument%7D%0A%5Csection%7BIntroduction%7D%0AIn+this+example%2C+several+keywords%5Cindex%7Bkeywords%7D+will+be+used+%0Awhich+are+important+and+deserve+to+appear+in+the+Index%5Cindex%7BIndex%7D.%0A%0ATerms+like+generate%5Cindex%7Bgenerate%7D+and+some%5Cindex%7Bothers%7D+will+%0Aalso+show+up.+%0A%0A%5Cprintindex%0A%5Cend%7Bdocument%7D)

تُظهر الصورة التالية الناتج الذي ينتجه المثال أعلاه:

![Index1OLV2.png](/files/fd3606a8df584eacc307c252e3dedba0d26a0946)

أولًا، تُدرج الحزمة في المقدمة بواسطة السطر

```latex
\usepackage{imakeidx}
```

ثم الأمر `\makeindex` ضروري لعمل الفهرس ويمكنه قبول بعض المعاملات لتخصيص مظهره، وسيتضح ذلك في الأقسام التالية.

لإضافة مدخل إلى الفهرس، يُستخدم الأمر `\index{}` حيث تُدرج الكلمة المراد إضافتها كمعامل. انتبه، فهذا لن يطبع الكلمة في الموضع الحالي بل في الفهرس فقط.

أخيرًا، سيعرض الأمر `\printindex` الفهرس فعليًا. وإذا كنت تستخدم تهيئة لغوية خاصة بواسطة `babel` الحزمة، فسيُترجم العنوان وفقًا لذلك.

ملاحظة: بدلًا من `imakeidx`، يمكن استيراد الحزمة `makeidx` ، لكنها توفر إمكانات تخصيص أقل.

## الفهارس على Overleaf

عند إضافة فهرس إلى مشروع على Overleaf، من **المهم ملاحظته** أنه لكي يتم تجميع الفهرس بشكل صحيح، يجب أن يكون الملف الرئيسي `.tex` في جذر المشروع، *خارج أي مجلدات*. وهذا يضمن تخزين الملفات المساعدة اللازمة لتوليد الفهرس بطريقة تتيح للمترجم الوصول إليها.

## المدخلات والمدخلات الفرعية

كما ذُكر في القسم السابق، فإن الأمر `\index` سيضيف الكلمة الممررة إليه إلى الفهرس، لكن هذه ليست الطريقة الوحيدة لاستخدامه.

```latex
\documentclass{article}
\usepackage[T1]{fontenc}
\usepackage{imakeidx}
\makeindex

\begin{document}
\section{Introduction}
في هذا المثال، ستُستخدم عدة كلمات مفتاحية\index{keywords}
وهي مهمة وتستحق أن تظهر في الفهرس\index{Index}.

ستظهر أيضًا مصطلحات مثل generate\index{generate} و some\index{others}، كما
يمكن أيضًا أن تكون مصطلحات الفهرس متداخلة \index{Index!nested}

\clearpage

\section{Second section}
قد يتضمن هذا القسم الثاني\index{section} كلمة خاصة،
ويوسّع الكلمات المستخدمة بالفعل\index{keywords!used}.

\printindex
\end{document}
```

[افتح هذا المثال في Overleaf](https://www.overleaf.com/docs?engine=pdflatex\&snip_name=Index+example+2\&snip=%5Cdocumentclass%7Barticle%7D%0A%5Cusepackage%5BT1%5D%7Bfontenc%7D%0A%5Cusepackage%7Bimakeidx%7D%0A%5Cmakeindex%0A%0A%5Cbegin%7Bdocument%7D%0A%5Csection%7BIntroduction%7D%0AIn+this+example%2C+several+keywords%5Cindex%7Bkeywords%7D+will+be+used+%0Awhich+are+important+and+deserve+to+appear+in+the+Index%5Cindex%7BIndex%7D.%0A%0ATerms+like+generate%5Cindex%7Bgenerate%7D+and+some%5Cindex%7Bothers%7D+will+also+%0Ashow+up.+Terms+in+the+index+can+also+be+nested+%5Cindex%7BIndex%21nested%7D%0A%0A%5Cclearpage%0A%0A%5Csection%7BSecond+section%7D%0AThis+second+section%5Cindex%7Bsection%7D+may+include+some+special+word%2C+%0Aand+expand+the+ones+already+used%5Cindex%7Bkeywords%21used%7D.%0A%0A%5Cprintindex%0A%5Cend%7Bdocument%7D)

تُظهر الصورة التالية الناتج الذي ينتجه المثال أعلاه:

![Index2OLV2.png](/files/d2940220de9c863e65d0df2954756934a153d508)

من الممارسات الشائعة توسيع المصطلحات في الفهرس لتضمين صفات خاصة. على سبيل المثال، قد تكون الكلمة *Field* ذات معنى خاص إذا سبقتها الصفة *finite* أو تلتها عبارة *of characteristic 0*، وقد يكون من المرهق قليلًا إضافة أنواع مختلفة من *Field*كمداخل منفصلة في الفهرس. في مثل هذه الحالات، يمكنك إضافة علامة تعجب "!" التي ستضيف المصطلحات بعد هذه العلامة كمدخلات فرعية للكلمة الأساسية *Field*.

في المثال، تحتوي الكلمة "Index" على الكلمة "nested" كمدخل فرعي.

## تنسيق الفهرس

يمكن تنفيذ التنسيق البسيط للفهرس، مثل تغيير عنوان الفهرس، وإضافة عدة أعمدة، وتغيير عرض العمود بسهولة عبر تمرير قيم اختيارية إلى `\makeindex`:

```latex
\documentclass{article}
\usepackage[T1]{fontenc}
\usepackage{imakeidx}
\makeindex[columns=3, title=Alphabetical Index]

\begin{document}
\section{Introduction}
في هذا المثال، ستُستخدم عدة كلمات مفتاحية\index{keywords} التي
تكون مهمة وتستحق أن تظهر في الفهرس\index{Index}.

ستظهر أيضًا مصطلحات مثل generate\index{generate} و some\index{others}، كما
يمكن أيضًا أن تكون مصطلحات الفهرس متداخلة \index{Index!nested}

\clearpage

\section{Second section}
قد يتضمن هذا القسم الثاني\index{section} كلمة خاصة،
ويوسّع الكلمات المستخدمة بالفعل\index{keywords!used}.

\printindex
\end{document}
```

[افتح هذا المثال في Overleaf](https://www.overleaf.com/docs?engine=pdflatex\&snip_name=Index+example+3\&snip=%5Cdocumentclass%7Barticle%7D%0A%5Cusepackage%5BT1%5D%7Bfontenc%7D%0A%5Cusepackage%7Bimakeidx%7D%0A%5Cmakeindex%5Bcolumns%3D3%2C+title%3DAlphabetical+Index%5D%0A%0A%5Cbegin%7Bdocument%7D%0A%5Csection%7BIntroduction%7D%0AIn+this+example%2C+several+keywords%5Cindex%7Bkeywords%7D+will+be+used+which+%0Aare+important+and+deserve+to+appear+in+the+Index%5Cindex%7BIndex%7D.%0A%0ATerms+like+generate%5Cindex%7Bgenerate%7D+and+some%5Cindex%7Bothers%7D+will+also+%0Ashow+up.+Terms+in+the+index+can+also+be+nested+%5Cindex%7BIndex%21nested%7D%0A%0A%5Cclearpage%0A%0A%5Csection%7BSecond+section%7D%0AThis+second+section%5Cindex%7Bsection%7D+may+include+some+special+word%2C+%0Aand+expand+the+ones+already+used%5Cindex%7Bkeywords%21used%7D.%0A%0A%5Cprintindex%0A%5Cend%7Bdocument%7D)

تُظهر الصورة التالية الناتج الذي ينتجه المثال أعلاه:

![Index3OLV2.png](/files/40db3309180f6b2585287820b5153628cc119174)

في هذا المثال، يُعرض الفهرس بتنسيق من ثلاثة أعمدة باستخدام المعامل `columns=3`، ويُغيَّر العنوان إلى "فهرس أبجدي" بواسطة `title=Alphabetical Index`؛ وتُمرَّر هذه المعاملات إلى `\makeindex` في المقدمة. راجع [الدليل المرجعي](#reference-guide) للاطلاع على قائمة بالمعاملات المتاحة ووصفها.

### استخدام ملفات الأنماط

لمزيد من تخصيص الفهرس يمكن استخدام ملف نمط. تُعرِّف ملفات الأنماط `makeindex` بصيغة الإخراج النهائية المقصودة. وتحتوي ملفات الأنماط على قائمة من `<key, value>` الأزواج. على سبيل المثال، إذا احتجت إلى تجميع المصطلحات في الفهرس حسب حرفها الأول ومحاذاة أرقام الصفحات إلى اليمين، فسيؤدي ملف النمط التالي الغرض:

```latex
headings_flag 1

heading_prefix "\n\\centering\\large\\sffamily\\bfseries%
\\noindent\\textbf{"heading_suffix "}\\par\\nopagebreak\n"

item_0 "\n \\item \\small "

delim_0 " \\hfill "
delim_1 " \\hfill "
delim_2 " \\hfill "
```

تُغيِّر المفاتيح عناصر مختلفة في مخرجات الفهرس:

* `headings_flag 1` يُفعِّل التجميع عبر إدراج ترويسة المجموعة (الرموز أو الأرقام أو الحروف) قبل مجموعة جديدة.
* `heading_prefix` يُنسِّق الترويسة التي تُدرج قبل بدء حرف جديد. ويستخدم أوامر تنسيق عادية لعائلة الخط وارتفاعه والمحاذاة، لكن يجب الهروب من الشرطات المائلة العكسية باستخدام شرطتين مائلتين عكسيتين بدلًا من واحدة.
* `item_0` هو ما سيُدرج بين عنصرين رئيسيين.
* `delim_*` هو الفاصل الذي سيُدرج بين المفتاح ورقم الصفحة الأول.

للحصول على قائمة كاملة بالمفاتيح والقيم لاستخدامها في ملف ‎.ist‎ راجع [الجدول المضمَّن في الدليل المرجعي](#keys-to-create-styles-files).

افترض أن الملف السابق محفوظ باسم "example\_style.ist". لاستخدامه في المستند نضيف المعامل `options= -s example_style.ist` إلى الأمر `\makeindex` .

```latex
\documentclass{article}
\usepackage[utf8]{inputenc}
\usepackage[T1]{fontenc}
\usepackage{imakeidx}
\makeindex[columns=3, title=Alphabetical Index,
           options= -s example_style.ist]

\begin{document}

\tableofcontents

\section{Introduction}
في هذا المثال، ستُستخدم عدة كلمات مفتاحية\index{keywords} وهي مهمة وتستحق أن تظهر في الفهرس\index{Index}.

ستظهر أيضًا مصطلحات مثل generate\index{generate}، وقائمة رائعة\index{great}، وبعض المصطلحات الأخرى\index{others} التي قد تكون مهمة\index{important}
كما ستظهر أيضًا. ويمكن أيضًا أن تكون مصطلحات الفهرس متداخلة \index{Index!nested}

\clearpage

\section{Second section}
قد يتضمن هذا القسم الثاني\index{section} كلمة خاصة، ويوسّع الكلمات المستخدمة بالفعل\index{keywords!used}.

\printindex
\end{document}
```

[افتح مثالًا يستخدم ملف نمط للفهرس على Overleaf](https://www.overleaf.com/project/new/template/20614?id=70756423\&templateName=Using+an+index+style+file\&latexEngine=pdflatex\&texImage=texlive-full%3A2020.1\&mainFile=)

تُظهر الصورة التالية الناتج الذي ينتجه المثال أعلاه:

![Index4OLV2.png](/files/754932d632f38e225a370a78fbf0c6b5342899c0)

## تضمين الفهرس في جدول المحتويات

افتراضيًا، لا يُدرج الفهرس في جدول المحتويات، ويمكن تعديل ذلك بسهولة.

```latex
\documentclass{article}
\usepackage[T1]{fontenc}
\usepackage{imakeidx}
\makeindex[columns=3, title=Alphabetical Index, intoc]

\begin{document}
\tableofcontents

\section{Introduction}
في هذا المثال، ستُستخدم عدة كلمات مفتاحية\index{keywords} التي
تكون مهمة وتستحق أن تظهر في
الفهرس\index{Index}.

مصطلحات مثل generate\index{generate} و some\index{others}
ستظهر أيضًا. ويمكن أيضًا أن تكون
متداخلة \index{Index!nested}

\clearpage

\section{Second section}
قد يتضمن هذا القسم الثاني\index{section} بعض
الكلمات الخاصة، ويوسّع الكلمات المستخدمة بالفعل\index{keywords!used}.

\printindex
\end{document}
```

[افتح هذا المثال في Overleaf](https://www.overleaf.com/docs?engine=pdflatex\&snip_name=Index+example+3\&snip=%5Cdocumentclass%7Barticle%7D%0A%5Cusepackage%5BT1%5D%7Bfontenc%7D%0A%5Cusepackage%7Bimakeidx%7D%0A%5Cmakeindex%5Bcolumns%3D3%2C+title%3DAlphabetical+Index%2C+intoc%5D%0A%0A%5Cbegin%7Bdocument%7D%0A%5Ctableofcontents%0A%0A%5Csection%7BIntroduction%7D%0AIn+this+example%2C+several+keywords%5Cindex%7Bkeywords%7D+will+be+%0Aused+which+are+important+and+deserve+to+appear+in+the+%0AIndex%5Cindex%7BIndex%7D.%0A%0ATerms+like+generate%5Cindex%7Bgenerate%7D+and+some%5Cindex%7Bothers%7D+%0Awill+also+show+up.+Terms+in+the+index+can+also+be+%0Anested+%5Cindex%7BIndex%21nested%7D%0A%0A%5Cclearpage%0A%0A%5Csection%7BSecond+section%7D%0AThis+second+section%5Cindex%7Bsection%7D+may+include+some+special+%0Aword%2C+and+expand+the+ones+already+used%5Cindex%7Bkeywords%21used%7D.%0A%0A%5Cprintindex%0A%5Cend%7Bdocument%7D)

تُظهر الصورة التالية الناتج الذي ينتجه المثال أعلاه:

![Index5OLV2.png](/files/f1db60be99116b66cd584367e8188f5e2f786572)

بإضافة المعامل `intoc` إلى الأمر `\makeindex` يتم تفعيل تضمين عنوان الفهرس في جدول المحتويات.

## الدليل المرجعي

### معاملات الأمر \makeindex

**title**

العنوان الذي سيُصفّ في بداية الفهرس المحدد. يُعرض مثال على ذلك في تنسيق الفهرس.

**intoc**

إذا تم تمرير هذا الخيار، فسيُدرج عنوان الفهرس في جدول المحتويات.

**columns**

يستخدم الصياغة key=value، ويجب أن تكون القيمة عددًا صحيحًا يمثل عدد الأعمدة. القيمة الافتراضية هي 2.

**columnsep**

يحدد الوحدات التي تمثل الفصل بين الأعمدة. يجب أن تكون الصياغة key=value، مثلًا columnsep=2em.

**columnseprule**

إذا تم تمرير الخيار، فسيُعرض خط رأسي بين الأعمدة.

### المفاتيح لإنشاء ملفات الأنماط

يوضح الجدول التالي المفاتيح والقيم الافتراضية والأوصاف لإنشاء ملفات الأنماط .ist.

| المفتاح                     | الوصف                                                                                                                                                                                                                                                             |
| --------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `القيمة الفعلية <char>`     | '@' رمز يشير إلى أن الإدخال التالي سيظهر في ملف الإخراج.                                                                                                                                                                                                          |
| `arg_close <char>`          | '}' الفاصل الختامي لمعطى مدخل الفهرس.                                                                                                                                                                                                                             |
| `arg_open <char>`           | '{' الفاصل الافتتاحي لمعطى مدخل الفهرس.                                                                                                                                                                                                                           |
| `encap <char>`              | ' رمز يشير إلى أن بقية قائمة الوسائط ستُستخدم كأمر الإحاطة لرقم الصفحة.                                                                                                                                                                                           |
| `escape <char>`             | '\\\\' رمز يهرب الحرف التالي، ما لم يكن رمزه السابق نفسه رمز هروب. ملاحظة: يُستخدم quote لهروب الحرف الذي يليه مباشرة، لكن إذا سبقه رمز هروب، فيُعامل كحرف عادي. يجب أن يكون هذان الرمزان مختلفين.                                                                |
| `keyword <string>`          | "\\\indexentry" أمر يخبر makeindex بأن وسيطه مدخل فهرسي.                                                                                                                                                                                                          |
| `level <char>`              | '!' فاصل يدل على مستوى جديد من العنصر الفرعي.                                                                                                                                                                                                                     |
| `quote <char>`              | "'" ملاحظة: يُستخدم quote لهروب الحرف الذي يليه مباشرة، لكن إذا سبقه رمز هروب، فيُعامل كحرف عادي. يجب أن يكون هذان الرمزان مختلفين.                                                                                                                               |
| `range_close <char>`        | ')' الفاصل الختامي الذي يشير إلى نهاية نطاق صفحات صريح.                                                                                                                                                                                                           |
| `range_open <char>`         | '(' الفاصل الافتتاحي الذي يشير إلى بداية نطاق صفحات صريح.                                                                                                                                                                                                         |
| `preamble <string>`         | "\\\begin{theindex}\n" مقدمة ملف الإخراج.                                                                                                                                                                                                                         |
| `postamble <string>`        | "\n\n\\\end{theindex}\n" خاتمة ملف الإخراج.                                                                                                                                                                                                                       |
| `setpage_prefix <string>`   | "\n \\\setcounter{page}{" بادئة الأمر الذي يحدد رقم الصفحة الابتدائي.                                                                                                                                                                                             |
| `setpage_suffix <string>`   | "}\n" لاحقة الأمر الذي يحدد رقم الصفحة الابتدائي.                                                                                                                                                                                                                 |
| `group_skip <string>`       | "\n\n \\\indexspace\n" مسافة عمودية تُدرج قبل بدء مجموعة جديدة.                                                                                                                                                                                                   |
| `headings_flag <string>`    | 0 علم يحدد معالجة ترويسات المجموعات الجديدة، والتي تُدرج قبل مجموعة جديدة (الرموز والأرقام والحروف الـ 26): القيم الموجبة تؤدي إلى إدراج حرف كبير بين البادئة واللاحقة، والقيم السالبة تؤدي إلى إدراج حرف صغير (القيمة الافتراضية هي 0، والتي لا تنتج أي ترويسة). |
| `heading_prefix <string>`   | "" بادئة الترويسة التي تُدرج قبل بدء حرف جديد.                                                                                                                                                                                                                    |
| `symhead_positive <string>` | "Symbols" ترويسة للرموز تُدرج إذا كانت headings\_flag موجبة.                                                                                                                                                                                                      |
| `symhead_negative <string>` | "symbols" ترويسة للرموز تُدرج إذا كانت headings\_flag سالبة.                                                                                                                                                                                                      |
| `numhead_positive <string>` | "Numbers" ترويسة للأرقام تُدرج إذا كانت headings\_flag موجبة.                                                                                                                                                                                                     |
| `numhead_negative <string>` | "numbers" ترويسة للأرقام تُدرج إذا كانت headings\_flag سالبة.                                                                                                                                                                                                     |
| `item_0 <string>`           | "\n \\\item " أمر يُدرج بين عنصرين رئيسيين (المستوى 0).                                                                                                                                                                                                           |
| `item_1 <string>`           | "\n \\\subitem " أمر يُدرج بين عنصرين ثانويين (المستوى 1).                                                                                                                                                                                                        |
| `item_2 <string>`           | "\n \\\subsubitem " أمر يُدرج بين عنصرين من المستوى 2.                                                                                                                                                                                                            |
| `item_01 <string>`          | "\n \\\subitem " أمر يُدرج بين عنصر من المستوى 0 وعنصر من المستوى 1.                                                                                                                                                                                              |
| `item_x1 <string>`          | "\n \\\subitem " أمر يُدرج بين عنصر من المستوى 0 وعنصر من المستوى 1، حيث لا يملك عنصر المستوى 0 أرقام صفحات مرتبطة.                                                                                                                                               |
| `item_12 <string>`          | "\n \\\subsubitem " أمر يُدرج بين عنصر من المستوى 1 وعنصر من المستوى 2.                                                                                                                                                                                           |
| `item_x2 <string>`          | "\n \\\subsubitem " أمر يُدرج بين عنصر من المستوى 1 وعنصر من المستوى 2، حيث لا يملك عنصر المستوى 1 أرقام صفحات مرتبطة.                                                                                                                                            |
| `delim_0 <string>`          | ", " الفاصل الذي يُدرج بين مفتاح من المستوى 0 ورقم صفحته الأول (الافتراضي: فاصلة يتبعها فراغ).                                                                                                                                                                    |
| `delim_1 <string>`          | ", " الفاصل الذي يُدرج بين مفتاح من المستوى 1 ورقم صفحته الأول (الافتراضي: فاصلة يتبعها فراغ).                                                                                                                                                                    |
| `delim_2 <string>`          | ", " الفاصل الذي يُدرج بين مفتاح من المستوى 2 ورقم صفحته الأول (الافتراضي: فاصلة يتبعها فراغ).                                                                                                                                                                    |
| `delim_n <string>`          | ", " الفاصل الذي يُدرج بين رقمين للصفحة لنفس المفتاح في أي مستوى (الافتراضي: فاصلة يتبعها فراغ).                                                                                                                                                                  |
| `delim_r <string>`          | "--" الفاصل الذي يُدرج بين رقم الصفحة الابتدائي ورقم الصفحة النهائي لنطاق.                                                                                                                                                                                        |
| `delim_t <string>`          | "" الفاصل الذي يُدرج في نهاية قائمة الصفحات. لا يؤثر هذا الفاصل في المدخلات التي لا تملك قائمة صفحات مرتبطة.                                                                                                                                                      |
| `encap_prefix <string>`     | "\\\\" الجزء الأول من بادئة الأمر الذي يُغلِّف رقم الصفحة.                                                                                                                                                                                                        |
| `encap_infix <string>`      | "{" الجزء الثاني من بادئة الأمر الذي يُغلِّف رقم الصفحة.                                                                                                                                                                                                          |
| `encap_suffix <string>`     | "}" لاحقة الأمر الذي يُغلِّف رقم الصفحة.                                                                                                                                                                                                                          |
| `line_max <number>`         | 72 الحد الأقصى لطول السطر في المخرجات، وبعده يلتف السطر.                                                                                                                                                                                                          |
| `indent_space <string>`     | "\t\t" مسافة تُدرج أمام السطر الملفوف (الافتراضي: علامتا تبويب).                                                                                                                                                                                                  |
| `indent_length <number>`    | 16 طول indent\_space (الافتراضي: 16، وهو ما يعادل علامتي تبويب).                                                                                                                                                                                                  |

## قراءات إضافية

لمزيد من المعلومات راجع:

* [المعاجم](/latex/ar/bnyh-almstnd/05-glossaries.md)
* [قوائم الجداول والأشكال](/latex/ar/alashkal-waljdawl/03-lists-of-tables-and-figures.md)
* [جدول المحتويات](/latex/ar/bnyh-almstnd/02-table-of-contents.md)
* [الأقسام والفصول](/latex/ar/bnyh-almstnd/01-sections-and-chapters.md)
* [الارتباطات التشعبية](/latex/ar/bnyh-almstnd/09-hyperlinks.md)
* [دعم اللغات الدولية](/latex/ar/allghat/03-international-language-support.md)
* [الإحالات المتبادلة بين الأقسام والمعادلات](/latex/ar/bnyh-almstnd/03-cross-referencing-sections-equations-and-floats.md)
* [الإدارة في مشروع كبير](/latex/ar/bnyh-almstnd/07-management-in-a-large-project.md)
* [مشاريع LaTeX متعددة الملفات](/latex/ar/bnyh-almstnd/08-multi-file-latex-projects.md)
* [توثيق حزمة imakeidx](http://mirror.math.ku.edu/tex-archive/macros/latex/contrib/imakeidx/imakeidx.pdf)


---

# Agent Instructions
This documentation is published with GitBook. GitBook is the documentation platform designed so that both humans and AI agents can read, navigate, and reason over technical content effectively. Learn more at gitbook.com.

## Querying This Documentation
If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter, and the optional `goal` query parameter:

```
GET https://overleaf-pro.ayaka.space/latex/ar/bnyh-almstnd/04-indices.md?ask=<question>&goal=<endgoal>
```

`ask` is the immediate question: it should be specific, self-contained, and written in natural language.
`goal` is optional and describes the broader end goal you are ultimately trying to accomplish on behalf of the user. GitBook uses it to tailor the answer towards what is most useful for that goal.

The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
