diff options
Diffstat (limited to 'Master/texmf-dist/source/latex/disser/part.dtx')
-rw-r--r-- | Master/texmf-dist/source/latex/disser/part.dtx | 141 |
1 files changed, 141 insertions, 0 deletions
diff --git a/Master/texmf-dist/source/latex/disser/part.dtx b/Master/texmf-dist/source/latex/disser/part.dtx new file mode 100644 index 00000000000..59163401f16 --- /dev/null +++ b/Master/texmf-dist/source/latex/disser/part.dtx @@ -0,0 +1,141 @@ +% \begin{macrocode} + +%<*part> +% \end{macrocode} +% \subsection{Часть} +% +% \subsubsection{Формат записи в Содержании} +% Постоянный текст до номера (по умолчанию --- слово ``Часть''). +% \begin{macrocode} +\providecommand\tocprethepart{\partname~} +% \end{macrocode} +% Постоянный текст после номера. +% \begin{macrocode} +\providecommand\tocpostthepart{.\@postskip} +% \end{macrocode} +% Заполнитель между названием и номером страницы. Для части по умолчанию отсутствует. +% Чтобы заполнить какими-либо символами |\tocpartfill| нужно присвоить значение +% |\tocfill{символ}|. Для примера см. далее определение |\tocsectionfill|. +% \begin{macrocode} +\providecommand\tocpartfill{} +% \end{macrocode} +% Шрифт заголовка в Содержании. +% \begin{macrocode} +\providecommand\tocpartfont{\bfseries} +% \end{macrocode} +% Шрифт заполнителя. +% \begin{macrocode} +\providecommand\tocpartfillfont{\normalfont} +% \end{macrocode} +% Шрифт номера. +% \begin{macrocode} +\providecommand\tocpartnumfont{\normalfont} + +% \end{macrocode} +% Параметры номера и названия: выравнивание, шрифт, отступы, текст до и после. +% \begin{macrocode} +\providecommand\thepartalign{\centering} +\providecommand\thepartfont{\huge} +\providecommand\prethepart{\tocprethepart} +\providecommand\postthepart{\par\vskip 20\p@} + +\providecommand\partalign{\centering} +\providecommand\partfont{\huge\bfseries} +\providecommand\prepart{} +\providecommand\postpart{\par} + +% \end{macrocode} +% Стиль страницы, на которой расположен заголовок части. +% \begin{macrocode} +\providecommand\partpagestyle{empty} +% \end{macrocode} +% +% Интерфейс. +% \begin{macrocode} +\newcommand\part{ + \if@openright + \cleardoublepage + \else + \clearpage + \fi + \thispagestyle{\partpagestyle}% + \if@twocolumn + \onecolumn + \@tempswatrue + \else + \@tempswafalse + \fi + \null\vfil\secdef\@part\@spart +} +% \end{macrocode} +% Установка счетчиков и добавление строки в Содержание. +% \begin{macrocode} +\def\@part[#1]#2{% + \ifnum \c@secnumdepth >-2\relax + \refstepcounter{part}% +% \end{macrocode} +% Здесь и далее команда |\def\\{ }| используется для корректного отображения +% заголовков с принудительными разрывами строк. +% \begin{macrocode} + {\def\\{ }\addcontentsline{toc}{part}{\@tocseccntformat{part} #1}} + \else + {\def\\{ }\addcontentsline{toc}{part}{#1}} + \fi + \markboth{}{}% + {% + \interlinepenalty \@M + \normalfont + \ifnum \c@secnumdepth >-2\relax +% \end{macrocode} +% +% Постоянная часть заголовка и номер. +% \begin{macrocode} + {\thepartfont\partalign\@seccntformat{part}} + \fi% +% \end{macrocode} +% Название. +% \begin{macrocode} + {\partfont\partalign\prepart #2\postpart}% + } + \@endpart% +} + +\def\@spart#1{% + \partalign{\interlinepenalty \@M% + \partfont\prepart #1\postpart}% + \@endpart +} + +\def\@endpart{ + \vfil\newpage + \if@twoside + \null + \thispagestyle{\partpagestyle}% + \newpage + \fi + \if@tempswa\twocolumn\fi +} +% \end{macrocode} +% Команда, создающая запись в Содержании. +% \begin{macrocode} +\newcommand*\l@part[2] +{% + \ifnum \c@tocdepth >-2\relax + \addpenalty{-\@highpenalty}% + \addvspace{2.25em \@plus\p@}% + \begingroup + \setlength\@tempdima{3em}% + \parindent \z@ \rightskip \@pnumwidth + \parfillskip -\@pnumwidth + {\leavevmode \tocpartfont #1\nobreak + \tocpartfillfont\tocpartfill\hfill + \hb@xt@\@pnumwidth{\hss\tocpartnumfont #2}} + \par\nobreak + \global\@nobreaktrue + \everypar{\global\@nobreakfalse\everypar{}}% + \endgroup + \fi +} + +%</part> +% \end{macrocode} |