Последнее обновление 6 июня 2016 г.
При любой русификации LaTeX основными вопросами, конечно, будут наличие русских букв (вместе с правильной
отработкой их кодировки) и разумно хороших русских переносов. Кроме того есть несколько часто встречающихся команд, которые (если их нет в самой русификации) придется писать самостоятельно: таковы, например, команды для некоторых видов кавычек, переопределение знаков \ge
и \le
или команды \today
, команды \tg
и \сtg
, команды для использования русских букв в значениях счетчиков.
(Проблему с \ge
и \le
, впрочем не решает ни одна из русификаций.
Подробности смотрите в конце текста)
Дополнительные проблемы в ряде случаев ждут коллег, желающих порождать предметный указатель на русском языке или пользующихся, например, пакетом hyperref
для вставки «кликабельных» гиперссылок.
Наконец, есть много специфических типографских тонкостей, принятых в русской традиции, пример — оформление абзацев и разделов.
Отметим, что файл PDF с поиском и copy+paste во всех русификациях,
(кроме №1), обычно получается через PostScript без всяких хлопот.
Навигации и bookmark'ов, правда, не будет.
При помощи pdflatex
легко породить PDF c возможностью копирования и поиска русского текста, при этом можно также вставлять картинки в формате PDF, а также в некоторых (png, gif, jpg, etc…) распространённых графических форматах, хотя за деталями придётся следить.
Ниже имеется краткое описание использования 4-5 русификаций LaTeX — от более старых к более новым.
Тем, кто не уверен, какая русификация ему нужна, советуем воспользоваться вариантом №3 (babel+inputenc). Если же необходимо скомпилировать документ с большим количеством меток с русскими именами — проще всего заставить работать русификацию №2 А.Черепанова.
Использование — Желательно добавить в заголовок файла
\usepackage{russcorr}
компилировать командой rlatex
.
(работа с разными кодировками кириллицы требует менять параметры внутри файла
rlatex.bat
. Разумеется, и cp-866, и cp-1251, и koi8-r подключаются,
например, можно создать несколько разных файлов типа
rlatex
, rlatexw
и rlatexu
).
Пакет russcorr возможно придется доставлять. (В этой русификации MikTeXa он мог бы оказаться в директории C:\zcmiktex\zctexmf\tex\zclatex\, полезно почитать его описание)
Достоинства
Разумно полно описан в разумных учебниках LaTeX на русском языке.
В распространяемом пакете корректно решено большинство проблем русификации.
Стабильно и разумно одинаково работает на разных дистрибутивах с 1993 года по сю пору.
Недостатки
Необходимы неочевидные действия при установке — надо устанавливать специальные добавления.
(Для MikTeX версии ≤2.4 эти действия более-менее описаны в книге Львовского, хотя в 2012 году требуются и ещё хитрости).
Компиляция по схеме TeX → DVI → Postscript → PDF (в три разных действия, что некоторых раздражает) приводит к читаемому и разумному PDF, но обеспечить корректную работу с русским текстом шансов нет (ни поиск, ни копирование текста работать не будет!).
Обработка при помощи pdflatex
скорее не удастся (желающие могут разбираться с rpdflatex
).
Разрешаются команды с русскими буквами в именах.
Ожидаемы сложности при использовании пакета hyperref
.
Нюансы
Кавычки: \лк
ёлочки\пк\
и
\glqq
лапки\grqq
;
знак номера — \номер
.
\ralph
и \Ralph
для счетчиков
Советы
Если у вас не установлена эта русификация, то, скорее всего, не надо пытаться её добавлять к имеющимся.
Отсылая кому-то файл в этой русификации, укажите адресату на использование русских букв
в именах команд и меток (или НЕиспользование).
Если вы используете эту русификацию, то вам предстоят сложности с файлами, подготовленными
в русификациях №3 и, особенно, №4.
Использование — Первой строчкой файла добавить
%& --translate-file=win2t2(или
koi2t2
, или alt2t2
— в зависимости от используемой кодировки, при этом надо проверить доступность соответствующих файлов с расширением tcx
);
в заголовок добавить
\usepackage{russlh}и, по желанию,
\usepackage{russcorr}(полезно следить за кодировкой кириллицы в этом файле)
latex
или pdflatex
.
Необходимые файлы можно скачать со страницы free books.
Достоинства
Можно без особых усилий использовать с любым дистрибутивом.
Русские буквы можно использовать в именах команд, меток и т.п.
Русские буквы разумным образом записываются в файлы типа .aux, .toc, .idx
и т.п.
Недостатки
Необходимо использовать нестандартный пакет.
Кодировка utf-8 не поддерживается.
Возможны труднонаходимые ошибки с русскими буквами внутри математических формул.
Не полностью работает пакет hyperref
(по крайней мере, проблемы с bookmark'ами гарантированы).
Нюансы
\tg
и \сtg
, кавычки и русские буквы в счётчиках определяются пакетом russcorr
и не отличаются от описанного выше.
Для работы переносов в MikTeX'е может потребоваться запустить Settings и поставить галочку напротив `russian` во вкладке `hyphenation`, после чего обновить форматные файлы.
Советы
Используйте эту русификацию, если вам надо работать с файлом, где обильно использованы русские буквы
в именах команд и-или меток. В иных случаях специального выигрыша она скорее не приносит.
Отсылая кому-то файл в этой русификации, перешлите адресату те файлы пакета,
которые вы используете (russlh.sty
, *2t2.tcx
, russcorr.sty
)
Использование — В заголовок файла добавить
\usepackage[utf8]{inputenc} \usepackage[russian]{babel}компилировать командой
pdflatex
или latex
.
Достоинства
Стандартный способ, работающий out-of-the-box с любым из ныне распространённых дистрибутивов.
Можно пользоваться почти любой русской кодировкой (нужно только аккуратно её указать пакету inputenc).
Совместимо со всеми стандартными пакетами (в т.ч. с hyperref
).
Недостатки
Русские буквы становятся активными символами (и их нельзя использовать в названиях меток, команд и т.п.).
Русские буквы в файлах типа .aux, .toc, .idx
и т.п. становятся нечитаемы (по крайней мере без отдельных перекодирующих программ).
Нюансы
\tg
и \сtg
уже определены, \today
разумно переопределена.
\asbuk
и \Asbuk
печатают русскими буквами значения счетчиков
Кавычки: <<
ёлочки>>
и ,,
лапки''
(или "<
ёлочки">
)
(использование таких двухсимвольных сокращений вместо команд —
умеренная удача, но тут именно так)
Знак номер \No
.
Знак дюйма "
имеет специальный смысл! (так что люди, использующие его по ошибке вместо кавычек, могут быть удивлены).
Для работы переносов в MikTeX'е может потребоваться запустить Settings и поставить галочку напротив `russian` во вкладке `hyphenation`, после чего обновить форматные файлы.
Советы
Если вы ставили любой стандартный дистрибутив, то эта русификация у вас уже есть — скорее всего именно её вам и будет проще всего использовать.
Если вам надо работать с файлом, где обильно использованы русские буквы
в именах команд и-или меток, воспользуйтесь лучше русификацией А.Черепанова (№2).
Для знатоков отметим, что проблем с читаемостью русских букв в файлах типа .aux, .toc, .idx
можно избежать,
если НЕ использовать пакет inputenc
, а вместо этого
первой строчкой файла добавить
%& --translate-file=win2t2
(или koi2t2
, или alt2t2
— в зависимости от используемой кодировки),
при этом надо проверить доступность одноименных файлов с расширением tcx
(при необходимости их можно взять из №2, например).
Использование — В заголовок файла добавить
\usepackage{polyglossia} \setmainlanguage{russian} \newfontfamily\russianfont{PT Sans}(последняя команда варьируется в зависимости от желаемого шрифта); тем, кто привык к babel, стоит добавить еще
\setkeys{russian}{babelshorthands=true}компилировать командой
xelatex
.
Достоинства
Работает out-of-the-box с достаточно современными дистрибутивами.
Русские буквы можно использовать в именах меток и т.п.
Можно использовать любой OpenType или TrueType шрифт, имеющийся в системе.
Недостатки
Работает только с кодировкой utf8.
Активно разрабатывается и, видимо, не вполне еще устоялся (очень полезно следить за свежестью дистрибутива!).
Отсутствует возможность компиляции в PostScript (соответственно, нельзя использовать средства типа ps2ps).
Со «старыми» MiKTeX'ами проще застрелиться.
Также xelatex нельзя использовать внутри MetaPost'а — тут нужен обычный latex
.
Нюансы
Кавычки «ёлочки» и „лапки”, натурально — Unicode так unicode!
\tg
и \сtg
???
команды для использования русских букв для значений счетчиков???
страницу практики в июне 2013 --- там список книг