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

# Ruso

## Introducción

Este artículo explora la composición tipográfica del texto ruso: permitiendo el uso correcto de [cirílico](https://en.wikipedia.org/wiki/Cyrillic_script) caracteres, como ц, ч, ш, щ, ъ, etc., y proporcionando soporte para funciones específicas del idioma, como la separación de palabras. Si busca instrucciones sobre cómo usar más de un idioma en un solo documento, por ejemplo inglés y ruso, consulte el [Compatibilidad con idiomas internacionales](/latex/es/idiomas/03-international-language-support.md) artículo.

## Ejemplo en ruso usando pdfLaTeX

Empezaremos con el siguiente **pdfLaTeX** ejemplo, que puede abrir en Overleaf usando el enlace debajo del código. Debido a que el ruso usa el [escritura cirílica](https://en.wikipedia.org/wiki/Cyrillic_script) pdfLaTeX debe asegurarse no solo de manejar la entrada (codificación) del texto cirílico, sino también de que la codificación correcta de salida se aplique a todas las fuentes usadas para componer el documento. Estos problemas de codificación se analizan a continuación.

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

%Reglas de separación de palabras
%--------------------------------------
\usepackage{hyphenat}
\hyphenation{ма-те-ма-ти-ка вос-ста-нав-ли-вать}
%--------------------------------------
\usepackage[english, russian]{babel}
\begin{document}

\tableofcontents

\begin{abstract}
  Este es un párrafo introductorio al principio del documento.
\end{abstract}

\section{Prefacio}
 Este texto estará en ruso. Esta es una demostración de que los caracteres cirílicos
 en el documento generado (Compile to PDF) se muestran correctamente. Para ello debe establecer el idioma adecuado (russian) y la codificación de fuente necesaria (T2A).

\vskip12pt

\textbf{Este texto estará en ruso. Esta es una demostración de que los caracteres cirílicos en el documento generado (Compile to PDF) se muestran correctamente.}

\vskip12pt

\textit{Este texto estará en ruso. Esta es una demostración de que los caracteres cirílicos en el documento generado (Compile to PDF) se muestran correctamente.}

\section{Fórmulas matemáticas}
Los caracteres cirílicos también pueden usarse en modo matemático.

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

[Abra este ejemplo de pdfLaTeX en 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}>)

Este ejemplo produce la siguiente salida:

![Imagen que muestra texto ruso compuesto en LaTeX](/files/e80a313a38ec3d397e08d4ec29b6df57870c1004)

## Temas de fondo: caracteres y codificaciones

Las siguientes secciones proporcionan material de fondo sobre temas relacionados con la composición tipográfica de distintos idiomas usando LaTeX (principalmente relacionados con pdfLaTeX).

### Archivos de texto: enteros y caracteres

Cualquier archivo de texto, como un archivo de entrada de LaTeX `.tex` archivo, no es más que un flujo de valores numéricos (enteros) que se usan como mecanismo para *representar* caracteres del texto; en consecuencia, procesar un archivo de texto implica escanear (leer/procesar) una serie de valores enteros. Sin embargo, surge una pregunta importante: *qué conjunto de caracteres* está realmente representado por los valores enteros contenidos en un archivo de texto concreto? En otras palabras, ¿cómo han sido *codificados*: ¿cuál es el «mapeo» (codificación) correcto (pretendido) de enteros en el archivo de texto a los caracteres correspondientes que se supone que deben *representar*?

Los archivos de texto pueden generarse en innumerables entornos informáticos: en distintos países/continentes, usando multitud de dispositivos, sistemas operativos y herramientas de edición diferentes. Quienes originan archivos de texto podrían, potencialmente, usar o aplicar distintas codificaciones de texto según requisitos locales, como el idioma, al generar y almacenar la secuencia de valores enteros elegidos para representar los caracteres individuales contenidos en un archivo de texto. Esto puede funcionar bien si los archivos de texto generados permanecen dentro de ecosistemas técnicos compatibles, que usan la misma codificación, pero ¿qué ocurriría cuando esos archivos se transfieren a entornos completamente distintos?, porque muchos archivos de texto no contienen información alguna que indique la codificación usada para generarlos.

Está claro que el productor (origen) y el consumidor (usuario) de datos textuales deben, de algún modo, ponerse de acuerdo sobre la codificación (mapeo) que se está usando; de lo contrario *los errores de codificación* es probable que surjan debido a desajustes entre los datos enteros del archivo y el conjunto de caracteres que se supone que representa. Además de mapear correctamente los valores enteros de un archivo de texto a caracteres, cualquier visualización posterior de esos caracteres requiere algún tipo de fuente capaz de proporcionar los datos (formas, o incluso mapas de bits) para producir una representación visual de los caracteres deseados.

### Codificación de entrada: inputenc, UTF-8 y un cambio en LaTeX en 2018

Históricamente, se utilizó una variedad de codificaciones de 8 bits para generar/procesar archivos de texto, incluidas las entradas de LaTeX. Para resumir una historia muy larga, los desarrolladores de LaTeX crearon el `inputenc` paquete para abordar los problemas de codificación, permitiendo que los archivos de texto creados con diversas codificaciones se transfirieran entre instalaciones de LaTeX diferentes.

Sin embargo, con el tiempo, los usuarios/desarrolladores de software pasaron de múltiples codificaciones de 8 bits a usar Unicode y su esquema de codificación UTF-8, que se convirtió en la opción de facto para codificar archivos de texto. Antes de 2018, para procesar archivos codificados en UTF-8, los preámbulos de los documentos LaTeX incluían la línea

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

Los lectores podrían observar que el ejemplo anterior no incluye la línea `\usepackage[utf8]{inputenc}` en el preámbulo del documento: ¿por qué? Esto se debe a un cambio importante introducido en LaTeX en 2018: el paso a UTF-8 como la *entrada* codificación predeterminada. Los documentos compuestos con pdfLaTeX y que usan texto codificado en UTF-8, incluidos los creados y compuestos en Overleaf, ya no *necesitan* incluir `\usepackage[utf8]{inputenc}` pero [no hace daño hacerlo](https://www.latex-project.org/news/2018/04/10/issue28-of-latex2e-news-released/). Para más información, consulte el [número de abril de 2018 de LaTeX News](https://www.latex-project.org/news/2018/04/10/issue28-of-latex2e-news-released/) y la entrada del blog de Overleaf [*Actualización de TeX Live—septiembre de 2019*](https://www.overleaf.com/blog/tex-live-upgrade-september-2019). Todos los archivos de texto creados en Overleaf están codificados usando UTF-8.

### Codificación de salida: el paquete fontenc (para usar con pdfLaTeX)

Para componer correctamente los caracteres contenidos en los archivos de entrada, esos caracteres deben mapearse a las *formas de salida* (glifos) contenidas en las fuentes usadas para componer el documento. Esta «codificación de salida» la gestiona otro paquete llamado `fontenc`.

Para usar `fontenc` incluya la siguiente línea en el preámbulo de su documento, usando una codificación como la [codificación T2A](http://mirrors.ctan.org/macros/latex/base/encguide.pdf), que admite la escritura cirílica:

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

El siguiente cuadro enumera la `T2A` codificación de fuente para texto cirílico. Se reproduce de la página 23 del documento *Codificaciones de fuente de LaTeX* que está [disponible en CTAN](http://mirrors.ctan.org/macros/latex/base/encguide.pdf).

![](/files/be1a5d9b9ca67878075f8c86ac38e6f51aeb0b87)

## Paquetes y comandos específicos de idioma

Para ampliar las capacidades predeterminadas de LaTeX, para una correcta separación de palabras y la traducción de los nombres de los elementos del documento, importe el [`babel` paquete](https://ctan.org/pkg/babel?lang=en) y use la `russian` opción de idioma:

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

Como puede ver en el ejemplo de la [introducción](#introduction), en lugar de «Abstract» y «Contents» se usan las palabras rusas «Аннотация» y «Содержание». Los caracteres cirílicos también pueden usarse en modo matemático.

Si necesita incluir más de un idioma, por ejemplo, ruso e inglés, consulte el [Compatibilidad con idiomas internacionales](/latex/es/idiomas/03-international-language-support.md) artículo para aprender cómo lograrlo. Puede encontrarse una gran cantidad de información de fondo útil en el documento [Módulo del idioma ruso para Babel](http://mirrors.ctan.org/macros/latex/contrib/babel-contrib/russian/russianb.pdf).

## Separación de palabras

Para lograr los saltos de línea, algunas palabras deben separarse: dividirse en sílabas separadas por un `-` (guion), permitiendo que la palabra continúe en la línea siguiente. Por ejemplo, математика podría convertirse en мате-мати-ка. El `babel` paquete suele hacer un buen trabajo de separación de palabras, pero, ocasionalmente, puede que necesite definir manualmente los puntos de separación, lo cual puede hacer usando estos comandos en el preámbulo:

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

`\usepackage{hyphenat}` importa el [`hyphenat` paquete](https://ctan.org/pkg/hyphenat?lang=en) y la segunda línea es una lista de palabras separadas por espacios con puntos de separación definidos. Si desea evitar la separación automática de una `*palabra*`, use el comando `{\nobreak *word*}` en su documento.

## Un ejemplo final

Este ejemplo final configura LaTeX para que el texto ruso pueda componerse usando pdfLaTeX, XeLaTeX y LuaLuaTeX; para cambiar de compilador en Overleaf, consulte el artículo [Cambiar de compilador](/latex/es/base-de-conocimientos/026-changing-compiler.md).

Este ejemplo usa el `\iftutex` comando del [`iftex` paquete](https://ctan.org/pkg/iftex?lang=en) para detectar si se está usando un motor compatible con Unicode (LuaTeX o XeTeX) para compilar el código LaTeX (documento). Si es así, las [fuentes OpenType Noto](https://fonts.google.com/noto/fonts) de Google se configuran mediante el [`fontspec` paquete](https://ctan.org/pkg/fontspec?lang=en) y se usan para componer el documento. Si se detecta un motor no compatible con Unicode, como pdfTeX, entonces el código LaTeX (documento) se compone usando antiguas tecnologías de fuentes de 8 bits (basadas en [Adobe Type 1](https://en.wikipedia.org/wiki/PostScript_fonts#Type_1)).

El siguiente código se abre en Overleaf y, de forma predeterminada, se compila con XeLaTeX. Para usar un compilador diferente, consulte el artículo [Cambiar de compilador](/latex/es/base-de-conocimientos/026-changing-compiler.md).

```latex
\documentclass{article}
\usepackage{iftex}
\iftutex
% Para LuaTeX o XeTeX use las
% fuentes OpenType Noto de Google para componer
% texto ruso
\usepackage{fontspec}
\defaultfontfeatures{Ligatures={TeX}}
\setmainfont{Noto Serif}
\setsansfont{Noto Sans}
\setmonofont{Noto Sans Mono}
\else
% Para pdfTeX debemos usar antiguas
% tecnologías de fuentes de 8 bits
\usepackage[T2A]{fontenc}
\fi
%Reglas de separación de palabras
\usepackage{hyphenat}
\hyphenation{ма-те-ма-ти-ка вос-ста-нав-ли-вать}
\usepackage[english, russian]{babel}
\begin{document}

Este texto estará en ruso. Esta es una demostración de que los caracteres cirílicos en el documento generado se muestran correctamente.

\vskip12pt

\textbf{Este texto estará en ruso. Esta es una demostración de que los caracteres cirílicos en el documento generado se muestran correctamente.}

\vskip12pt

\textit{Este texto estará en ruso. Esta es una demostración de que los caracteres cirílicos en el documento generado se muestran correctamente.}

\vskip12pt

\texttt{Este texto estará en ruso.}
\end{document}
```

[Abre este ejemplo en 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}>)

Usando XeLaTeX, este ejemplo produce la siguiente salida:

![Imagen que muestra texto ruso compuesto en LaTeX](/files/05fe63aa1199496c28f3504dc7991c98f131b4b2)

## Lectura adicional

Para más información, consulta

* [Compatibilidad con fuentes modernas con XƎLaTeX](/latex/es/fuentes/03-xelatex.md)
* [Composición tipográfica de citas y comillas](/latex/es/idiomas/04-typesetting-quotations.md)
* [Compatibilidad con idiomas internacionales](/latex/es/idiomas/03-international-language-support.md)
* [Chino](/latex/es/idiomas/06-chinese.md)
* [Francés](/latex/es/idiomas/07-french.md)
* [Alemán](/latex/es/idiomas/08-german.md)
* [Griego](/latex/es/idiomas/09-greek.md)
* [Italiano](/latex/es/idiomas/10-italian.md)
* [Japonés](/latex/es/idiomas/11-japanese.md)
* [Coreano](/latex/es/idiomas/12-korean.md)
* [Portugués](/latex/es/idiomas/13-portuguese.md)
* [Árabe](/latex/es/idiomas/05-arabic.md)
* [Español](/latex/es/idiomas/15-spanish.md)
* [Módulo del idioma ruso para Babel](http://mirrors.ctan.org/macros/latex/contrib/babel-contrib/russian/russianb.pdf)
* [Historia de las codificaciones cirílicas T2A, T2B y T2C](https://tug.org/TUGboat/tb19-4/tb61berd.pdf)
* [La introducción no tan breve a LaTeX2ε](http://www.ctan.org/tex-archive/info/lshort/)
* [LaTeX/Internacionalización en WikiBooks](http://en.wikibooks.org/wiki/LaTeX/Internationalization)
* [LaTeX/Caracteres especiales en 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/es/idiomas/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.
