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

# Ruština

## Úvod

Tento článek se zabývá sazbou ruského textu: umožněním správného použití [cyrilice](https://en.wikipedia.org/wiki/Cyrillic_script) znaků, jako jsou ц, ч, ш, щ, ъ atd., a poskytováním podpory pro jazykově specifické funkce, jako je dělení slov. Pokud hledáte návod, jak používat více než jeden jazyk v jednom dokumentu, například angličtinu a ruštinu, podívejte se na [Podpora mezinárodních jazyků](/latex/cs/jazyky/03-international-language-support.md) článek.

## Ruský příklad s použitím pdfLaTeX

Začneme následujícím **pdfLaTeX** příkladem, který si můžete v Overleafu otevřít pomocí odkazu pod kódem. Protože ruština používá [cyrilické písmo](https://en.wikipedia.org/wiki/Cyrillic_script) pdfLaTeX musí zajistit, že nejen správně zpracuje vstup (kódování) cyrilického textu, ale také že pro jakékoli fonty použité k sazbě dokumentu bude použito správné (výstupní) kódování. O těchto problémech s kódováním se pojednává níže.

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

%Pravidla dělení slov
%--------------------------------------
\usepackage{hyphenat}
\hyphenation{ма-те-ма-ти-ка вос-ста-нав-ли-вать}
%--------------------------------------
\usepackage[english, russian]{babel}
\begin{document}

\tableofcontents

\begin{abstract}
  Toto je úvodní odstavec na začátku dokumentu.
\end{abstract}

\section{Předmluva}
 Tento text bude v ruštině. Je to ukázka toho, že znaky cyrilice
 se vygenerovaném dokumentu (Compile to PDF) zobrazují správně. K tomu musíte nastavit požadovaný jazyk (russian) a potřebné kódování fontu (T2A).

\vskip12pt

\textbf{Tento text bude v ruštině. Je to ukázka toho, že znaky cyrilice se vygenerovaném dokumentu (Compile to PDF) zobrazují správně.}

\vskip12pt

\textit{Tento text bude v ruštině. Je to ukázka toho, že znaky cyrilice se vygenerovaném dokumentu (Compile to PDF) zobrazují správně.}

\section{Matematické vzorce}
Cyrilické znaky lze také použít v matematickém režimu.

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

[Otevřete tento příklad pdfLaTeX v Overleafu](<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}>)

Tento příklad vytvoří následující výstup:

![Obrázek zobrazující ruský text vysazený v LaTeXu](/files/d14b2665261706815bcb44f8db30d04f42433362)

## Pozadí: znaky a kódování

Následující oddíly poskytují podkladový materiál k tématům souvisejícím se sazbou různých jazyků pomocí LaTeXu (většinou souvisejícím s pdfLaTeXem).

### Textové soubory: čísla a znaky

Jakýkoli textový soubor, například vstupní soubor LaTeXu, `.tex` není ničím jiným než proudem číselných (celých) hodnot, které slouží jako mechanismus k *reprezentaci* znaků textu; zpracování textového souboru proto zahrnuje prohledávání (čtení/zpracování) řady celých číselných hodnot. Vzniká však důležitá otázka: *která množina znaků* je vlastně reprezentována celočíselnými hodnotami obsaženými v konkrétním textovém souboru? Jinými slovy, jak byly tyto celočíselné hodnoty *zakódovány*: jaké je správné (zamýšlené) „mapování“ (kódování) z celých čísel v textovém souboru na odpovídající znaky, které mají *reprezentaci*?

Textové soubory mohou vznikat v nesčetných výpočetních prostředích: v různých zemích/na různých kontinentech, pomocí mnoha různých zařízení, operačních systémů a editačních nástrojů. Původci textových souborů mohou při generování a ukládání posloupnosti celých čísel zvolených k reprezentaci jednotlivých znaků obsažených v textovém souboru potenciálně používat nebo uplatňovat různá textová kódování podle místních požadavků, například podle jazyka. To může fungovat dobře, pokud se vygenerované textové soubory drží v kompatibilních technických ekosystémech, které používají stejné kódování, ale co se stane, když jsou tyto soubory přeneseny do zcela odlišných prostředí — protože mnoho textových souborů neobsahuje žádnou informaci, která by označovala kódování použité k jejich vytvoření.

Je zřejmé, že producent (autor) a spotřebitel (uživatel) textových dat se musí nějak dohodnout na používaném kódování (mapování), jinak *chyby kódování* pravděpodobně vzniknou kvůli nesouladu mezi celočíselnými daty v souboru a množinou znaků, o níž se předpokládá, že je reprezentují. Kromě správného mapování celočíselných hodnot textového souboru na znaky vyžaduje jakékoli následné vizuální zobrazení těchto znaků nějakou podobu fontu, který je schopen poskytnout data (tvary, nebo dokonce bitmapy) pro výstupní vizuální reprezentaci požadovaných znaků.

### Vstupní kódování: balíček inputenc, UTF-8 a změna v LaTeXu v roce 2018

Historicky se k vytváření/zpracování textových souborů, včetně vstupů LaTeXu, používala řada 8bitových kódování. Abychom velmi dlouhý příběh zkrátili, vývojáři LaTeXu vytvořili `inputenc` balíček, který řeší problémy s kódováním — umožňuje přenášet textové soubory vytvořené pomocí různých kódování mezi odlišnými instalacemi LaTeXu.

Postupem času však uživatelé a vývojáři softwaru přešli od více 8bitových kódování k používání Unicode a jeho kódovacího schématu UTF-8, které se stalo de facto možností pro kódování textových souborů. Před rokem 2018 obsahovaly preambule dokumentů LaTeXu pro zpracování souborů v UTF-8 řádek

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

Čtenáři si mohou všimnout, že výše uvedený příklad neobsahuje řádek `\usepackage[utf8]{inputenc}` v preambuli dokumentu: proč tomu tak je? Je to kvůli důležité změně v LaTeXu zavedené v roce 2018: přechodu na UTF-8 jako výchozí *vstupní* kódování. Dokumenty sázené pomocí pdfLaTeXu a používající text kódovaný v UTF-8, včetně těch vytvořených a sázených v Overleafu, již *nepotřebují* uvádět `\usepackage[utf8]{inputenc}` ale [jej uvádět neškodí](https://www.latex-project.org/news/2018/04/10/issue28-of-latex2e-news-released/). Další informace viz [dubnové číslo LaTeX News 2018](https://www.latex-project.org/news/2018/04/10/issue28-of-latex2e-news-released/) a příspěvek na blogu Overleafu [*Aktualizace TeX Live — září 2019*](https://www.overleaf.com/blog/tex-live-upgrade-september-2019). Všechny textové soubory vytvořené v Overleafu jsou kódovány pomocí UTF-8.

### Výstupní kódování: balíček fontenc (pro použití s pdfLaTeXem)

Aby bylo možné správně vysázet znaky obsažené ve vstupních souborech, musí být tyto znaky namapovány na příslušné *výstupní tvary* (glyfy) obsažené ve fontech používaných k sazbě dokumentu. Toto „výstupní kódování“ zajišťuje další balíček nazvaný `fontenc`.

Chcete-li použít `fontenc` uveďte v preambuli dokumentu následující řádek s kódováním, například [kódováním T2A](http://mirrors.ctan.org/macros/latex/base/encguide.pdf), které podporuje cyrilici:

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

Následující tabulka uvádí `T2A` kódování fontů pro cyrilický text. Je převzata ze strany 23 dokumentu *Kódování fontů v LaTeXu* který je [dostupný na CTANu](http://mirrors.ctan.org/macros/latex/base/encguide.pdf).

![](/files/9e52e7a00658c2cfe31abddd9b2499e754efd0ac)

## Balíčky a příkazy specifické pro jazyk

Chcete-li rozšířit výchozí možnosti LaTeXu, pro správné dělení slov a překlad názvů prvků dokumentu, importujte [`babel` accents](https://ctan.org/pkg/babel?lang=en) a použijte `jazykovou možnost` :

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

Jak můžete vidět v příkladu v [úvodu](#introduction), místo „Abstract“ a „Contents“ se používají ruská slova „Аннотация“ a „Содержание“. Cyrilické znaky lze použít také v matematickém režimu.

Pokud potřebujete zahrnout více než jeden jazyk, například ruštinu a angličtinu, podívejte se na [Podpora mezinárodních jazyků](/latex/cs/jazyky/03-international-language-support.md) článek, kde se dozvíte, jak toho dosáhnout. Mnoho užitečných podkladových informací lze nalézt v dokumentu [Modul ruského jazyka pro Babel](http://mirrors.ctan.org/macros/latex/contrib/babel-contrib/russian/russianb.pdf).

## Dělení slov

Aby bylo možné dosahovat zalomení řádků, některá slova musí být rozdělena na slabiky oddělené `-` (spojovníkem), což umožní pokračování slova na dalším řádku. Například matematika by se mohla stát mate-mati-ka. Balíček `babel` obvykle odvádí dobrou práci při dělení slov, ale občas může být nutné definovat body dělení ručně, což můžete provést pomocí těchto příkazů v preambuli:

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

`\usepackage{hyphenat}` načítá [`hyphenat` accents](https://ctan.org/pkg/hyphenat?lang=en) a druhý řádek je seznam slov oddělených mezerami s definovanými body dělení. Pokud chcete zabránit automatickému dělení konkrétního `*slova*`, použijte příkaz `{\nobreak *slovo*}` v rámci dokumentu.

## Závěrečný příklad

Tento závěrečný příklad nastavuje LaTeX tak, aby ruský text mohl být sázen pomocí pdfLaTeXu, XeLaTeXu a LuaLuaTeXu — pro přepínání překladačů v Overleafu viz článek [Změna překladače](/latex/cs/znalostni-baze/026-changing-compiler.md).

Tento příklad používá `\iftutex` příkaz z balíčku [`iftex` accents](https://ctan.org/pkg/iftex?lang=en) k detekci, zda se při kompilaci kódu LaTeXu (dokumentu) používá engine rozumějící Unicode (LuaTeX nebo XeTeX). Pokud ano, jsou Googleovy [fonty OpenType Noto](https://fonts.google.com/noto/fonts) nakonfigurovány pomocí [`fontspec` accents](https://ctan.org/pkg/fontspec?lang=en) a použity k sazbě dokumentu. Pokud je detekován engine nerozumějící Unicode, například pdfTeX, je kód LaTeXu (dokument) sázen pomocí starých 8bitových fontových technologií (založených na [Adobe Type 1](https://en.wikipedia.org/wiki/PostScript_fonts#Type_1)).

Následující kód se otevře v Overleafu a ve výchozím nastavení se kompiluje pomocí XeLaTeXu. Chcete-li použít jiný překladač, viz článek [Změna překladače](/latex/cs/znalostni-baze/026-changing-compiler.md).

```latex
\documentclass{article}
\usepackage{iftex}
\iftutex
% Pro LuaTeX nebo XeTeX použijte Googleovy
% fonty OpenType Noto pro sazbu
% ruského textu
\usepackage{fontspec}
\defaultfontfeatures{Ligatures={TeX}}
\setmainfont{Noto Serif}
\setsansfont{Noto Sans}
\setmonofont{Noto Sans Mono}
\else
% Pro pdfTeX musíme použít staré
% 8bitové fontové technologie
\usepackage[T2A]{fontenc}
\fi
%Pravidla dělení slov
\usepackage{hyphenat}
\hyphenation{ма-те-ма-ти-ка вос-ста-нав-ли-вать}
\usepackage[english, russian]{babel}
\begin{document}

Tento text bude v ruštině. Je to ukázka toho, že znaky cyrilice ve vygenerovaném dokumentu se zobrazují správně.

\vskip12pt

\textbf{Tento text bude v ruštině. Je to ukázka toho, že znaky cyrilice ve vygenerovaném dokumentu se zobrazují správně.}

\vskip12pt

\textit{Tento text bude v ruštině. Je to ukázka toho, že znaky cyrilice ve vygenerovaném dokumentu se zobrazují správně.}

\vskip12pt

\texttt{Tento text bude v ruštině.}
\end{document}
```

[Otevřít tento příklad v Overleafu](<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}>)

Při použití XeLaTeXu tento příklad vytvoří následující výstup:

![Obrázek zobrazující ruský text vysazený v LaTeXu](/files/23cab1bc795614c0b818a819e92c37bcf1356ba5)

## Další čtení

Další informace najdete v

* [Podpora moderních fontů s XƎLaTeX](/latex/cs/pisma/03-xelatex.md)
* [Sazba citací a uvozovek](/latex/cs/jazyky/04-typesetting-quotations.md)
* [Podpora mezinárodních jazyků](/latex/cs/jazyky/03-international-language-support.md)
* [Čínština](/latex/cs/jazyky/06-chinese.md)
* [Francouzština](/latex/cs/jazyky/07-french.md)
* [Němčina](/latex/cs/jazyky/08-german.md)
* [Řečtina](/latex/cs/jazyky/09-greek.md)
* [Italština](/latex/cs/jazyky/10-italian.md)
* [Japonština](/latex/cs/jazyky/11-japanese.md)
* [korejština](/latex/cs/jazyky/12-korean.md)
* [Portugalština](/latex/cs/jazyky/13-portuguese.md)
* [Arabština](/latex/cs/jazyky/05-arabic.md)
* [Španělština](/latex/cs/jazyky/15-spanish.md)
* [Modul ruského jazyka pro Babel](http://mirrors.ctan.org/macros/latex/contrib/babel-contrib/russian/russianb.pdf)
* [Historie cyrilických kódování T2A, T2B a T2C](https://tug.org/TUGboat/tb19-4/tb61berd.pdf)
* [Ne zcela krátký úvod do LaTeX2ε](http://www.ctan.org/tex-archive/info/lshort/)
* [LaTeX/Internationalization na WikiBooks](http://en.wikibooks.org/wiki/LaTeX/Internationalization)
* [LaTeX/Special\_Characters na 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/cs/jazyky/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.
