\documentclass{article}
\usepackage[a4paper,includehead,includefoot,mag=1000,
            left=3cm,right=2cm,top=1cm,bottom=2cm]{geometry}
\usepackage{doc,ifpdf,indentfirst,tabularx,color}

% Hyperref
\definecolor{darkblue}{rgb}{0,0,.6}
\ifpdf
  \usepackage[%
    pdftex,
    colorlinks,
    plainpages   = false,
    pdftitle     = {User manual for disser},
    pdfauthor    = {Stanislav Kruchinin},
    pdfsubject   = {disser},
    pdfstartview = {FitH},
    pdfborder    = {0 0 0},
    bookmarksopen,
    bookmarksnumbered,
    bookmarksopenlevel = 2,
    pdfusetitle,
    unicode]{hyperref}
  \usepackage{cmap}
\else
  \usepackage[hypertex]{hyperref}
\fi

\hypersetup{
  colorlinks = true,     linkcolor = darkblue,
  citecolor  = darkblue, filecolor = darkblue,
  menucolor  = darkblue, urlcolor  = darkblue
}

% Use Times font if available
\IfFileExists{pscyr.sty}{%
  \usepackage{pscyr}
  \renewcommand\ttdefault{cmtt}
  \renewcommand\rmdefault{ftm}
}{
  \IfFileExists{cyrtimes.sty}{%
    \renewcommand\ttdefault{cmtt}
    \renewcommand\rmdefault{ftm}
  }{}
}

\usepackage[T2A]{fontenc}
\usepackage[cp1251]{inputenc}
\usepackage[english,russian]{babel}

\MakeShortVerb{\|}

\def\deflabel#1{\ttfamily #1\hfill}
\newenvironment{deflist}[1]{%
  \begin{list}{}{%
  \settowidth\labelwidth{\ttfamily #1}%
  \setlength\leftmargin\labelwidth
  \addtolength\leftmargin\labelsep
  \let\makelabel\deflabel}
}{\end{list}}

\def\fileversion{1.1.2}

\begin{document}
\sloppy
\title{Пакет для оформления диссертаций |disser|:\\
руководство пользователя
}
\date{Версия \fileversion}
\author{Станислав Кручинин\\[6pt]
\normalsize E-mail:
\href{mailto:stanislav.kruchinin@gmail.com}
{\texttt{stanislav.kruchinin@gmail.com}}}

\maketitle

\begin{abstract}\noindent
Данный документ содержит руководство по использованию пакета |disser|.
Инструкции по установке и обновлению смотрите в файлах |README| и |README.ru|.
Описание исходных текстов содержится в файлах \href{file:disser.pdf}{\texttt{disser.pdf}}, \href{file:disser-bst.pdf}{\texttt{disser-bst.pdf}} и \href{file:gost732.pdf}{\texttt{gost732.pdf}}.
\end{abstract}

\tableofcontents

\section{Введение}

Пакет |disser| предназначен для верстки диссертаций и авторефератов в соответствии с требованиями диссертационных советов и ВАК.
В состав пакета входят классы |disser.cls| и |gost732.cls|, стили оформления библиографии |disser.bst|, |disser-s.bst|, а также скрипты для сборки пакета и шаблонов документов (|Makefile|, |nomake.cmd|).
Поскольку дипломы и диссертации имеют фиксированную структуру, в пакет также включены их шаблоны (каталог |disser/templates|), которые рекомендуется использовать для создания своих документов.

Одной из основных целей создания |disser| являлось устранение общего недостатка стандартных классов: отсутствия возможности настройки формата элементов титульного листа, заголовков и записей в автоматически генерируемых списках.
Для этого была переопределена значительная часть команд, входящих в ядро \LaTeX{}, и введен ряд глобальных переменных, которые описаны в комментариях к исходным текстам.
Это позволило значительно упростить разработку пользовательских классов, которые удовлетворяют специфическим требованиями тех или иных учебных заведений.
Примером реализации этого подходя является класс |gost732.cls|.

\section{Опции класса}

\textbf{Примечание:} полужирным начертанием выделены опции, используемые по умолчанию.
\\[2ex]
\extrarowheight=3pt
\tabcolsep=6pt
\arraycolsep=0pt
\newcolumntype{L}{>{\raggedright}p{4.5cm}}
\begin{tabularx}{\textwidth}{L|X}
\hline\hline
  \textbf{a4paper}, a5paper, b5paper &
  Размеры листов.
\\\hline
  8pt, 9pt, 10pt, 11pt, 12pt, \textbf{14pt}, 16pt, 18pt, 20pt &
  Размер шрифта основного текста.
\\\hline
  landscape &
  Альбомная ориентация.
\\\hline
  \textbf{oneside}, twoside &
  Односторонняя или двухсторонняя печать.
\\\hline
  draft, \textbf{final} &
  Выводить (draft) или нет (final) пометки, фиксирующие переполнение |\hbox|
  для данной строки.
\\\hline
  \textbf{titlepage}, notitlepage &
  Печатать титульный лист или нет.
\\\hline
  openright, \textbf{openany} &
  Главы всегда будут начинаться только с нечетных страниц (т.е. справа, если
  смотреть на разворот) или c любых.
\\\hline
  \textbf{onecolumn}, twocolumn &
  Верстка в один или в два столбца.
\\\hline
  fleqn &
  Выключные формулы будут выравнены по левому краю, а не по центру.
\\\hline
  leqno &
  Номера будут размещены слева, а не справа от формул.
\\\hline
  openbib &
  Блоки текста в списке литературы будут печататься на новых строках и с
  отступом.
\\\hline
  noams &
  Не подключать пакеты |amsmath|, |amssymb| и |amsfonts|.
\\\hline
  subf &
  Использовать пакет |subfig| для ведения вложенной нумерации рисунков.
\\\hline
  href &
  Использовать пакет |hyperref|.
\\\hline
  times &
  Включает использование гарнитуры Times в тексте и формулах.
  Для использования опции необходимо установить пакеты |pscyr| (или |cyrtimes|) и
  |txfonts| (или |mtpro|).
\\\hline
  autoref, bachelor, master, \textbf{candidate}, doctor &
  Тип документа.
\\\hline
  fixint = \{\textbf{true}$\,\vert\,$false\} &
  Замена стандартных знаков интегралов на прямые (из математического шрифта
  |euler|).
\\\hline
  libcat &
  Включает вывод номера УДК на титульном листе.
\\\hline
  facsimile &
  Включает отображение подписей диссертанта и ученого секретаря на
  титульных листах автореферата и диссертации (только для кандидатских и докторских).
  По умолчанию включена только в шаблоне автореферата.
\\\hline
  mtpro &
  Поддержка шрифтов MathTime Pro. При наличии опции |times| вместо
  пакета |txfonts| подключается пакет |mtpro|.
\\\hline\hline
\end{tabularx}

\section{Стили колонтитулов}

Поскольку в российских диссертациях обычно не используются колонтитулы, содержащие название текущей главы документа, то стили, реализованные в данном классе, влияют лишь на положение номера страницы.
Стиль колонтитулов обычных страниц документа задается в преамбуле командой |\pagestyle{<style>}|, а стиль страниц, с которых начинается новая глава "--- командой |\chapterpagestyle{<style>}|.
Здесь |<style>| может принимать следующие значения:
\begin{deflist}{headcenter}
\item[footleft] Номер внизу и слева.
\item[footcenter] Номер внизу и по середине.
\item[footright] Номер внизу и справа.
\item[headleft] Номер вверху и слева.
\item[headcenter] Номер вверху и по середине.
\item[headright] Номер вверху и справа.
\item[plain] Совпадает с |footcenter|.
\end{deflist}

Для односторонних документов шрифт надписей в верхнем и нижнем колонтитулах можно задать путем переопределения команд |\headfont| и |\footfont|.
В двухсторонних документах следует использовать команды |\evenheadfont|, |\evenfootfont|, |\oddheadfont|, |\oddfootfont| для четных и нечетных страниц, соответственно.

\textbf{Пример:} номера всех страниц одностороннего документа печатаются в верхнем колонтитуле по центру, шрифтом размера |\small|.
\begin{verbatim}
\def\headfont{\small}
\pagestyle{headcenter}
\chapterpagestyle{headcenter}\end{verbatim}

\section{Система сборки документов}

В состав пакета входят две системы скриптов для автоматизации сборки и установки: файлы |Makefile|, совместимые с GNU Make, и файлы |nomake.cmd|, написанные на языке командного интерпретатора |cmd.exe| ОС Windows 2000 и выше.
Скрипты поддерживают одинаковый набор целей (targets).
Использование в Unix-подобных окружениях: |make <target1> <target2> ...|
В Windows: |nomake <target>|.
Необходимо отметить, что в отличие от |make|, скрипты |nomake| за один запуск обрабатывают только один параметр, что обусловлено ограничениями синтаксиса.

Далее приведены описания целей в зависимости от каталога, в котором производится сборка.

\subsection{Каталог \texttt{disser/}}

\begin{deflist}{123456789}
\item[all]
  Сборка классов и шаблонов.
\item[clean]
  Цель |clean| в каталогах |src| и |templates|.
\item[doc]
  Сборка DVI- и PDF-версий документации.
\item[help]
  Справка по целям сборки.
\item[install]
  Копирование пакета, документации и шаблонов в дерево каталогов \TeX{}.
  Соответствует цели |install| в каталогах |disser/src| и |disser/templates|.
\item[package]
  Сборка пакета.
  Соответствует цели |package| в каталоге |disser/src|.
  Цель по умолчанию.
\item[reinstall]
  Переустановка пакета.
  Соответствует цели |reinstall| в каталоге |disser/src|.
\item[srcdist]
  Создание архива, содержащего исходные тексты пакета.
  Эквивалентно команде |hg archive|.
\item[tds]
  Создание TDS-архива, содержащего скомпилированные файлы пакета и шаблонов.
\item[templates]
  Сборка всех шаблонов.
  Соответствует цели по умолчанию в каталоге |disser/templates|.
\item[uninstall]
  Удаление файлов пакета из дерева каталогов \TeX{}.
  Соответствует целям |uninstall| в каталогах |disser/src| и |disser/templates|.
\end{deflist}

\subsection{Каталог \texttt{disser/src/}}

\begin{deflist}{123456789}
\item[all]
  Сборка пакета и PDF-версии документации.
  Цель по умолчанию.
\item[clean]
  Удаление файлов, указанных в переменной |CLFILES|.
\item[doc]
  Сборка DVI- и PDF-версий документации.
\item[dvi]
  Сборка DVI-версии документации.
\item[help]
  Справка по целям сборки.
\item[install]
  Копирование файлов класса и документации в дерево каталогов
  \TeX{}.
\item[package]
  Сборка пакета.
\item[pdf]
  Сборка PDF-версии документации.
\item[reinstall]
  Переустановка пакета.
\item[uninstall]
  Удаление файлов пакета из дерева каталогов \TeX{}.
\end{deflist}

\subsection{Каталоги \texttt{disser/templates} и
  \texttt{disser/templates/<тип-диссертации>/}}

\begin{deflist}{123456789}
\item[dvi]
  Сборка DVI-файла. Цель по умолчанию.
\item[clean]
  Удаление файлов, указанных в переменной |CLFILES|.
\item[help]
  Справка по целям сборки.
\item[html]
  Конвертация DVI в HTML-файл с рисунками.
  Для работы необходимо установить программу \href{http://www.latex2html.org/}{latex2html}.
\item[pdf]
  Сборка PDF-файла.
\item[pdf\_2on1]
  Сборка PDF-файла с двумя страницами на один лист A4
  и сохранением порядка следования страниц.
\item[pdf\_book]
  Сборка PDF-файла с двумя страницами на один лист A4
  для брошюрования.
\item[ps]
  Сборка PostScript-файла.
\item[ps\_2on1]
  Сборка PostScript-файла с двумя страницами на один лист A4
  и сохранением порядка следования страниц.
\item[ps\_book]
  Сборка PostScript-файла с двумя страницами на один лист A4
  для брошюрования.
\item[rtf]
  Конвертация DVI в RTF.
\item[srcdist]
  Сборка архива из содержимого текущего каталога.
\end{deflist}

Помимо вышеуказанных целей, в каталоге \texttt{disser/templates} доступны следующие:
\begin{deflist}{123456789}
\item[install]
  Копирование шаблонов в дерево каталогов \TeX{}.
\item[reinstall]
  Переустановка шаблонов.
\item[uninstall]
  Удаление шаблонов.
\end{deflist}

\begin{flushleft}
\textbf{Примечания:}

1) Файлы |nomake.cmd| в подкаталогах шаблонов зависят от |include/latex.nmk.cmd| и |include/latex.fig.nmk.cmd|.
Файлы |Makefile| зависят от |include/latex.mk| и |include/latex.fig.mk|.

2) |Makefile/nomake.cmd| в подкаталогах шаблонов могут использовать цели из каталога |fig|.
\end{flushleft}

\subsection{Каталог \texttt{disser/templates/<тип-диссертации>/fig/}}

\begin{deflist}{pdftotiffg44}
\item[clean]
  Удаление файлов с расширениями pdf, png и tif.
  Список определяется переменной |CLFILES|.
\item[epstoeps]
  Оптимизация EPS с помощью Ghostscript.
  Следует использовать только для документов с контурными шрифтами.
  Список файлов определяется переменной |E2EFILES|.
\item[epstopdf]
  Конвертация EPS в PDF.
  Список файлов определяется переменной |E2PFILES|.
\item[fixbb]
  Исправление BoundingBox в EPS-файлах.
  Список файлов определяется переменной |FBBFILES|.
\item[help]
  Справка по целям сборки. Цель по умолчанию.
\item[pdftopng256]
  Конвертация PDF в 256-цветный PNG.
  Список файлов определяется переменной |PDF2PNGFILES|.
\item[pdftotiffg4]
  Конвертация PDF в черно-белый TIFF (алгоритм сжатия CCITT Group 4).
  Список файлов определяется переменной |PDF2TIFFILES|.
\end{deflist}

\section{Оформление библиографии}

Для оформления библиографических ссылок используются стили |disser.bst| и |disser-s.bst|.
Они представляют собой доработанные версии |gost71u.bst| и |gost71s.bst| из пакета |gost|, написанного Максимом Поляковым.
Создание этих стилей обусловлено следующими причинами: пакет |gost| более не поддерживается автором, а библиография, оформленная с его помощью, противоречит некоторым требованиям диссертационных советов.
|disser-s.bst| "--- стиль аналогичный |disser.bst|, но с сортировкой записей в алфавитном порядке.

Основные отличия |disser.bst| от |gost71u.bst|:
\begin{enumerate}
\item Инициалы авторов всегда печатаются перед фамилией.
\item Авторы, независимо от их количества, всегда печатаются перед  названием источника.
\item Имена авторов не преобразуются в инициалы.
\item Отсутствует поддержка украинского языка.
\item Поддерживается настраиваемые префикс и постфикс номера библиографической ссылки для оформления списка работ диссертанта в автореферате.
\end{enumerate}

Для работы с русскоязычными библиографическими ссылками необходима версия \BibTeX{} с поддержкой 8-битных символов, |bibtex8|.
В зависимости от кодировки текста в bib-файле, необходимо подключать соответствующий csf-файл с описанием кодовой страницы и порядка сортировки, например, |cp1251.csf|.
Примеры библиографических записей приведены в документации к пакету |gost|, который может быть найден в любом современном дистрибутиве \LaTeX{}.

Последовательность команд, используемая для полной сборки документа с библиографией, имеет следующий вид:
\begin{verbatim}
  latex <tex_file>
  bibtex8 -H -c <csf_file> <tex_file_basename>
  latex <tex_file>
  latex <tex_file>
\end{verbatim}
Здесь |<tex_file>| "--- файл документа, |<csf_file>| "--- файл описания кодовой страницы, |<tex_file_basename>| "--- имя файла документа без расширения.

Стили позволяют менять префикс и постфикс номеров ссылок, т.\,е. использовать ссылки вида [A1] или [1a].
Это необходимо для того, чтобы в автореферате различались ссылки на работы соискателя и на внешние источники.
Префикс и постфикс номера ссылки определяются макросами |\BibPrefix| и |\BibPostfix|, соответственно.
Их значения должны быть определены до использования команды |\bibliographystyle|.

Пример:
\begin{verbatim}
  \def\BibPrefix{A}
  \bibliographystyle{disser}
  \bibliography{thesis}\end{verbatim}
В данном случае ссылки будут иметь вид [A$n$], где $n$ "--- номер.

К сожалению, пакет |natbib| не <<сжимает>> ссылки с нецифровыми символами, т.\,е. ссылки вида [A1, A2, A3, A4] не преобразуются к более компактной форме [A1--A4].
Ведется работа над исправлением этого недостатка.

\section{Авторефераты кандидатских и докторских диссертаций}

\subsection{Общий текст}

В соответствии с неформальными требованиями, раздел <<Общая характеристика работы>> автореферата и глава <<Введение>> диссертации должны совпадать.
Общие разделы создаются с помощью команды |\mkcommonsect| в файле |common.tex|, который подключается из |autoref.tex| и |thesis.tex|.

Пример:
\begin{verbatim}
\mkcommonsect{novelty}{Научная новизна}{%
Текст раздела
}
\end{verbatim}
Здесь первый аргумент "--- корень имени создаваемых макросов (|\noveltysection| и |\noveltytext|), второй аргумент "--- заголовок раздела (значение |\noveltysection|), третий "--- текст раздела (значение |\noveltytext|).

\subsection{Список работ диссертанта}

В автореферате список работ диссертанта должен быть отделен от списка цитируемой литературы, а ссылки на них должны отличаться друг от друга.
В стилях |disser.bst| и |disser-s.bst| введены макросы |\BibPrefix| и |\BibPostfix|, позволяющие задать префикс и постфикс номера ссылки.
Для размещения в документе двух списков литературы с независимой нумерацией используется пакет |multibib|.

Описание библиографических ссылок на работы диссертанта должно находиться в файле |thesis.bib| вместе с остальными ссылками.

Полная сборка автореферата с двумя библиографиями выполняется следующей последовательностью команд.
\begin{verbatim}
latex autoref
bibtex8 -H -c cp1251 autoref
bibtex8 -H -c cp1251 my
latex autoref
latex autoref\end{verbatim}
Данные операции выполняются автоматически при сборке с помощью скриптов |Makefile| и |nomake.cmd|.
Сборка автореферата в Windows:
\begin{verbatim}
set target=autoref
nomake\end{verbatim}
В Unix-like окружениях:
\begin{verbatim}
env TARGET=autoref make\end{verbatim}

\subsection{Подписи диссертанта и ученого секретаря}

Согласно требованиям ВАК, автореферат должен быть подписан диссертантом и ученым секретарем.
Поскольку экземпляров автореферата достаточно много, эту задачу необходимо автоматизировать.
Для этого в классе предусмотрена опция |facsimile|, позволяющая включать графические файлы с подписью (факсимиле) на титульном листе и внутренней стороне обложки.
Эта опция по умолчанию включена только в шаблонах авторефератов.
Факсимиле диссертанта находится в файле |./fig/facsimile.<type>|, факсимиле ученого секретаря диссертационного совета "--- в файле |./fig/sec-facsimile.<type>|.
Здесь |<type>| "--- один из типов графических файлов, поддерживаемых в \LaTeX{} (eps) или в pdf\LaTeX{} (pdf, tiff, png).
Команда |\facsimile|, включающая файл с подписью диссертанта в документ, определена в файле |titledefs.dtx|.
Команда, включающая файл с подписью ученого секретаря, находится в файле |autoref.tex|.

\end{document} 