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

# 러시아어

## 소개

이 글은 러시아어 텍스트 조판을 다룹니다: 다음의 올바른 사용을 가능하게 하고 [키릴 문자](https://en.wikipedia.org/wiki/Cyrillic_script) 문자(예: ц, ч, ш, щ, ъ 등)를 지원하고 하이픈 넣기와 같은 언어별 기능을 제공합니다. 단일 문서에서 영어와 러시아어처럼 두 개 이상의 언어를 사용하는 방법을 찾고 있다면, 다음을 참조하세요. [국제 언어 지원](/latex/ko/languages/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{서문}
 이 텍스트는 러시아어로 작성됩니다. 이것은 키릴 문자
 가 생성된 문서(PDF로 컴파일)에서 올바르게 표시된다는 것을 보여주는 시연입니다. 이를 위해서는 필요한 언어(russian)와 필요한 글꼴 인코딩(T2A)을 설정해야 합니다.

\vskip12pt

\textbf{이 텍스트는 러시아어로 작성됩니다. 이것은 키릴 문자가 생성된 문서(PDF로 컴파일)에서 올바르게 표시된다는 것을 보여주는 시연입니다.}

\vskip12pt

\textit{이 텍스트는 러시아어로 작성됩니다. 이것은 키릴 문자가 생성된 문서(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/8c4d943852e150fe8448d9416c59dca08b68ff7e)

## 배경 주제: 문자와 인코딩

다음 섹션들은 LaTeX를 사용해 서로 다른 언어를 조판하는 것과 관련된 주제들에 대한 배경 자료를 제공합니다(대부분 pdfLaTeX와 관련).

### 텍스트 파일: 정수와 문자

LaTeX 입력 파일과 같은 어떤 텍스트 파일이든 `.tex` 그저 정수 값들의 흐름일 뿐이며, 이는 다음을 위한 메커니즘으로 사용됩니다. *표현하는* 텍스트의 문자를 표현하는 것이므로, 텍스트 파일을 처리한다는 것은 정수 값들의 연속을 스캔(읽기/처리)하는 것을 의미합니다. 그러나 중요한 질문이 생깁니다: *어떤 문자 집합이* 특정 텍스트 파일에 포함된 정수 값들로 실제로 표현되는가? 다시 말해, 그 정수 값들은 어떻게 *인코딩되었는가*: 텍스트 파일의 정수에서 그 정수들이 나타내야 하는 대응 문자로의 올바른(의도된) "매핑"(인코딩)은 무엇인가? *표현하는*?

텍스트 파일은 수많은 컴퓨팅 환경에서 생성될 수 있습니다: 서로 다른 국가/대륙에 걸쳐, 다양한 장치, 운영 체제 및 편집 도구를 사용하여. 텍스트 파일의 생성자는 텍스트 파일에 포함된 개별 문자를 표현하기 위해 선택된 정수 값들의 순서를 생성하고 저장할 때, 언어와 같은 지역적 요구 사항에 따라 서로 다른 텍스트 인코딩을 사용할 수 있습니다. 생성된 텍스트 파일이 동일한 인코딩을 사용하는 호환 가능한 기술 생태계 안에 머물러 있다면 이는 잘 작동할 수 있지만, 해당 파일이 완전히 다른 환경으로 옮겨질 때는 어떻게 될까요? 많은 텍스트 파일에는 생성에 사용된 인코딩을 알려 주는 정보가 포함되어 있지 않기 때문입니다.

분명히 텍스트 데이터의 생산자(생성자)와 소비자(사용자)는 어떤 방식으로든 사용 중인 인코딩(매핑)에 합의해야 합니다. 그렇지 않으면 *인코딩 오류* 가 파일의 정수 데이터와 그것이 나타낸다고 가정되는 문자 집합 사이의 불일치 때문에 발생할 가능성이 큽니다. 텍스트 파일의 정수 값을 문자에 올바르게 매핑하는 것 외에도, 그 문자들을 시각적으로 표시하려면 원하는 문자의 시각적 표현을 출력할 수 있는 데이터(윤곽, 또는 비트맵)를 제공하는 어떤 형태의 글꼴이 필요합니다.

### 입력 인코딩: inputenc, UTF-8 및 2018년 LaTeX 변경

역사적으로 LaTeX 입력을 포함한 텍스트 파일을 생성/처리하는 데 다양한 8비트 인코딩이 사용되었습니다. 아주 긴 이야기를 짧게 하자면, LaTeX 개발자들은 `inputenc` 패키지를 만들어 인코딩 문제를 해결했으며, 이를 통해 다양한 인코딩으로 작성된 텍스트 파일을 서로 다른 LaTeX 설치 간에 전송할 수 있게 했습니다.

그러나 시간이 지나면서 사용자/소프트웨어 개발자들은 여러 8비트 인코딩에서 벗어나 Unicode와 UTF-8 인코딩 방식을 사용하게 되었고, 이는 텍스트 파일 인코딩의 사실상 표준 옵션이 되었습니다. 2018년 이전에는 UTF-8로 인코딩된 파일을 처리하기 위해 LaTeX 문서의 서문에 다음 줄을 포함했습니다.

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

독자들은 위의 예제에 문서 서문에 다음 줄이 포함되어 있지 않다는 점을 알아차릴 수 있습니다. `\usepackage[utf8]{inputenc}` 그 이유는 무엇일까요? 이는 2018년에 도입된 LaTeX의 중요한 변경 사항, 즉 기본 *입력* 인코딩을 UTF-8로 전환한 데 따른 것입니다. pdfLaTeX로 조판되며 UTF-8로 인코딩된 텍스트를 사용하는 문서들, Overleaf에서 생성되고 조판된 문서들도 포함하여, 더 이상 *필요하지* 않습니다 `\usepackage[utf8]{inputenc}` 포함할 [하지만 그렇게 해도 해가 되지는](https://www.latex-project.org/news/2018/04/10/issue28-of-latex2e-news-released/)않습니다. 자세한 내용은 다음을 참조하세요. [2018년 4월호 LaTeX News](https://www.latex-project.org/news/2018/04/10/issue28-of-latex2e-news-released/) 및 Overleaf 블로그 게시물 [*TeX Live 업그레이드—2019년 9월*](https://www.overleaf.com/blog/tex-live-upgrade-september-2019)를 참조하세요. Overleaf에서 생성된 모든 텍스트 파일은 UTF-8을 사용해 인코딩됩니다.

### 출력 인코딩: pdfLaTeX에서 사용하기 위한 fontenc 패키지

입력 파일에 포함된 문자를 올바르게 조판하려면, 해당 문자들을 문서를 조판하는 데 사용되는 적절한 *출력 형태* (글리프)와 글꼴에 포함된 형태로 매핑해야 합니다. 이러한 “출력 인코딩”은 `fontenc`.

를 사용하려면 `fontenc` 문서 서문에 다음 줄을 포함하고, 다음과 같은 인코딩을 사용하세요. [T2A 인코딩](http://mirrors.ctan.org/macros/latex/base/encguide.pdf)은 키릴 문자를 지원합니다:

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

다음 표는 `T2A` 키릴 텍스트용 글꼴 인코딩을 나열합니다. 이는 문서 *LaTeX 글꼴 인코딩* 의 23페이지에서 발췌한 것이며 [CTAN에서 이용할 수 있습니다](http://mirrors.ctan.org/macros/latex/base/encguide.pdf).

![](/files/d0659851bb580286e5b996940a949e649e063399)

## 언어별 패키지와 명령

기본 LaTeX 기능을 확장하려면, 올바른 하이픈 넣기와 문서 요소 이름 번역을 위해 [`babel` 패키지](https://ctan.org/pkg/babel?lang=en) 그리고 다음을 `러시아어` 언어 옵션:

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

예제에서 보시다시피 [소개](#introduction), "Abstract"와 "Contents" 대신 러시아어 단어 "Аннотация"와 "Содержание"가 사용됩니다. 키릴 문자는 수학 모드에서도 사용할 수 있습니다.

러시아어와 영어처럼 두 개 이상의 언어를 포함해야 한다면, 이를 달성하는 방법은 다음을 참조하세요. [국제 언어 지원](/latex/ko/languages/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 *단어*}` 문서 안에서.

## 마지막 예제

이 마지막 예제는 러시아어 텍스트를 pdfLaTeX, XeLaTeX 및 LuaLuaTeX로 조판할 수 있도록 LaTeX를 설정합니다—Overleaf에서 컴파일러를 전환하는 방법은 다음 문서를 참조하세요. [컴파일러 변경](/latex/ko/knowledge-base/026-changing-compiler.md).

이 예제는 `\iftutex` 명령을 [`iftex` 패키지](https://ctan.org/pkg/iftex?lang=en) 에서 사용하여 유니코드 인식 엔진(LuaTeX 또는 XeTeX)이 LaTeX 코드(문서)를 컴파일하는 데 사용되는지 감지합니다. 그렇다면 Google의 [OpenType Noto 글꼴](https://fonts.google.com/noto/fonts) 이 [`fontspec` 패키지](https://ctan.org/pkg/fontspec?lang=en) 를 통해 설정되어 문서 조판에 사용됩니다. pdfTeX처럼 유니코드를 인식하지 못하는 엔진이 감지되면, LaTeX 코드(문서)는 [Adobe Type 1](https://en.wikipedia.org/wiki/PostScript_fonts#Type_1)).

를 기반으로 한 구형 8비트 글꼴 기술을 사용해 조판됩니다. [컴파일러 변경](/latex/ko/knowledge-base/026-changing-compiler.md).

```latex
\documentclass{article}
\usepackage{iftex}
\iftutex
% LuaTeX 또는 XeTeX의 경우 Google의
% 러시아어 조판용 OpenType Noto 글꼴을 사용
% 러시아어 텍스트
\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/35f7f47746ef6bd32c84d37b4cebb736263a6a7a)

## 추가 읽을거리

자세한 내용은 다음을 참조하세요

* [XƎLaTeX로 최신 글꼴 지원](/latex/ko/fonts/03-xelatex.md)
* [인용문과 따옴표 조판](/latex/ko/languages/04-typesetting-quotations.md)
* [국제 언어 지원](/latex/ko/languages/03-international-language-support.md)
* [중국어](/latex/ko/languages/06-chinese.md)
* [프랑스어](/latex/ko/languages/07-french.md)
* [독일어](/latex/ko/languages/08-german.md)
* [그리스어](/latex/ko/languages/09-greek.md)
* [이탈리아어](/latex/ko/languages/10-italian.md)
* [일본어](/latex/ko/languages/11-japanese.md)
* [한국어](/latex/ko/languages/12-korean.md)
* [포르투갈어](/latex/ko/languages/13-portuguese.md)
* [아랍어](/latex/ko/languages/05-arabic.md)
* [스페인어](/latex/ko/languages/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/)
* [WikiBooks의 LaTeX/국제화](http://en.wikibooks.org/wiki/LaTeX/Internationalization)
* [WikiBooks의 LaTeX/특수 문자](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/ko/languages/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.
