11/04/2006

Использование пакетов расширения LaTeX: LaTeX usepackage

Задача: в ЛаТеХ нужно применять специфические, отличные от умолчальных, настройки (поля, списки и таблицы, библиографические ссылки и прочее).
Решение: для этого используются пакеты расширений, подключаемые в "шапке" ЛаТеховского документа.

Вот пример такой шапки с описанием действия пакетов. Шапка написана с сильным физико-математическим уклоном: для вёрстки статей и отчётов с обильным использованием формул, рисунков, таблиц и ссылок на литературу.

\documentclass[a4paper,12pt]{article}
\usepackage[T2A]{fontenc} %поддержка кириллицы в ЛаТеХ
\addtolength{\hoffset}{-1.7mm} % горизонтальное смещение всего текста как целого
\usepackage[koi8-r]{inputenc} %По умолчанию кодировка KOI8 для *nix-систем
и cp1251 для винды
\usepackage[english,russian]{babel} %определение языков в документе
\usepackage{amssymb,amsmath,amsfonts,latexsym,mathtext} %расширенные наборы
математических символов
\usepackage{cite} %"умные" библиографические ссылки
(сортировка и сжатие)
\usepackage{indentfirst} %делать отступ в начале параграфа
\usepackage{enumerate} %создание и автоматическая нумерация списков
\usepackage{tabularx} %продвинутые таблицы
% \usepackage{showkeys} %раскомментируйте, чтобы в документе были видны
ссылки на литературу, рисунки и таблицы
\usepackage[labelsep=period]{caption} %заменить умолчальное разделение ':' на '.'
в подписях к рисункам и таблицам
\usepackage[onehalfspacing]{setspace} %"умное" расстояние между строк - установить
1.5 интервала от нормального, эквивалентно
\renewcommand{\baselinestretch}{1.24}
\usepackage[dvips]{graphicx} %разрешить включение PostScript-графики
\graphicspath{{edgeimages/}} %относительный путь к каталогу с рисунками,
это может быть мягкая ссылка

\usepackage{geometry} %способ ручной установки полей
\geometry{top=2cm} %поле сверху
\geometry{bottom=2.5cm} %поле снизу
\geometry{left=2.5cm} %поле справа
\geometry{right=2cm} %поле слева

\makeatletter
\bibliographystyle
{unsrt} %Стиль библиографических ссылок БибТеХа - нумеровать
в порядке упоминания в тексте
%Заменяем библиографию с квадратных скобок на точку в списке литературы
\renewcommand{\@biblabel}[1]{#1.}
\makeatother

% Меняем везде перечисления на цифра.цифра
\renewcommand{\theenumi}{\arabic{enumi}}
\renewcommand{\labelenumi}{\arabic{enumi}}
\renewcommand{\theenumii}{\arabic{enumii}}
\renewcommand{\labelenumii}{\arabic{enumi}.\arabic{enumii}.}
\renewcommand{\theenumiii}{\arabic{enumiii}}
\renewcommand{\labelenumiii}{\arabic{enumi}.\arabic{enumii}.\arabic{enumiii}.}

\righthyphenmin=2 % Минимальное число символов при переносе - 2.

5 комментариев:

  1. Спасибо. Раскраска - это хорошо. (В плоском тексте письма все-таки было слегка неудобно разбираться.) :) Кое-что прикручу к своему отчету.

    ОтветитьУдалить
  2. Всегда пожалуйста. Как и обещал в письме - будет на этой неделе. :-) Скоро запостю про JabRef и BibTex.

    ОтветитьУдалить
  3. Еще немного.

    %%%%%%%%%%%%%%
    %% PDF or DVI?
    %% the right way
    %% http://en.wikibooks.org/wiki/LaTeX/Tips_and_Tricks#Generic_header
    \newif\ifpdf
    \ifx\pdfoutput\undefined
    \pdffalse
    \else
    \ifnum\pdfoutput=1
    \pdftrue
    \else
    \pdffalse
    \fi
    \fi

    \ifpdf
    \usepackage[pdftex]{graphicx}
    \DeclareGraphicsExtensions{.pdf,.jpg,.png}
    \else
    \usepackage{graphicx}
    \fi

    %%
    %% MOAR PDF GOODNESS
    %%
    \ifpdf
    \usepackage[
    pdfauthor={Vasiliy Pipkin},
    pdftitle={On Spheric Horses in Vacuum},
    pdfcreator={pdftex},
    pdfsubject={Article},
    ]{hyperref}
    \fi

    ОтветитьУдалить
  4. Спасибо! Очень помогли :)

    ОтветитьУдалить
  5. Спасибо, отличная статья.
    Есть одно замечание: пакет mathtext для отображения кириллицы в формулах должен подключаться до пакетов babel и T2A. Иначе получаем кучу ошибок

    ОтветитьУдалить