diff options
author | Norbert Preining <norbert@preining.info> | 2019-09-02 13:46:59 +0900 |
---|---|---|
committer | Norbert Preining <norbert@preining.info> | 2019-09-02 13:46:59 +0900 |
commit | e0c6872cf40896c7be36b11dcc744620f10adf1d (patch) | |
tree | 60335e10d2f4354b0674ec22d7b53f0f8abee672 /macros/latex/contrib/disser/src/env.dtx |
Initial commit
Diffstat (limited to 'macros/latex/contrib/disser/src/env.dtx')
-rw-r--r-- | macros/latex/contrib/disser/src/env.dtx | 193 |
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} |