Сайт Василия Веденеева
in english
Научные интересы
Работа
Публикации
Конференции
Гранты
Лекции
Фотографии
Контакты
Книги и журналы
Здесь я собрал всякие полезные примочки для работы с TeXом, которые я насобирал во время работы над диссертацией. Надеюсь, что это кому-нибудь облегчит жизнь...

Во-первых, всё что касается TeXа — сам TeX, пакеты к нему, шрифты, документацию и т.д. — можно бесплатно скачать со CTAN.

Во-вторых, книга Львовского «Набор и вёрстка в пакете LaTeX».

И, наконец, советы и рецепты, на поиск которых я потратил намного больше времени, чем они того заслуживают. Там, где речь идёт о создании PDF-файла, считается, что он создаётся командой pdflatex, минуя DVI-файл, а не цепочкой latex→dvips→ps2pdf.
  • Для того, чтобы при компиляции в PDF-файлах использовались векторные, а не стандартные растровые шрифты (основным недостатком которых является  «мохнатость» и отвратительная читаемость при просмотре PDF-файла на мониторе), нужно установить пакет «cm-super». Он содержит векторизованную оригинальную TeXовскую гарнитуру Computer Modern. Насколько я знаю, в новые версии MiKTeXа этот пакет входит в стандартную поставку. После установки достаточно перекомпилировать TEX-файл, не меняя ничего в документе.
  • Для того, чтобы Adobe Reader корректно работал с кириллицей в генерируемых PDF-файлах (чтобы можно было делать поиск по документу, копирование и вставку текста), нужно установить пакет «cmap». В преамбуле TeX-файла сразу после \documentclass нужно добавить «\usepackage{cmap}» и перекомпилировать файл.
    Со старыми версиями PDFTeXа этот пакет не работает, поэтому мне пришлось сначала установить последнюю версию MiKTeXа, в которую, как оказалось, этот пакет входит в стандартной поставке.
  • Чтобы в PDF-файлах, генерируемых TeXом, работали ссылки на формулы, разделы, рисунки, таблицы, список литературы и т.п., нужно сделать две вещи. Во-первых, номера формул, разделов, рисунков, таблиц и т.п. должны задаваться не вручную, а быть автоматически сгенерированными средствами LaTeX — командами «\label», «\ref», «\cite». Во-вторых, нужно подключить пакет «hyperref». Он имеет огромное число параметров, управляющих внешним видом PDF-файла в Acrobat'е, все они описаны в документации, поставляемой вместе с пакетом. Единственное, что можно считать обязательным — использовать параметр «unicode», необходимый для правильного отражения кириллицы в закладках документа. Я использовал примерно следующие параметры:
    \usepackage[unicode,colorlinks,
       bookmarksnumbered=true,
       bookmarksopen=true,
       bookmarksopenlevel=1,
       pdfauthor={...},
       pdftitle={...},
       pdfkeywords={...},
       ]{hyperref}
  • Известная проблема TeXа, описанная в том числе в книге Львовского — то, что при автоматической генерации номеров разделов, рисунков и таблиц между номером и заголовком не ставится точка. Например, вместо «Рис. 1. График f(x)» появляется «Рис. 1 График f(x)». Это не соответствует нормам российской пунктуации, но легко изменить это поведение невозможно. С. М. Львовским был написан пакет «russcorr», решающий, в частности, и эту проблему, но он несовместим с пакетов «babel», который обычно используется для русификации TeXа. Поэтому я переделал «russcorr», убрав оттуда все функции, кроме постановки точек после номеров и назвал его «corrcounters». В результате он стал корректно работать с пакетом «babel». Скачать его можно здесь. В версии, доработанной Алексеем Абрикосовым, исправлена ошибка, возникающая при использовании вложенных перечней. После установки (которая заключается в копировании стилевого файла в каталог TEX_ROOT\tex\latex и обновлении путей поиска) нужно в преамбуле TeX-файла написать «\usepackage{corrcounters}». После перекомпиляции искомые точки появятся.
  • Кроме постановки точек, пакет «corrcounters» имеет ещё одну полезную функцию. Он позволяет делать подписи к рисункам шрифтом другого размера и межстрочного интервала, чем основной текст, а ширину подписей — отличной от ширины текста. Для этого есть три параметра, которые нужно задать в преамбуле в следующем виде:
    \renewcommand{\captionlinestretch}{0.6}
    \renewcommand{\captionfontsize}{\small}
    \renewcommand{\captionwidth}{15cm}
  • Полный список символов LaTeX'а.

© 2023 Василий Веденеев