summaryrefslogtreecommitdiff
path: root/Master/texmf-dist/source/latex/disser/part.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/part.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/part.dtx')
-rw-r--r--Master/texmf-dist/source/latex/disser/part.dtx141
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}