summaryrefslogtreecommitdiff
path: root/macros/latex/contrib/disser/src/env.dtx
diff options
context:
space:
mode:
Diffstat (limited to 'macros/latex/contrib/disser/src/env.dtx')
-rw-r--r--macros/latex/contrib/disser/src/env.dtx193
1 files changed, 193 insertions, 0 deletions
diff --git a/macros/latex/contrib/disser/src/env.dtx b/macros/latex/contrib/disser/src/env.dtx
new file mode 100644
index 0000000000..c1372c1394
--- /dev/null
+++ b/macros/latex/contrib/disser/src/env.dtx
@@ -0,0 +1,193 @@
+
+% \iffalse
+%%% From File: env.dtx
+% \fi
+%
+% \begin{macrocode}
+
+%<*env>
+% \end{macrocode}
+% \subsection{Окружения}
+%
+% \DescribeEnv{description}\index{Окружения!\verb*+description+}
+% \subsubsection{Примечание}
+% \begin{macrocode}
+\newenvironment{description}
+ {\list{}{\labelwidth\z@ \itemindent-\leftmargin
+ \let\makelabel\descriptionlabel}}
+ {\endlist}
+
+% \end{macrocode}
+% \DescribeMacro{\descriptionlabel}\index{Макросы!\verb*+\descriptionlabel+}
+% \begin{macrocode}
+\newcommand*\descriptionlabel[1]{\hspace\labelsep\normalfont\bfseries #1}
+
+% \end{macrocode}
+% \DescribeMacro{\abstractnamefont}\index{Макросы!\verb*+\abstractnamefont+}
+% \DescribeMacro{\abstractfont}\index{Макросы!\verb*+\abstractfont+}
+% \DescribeMacro{\postabstract}\index{Макросы!\verb*+\postabstract+}
+% \begin{macrocode}
+\newcommand\abstractnamefont{\bfseries\small}
+\newcommand\abstractfont{\small}
+\newcommand\postabstract{\par\vfil\null}
+
+% \end{macrocode}
+% \DescribeEnv{abstract}\index{Окружения!\verb*+abstract+}
+% \subsubsection{Аннотация}
+% \begin{macrocode}
+\if@titlepage
+ \newenvironment{abstract}{
+ \thispagestyle{empty}
+ \@beginparpenalty\@lowpenalty
+ \begin{center}%
+ \abstractnamefont\abstractname
+ \@endparpenalty\@M
+ \end{center}\abstractfont
+ }{\postabstract}
+\else
+ \newenvironment{abstract}{
+ \if@twocolumn
+ \section*{\abstractname}
+ \else
+ \begin{center}
+ {\abstractnamefont\vspace{-.5em}\vspace{\z@}}%
+ \end{center}\abstractfont
+ \quotation
+ \fi
+ }{\if@twocolumn\else\endquotation\fi}
+\fi
+
+% \end{macrocode}
+% \DescribeEnv{quotation}\index{Окружения!\verb*+quotation+}
+% \subsubsection{Цитирование}
+% \begin{macrocode}
+\newenvironment{quotation}{
+ \list{}{
+ \listparindent 1.5em
+ \itemindent\listparindent
+ \rightmargin\leftmargin
+ \parsep\z@ \@plus\p@
+ }
+ \item\relax
+}{\endlist}
+
+% \end{macrocode}
+% \DescribeEnv{quote}\index{Окружения!\verb*+quote+}
+% \subsubsection{Выдержка}
+% \begin{macrocode}
+\newenvironment{quote}{
+ \list{}{\rightmargin\leftmargin}
+ \item\relax
+}{\endlist}
+
+% \end{macrocode}
+% \DescribeEnv{titlepage}\index{Окружения!\verb*+titlepage+}
+% \subsubsection{Титульный лист}
+% \begin{macrocode}
+\newenvironment{titlepage}{
+ \if@twocolumn
+ \@restonecoltrue\onecolumn
+ \else
+ \@restonecolfalse\newpage
+ \fi
+ \thispagestyle{empty}
+ \setcounter{page}\@ne
+}{
+ \if@restonecol\twocolumn\else\newpage\fi
+ \if@twoside\else\setcounter{page}\@ne\fi
+}
+
+% \end{macrocode}
+%
+% \DescribeEnv{figure}\index{Окружения!\verb*+figure+}
+% \DescribeEnv{figure*}\index{Окружения!\verb*+figure*+}
+% \subsubsection{Рисунок}
+% \begin{macrocode}
+\newenvironment{figure}{\@float{figure}}{\end@float}
+\newenvironment{figure*}{\@dblfloat{figure}}{\end@dblfloat}
+% \end{macrocode}
+%
+% \DescribeEnv{table}\index{Окружения!\verb*+table+}
+% \DescribeEnv{table*}\index{Окружения!\verb*+table*+}
+% \subsubsection{Таблица}
+% \begin{macrocode}
+\newenvironment{table}{\@float{table}}{\end@float}
+\newenvironment{table*}{\@dblfloat{table}}{\end@dblfloat}
+% \end{macrocode}
+%
+% \subsubsection{Генератор окружений типа <<теорема>>}
+%
+% \DescribeMacro{\newtheorem}\index{Макросы!\verb*+\newtheorem+}
+% Переопределяем |\newtheorem| так, чтобы автоматически создавались
+% параметры формата теорем.
+% \begin{macrocode}
+
+\def\newtheorem#1{%
+% \end{macrocode}
+% \DescribeMacro{\theoremstyle}\index{Макросы!\verb*+\theoremstyle+}
+% \DescribeMacro{\thetheoremstyle}\index{Макросы!\verb*+\thetheoremstyle+}
+% \DescribeMacro{\postthetheorem}\index{Макросы!\verb*+\postthetheorem+}
+% \DescribeMacro{\opargtheorem}\index{Макросы!\verb*+\opargtheorem+}
+% \DescribeMacro{\preopargtheorem}\index{Макросы!\verb*+\preopargtheorem+}
+% \DescribeMacro{\postopargtheorem}\index{Макросы!\verb*+\postopargtheorem+}
+% \begin{macrocode}
+ {
+% \end{macrocode}
+% Стиль текста теоремы.
+% \begin{macrocode}
+ \global\@namedef{#1style}{\itshape}
+% \end{macrocode}
+% Стиль заголовка и номера теоремы.
+% \begin{macrocode}
+ \global\@namedef{the#1style}{\bfseries}
+% \end{macrocode}
+% Символ после номера.
+% \begin{macrocode}
+ \global\@namedef{postthe#1}{.}
+% \end{macrocode}
+% Стиль опционального аргумента (текста в скобках после заголовка и номера).
+% \begin{macrocode}
+ \global\@namedef{oparg#1style}{\upshape}
+% \end{macrocode}
+% Символы, окружающие опциональный аргумент (по умолчанию --- круглые скобки).
+% \begin{macrocode}
+ \global\@namedef{preoparg#1}{(}
+ \global\@namedef{postoparg#1}{)}
+ }
+ \@ifnextchar[{\@othm{#1}}{\@nthm{#1}}%
+}
+
+% \end{macrocode}
+% У команд |\@begintheorem| и |\@opargbegintheorem| изменены аргументы,
+% чтобы можно было использовать обобщенное форматирование.
+% \DescribeMacro{\@xthm}\index{Макросы!\verb*+"\"@xthm+}
+% \DescribeMacro{\@ythm}\index{Макросы!\verb*+"\"@ythm+}
+% \DescribeMacro{\@begintheorem}\index{Макросы!\verb*+"\"@begintheorem+}
+% \DescribeMacro{\@opargbegintheorem}\index{Макросы!\verb*+"\"@opargbegintheorem+}
+% \DescribeMacro{\@endtheorem}\index{Макросы!\verb*+"\"@endtheorem+}
+% \begin{macrocode}
+\def\@xthm#1#2{%
+ \@begintheorem{#1}{#2}\ignorespaces}
+\def\@ythm#1#2[#3]{%
+ \@opargbegintheorem{#1}{#2}{#3}\ignorespaces}
+
+\def\@begintheorem#1#2{\trivlist
+ \item[\hskip\labelsep%
+ {\csname the#1style\endcsname #2\ %
+ \csname the#1\endcsname\unskip\csname postthe#1\endcsname}]%
+ \csname #1style\endcsname%
+}
+
+\def\@opargbegintheorem#1#2#3{\trivlist
+ \item[\hskip\labelsep%
+ {\csname the#1style\endcsname #2\ \csname the#1\endcsname}\ %
+ {\csname oparg#1style\endcsname%
+ \csname preoparg#1\endcsname #3%
+ \csname postoparg#1\endcsname}]%
+ \csname #1style\endcsname%
+}
+
+\def\@endtheorem{\endtrivlist}
+
+%</env>
+% \end{macrocode}