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/toc.dtx |
Initial commit
Diffstat (limited to 'macros/latex/contrib/disser/src/toc.dtx')
-rw-r--r-- | macros/latex/contrib/disser/src/toc.dtx | 180 |
1 files changed, 180 insertions, 0 deletions
diff --git a/macros/latex/contrib/disser/src/toc.dtx b/macros/latex/contrib/disser/src/toc.dtx new file mode 100644 index 0000000000..faa87c5f01 --- /dev/null +++ b/macros/latex/contrib/disser/src/toc.dtx @@ -0,0 +1,180 @@ + +% \iffalse +%%% From File: toc.dtx +% \fi +% +% \begin{macrocode} + +%<*toc> +% \end{macrocode} +% +% \subsection{Автоматически генерируемые списки (оглавление, предметный +% указатель и т.\,д.)} +% +% \subsubsection{Общие параметры} +% +% Горизонтальный пробел между постоянной и переменной частями заголовков. +% \DescribeMacro{\@postskip}\index{Макросы!\verb+"\"@postskip+} +% \begin{macrocode} +\def\@postskip{\texorpdfstring{\hskip1em}{ }} +% \end{macrocode} +% Длина пробела между заполнителем строки и номером страницы. +% \DescribeMacro{\@pnumwidth}\index{Макросы!\verb+"\"@pnumwidth+} +% \begin{macrocode} +\newcommand\@pnumwidth{1.55em} +% \end{macrocode} +% Правая граница текста. +% \DescribeMacro{\@tocrmarg}\index{Макросы!\verb+"\"@tocrmarg+} +% \begin{macrocode} +\newcommand\@tocrmarg{2.55em} +% \end{macrocode} +% Расстояние между символами (точками) в заполнителе между названием и номером +% (в единицах mu = 1/18 em, em --- длина буквы |M| текущего шрифта). +% \DescribeMacro{\@dotsep}\index{Макросы!\verb+"\"@dotsep+} +% \begin{macrocode} +\newcommand\@dotsep{4.5} +% \end{macrocode} +% Команда для заполнения промежутка между названием и номером страницы. +% \DescribeMacro{\tocfill}\index{Макросы!\verb*+\tocfill+} +% \begin{macrocode} +\def\tocfill#1{% + \leaders\hbox{$\m@th\mkern\@dotsep mu\hbox{#1}\mkern\@dotsep mu$}% +} + +% \end{macrocode} +% \subsubsection{Оглавление} +% +% Команда, создающая заголовок в тексте. +% \DescribeMacro{\tocsection}\index{Макросы!\verb*+\tocsection+} +% \begin{macrocode} +\newcommand\tocsection{\chapter*{\contentsname}} + +% \end{macrocode} +% \DescribeMacro{\tableofcontents}\index{Макросы!\verb*+\tableofcontents+} +% \begin{macrocode} +\newcommand\tableofcontents{% + \if@twocolumn% + \@restonecoltrue\onecolumn% + \else\@restonecolfalse\fi% + \tocsection% + \@mkboth{\MakeUppercase\contentsname}{\MakeUppercase\contentsname}% + \@starttoc{toc}% + \if@restonecol\twocolumn\fi + \clearpage +} +% \end{macrocode} +% +% \subsubsection{Список иллюстраций} +% +% Команда, создающая заголовок в тексте. +% \DescribeMacro{\lofsection}\index{Макросы!\verb*+\lofsection+} +% \begin{macrocode} +\newcommand\lofsection{\nchapter{\listfigurename}} + +% \end{macrocode} +% \DescribeMacro{\listoffigures}\index{Макросы!\verb*+\listoffigures+} +% \begin{macrocode} +\newcommand\listoffigures{% + \if@twocolumn\@restonecoltrue\onecolumn% + \else\@restonecolfalse\fi% + \lofsection% + \@mkboth{\MakeUppercase\listfigurename}{\MakeUppercase\listfigurename}% + \@starttoc{lof}% + \if@restonecol\twocolumn\fi +} + +% \end{macrocode} +% Формат элемента списка иллюстраций. +% \begin{macrocode} +\newcommand*\l@figure{\@dottedtocline{1}{1.5em}{2.3em}} + +% \end{macrocode} +% +% \subsubsection{Список таблиц} +% +% Команда, создающая заголовок в тексте. +% \DescribeMacro{\lotsection}\index{Макросы!\verb*+\lotsection+} +% \begin{macrocode} +\newcommand\lotsection{\nchapter{\listtablename}} + +% \end{macrocode} +% \DescribeMacro{\listoftables}\index{Макросы!\verb*+\listoftables+} +% \begin{macrocode} +\newcommand\listoftables{% + \if@twocolumn\@restonecoltrue\onecolumn% + \else\@restonecolfalse\fi% + \lotsection% + \@mkboth{\MakeUppercase\listtablename}{\MakeUppercase\listtablename}% + \@starttoc{lot}% + \if@restonecol\twocolumn\fi +} + +% \end{macrocode} +% Формат элемента списка таблиц. +% \begin{macrocode} +\let\l@table\l@figure + +% \end{macrocode} +% +% \subsubsection{Библиография} +% +% Окружение и заголовок будут переопределены в пакете \pkg{natbib} и далее +% в файле \file{custom.dtx}. +% \DescribeEnv{thebibliography}\index{Окружения!\verb*+thebibliography+} +% \begin{macrocode} +\newenvironment{thebibliography}[1]{}{} + +% \end{macrocode} +% Величина отступа для элементов списка литературы. +% \DescribeMacro{\bibindent}\index{Интервалы!\verb*+\bibindent+} +% \begin{macrocode} +\newdimen\bibindent +\setlength\bibindent{1.5em} +% \end{macrocode} +% Горизонтальный пробел между различными частями элемента библиографии. +% \DescribeMacro{\newblock}\index{Макросы!\verb*+\newblock+} +% \begin{macrocode} +\newcommand\newblock{\hskip .11em\@plus.33em\@minus.07em} +\let\@openbib@code\@empty + +% \end{macrocode} +% +% \subsubsection{Предметный указатель} +% +% Команда, создающая заголовок в тексте. +% \DescribeMacro{\indexsection}\index{Макросы!\verb*+\indexsection+} +% \begin{macrocode} +\providecommand\indexsection{\twocolumn[\@makeschapterhead{\indexname}]} + +% \end{macrocode} +% +% \DescribeEnv{theindex}\index{Окружения!\verb*+theindex+} +% \begin{macrocode} +\newenvironment{theindex}{% + \if@twocolumn\@restonecolfalse% + \else\@restonecoltrue\fi% + \columnseprule \z@ + \columnsep 35\p@ + \indexsection% + \@mkboth{\MakeUppercase\indexname}{\MakeUppercase\indexname}% + \thispagestyle{plain} + \parindent\z@ + \parskip\z@ \@plus .3\p@\relax + \let\item\@idxitem% +}{\if@restonecol\onecolumn\else\clearpage\fi} +% \end{macrocode} +% Формат элементов. +% \DescribeMacro{\@idxitem}\index{Макросы!\verb+"\"@idxitem+} +% \DescribeMacro{\subitem}\index{Макросы!\verb*+\subitem+} +% \DescribeMacro{\subsubitem}\index{Макросы!\verb*+\subsubitem+} +% \begin{macrocode} +\newcommand\@idxitem{\par\hangindent 40\p@} +\newcommand\subitem{\@idxitem \hspace*{20\p@}} +\newcommand\subsubitem{\@idxitem \hspace*{30\p@}} +% \end{macrocode} +% Вертикальный пробел между элементами предметного указателя. +% \DescribeMacro{\indexspace}\index{Макросы!\verb*+\indexspace+} +% \begin{macrocode} +\newcommand\indexspace{\par \vskip 10\p@ \@plus5\p@ \@minus3\p@\relax} +%</toc> +% \end{macrocode} |