> 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/allghat/14-russian.md).

# الروسية

## مقدمة

تستكشف هذه المقالة تنضيد النص الروسي: وتمكين الاستخدام الصحيح لـ [السيريلية](https://en.wikipedia.org/wiki/Cyrillic_script) الأحرف، مثل ц وч وш وщ وъ وما إلى ذلك، وتوفير دعم للميزات الخاصة باللغة مثل الواصلة. إذا كنت تبحث عن تعليمات حول كيفية استخدام أكثر من لغة في مستند واحد، على سبيل المثال الإنجليزية والروسية، فانظر إلى [دعم اللغات الدولية](/latex/ar/allghat/03-international-language-support.md) المقالة.

## مثال روسي باستخدام pdfLaTeX

سنبدأ بما يلي **pdfLaTeX** مثال يمكنك فتحه في Overleaf باستخدام الرابط الموجود أسفل الشفرة. لأن الروسية تستخدم [الكتابة السيريلية](https://en.wikipedia.org/wiki/Cyrillic_script) يجب على pdfLaTeX أن يضمن ليس فقط معالجة الإدخال (الترميز) للنص السيريلي، بل أيضًا أن يضمن تطبيق الترميز الصحيح (للإخراج) على أي خطوط تُستخدم لتنضيد المستند. وتناقش مسائل الترميز هذه أدناه.

```latex
\documentclass{article}
\usepackage[T2A]{fontenc}

%قواعد الواصلة
%--------------------------------------
\usepackage{hyphenat}
\hyphenation{ма-те-ма-ти-ка вос-ста-нав-ли-вать}
%--------------------------------------
\usepackage[english, russian]{babel}
\begin{document}

\tableofcontents

\begin{abstract}
  هذه فقرة تمهيدية في بداية المستند.
\end{abstract}

\section{المقدمة}
 سيكون هذا النص باللغة الروسية. هذا يوضح أن أحرف السيريلية
 في المستند المُولَّد (Compile to PDF) تظهر بشكل صحيح. ولتحقيق ذلك يجب عليك تعيين اللغة المطلوبة (russian) وترميز الخط اللازم (T2A).

\vskip12pt

\textbf{سيكون هذا النص باللغة الروسية. هذا يوضح أن أحرف السيريلية في المستند المُولَّد (Compile to PDF) تظهر بشكل صحيح.}

\vskip12pt

\textit{سيكون هذا النص باللغة الروسية. هذا يوضح أن أحرف السيريلية في المستند المُولَّد (Compile to PDF) تظهر بشكل صحيح.}

\section{الصيغ الرياضية}
يمكن أيضًا استخدام الأحرف السيريلية في الوضع الرياضي.

\begin{equation}
  S_\textup{ис} = S_{123}
\end{equation}
\end{document}
```

[افتح مثال pdfLaTeX هذا في Overleaf](<https://www.overleaf.com/docs?engine=pdflatex\&snip_name=Example+to+typeset+Russian\&snip=\documentclass{article}&#xA;\usepackage\[T2A]{fontenc}&#xA;&#xA;%Hyphenation+rules&#xA;%--------------------------------------&#xA;\usepackage{hyphenat}&#xA;\hyphenation{ма-те-ма-ти-ка+вос-ста-нав-ли-вать}&#xA;%--------------------------------------&#xA;\usepackage\[english,+russian]{babel}&#xA;\begin{document}&#xA;+&#xA;\tableofcontents&#xA;&#xA;\begin{abstract}&#xA;++Это+вводный+абзац+в+начале+документа.&#xA;\end{abstract}&#xA;+&#xA;\section{Предисловие}&#xA;+Этот+текст+будет+на+русском+языке.+Это+демонстрация+того,+что+символы+кириллицы&#xA;+в+сгенерированном+документе+(Compile+to+PDF)+отображаются+правильно.+Для+этого+Вы+должны+установить+нужный++язык+(russian)+и+необходимую+кодировку+шрифта+(T2A).&#xA;&#xA;\vskip12pt&#xA;&#xA;\textbf{Этот+текст+будет+на+русском+языке.+Это+демонстрация+того,+что+символы+кириллицы+в+сгенерированном+документе+(Compile+to+PDF)+отображаются+правильно.}&#xA;&#xA;\vskip12pt&#xA;&#xA;\textit{Этот+текст+будет+на+русском+языке.+Это+демонстрация+того,+что+символы+кириллицы+в+сгенерированном+документе+(Compile+to+PDF)+отображаются+правильно.}+&#xA;&#xA;\section{Математические+формулы}&#xA;Кириллические+символы+также+могут+быть+использованы+в+математическом+режиме.&#xA;&#xA;\begin{equation}&#xA;++S_\textup{ис}+=+S_{123}&#xA;\end{equation}&#xA;\end{document}>)

ينتج هذا المثال المخرجات التالية:

![صورة تُظهر نصًا روسيًا منضدًا في LaTeX](/files/e1312832bdc1f3900920ea6b7d928ddf47f55275)

## موضوعات خلفية: الأحرف والرموز الترميزية

تقدم الأقسام التالية مادة خلفية حول موضوعات تتعلق بتنضيد لغات مختلفة باستخدام LaTeX (ويرتبط معظمها بـ pdfLaTeX).

### ملفات النص: الأعداد الصحيحة والأحرف

أي ملف نصي، مثل ملف إدخال LaTeX `.tex` ، ليس سوى تدفق من القيم العددية (الصحيحة) التي تُستخدم كآلية لـ *تمثيل* أحرف النص؛ وبالتالي فإن معالجة ملف نصي تتضمن فحص (قراءة/معالجة) سلسلة من القيم الصحيحة. ومع ذلك، يبرز سؤال مهم: *أي مجموعة من الأحرف* يتم تمثيلها فعليًا بواسطة القيم الصحيحة الموجودة في ملف نصي معين؟ وبعبارة أخرى، كيف جرى *ترميزها*: ما هي "الخريطة" (الترميز) الصحيحة (المقصودة) من الأعداد الصحيحة في ملف النص إلى الأحرف المقابلة التي يُفترض أن *تمثيل*?

يمكن إنشاء الملفات النصية داخل عدد لا حصر له من بيئات الحوسبة: عبر بلدان/قارات مختلفة، وباستخدام مجموعة كبيرة من الأجهزة وأنظمة التشغيل وأدوات التحرير المختلفة. وقد يستخدم منشئو الملفات النصية، من حيث المبدأ، ترميزات نصية مختلفة وفقًا للمتطلبات المحلية، مثل اللغة، عند إنشاء وتخزين تسلسل القيم الصحيحة المختارة لتمثيل الأحرف الفردية الموجودة في ملف نصي. قد يعمل هذا جيدًا إذا بقيت الملفات النصية المُنشأة ضمن نظم تقنية متوافقة تستخدم الترميز نفسه، ولكن ماذا سيحدث عندما تُنقل تلك الملفات إلى بيئات مختلفة تمامًا—لأن العديد من الملفات النصية لا تحتوي على أي معلومات تشير إلى الترميز المستخدم لإنشائها.

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

### ترميز الإدخال: inputenc وUTF-8 وتغيير في LaTeX عام 2018

تاريخيًا، استُخدمت مجموعة متنوعة من ترميزات 8 بت لإنشاء/معالجة الملفات النصية، بما في ذلك مدخلات LaTeX. ولتختصر قصة طويلة جدًا، أنشأ مطورو LaTeX حزمة `inputenc` لمعالجة مسائل الترميز—مما يسمح بنقل الملفات النصية، المنشأة باستخدام ترميزات مختلفة، بين تثبيتات LaTeX المتباينة.

ومع مرور الوقت، ابتعد المستخدمون/مطورو البرمجيات عن ترميزات 8 بت المتعددة واتجهوا إلى استخدام يونيكود ومخطط ترميزه UTF-8، الذي أصبح الخيار الفعلي لترميز الملفات النصية. وقبل عام 2018، كانت مقدمات مستندات LaTeX تتضمن السطر

```latex
\usepackage[utf8]{inputenc}
```

قد يلاحظ القراء أن المثال أعلاه لا يتضمن السطر `\usepackage[utf8]{inputenc}` في مقدمة المستند: لماذا ذلك؟ يرجع هذا إلى تغيير مهم أُدخل على LaTeX في عام 2018: التحول إلى UTF-8 بوصفه الترميز الافتراضي لـ *الإدخال* الترميز. المستندات المنضدة بـ pdfLaTeX، والمستخدمة لنص مُرمَّز بـ UTF-8، بما في ذلك تلك المنشأة والمنضدة على Overleaf، لم تعد *تحتاج* إلى تضمين `\usepackage[utf8]{inputenc}` ولكنه [لا يضر القيام بذلك](https://www.latex-project.org/news/2018/04/10/issue28-of-latex2e-news-released/). لمزيد من المعلومات، انظر إلى [عدد أبريل 2018 من LaTeX News](https://www.latex-project.org/news/2018/04/10/issue28-of-latex2e-news-released/) ومنشور مدونة Overleaf [*ترقية TeX Live — سبتمبر 2019*](https://www.overleaf.com/blog/tex-live-upgrade-september-2019). جميع الملفات النصية المنشأة على Overleaf مُرمَّزة باستخدام UTF-8.

### ترميز الإخراج: حزمة fontenc (للاستخدام مع pdfLaTeX)

لتنضيد الأحرف الموجودة داخل ملفات الإدخال بشكل صحيح، يجب ربط تلك الأحرف بـ *أشكال الإخراج* (الأشكال الرسومية) الموجودة في الخطوط المستخدمة لتنضيد المستند. ويتولى حزمة أخرى تُسمى `fontenc`.

لاستخدام `fontenc` أدرج السطر التالي في مقدمة المستند لديك، باستخدام ترميز مثل [ترميز T2A](http://mirrors.ctan.org/macros/latex/base/encguide.pdf)، الذي يدعم الخط السيريلي:

```latex
\usepackage[T2A]{fontenc}
```

يعرض المخطط التالي `T2A` ترميز الخط للنص السيريلي. وهو منقول من الصفحة 23 من المستند *ترميزات خطوط LaTeX* والذي [متاح على CTAN](http://mirrors.ctan.org/macros/latex/base/encguide.pdf).

![](/files/1f190378c2cd18a73e137bacf7abc1cc65bd33ea)

## حزم وأوامر خاصة باللغة

لتوسيع قدرات LaTeX الافتراضية، ولتحقيق تقسيم صحيح للكلمات وترجمة أسماء عناصر المستند، استورد [`babel` الحزمة](https://ctan.org/pkg/babel?lang=en) واستخدم `russian` خيار اللغة:

```latex
\usepackage[russian]{babel}
```

كما قد ترى في المثال في [المقدمة](#introduction)، فبدلًا من "Abstract" و"Contents" تُستخدم الكلمتان الروسيتان "Аннотация" و"Содержание". ويمكن أيضًا استخدام الأحرف السيريلية في الوضع الرياضي.

إذا كنت بحاجة إلى تضمين أكثر من لغة واحدة، على سبيل المثال الروسية والإنجليزية، فانظر إلى [دعم اللغات الدولية](/latex/ar/allghat/03-international-language-support.md) المقالة لمعرفة كيفية تحقيق ذلك. ويمكن العثور على قدر كبير من المعلومات الخلفية المفيدة في المستند [وحدة اللغة الروسية لـ Babel](http://mirrors.ctan.org/macros/latex/contrib/babel-contrib/russian/russianb.pdf).

## فصل الكلمات

لتحقيق فواصل الأسطر، يجب تقسيم بعض الكلمات بالواصلة: أي تجزئتها إلى مقاطع تفصل بينها `-`  (واصلة)، مما يسمح للكلمة بالاستمرار في السطر التالي. على سبيل المثال، يمكن أن تصبح математика على هيئة мате-мати-ка. وتقوم `babel` الحزمة عادةً بعمل جيد في فصل الكلمات، لكنك قد تحتاج أحيانًا إلى تحديد نقاط الفصل يدويًا، وهو ما يمكنك فعله باستخدام هذه الأوامر في المقدمة:

```latex
 \usepackage{hyphenat}
  \hyphenation{мате-мати-ка восста-навливать}
```

`\usepackage{hyphenat}` يستورد عائلة الخط [`hyphenat` الحزمة](https://ctan.org/pkg/hyphenat?lang=en) والسطر الثاني عبارة عن قائمة كلمات مفصولة بمسافات مع نقاط فصل محددة. إذا أردت منع الفصل التلقائي لكلمة `*كلمة*`، فاستخدم الأمر `{\nobreak *كلمة*}` داخل مستندك.

## مثال أخير

يضبط هذا المثال الأخير LaTeX بحيث يمكن تنضيد النص الروسي باستخدام pdfLaTeX وXeLaTeX وLuaLuaTeX—وللتبديل بين المترجمات في Overleaf، انظر المقالة [تغيير المترجم](/latex/ar/qaadh-almarfh/026-changing-compiler.md).

يستخدم هذا المثال `\iftutex` الأمر من [`iftex` الحزمة](https://ctan.org/pkg/iftex?lang=en) للكشف عمّا إذا كان هناك محرك يدعم يونيكود (LuaTeX أو XeTeX) يُستخدم لتجميع كود LaTeX (المستند). إذا كان الأمر كذلك، فإن [خطوط Noto من نوع OpenType](https://fonts.google.com/noto/fonts) تُهيَّأ عبر [`fontspec` الحزمة](https://ctan.org/pkg/fontspec?lang=en) وتُستخدم لتنضيد المستند. وإذا تم اكتشاف محرك لا يدعم يونيكود، مثل pdfTeX، فإن كود LaTeX (المستند) يُنضَّد باستخدام تقنيات الخطوط القديمة ذات 8 بت (المبنية على [Adobe Type 1](https://en.wikipedia.org/wiki/PostScript_fonts#Type_1)).

يفتح الكود التالي في Overleaf ويُضبط افتراضيًا على التجميع باستخدام XeLaTeX. لاستخدام مترجم مختلف، انظر المقالة [تغيير المترجم](/latex/ar/qaadh-almarfh/026-changing-compiler.md).

```latex
\documentclass{article}
\usepackage{iftex}
\iftutex
% بالنسبة إلى LuaTeX أو XeTeX استخدم
% خطوط Noto من نوع OpenType لتنضيد
% النص الروسي
\usepackage{fontspec}
\defaultfontfeatures{Ligatures={TeX}}
\setmainfont{Noto Serif}
\setsansfont{Noto Sans}
\setmonofont{Noto Sans Mono}
\else
% بالنسبة إلى pdfTeX يجب أن نستخدم
% تقنيات الخطوط القديمة ذات 8 بت
\usepackage[T2A]{fontenc}
\fi
%قواعد الواصلة
\usepackage{hyphenat}
\hyphenation{ма-те-ма-ти-ка вос-ста-нав-ли-вать}
\usepackage[english, russian]{babel}
\begin{document}

سيكون هذا النص باللغة الروسية. هذا يوضح أن أحرف السيريلية في المستند المُولَّد تظهر بشكل صحيح.

\vskip12pt

\textbf{سيكون هذا النص باللغة الروسية. هذا يوضح أن أحرف السيريلية في المستند المُولَّد تظهر بشكل صحيح.}

\vskip12pt

\textit{سيكون هذا النص باللغة الروسية. هذا يوضح أن أحرف السيريلية في المستند المُولَّد تظهر بشكل صحيح.}

\vskip12pt

\texttt{سيكون هذا النص باللغة الروسية.}
\end{document}
```

[افتح هذا المثال على Overleaf](<https://www.overleaf.com/docs?engine=xelatex\&snip_name=Typesetting+Russian+using+different+compilers\&snip=\documentclass{article}&#xA;\usepackage{iftex}&#xA;\iftutex&#xA;%+For+LuaTeX+or+XeTeX+Use+Google's+&#xA;%+OpenType+Noto+fonts+for+typesetting&#xA;%+Russian+text&#xA;\usepackage{fontspec}&#xA;\defaultfontfeatures{Ligatures={TeX}}&#xA;\setmainfont{Noto+Serif}&#xA;\setsansfont{Noto+Sans}&#xA;\setmonofont{Noto+Sans+Mono}&#xA;\else&#xA;%+For+pdfTeX+we+must+use+old&#xA;%+8-bit+font+technologies&#xA;\usepackage\[T2A]{fontenc}&#xA;\fi&#xA;%Hyphenation+rules&#xA;\usepackage{hyphenat}&#xA;\hyphenation{ма-те-ма-ти-ка+вос-ста-нав-ли-вать}&#xA;\usepackage\[english,+russian]{babel}&#xA;\begin{document}&#xA;&#xA;Этот+текст+будет+на+русском+языке.+Это+демонстрация+того,+что+символы+кириллицы+в+сгенерированном+документе+отображаются+правильно.&#xA;&#xA;\vskip12pt&#xA;&#xA;\textbf{Этот+текст+будет+на+русском+языке.+Это+демонстрация+того,+что+символы+кириллицы+в+сгенерированном+документе+отображаются+правильно.}&#xA;&#xA;\vskip12pt&#xA;&#xA;\textit{Этот+текст+будет+на+русском+языке.+Это+демонстрация+того,+что+символы+кириллицы+в+сгенерированном+документе+отображаются+правильно.}+&#xA;&#xA;\vskip12pt&#xA;&#xA;\texttt{Этот+текст+будет+на+русском+языке.}&#xA;\end{document}>)

باستخدام XeLaTeX، ينتج هذا المثال المخرجات التالية:

![صورة تُظهر نصًا روسيًا منضدًا في LaTeX](/files/9ec24b7235869d63d5fd3238df246e99d9f150de)

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

لمزيد من المعلومات، انظر

* [دعم الخطوط الحديثة باستخدام XƎLaTeX](/latex/ar/alkhtwt/03-xelatex.md)
* [تنسيق الاقتباسات وعلامات الاقتباس](/latex/ar/allghat/04-typesetting-quotations.md)
* [دعم اللغات الدولية](/latex/ar/allghat/03-international-language-support.md)
* [الصينية](/latex/ar/allghat/06-chinese.md)
* [الفرنسية](/latex/ar/allghat/07-french.md)
* [الألمانية](/latex/ar/allghat/08-german.md)
* [اليونانية](/latex/ar/allghat/09-greek.md)
* [الإيطالية](/latex/ar/allghat/10-italian.md)
* [اليابانية](/latex/ar/allghat/11-japanese.md)
* [الكورية](/latex/ar/allghat/12-korean.md)
* [البرتغالية](/latex/ar/allghat/13-portuguese.md)
* [العربية](/latex/ar/allghat/05-arabic.md)
* [الإسبانية](/latex/ar/allghat/15-spanish.md)
* [وحدة اللغة الروسية لـ Babel](http://mirrors.ctan.org/macros/latex/contrib/babel-contrib/russian/russianb.pdf)
* [تاريخ ترميزات T2A وT2B وT2C السيريلية](https://tug.org/TUGboat/tb19-4/tb61berd.pdf)
* [المقدمة التي ليست قصيرة جدًا إلى LaTeX2ε](http://www.ctan.org/tex-archive/info/lshort/)
* [LaTeX/التدويل على WikiBooks](http://en.wikibooks.org/wiki/LaTeX/Internationalization)
* [LaTeX/الأحرف\_الخاصة على WikiBooks](http://en.wikibooks.org/wiki/LaTeX/Special_Characters)


---

# 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/allghat/14-russian.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.
