summaryrefslogtreecommitdiff
path: root/Master/texmf-dist/source/latex/disser/disser.dtx
diff options
context:
space:
mode:
authorKarl Berry <karl@freefriends.org>2007-05-19 16:20:14 +0000
committerKarl Berry <karl@freefriends.org>2007-05-19 16:20:14 +0000
commit1e19960b463415b2fb8a096f7ce4f9b2a50410f5 (patch)
tree434820857adb1d7bb63edcb5c441d7ca8e7f33cc /Master/texmf-dist/source/latex/disser/disser.dtx
parent9c9ebf7d3184800d2abdff96d70099836b153548 (diff)
new russian-oriented package disser (3mar07)
git-svn-id: svn://tug.org/texlive/trunk@4317 c570f23f-e606-0410-a88d-b1316a301751
Diffstat (limited to 'Master/texmf-dist/source/latex/disser/disser.dtx')
-rw-r--r--Master/texmf-dist/source/latex/disser/disser.dtx575
1 files changed, 575 insertions, 0 deletions
diff --git a/Master/texmf-dist/source/latex/disser/disser.dtx b/Master/texmf-dist/source/latex/disser/disser.dtx
new file mode 100644
index 00000000000..2e6adff6c7b
--- /dev/null
+++ b/Master/texmf-dist/source/latex/disser/disser.dtx
@@ -0,0 +1,575 @@
+%\iffalse
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+%%
+%% disser -- LaTeX document class for dissertations.
+%%
+%% Copyright (c) 2004-2006 Stanislav Kruchinin
+%%
+%% It may be distributed and/or modified under the
+%% conditions of the LaTeX Project Public License, either version 1.3
+%% of this license or (at your option) any later version.
+%% The latest version of this license is in
+%% http://www.latex-project.org/lppl.txt
+%% and version 1.3 or later is part of all distributions of LaTeX
+%% version 2003/12/01 or later.
+%%
+%% This program is distributed in the hope that it will be useful,
+%% but WITHOUT ANY WARRANTY; without even the implied warranty of
+%% MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+%%
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+%<driver>\ProvidesFile{disser.dtx}
+%<*driver>
+\documentclass{ltxdoc}
+\usepackage[a4paper, includehead, includefoot, mag=1000,
+ left=4cm, right=1.5cm, top=1cm, bottom=2cm]{geometry}
+\usepackage[T2A]{fontenc}
+\usepackage[cp1251]{inputenc}
+\usepackage[english,russian]{babel}
+
+\usepackage[unicode,
+ pdftitle = {Documentation for the disser package},
+ pdfauthor = {Stanislav Kruchinin},
+ pdfsubject = {disser},
+ pdfstartview = {FitH},
+ pdfborder = {0 0 0},
+ bookmarksopen = true,
+ bookmarksnumbered = true,
+ bookmarksopenlevel = 2
+ ]{hyperref}
+\usepackage{cmap}
+
+\let\package\textsf
+\IfFileExists{pscyr.sty}{%
+ \usepackage{pscyr}
+ \renewcommand\ttdefault{cmtt}
+ \renewcommand\rmdefault{ftm}
+}{}
+\usepackage{tabularx,doc}
+\IfFileExists{url.sty}{\RequirePackage{url}}{\newcommand\url{\texttt}}
+
+\hypersetup{
+ colorlinks = true,
+ colorlinks = true,
+ linkcolor = black, citecolor=blue,
+ filecolor = blue, menucolor=blue,
+ pagecolor = blue, urlcolor=blue
+}
+
+%\OnlyDescription % uncomment to suppress code line listing
+\RecordChanges % uncomment for a change history
+%\CodelineIndex\EnableCrossrefs % uncomment for command index
+
+\MakeShortVerb{\|}
+\parindent=0pt
+
+\begin{document}
+\sloppy
+ \DocInput{disser.dtx}
+ \DocInput{counters.dtx}
+ \DocInput{part.dtx}
+ \DocInput{chapter.dtx}
+ \DocInput{sections.dtx}
+ \DocInput{lists.dtx}
+ \DocInput{floats.dtx}
+ \DocInput{env.dtx}
+ \DocInput{page.dtx}
+ \DocInput{titlepage.dtx}
+ \DocInput{bachelor.dtx}
+ \DocInput{master.dtx}
+ \DocInput{candidate.dtx}
+ \DocInput{doctor.dtx}
+ \DocInput{autoref.dtx}
+ \DocInput{toc.dtx}
+ \DocInput{custom.dtx}
+ \DocInput{gost732.dtx}
+ \PrintChanges
+\end{document}
+%</driver>
+% \fi
+%
+% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+%
+% \def\fileversion{1.0.2}
+%
+% \title{|disser| "--- класс \LaTeX{} для оформления диссертаций}
+% \author{Станислав Кручинин\\[6pt]
+% \normalsize E-mail:
+% \href{mailto:stas@crypt.org.ru}{\texttt{stas@crypt.org.ru}}}
+% \date{Версия \fileversion}
+%
+% \maketitle
+%
+% \begin{abstract}\noindent
+% Данный документ содержит описание исходных текстов.
+% Инструкции по установке смотрите в файлах |README| и |README.ru|.
+% \end{abstract}
+%
+% \tableofcontents
+%
+% \section{Введение}
+%
+% Класс |disser| был создан в результате объединения множества дополнений и
+% исправлений для |extreport|, написанных автором при оформлении
+% бакалаврской и магистерской работ по физике. Основной целью являлось
+% устранение одного из главных недостатков стандартных классов ---
+% отсутствия возможности прямого изменения формата элементов титульного
+% листа, заголовков и записей в автоматически генерируемых списках
+% (содержание, список иллюстраций, список таблиц). Предполагается, что
+% пользователи будут активно изменять текст в соответствии со своими
+% требованиями, поэтому он разбит на несколько файлов и снабжен подробными
+% комментариями.
+%
+% \section{Исходный текст}
+%
+% \begin{macrocode}
+
+%<disser>\NeedsTeXFormat{LaTeX2e}
+%<disser>\ProvidesClass{disser}[2006/09/06 Document class for dissertations.]
+%<disser>\ProvidesPackage{disser}
+
+%<bachelor>\ProvidesFile{bachelor.rtx}
+%<master>\ProvidesFile{master.rtx}
+%<candidate>\ProvidesFile{candidate.rtx}
+%<doctor>\ProvidesFile{doctor.rtx}
+%<autoref>\ProvidesFile{autoref.rtx}
+%<titledefs>\ProvidesFile{titledefs.rtx}
+
+%<*disser>
+% \end{macrocode}
+% Расширение включаемых файлов.
+% \begin{macrocode}
+\def\substyle@ext{.rtx}
+% \end{macrocode}
+% Определение условий.
+% \begin{itemize}
+% \item |true|, если включена опция, оставляющая одну колонку при
+% двухколонном наборе.
+% \begin{macrocode}
+\newif\if@restonecol
+% \end{macrocode}
+% \item |true|, если разрешена титульная страница.
+% \begin{macrocode}
+\newif\if@titlepage\@titlepagetrue
+% \end{macrocode}
+% \item Соответствующие типы диссертаций.
+% \begin{macrocode}
+\newif\if@bachelor\@bachelorfalse
+\newif\if@master\@masterfalse
+\newif\if@candidate\@candidatefalse
+\newif\if@doctor\@doctorfalse
+\newif\if@autoref\@autoreffalse
+% \end{macrocode}
+% \item |true|, если главы начинаются только с нечетных страниц.
+% \begin{macrocode}
+\newif\if@openright
+% \end{macrocode}
+% \item |true|, если подключается |hyperref|.
+% \begin{macrocode}
+\newif\ifhref\hreffalse
+% \end{macrocode}
+% \item |true|, если файл обрабатывается pdf\LaTeX{}.
+% \begin{macrocode}
+\newif\ifpdf
+ \ifx\pdfoutput\undefined
+ \else
+ \ifx\pdfoutput\relax
+ \else
+ \ifcase\pdfoutput
+ \else
+ \pdftrue
+ \fi
+ \fi
+ \fi
+
+\newif\ifsubf\subffalse
+
+% \end{macrocode}
+% \end{itemize}
+% \subsection{Опции класса}
+%
+% Размер листов.
+% \begin{macrocode}
+
+\DeclareOption{a4paper}{%
+ \setlength\paperheight{297mm}
+ \setlength\paperwidth {210mm}
+}
+\DeclareOption{a5paper}{%
+ \setlength\paperheight{210mm}
+ \setlength\paperwidth {148mm}
+}
+\DeclareOption{b5paper}{%
+ \setlength\paperheight{250mm}
+ \setlength\paperwidth {176mm}
+}
+% \end{macrocode}
+% Альбомная ориентация.
+% \begin{macrocode}
+\DeclareOption{landscape}{%
+ \setlength\@tempdima {\paperheight}%
+ \setlength\paperheight{\paperwidth}%
+ \setlength\paperwidth {\@tempdima}
+}
+
+% \end{macrocode}
+% Размер шрифта основного текста.
+% \begin{macrocode}
+\newcommand\@ptsize{}
+\DeclareOption{8pt} {\renewcommand\@ptsize{8}}
+\DeclareOption{9pt} {\renewcommand\@ptsize{9}}
+\DeclareOption{10pt}{\renewcommand\@ptsize{10}}
+\DeclareOption{11pt}{\renewcommand\@ptsize{11}}
+\DeclareOption{12pt}{\renewcommand\@ptsize{12}}
+\DeclareOption{14pt}{\renewcommand\@ptsize{14}}
+\DeclareOption{17pt}{\renewcommand\@ptsize{17}}
+\DeclareOption{20pt}{\renewcommand\@ptsize{20}}
+
+% \end{macrocode}
+% Установка полей для односторонней или двухсторонней печати.
+% \begin{macrocode}
+\DeclareOption{oneside}{\@twosidefalse \@mparswitchfalse}
+\DeclareOption{twoside}{\@twosidetrue \@mparswitchtrue}
+
+% \end{macrocode}
+% Включение сообщений о строках, выходящих за поля.
+% \begin{macrocode}
+\DeclareOption{draft}{\setlength\overfullrule{5pt}}
+\DeclareOption{final}{\setlength\overfullrule{0pt}}
+
+% \end{macrocode}
+% Печатать титульный лист или нет.
+% \begin{macrocode}
+\DeclareOption{titlepage} {\@titlepagetrue}
+\DeclareOption{notitlepage}{\@titlepagefalse}
+
+% \end{macrocode}
+% Главы будут начинаться только на нечетной странице (будет всегда справа на
+% развороте) или на первой доступной.
+% \begin{macrocode}
+\DeclareOption{openright}{\@openrighttrue}
+\DeclareOption{openany}{\@openrightfalse}
+
+% \end{macrocode}
+% Верстка в один или в два столбца.
+% \begin{macrocode}
+\DeclareOption{onecolumn}{\@twocolumnfalse}
+\DeclareOption{twocolumn}{\@twocolumntrue}
+
+% \end{macrocode}
+% Номера размещаются слева, а не справа от формул.
+% \begin{macrocode}
+\DeclareOption{leqno}{\input{leqno.clo}}
+
+% \end{macrocode}
+% Выключные формулы будут выравнены по левому краю, а не по центру.
+% \begin{macrocode}
+\DeclareOption{fleqn}{\input{fleqn.clo}}
+% \end{macrocode}
+% Использовать в тексте и формулах шрифт Times вместо Computer Modern Roman.
+% \begin{macrocode}
+\DeclareOption{times}{
+ \AtEndOfPackage{%
+ \usepackage{pscyr}
+% \end{macrocode}
+% Пакет |txfonts| необходимо подключать \textbf{после} |pscyr| для
+% корректного определения символов, составленных из двух других (таких как
+% $\hbar$ и $\neq$).
+% \begin{macrocode}
+ \usepackage{txfonts}
+% \end{macrocode}
+% Установка Times как шрифта по умолчанию.
+% \begin{macrocode}
+ \renewcommand{\rmdefault}{ftm}
+ }
+}
+% \end{macrocode}
+% Если указана эта опция, то блоки текста в списке литературы будут печататься на новых строках и с отступом.
+% \begin{macrocode}
+\DeclareOption{openbib}{%
+ \AtEndOfPackage{%
+ \renewcommand\@openbib@code{%
+ \advance\leftmargin\bibindent
+ \itemindent -\bibindent
+ \listparindent \itemindent
+ \parsep \z@
+ }%
+ \renewcommand\newblock{\par}
+ }%
+}
+% \end{macrocode}
+% Включение пакета |hyperref| и необходимых настроек.
+% \begin{macrocode}
+\DeclareOption{href}{\hreftrue}
+
+% \end{macrocode}
+% Включение пакета |subfigure| и необходимых настроек.
+% \begin{macrocode}
+\DeclareOption{subf}{\subftrue}
+
+% \end{macrocode}
+% Тип диссертации.
+% \begin{macrocode}
+\DeclareOption{bachelor}{%
+ \@bachelortrue\@masterfalse\@candidatefalse\@doctorfalse\@autoreffalse
+}
+\DeclareOption{master}{%
+ \@bachelorfalse\@mastertrue\@candidatefalse\@doctorfalse\@autoreffalse
+}
+\DeclareOption{candidate}{%
+ \@bachelorfalse\@masterfalse\@candidatetrue\@doctorfalse\@autoreffalse
+}
+\DeclareOption{doctor}{%
+ \@bachelorfalse\@masterfalse\@candidatefalse\@doctortrue\@autoreffalse
+}
+\DeclareOption{autoref}{%
+ \@bachelorfalse\@masterfalse\@candidatefalse\@doctorfalse\@autoreftrue
+}
+% \end{macrocode}
+% Команды изменения регистра.
+% \DescribeMacro{\MakeTextUppercase}
+% \begin{macrocode}
+\DeclareRobustCommand\MakeTextUppercase{%
+ \@uclcnotmath{\def\i{I}\def\j{J}}{##1##2}\uppercase}
+
+\protected@edef\MakeTextUppercase#1{\MakeTextUppercase{#1}}
+
+% \end{macrocode}
+% \DescribeMacro{\MakeTextLowercase}
+% \begin{macrocode}
+\DeclareRobustCommand\MakeTextLowercase{%
+ \@uclcnotmath{}{##2##1}\lowercase}
+
+\protected@edef\MakeTextLowercase#1{\MakeTextLowercase{#1}}
+
+% \end{macrocode}
+% Выполнение опций по умолчанию.
+% \begin{macrocode}
+\ExecuteOptions{a4paper,14pt,oneside,titlepage,onecolumn,final,openany}
+% \end{macrocode}
+% Выполнение пользовательских опций.
+% \begin{macrocode}
+\ProcessOptions
+% \end{macrocode}
+% \subsection{Настройка шрифтов}
+% \subsubsection{Определение размеров}
+% \begin{macrocode}
+\def\EC@family#1#2#3#4#5{%
+ \DeclareFontShape{#1}{#2}{#3}{#4}%
+ {<5><6><7><8><9><10><10.95><12><14.4><17.28><20.74>%
+ <24.88><29.86><35.83><42.99><51.59>genb*#5}{}}
+\EC@family{T1}{cmr}{m}{n}{ecrm}
+\EC@family{T1}{cmr}{m}{sl}{ecsl}
+\EC@family{T1}{cmr}{m}{it}{ecti}
+\EC@family{T1}{cmr}{m}{sc}{eccc}
+\EC@family{T1}{cmr}{bx}{n}{ecbx}
+\EC@family{T1}{cmr}{b}{n}{ecrb}
+\EC@family{T1}{cmr}{bx}{it}{ecbi}
+\EC@family{T1}{cmr}{bx}{sl}{ecbl}
+\EC@family{T1}{cmr}{bx}{sc}{ecxc}
+\EC@family{T1}{cmr}{m}{ui}{ecui}
+\DeclareFontShape{OT1}{cmr}{m}{n}%
+ {<5><6><7><8><9><10><12>gen*cmr%
+ <10.95>cmr10%
+ <14.4>cmr12%
+ <17.28><20.74><24.88><29.86><35.83><42.99><51.59>cmr17}{}
+\DeclareFontShape{OT1}{cmr}{m}{sl}%
+ {<5><6><7>cmsl8%
+ <8><9>gen*cmsl%
+ <10><10.95>cmsl10%
+ <12><14.4><17.28><20.74><24.88><29.86><35.83><42.99><51.59>cmsl12%
+ }{}
+\DeclareFontShape{OT1}{cmr}{m}{it}%
+ {<5><6><7>cmti7%
+ <8>cmti8%
+ <9>cmti9%
+ <10><10.95>cmti10%
+ <12><14.4><17.28><20.74><24.88><29.86><35.83><42.99><51.59>cmti12%
+ }{}
+\DeclareFontShape{OT1}{cmr}{m}{sc}%
+ {<5><6><7><8><9><10><10.95><12>%
+ <14.4><17.28><20.74><24.88><29.86><35.83><42.99><51.59>cmcsc10%
+ }{}
+\DeclareFontShape{OT1}{cmr}{m}{ui}{
+ <5><6><7><8><9><10><10.95><12>%
+ <14.4><17.28><20.74><24.88><29.86><35.83><42.99><51.59>cmu10%
+}{}
+\DeclareFontShape{OT1}{cmr}{b}{n}{
+ <5><6><7><8><9><10><10.95><12>%
+ <14.4><17.28><20.74><24.88><29.86><35.83><42.99><51.59>cmb10%
+}{}
+\DeclareFontShape{OT1}{cmr}{bx}{n}{
+ <5><6><7><8><9>gen*cmbx%
+ <10><10.95>cmbx10%
+ <12><14.4><17.28><20.74><24.88><29.86><35.83><42.99><51.59>cmbx12%
+}{}
+\DeclareFontShape{OT1}{cmr}{bx}{sl}{<5><6><7><8><9>%
+ <10><10.95><12><14.4><17.28><20.74><24.88><29.86><35.83><42.99><51.59>cmbxsl10%
+}{}
+\DeclareFontShape{OT1}{cmr}{bx}{it}{<5><6><7><8><9>%
+ <10><10.95><12><14.4><17.28><20.74><24.88><29.86><35.83><42.99><51.59>cmbxti10%
+}{}
+\input{size\@ptsize.clo}
+\RequirePackage{exscale}
+
+% \end{macrocode}
+%
+% \subsubsection{Старые команды изменения начертания шрифтов (без NFSS)}
+%
+% В текстовом режиме.
+% \begin{macrocode}
+\DeclareOldFontCommand{\rm}{\normalfont\rmfamily}{\mathrm}
+\DeclareOldFontCommand{\sf}{\normalfont\sffamily}{\mathsf}
+\DeclareOldFontCommand{\tt}{\normalfont\ttfamily}{\mathtt}
+\DeclareOldFontCommand{\bf}{\normalfont\bfseries}{\mathbf}
+\DeclareOldFontCommand{\it}{\normalfont\itshape} {\mathit}
+\DeclareOldFontCommand{\sl}{\normalfont\slshape} {\@nomath\sl}
+\DeclareOldFontCommand{\sc}{\normalfont\scshape} {\@nomath\sc}
+% \end{macrocode}
+% В математическом режиме.
+% \begin{macrocode}
+\DeclareRobustCommand*\cal{\@fontswitch\relax\mathcal}
+\DeclareRobustCommand*\mit{\@fontswitch\relax\mathnormal}
+
+% \end{macrocode}
+%
+% \subsection{Параметры текста}
+%
+% Вертикальный интервал между строками. Упоминаемый здесь и далее макрос |\p@|
+% определяет единицу длины. По умолчанию она равна английскому пункту (pt).
+% \DescribeMacro{\lineskip}
+% \DescribeMacro{\normallineskip}
+% \begin{macrocode}
+\setlength\lineskip{1\p@}
+\setlength\normallineskip{1\p@}
+% \end{macrocode}
+%
+% \DescribeMacro{\singlespacing}
+% \DescribeMacro{\onehalfspacing}
+% \DescribeMacro{\doublespacing}
+% Команды задания величины межстрочного интервала.
+% \begin{macrocode}
+\newcommand\singlespacing {\renewcommand\baselinestretch{1}}
+\newcommand\onehalfspacing{\renewcommand\baselinestretch{1.5}}
+\newcommand\doublespacing {\renewcommand\baselinestretch{2}}
+% \end{macrocode}
+% Установка межстрочного интервала по умолчанию.
+% \begin{macrocode}
+\onehalfspacing\normalsize
+% \end{macrocode}
+% Интервал между абзацами (добавляется к межстрочному).
+% \DescribeMacro{\parskip}
+% \begin{macrocode}
+\setlength\parskip{0\p@ \@plus \p@}
+% \end{macrocode}
+%
+% \subsection{Параметры размещения плавающих объектов на странице}
+% \subsubsection{Количество объектов}
+% \begin{itemize}
+% \item Максимальное количество плавающих объектов, размещаемое вверху
+% страницы (при двухколонном наборе --- вверху колонки).
+% \begin{macrocode}
+\setcounter{topnumber}{2}
+% \end{macrocode}
+% \item Максимальное количество плавающих объектов, размещаемое внизу
+% страницы (при двухколонном наборе --- внизу колонки).
+% \begin{macrocode}
+\setcounter{bottomnumber}{1}
+% \end{macrocode}
+% \item Максимальное количество плавающих объектов, размещаемое
+% на странице (при двухколонном наборе --- в колонке).
+% \begin{macrocode}
+\setcounter{totalnumber}{3}
+% \end{macrocode}
+% \item При наборе в две колонки: максимальное количество плавающих
+% объектов шириной во всю страницу, которое разрешается разместить вверху
+% страницы
+% \begin{macrocode}
+\setcounter{dbltopnumber}{2}
+% \end{macrocode}
+% \end{itemize}
+%
+% \subsubsection{Величина места, занимаемого плавающими объектами}
+% \begin{itemize}
+% \item Максимальная доля страницы по высоте, которую могут занимать
+% плавающие объекты, размещаемые вверху страницы.
+% \DescribeMacro{\topfraction}
+% \begin{macrocode}
+\renewcommand\topfraction{.7}
+% \end{macrocode}
+% \item Максимальная доля страницы по высоте, которую могут занимать
+% плавающие объекты, размещаемые внизу страницы.
+% \DescribeMacro{\bottomfraction}
+% \begin{macrocode}
+\renewcommand\bottomfraction{.3}
+% \end{macrocode}
+% \item Минимальная доля страницы, которую должен занимать текст, а не
+% плавающие объекты на обычной странице (к страницам, создаваемым
+% \LaTeX{}'ом
+% специально для размещения плавающих объектов при обработке
+% необязательного аргумента |p|, это не относится).
+% \DescribeMacro{\bottomfraction}
+% \begin{macrocode}
+\renewcommand\textfraction{.2}
+% \end{macrocode}
+% \item Параметр, аналогичный предыдущему, относящийся к страницам для
+% плавающих объектов.
+% \DescribeMacro{\floatpagefraction}
+% \begin{macrocode}
+\renewcommand\floatpagefraction{.5}
+% \end{macrocode}
+% \item Тоже, что |\topfraction|, применительно к иллюстрациям (таблицам)
+% шириной в целую страницу при двухколонном наборе.
+% \DescribeMacro{\dbltopfraction}
+% \begin{macrocode}
+\renewcommand\dbltopfraction{.7}
+% \end{macrocode}
+% \item Тоже, что |\floatpagefraction|, применительно к иллюстрациям
+% (таблицам) шириной в целую страницу при двухколонном наборе.
+% \DescribeMacro{\dblfloatpagefraction}
+% \begin{macrocode}
+\renewcommand\dblfloatpagefraction{.5}
+% \end{macrocode}
+% \end{itemize}
+% Максимальный уровень вложенности заголовков, помещаемых в Содержание
+% (по умолчанию вносятся только |\part|, |\chapter| и |\section|).
+% \DescribeMacro{tocdepth}
+% \begin{macrocode}
+\setcounter{tocdepth}{1}
+% \end{macrocode}
+% Максимальный уровень вложенности нумеруемых секций
+% (по умолчанию нумеруются |\part|, |\chapter|, |\section| и |\subsection|).
+% \DescribeMacro{secnumdepth}
+% \begin{macrocode}
+\setcounter{secnumdepth}{2}
+% \end{macrocode}
+% Описание структуры постоянных частей заголовков
+% \begin{itemize}
+% \item в тексте,
+% \DescribeMacro{\@seccntformat}
+% \begin{macrocode}
+\def\@seccntformat#1{%
+ \csname prethe#1\endcsname%
+ \csname the#1\endcsname%
+ \csname postthe#1\endcsname%
+}
+% \end{macrocode}
+% \item в Содержании.
+% \DescribeMacro{\@tocseccntformat}
+% \begin{macrocode}
+\def\@tocseccntformat#1{%
+ \csname tocprethe#1\endcsname%
+ \csname tocthe#1\endcsname%
+ \csname tocpostthe#1\endcsname%
+}
+
+% \end{macrocode}
+% \end{itemize}
+% Характерные величины штрафов. Штраф --- мера <<красоты>> разбиения
+% абзаца на строки. Чем больше величина, тем менее красиво.
+% \begin{macrocode}
+\@lowpenalty 51
+\@medpenalty 151
+\@highpenalty 301
+%</disser>
+% \end{macrocode}