diff options
author | Dr. Clea F. Rees <cfrees@imapmail.org> | 2008-12-03 00:28:53 +0000 |
---|---|---|
committer | Dr. Clea F. Rees <cfrees@imapmail.org> | 2008-12-03 00:28:53 +0000 |
commit | 4f27dd85b17214cfe01fad1772840f3a3b9d88a1 (patch) | |
tree | b67a43b38cb544d442042a0bda3e2ed1c63db905 /Master/texmf-dist/source/latex | |
parent | 9e9aecddd3e49a9bb616309887effea00fdbfdd6 (diff) |
disser 1.1.0
git-svn-id: svn://tug.org/texlive/trunk@11501 c570f23f-e606-0410-a88d-b1316a301751
Diffstat (limited to 'Master/texmf-dist/source/latex')
21 files changed, 2124 insertions, 234 deletions
diff --git a/Master/texmf-dist/source/latex/disser/Makefile b/Master/texmf-dist/source/latex/disser/Makefile index aee32e45365..db02f71b551 100644 --- a/Master/texmf-dist/source/latex/disser/Makefile +++ b/Master/texmf-dist/source/latex/disser/Makefile @@ -3,23 +3,30 @@ # Author: Stanislav Kruchinin <stanislav.kruchinin@gmail.com> # -TARGET=disser +TARGET?=disser SUBCLASS=gost732 -TEXMF=/usr/share/texmf -DESTDIR=$(TEXMF)/tex/latex/$(TARGET) -DOCDIR=$(TEXMF)/doc/latex/$(TARGET) +BST=disser-bst -LATEX=latex -PDFLATEX=pdflatex -MI=makeindex +TEXMF?=/usr/share/texmf +CLSDIR?=$(TEXMF)/tex/latex/$(TARGET) +DOCDIR?=$(TEXMF)/doc/latex/$(TARGET) +BSTDIR?=$(TEXMF)/bibtex/bst/$(TARGET) +BSTDOCDIR?=$(TEXMF)/doc/bibtex/$(TARGET) -LATEXFLAGS= -PDFLATEXFLAGS= +CLSFILES?=$(TARGET).cls *.rtx $(SUBCLASS).cls +BSTFILES?=$(TARGET).bst +DOCFILES?=$(TARGET).dvi $(SUBCLASS).dvi $(TARGET).pdf $(SUBCLASS).pdf +BSTDOCFILES?=$(BST).dvi $(BST).pdf -INSTFILES=*.cls *.rtx -DOCFILES=*.dvi *.pdf *.ps -CLEXT= *.log *.out *.aux *.dvi *.idx *.ilg *.ind *.glo *.toc *.bak *.bbl *.blg *.sav -CLFILES=$(INSTFILES) $(DOCFILES) $(CLEXT) +CLEXT?= *.log *.out *.aux *.dvi *.idx *.ilg *.ind *.glo *.toc *.bak *.bbl *.blg *.sav +CLFILES?=$(CLSFILES) $(BSTFILES) $(DOCFILES) $(BSTDOCFILES) $(CLEXT) + +LATEX?=latex +PDFLATEX?=pdflatex +MI?=makeindex + +LATEXFLAGS?= +PDFLATEXFLAGS?= all: class doc @@ -27,15 +34,19 @@ class: *.cls doc: dvi pdf -dvi: $(TARGET).dvi $(SUBCLASS).dvi +dvi: $(TARGET).dvi $(SUBCLASS).dvi $(BST).dvi -pdf: $(TARGET).pdf $(SUBCLASS).pdf +pdf: $(TARGET).pdf $(SUBCLASS).pdf $(BST).pdf install: all - mkdir -p $(DESTDIR) + mkdir -p $(CLSDIR) + mkdir -p $(BSTDIR) mkdir -p $(DOCDIR) - cp $(INSTFILES) $(DESTDIR) + mkdir -p $(BSTDOCDIR) + cp $(CLSFILES) $(CLSDIR) + cp $(BSTFILES) $(BSTDIR) cp $(DOCFILES) $(DOCDIR) + cp $(BSTDOCFILES) $(BSTDOCDIR) clean: rm -f $(CLFILES) diff --git a/Master/texmf-dist/source/latex/disser/autoref.dtx b/Master/texmf-dist/source/latex/disser/autoref.dtx index 1a7c1d885fd..d652f7c84f1 100644 --- a/Master/texmf-dist/source/latex/disser/autoref.dtx +++ b/Master/texmf-dist/source/latex/disser/autoref.dtx @@ -26,6 +26,7 @@ % \begin{macrocode} \firstskip \asmanuscriptname\\ + \ifDis@facsimile\facsimile\fi \end{flushright} \begin{center} % \end{macrocode} diff --git a/Master/texmf-dist/source/latex/disser/bachelor.dtx b/Master/texmf-dist/source/latex/disser/bachelor.dtx index c04209d1b81..6879b30ffc1 100644 --- a/Master/texmf-dist/source/latex/disser/bachelor.dtx +++ b/Master/texmf-dist/source/latex/disser/bachelor.dtx @@ -7,18 +7,24 @@ % \subsubsection{Титульный лист бакалаврской работы} % % Вертикальные интервалы между элементами титульного листа. -% \DescribeMacro{\firstskip}\index{Макросы!\verb*+\firstskip+} -% \DescribeMacro{\secondskip}\index{Макросы!\verb*+\secondskip+} -% \DescribeMacro{\thirdskip}\index{Макросы!\verb*+\thirdskip+} -% \DescribeMacro{\fourthskip}\index{Макросы!\verb*+\fourthskip+} -% \DescribeMacro{\fifthskip}\index{Макросы!\verb*+\fifthskip+} +% \DescribeMacro{\firstskip}\index{Расстояния!\verb*+\firstskip+} +% \DescribeMacro{\secondskip}\index{Расстояния!\verb*+\secondskip+} +% \DescribeMacro{\thirdskip}\index{Расстояния!\verb*+\thirdskip+} +% \DescribeMacro{\fourthskip}\index{Расстояния!\verb*+\fourthskip+} +% \DescribeMacro{\fifthskip}\index{Расстояния!\verb*+\fifthskip+} % \begin{macrocode} -\def\firstskip{\vskip1.5cm} -\def\secondskip{\vskip1.5cm} -\def\thirdskip{\vskip1.em} -\def\fourthskip{\vskip1.em} -\def\fifthskip{\vskip2cm} +\newlength\firstskip +\newlength\secondskip +\newlength\thirdskip +\newlength\fourthskip +\newlength\fifthskip + +\setlength\firstskip{1.5cm} +\setlength\secondskip{1.5cm} +\setlength\thirdskip{1.em} +\setlength\fourthskip{1.em} +\setlength\fifthskip{2cm} % \end{macrocode} % Шрифты элементов титульного листа. @@ -39,22 +45,24 @@ % \end{macrocode} % Диссертация допущена к защите % \begin{macrocode} -\firstskip\@approved\secondskip +\vskip\firstskip +\@approved +\vskip\secondskip % \end{macrocode} % Заголовок, тема. % \begin{macrocode} \begin{center} {\titlefont\@title\par} - \thirdskip + \vskip\thirdskip {\topiclabelfont\topiclabel\;} {\topicfont\@topic\par} - \fourthskip\normalfont + \vskip\fourthskip\normalfont \courselabel\ \@coursenum~-- \@course \end{center} % \end{macrocode} % Специальность, автор, руководитель. % \begin{macrocode} -\fifthskip +\vskip\fifthskip \begin{tabbing} \studentlabel\ \groupname\ \@group\hspace{2cm}\= \makebox[8.5cm][l]{\hrulefill\ \@author} diff --git a/Master/texmf-dist/source/latex/disser/candidate.dtx b/Master/texmf-dist/source/latex/disser/candidate.dtx index ecaa50a2cc0..d366401bc9c 100644 --- a/Master/texmf-dist/source/latex/disser/candidate.dtx +++ b/Master/texmf-dist/source/latex/disser/candidate.dtx @@ -7,20 +7,33 @@ % \subsubsection{Титульный лист кандидатской диссертации} % % Вертикальные интервалы между элементами титульного листа. -% \DescribeMacro{\firstskip}\index{Макросы!\verb*+\firstskip+} -% \DescribeMacro{\secondskip}\index{Макросы!\verb*+\secondskip+} -% \DescribeMacro{\thirdskip}\index{Макросы!\verb*+\thirdskip+} -% \DescribeMacro{\fourthskip}\index{Макросы!\verb*+\fourthskip+} -% \DescribeMacro{\fifthskip}\index{Макросы!\verb*+\fifthskip+} -% \DescribeMacro{\sixthskip}\index{Макросы!\verb*+\sixthskip+} +% \DescribeMacro{\firstskip}\index{Расстояния!\verb*+\firstskip+} +% \DescribeMacro{\secondskip}\index{Расстояния!\verb*+\secondskip+} +% \DescribeMacro{\thirdskip}\index{Расстояния!\verb*+\thirdskip+} +% \DescribeMacro{\fourthskip}\index{Расстояния!\verb*+\fourthskip+} +% \DescribeMacro{\fifthskip}\index{Расстояния!\verb*+\fifthskip+} +% \DescribeMacro{\sixthskip}\index{Расстояния!\verb*+\sixthskip+} % \begin{macrocode} -\def\firstskip{\vskip1cm} -\def\secondskip{\vskip2cm} -\def\thirdskip{\vskip1cm} -\def\fourthskip{\vskip1cm} -\def\fifthskip{\vskip1cm} -\def\sixthskip{} -\def\@sahshift{8cm} +\newlength\firstskip +\newlength\secondskip +\newlength\thirdskip +\newlength\fourthskip +\newlength\fifthskip +\newlength\sixthskip + +\ifDis@libcat + \setlength\firstskip{2em} +\else + \setlength\firstskip{4em} +\fi +\setlength\secondskip{2cm} +\setlength\thirdskip{1cm} +\setlength\fourthskip{1cm} +\setlength\fifthskip{1cm} +\setlength\sixthskip{0pt} + +\newlength\@sahshift +\setlength\@sahshift{8cm} % \end{macrocode} % Шрифты элементов титульного листа. @@ -34,44 +47,47 @@ \def\authorfont{\large} \def\specfont{\normalsize} +\vskip\firstskip \normalfont \begin{flushright} % \end{macrocode} % На правах рукописи % \begin{macrocode} - \firstskip \asmanuscriptname\\ + \ifDis@facsimile\facsimile\fi % \end{macrocode} % Номер УДК % \begin{macrocode} - {\libcatname\ \@libcatnum} + \ifDis@libcat + {\libcatname\ \@libcatnum} + \fi \end{flushright} \begin{center} % \end{macrocode} % Автор % \begin{macrocode} - \secondskip + \vskip\secondskip {\authorfont\@author} % \end{macrocode} % Название диссертации % \begin{macrocode} - \thirdskip + \vskip\thirdskip {\topicfont\@topic\par} % \end{macrocode} % Шифр и наименование специальности % \begin{macrocode} - \fourthskip + \vskip\fourthskip {\specfont\@specnum~--\ \@spec} % \end{macrocode} % Диссертация на соискание ученой степени... % \begin{macrocode} - \fifthskip + \vskip\fifthskip {\titlefont\@title} \end{center} % \end{macrocode} % Научный руководитель % \begin{macrocode} -\sixthskip +\vskip\sixthskip \begin{tabbing} \hspace{\@sahshift}\={\saname}\\ \>\@sastatus\\ diff --git a/Master/texmf-dist/source/latex/disser/chapter.dtx b/Master/texmf-dist/source/latex/disser/chapter.dtx index a131f6ef37f..23710b91e19 100644 --- a/Master/texmf-dist/source/latex/disser/chapter.dtx +++ b/Master/texmf-dist/source/latex/disser/chapter.dtx @@ -12,6 +12,13 @@ % % \subsubsection{Параметры формата записи в Содержании} % +% \DescribeMacro{\tocprethechapter}\index{Макросы!\verb*+\tocprethechapter+} +% \DescribeMacro{\tocpostthechapter}\index{Макросы!\verb*+\tocpostthechapter+} +% \DescribeMacro{\tocchapterfill}\index{Макросы!\verb*+\tocchapterfill+} +% +% \DescribeMacro{\tocchapterfont}\index{Макросы!\verb*+\tocchapterfont+} +% \DescribeMacro{\tocchapterfillfont}\index{Макросы!\verb*+\tocchapterfillfont+} +% \DescribeMacro{\tocchapternumfont}\index{Макросы!\verb*+\tocchapternumfont+} % \begin{macrocode} \providecommand\tocprethechapter{\protect\chaptername~} \providecommand\tocpostthechapter{.\@postskip} @@ -23,6 +30,15 @@ % \end{macrocode} % \subsubsection{Параметры формата в тексте} +% \DescribeMacro{\thechapteralign}\index{Макросы!\verb*+\thechapteralign+} +% \DescribeMacro{\thechapterfont}\index{Макросы!\verb*+\thechapterfont+} +% \DescribeMacro{\prethechapter}\index{Макросы!\verb*+\prethechapter+} +% \DescribeMacro{\postthechapter}\index{Макросы!\verb*+\postthechapter+} +% +% \DescribeMacro{\chapteralign}\index{Макросы!\verb*+\chapteralign+} +% \DescribeMacro{\chapterfont}\index{Макросы!\verb*+\chapterfont+} +% \DescribeMacro{\prechapter}\index{Макросы!\verb*+\prechapter+} +% \DescribeMacro{\postchapter}\index{Макросы!\verb*+\postchapter+} % \begin{macrocode} \providecommand\thechapteralign{\centering} \providecommand\thechapterfont{\Large} @@ -34,16 +50,24 @@ \providecommand\prechapter{} \providecommand\postchapter{\par\nobreak\vskip 20\p@} -\def\chapterpagestyle#1{\gdef\@chapterpagestyle{#1}}\chapterpagestyle{plain} +% \end{macrocode} +% Стиль страницы, с которой начинается глава. +% +% \DescribeMacro{\chapterpagestyle}\index{Макросы!\verb*+\chapterpagestyle+} +% \begin{macrocode} +\def\chapterpagestyle#1{\gdef\@chapterpagestyle{#1}} +\chapterpagestyle{plain} % \end{macrocode} % % \subsubsection{Низкоуровневые команды} % +% \DescribeMacro{\chaptermark}\index{Макросы!\verb*+\chaptermark+} % Пустое определение колонтитула главы. % \begin{macrocode} \newcommand*\chaptermark[1]{} % \end{macrocode} +% \DescribeMacro{\chapter}\index{Макросы!\verb*+\chapter+} % Интерфейс. % \begin{macrocode} \newcommand\chapter{% @@ -133,7 +157,7 @@ } % \end{macrocode} % -% \DescribeMacro{\l@chapter} +% \DescribeMacro{\l@chapter}\index{Макросы!\verb+"\l"@chapter+} % Команда, создающая запись в Содержании. % \begin{macrocode} \newcommand*\l@chapter[2]{% @@ -160,6 +184,13 @@ % \subsection{Приложение} % % \subsubsection{Параметры формата записи в Содержании} +% \DescribeMacro{\tocpretheappendix}\index{Макросы!\verb*+\tocpretheappendix+} +% \DescribeMacro{\tocposttheappendix}\index{Макросы!\verb*+\tocposttheappendix+} +% \DescribeMacro{\tocappendixfill}\index{Макросы!\verb*+\tocappendixfill+} +% +% \DescribeMacro{\tocappendixfont}\index{Макросы!\verb*+\tocappendixfont+} +% \DescribeMacro{\tocappendixfillfont}\index{Макросы!\verb*+\tocappendixfillfont+} +% \DescribeMacro{\tocappendixnumfont}\index{Макросы!\verb*+\tocappendixnumfont+} % \begin{macrocode} \providecommand\tocpretheappendix{\protect\appendixname~} \providecommand\tocposttheappendix{.\@postskip} @@ -171,6 +202,15 @@ % \end{macrocode} % \subsubsection{Параметры формата в тексте} +% \DescribeMacro{\theappendixalign}\index{Макросы!\verb*+\theappendixalign+} +% \DescribeMacro{\theappendixfont}\index{Макросы!\verb*+\theappendixfont+} +% \DescribeMacro{\pretheappendix}\index{Макросы!\verb*+\pretheappendix+} +% \DescribeMacro{\posttheappendix}\index{Макросы!\verb*+\posttheappendix+} +% +% \DescribeMacro{\appendixalign}\index{Макросы!\verb*+\appendixalign+} +% \DescribeMacro{\appendixfont}\index{Макросы!\verb*+\appendixfont+} +% \DescribeMacro{\preappendix}\index{Макросы!\verb*+\preappendix+} +% \DescribeMacro{\postappendix}\index{Макросы!\verb*+\postappendix+} % \begin{macrocode} \providecommand\theappendixalign{\centering} \providecommand\theappendixfont{\Large} diff --git a/Master/texmf-dist/source/latex/disser/counters.dtx b/Master/texmf-dist/source/latex/disser/counters.dtx index 466cc867fb8..45f9fb514dd 100644 --- a/Master/texmf-dist/source/latex/disser/counters.dtx +++ b/Master/texmf-dist/source/latex/disser/counters.dtx @@ -10,6 +10,20 @@ % % \subsection{Создание и настройка счетчиков} % +% Максимальный уровень вложенности секций, помещаемых в Содержание +% (по умолчанию вносятся |\part|, |\chapter| и |\section|). +% \DescribeMacro{tocdepth}\index{Счетчики!\verb*+tocdepth+} +% \begin{macrocode} +\setcounter{tocdepth}{1} +% \end{macrocode} +% Максимальный уровень вложенности нумеруемых секций +% (по умолчанию нумеруются |\part|, |\chapter|, |\section| и |\subsection|). +% \DescribeMacro{secnumdepth}\index{Счетчики!\verb*+secnumdepth+} +% \begin{macrocode} +\setcounter{secnumdepth}{2} + +% \end{macrocode} +% % \DescribeMacro{part}\index{Счетчики!\verb*+part+} % \DescribeMacro{chapter}\index{Счетчики!\verb*+chapter+} % \DescribeMacro{section}\index{Счетчики!\verb*+section+} @@ -29,6 +43,7 @@ \newcounter{subparagraph}[paragraph] \newcounter{figure}[chapter] \newcounter{table}[chapter] + % \end{macrocode} % % Формат нумерации разделов документа в тексте. @@ -87,18 +102,21 @@ % \end{macrocode} % Формат номера формулы. +% \DescribeMacro{\theequation}\index{Макросы!\verb*+\theequation+} % \begin{macrocode} \renewcommand\theequation{% \ifnum\c@chapter > \z@\thechapter.\fi% \@arabic\c@equation} % \end{macrocode} % Формат номера таблицы. +% \DescribeMacro{\thetable}\index{Макросы!\verb*+\thetable+} % \begin{macrocode} \renewcommand\thetable{% \ifnum \c@chapter>\z@\thechapter.\fi% \@arabic\c@table} % \end{macrocode} % Формат номера рисунка. +% \DescribeMacro{\thefigure}\index{Макросы!\verb*+\thefigure+} % \begin{macrocode} \renewcommand\thefigure{% \ifnum \c@chapter>\z@\thechapter.\fi% diff --git a/Master/texmf-dist/source/latex/disser/custom.dtx b/Master/texmf-dist/source/latex/disser/custom.dtx index 2cab96154bc..59788d86be0 100644 --- a/Master/texmf-dist/source/latex/disser/custom.dtx +++ b/Master/texmf-dist/source/latex/disser/custom.dtx @@ -8,13 +8,18 @@ %<*custom> % \end{macrocode} % \subsection{Подключение и настройка сторонних пакетов} -% Включает отступ в первой строке первого абзаца. +% Отступ в первой строке первого абзаца. % \begin{macrocode} \let\@afterindentfalse\@afterindenttrue \@afterindenttrue % \end{macrocode} -% Опция |intlimits| включает правильную расстановку пределов интегрирования -% (сверху и снизу). +% Перенос в словах с дефисом. +% \begin{macrocode} +\lccode`\-=`\- +\defaulthyphenchar=127 +\hyphenchar\font=127 +% \end{macrocode} +% Опция |intlimits| включает расстановку пределов интегрирования сверху и снизу. % \DescribePackage{amsmath}\index{Пакеты!\verb*+amsmath+} % \DescribePackage{amssymb}\index{Пакеты!\verb*+amssymb+} % \DescribePackage{amsfonts}\index{Пакеты!\verb*+amsfonts+} @@ -22,23 +27,50 @@ \usepackage[intlimits]{amsmath} \usepackage{amssymb,amsfonts} % \end{macrocode} -% \DescribePackage{pscyr}\index{Пакеты!\verb*+pscyr+} -% Включение шрифта Times вместо Computer Modern Roman. +% Использование шрифта Times вместо Computer Modern Roman. % \begin{macrocode} \ifDis@times - \AtEndOfPackage{% - \usepackage{pscyr} + \ifDis@mtpro + \AtBeginDocument{% +% \end{macrocode} +% \DescribePackage{mtpro}\index{Пакеты!\verb*+mtpro+} +% \begin{macrocode} + \IfFileExists{mtpro.sty}{ + \usepackage[subscriptcorrection,nofontinfo,boldalphabet]{mtpro} + }{\PackageWarning{disser}{Unable to find mtpro package. Font is unchanged.}} + } + \else % \end{macrocode} % \DescribePackage{txfonts}\index{Пакеты!\verb*+txfonts+} -% Пакет |txfonts| необходимо подключать \textbf{после} |pscyr| для -% корректного определения символов, составленных из двух других (таких как -% $\hbar$ и $\neq$). % \begin{macrocode} - \usepackage{txfonts} + \AtEndOfPackage{% + \IfFileExists{txfonts.sty}{ + \usepackage{txfonts} + }{\PackageWarning{disser}{Unable to find txfonts package. Font is unchanged.}} + } + \fi + \AtEndOfPackage{% + \IfFileExists{pscyr.sty}{ +% \end{macrocode} +% \DescribePackage{pscyr}\index{Пакеты!\verb*+pscyr+} +% \begin{macrocode} + \usepackage{pscyr} % \end{macrocode} % Установка Times как шрифта по умолчанию. % \begin{macrocode} - \renewcommand{\rmdefault}{ftm} + \renewcommand\rmdefault{ftm} +% \end{macrocode} +% Выбор стандартного моноширинного шрифта. +% \begin{macrocode} + \renewcommand\ttdefault{cmtt} + }{ + \IfFileExists{cyrtimes.sty}{ +% \end{macrocode} +% \DescribePackage{cyrtimes}\index{Пакеты!\verb*+cyrtimes+} +% \begin{macrocode} + \usepackage{cyrtimes} + }{\PackageWarning{disser}{Unable to find pscyr or cyrtimes package. Font is unchanged.}} + } } \fi % \end{macrocode} diff --git a/Master/texmf-dist/source/latex/disser/disser-bst.dtx b/Master/texmf-dist/source/latex/disser/disser-bst.dtx new file mode 100644 index 00000000000..31162ae4e45 --- /dev/null +++ b/Master/texmf-dist/source/latex/disser/disser-bst.dtx @@ -0,0 +1,1548 @@ +% \iffalse meta-comment +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +%% +%% This bibliography style attempts +%% to format bibliography according to +%% GOST 7.1-84 with some conventional modifications. +%% +%% Based on style gost71u.bst by Maksym Polyakov. +%% +%% For the Russian bibliographic entries +%% you need to create field +%% language = {russian}. +%% Default language is English. +%% Field numpages for books must contain number of pages. +%% Optional field url will format url (using hyperref, if loaded). +%% +%% Requires 8-bit bibtex with switch -B and csf file +%% supporting cyrillic. +%% +%% bibtex8 -B -c <encoding>.csf <your_document> +%% +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% + +%<*driver> +\ProvidesFile{disser-bst.drv}[2008/12/01 1.0.0 Bibliography style for dissertations.] + +\documentclass{ltxdoc} +\usepackage[a4paper,includehead,includefoot,mag=1000, + left=4cm,right=1.5cm,top=1cm,bottom=2cm]{geometry} +\usepackage[T2A]{fontenc} +\usepackage[cp1251]{inputenc} +\usepackage[english,russian]{babel} +\usepackage{ifpdf,indentfirst} + +\ifpdf + \usepackage[unicode, + pdftitle = {Documented source code of the disser.bst}, + pdfauthor = {Stanislav Kruchinin}, + pdfsubject = {GOST 7.1-84}, + pdfstartview = {FitH}, + pdfborder = {0 0 0}, + bookmarksopen = true, + bookmarksnumbered = true, + bookmarksopenlevel = 2]{hyperref} + \usepackage{cmap} +\else + \usepackage[hypertex]{hyperref} +\fi + +\let\package\textsf +\IfFileExists{pscyr.sty}{% + \usepackage{pscyr} + \renewcommand\ttdefault{cmtt} + \renewcommand\rmdefault{ftm} +}{} +\IfFileExists{url.sty}{\RequirePackage{url}}{\newcommand\url{\texttt}} + +\hypersetup{ + colorlinks = true, + linkcolor = black, citecolor=blue, + filecolor = blue, menucolor=blue, + pagecolor = blue, urlcolor=blue +} + +\MakeShortVerb{\|} + +\begin{document} + \sloppy + \PrintChanges + \DocInput{disser-bst.dtx} +\end{document} +%</driver> +% \fi +% \GetFileInfo{disser-bst.drv} +% +% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +% +% \title{\texttt{disser.bst} "--- стиль библиографических ссылок} +% \date{Версия \fileversion\\[6pt]\filedate} +% \author{Станислав Кручинин\\[6pt] +% \normalsize E-mail: +% \href{mailto:stanislav.kruchinin@gmail.com} +% {\texttt{stanislav.kruchinin@gmail.com}}} +% +% \maketitle +% +% \tableofcontents +% +% \section{Введение} +% +% Cтиль для оформления библиографических ссылок |disser.bst| представляет собой +% доработанную версию |gost71u.bst| из пакета |gost|, написанного Максимом Поляковым. +% Создание |disser.bst| обусловлено следующими причинами: пакет |gost| более не +% поддерживается автором, а оформление библиографии в соответствии с его стилями +% противоречит некоторым требованиям, предъявляемым диссертационными советами +% к библиографическим ссылкам. +% +% Основные отличия |disser.bst| от |gost71u.bst|: +% +% \begin{enumerate} +% \item Инициалы авторов всегда печатаются перед фамилией. +% \item Авторы, независимо от их количества, всегда печатаются перед +% названием источника. +% \item Отсутствует поддержка украинского языка. +% \item Настраиваемый префикс у номера библиографической ссылки (макрос |\BibPrefix|). +% \end{enumerate} +% +% \section{Руководство по использованию} +% +% Для использования |disser.bst| необходима версия \BibTeX{} с поддержкой +% 8-битных символов (|bibtex8|). В зависимости от кодировки, использованной +% в bib-файле, необходимо подключать тот или иной файл с описанием кодовой +% страницы и порядка сортировки (csf-файл), например, |koi8u.csf| или +% |cp1251.csf|. Примеры библиографических записей приведены в документации к +% пакету |gost|, который может быть найден в любом современном дистрибутиве \LaTeX{}. +% +% Последовательность команд, используемая для полной сборки документа +% с библиографией: +% \begin{verbatim} +% latex <tex_file> +% bibtex8 -H -c <csf_file> <tex_file_basename> +% latex <tex_file> +% latex <tex_file> +% \end{verbatim} +% Здесь |<tex_file>| "--- файл документа, |<csf_file>| "--- файл описания +% кодовой страницы, |<tex_file_basename>| "--- имя файла документа без расширения. +% +% Данный стиль позволяет менять префикс номера ссылок, т.\,е. использовать +% ссылки вида [A1] вместо [1]. Эта возможность необходима поскольку в +% автореферате следует различать ссылки на работы соискателя и на внешние +% источники. Префикс номера ссылки определяется макросом |\BibPrefix|, +% значение которого должно быть задано до использования команды +% |\bibliographystyle|. Пример: +% \begin{verbatim} +% \def\BibPrefix{A} +% \bibliographystyle{disser} +% \bibliography{thesis} +% \end{verbatim} +% В данном случае ссылки на библиографию будут иметь вид [A$n$], где $n$ "--- +% номер. +% +% К сожалению, пакет |natbib| не <<сжимает>> ссылки, содержащие нецифровые +% символы. Поэтому ссылки вида [A1, A2, A3, A4] не преобразуются к более +% компактной форме [A1--A4]. В данный момент ведется работа над +% исправлением этого недостатка. +% +% \section{Исходный текст}\parindent=0pt +% \begin{macrocode} +%<*disser-bst> + +% \end{macrocode} +% Список полей, используемых в bib-файлах. +% \begin{macrocode} +ENTRY + { address + annote + author + booktitle + bookauthor + chapter + edition + editor + compiler + howpublished + institution + journal + key + month + note + number + organization + pages + numpages + publisher + school + series + title + type + volume + year + language + booklanguage + url + } + {} + { label } + +% \end{macrocode} +% Список глобальных целочисленных переменных. +% \begin{macrocode} +INTEGERS { output.state before.all mid.sentence after.sentence after.block +after.dblslash after.slash after.column after.semicolumn } + +% \end{macrocode} +% Инициализация переменных. +% \begin{macrocode} +FUNCTION {init.state.consts} +{ #0 'before.all := + #1 'mid.sentence := + #2 'after.sentence := + #3 'after.block := + #4 'after.dblslash := + #5 'after.slash := + #6 'after.column := + #7 'after.semicolumn := +} + +% \end{macrocode} +% Глобальные строковые переменные. +% \begin{macrocode} +STRINGS { s t } + +STRINGS { curlanguage } + +FUNCTION {change.language} +{ booklanguage empty$ + {""} + { + booklanguage 'curlanguage := + "\selectlanguageifdefined{" + curlanguage * + "}" * + } + if$ +} + +FUNCTION {output.nonnull} +%%%{ 's := +{ swap$ + output.state mid.sentence = + { ", " * write$ } + { output.state after.block = + { add.period$ write$ + " " quote$ "--- " * * write$ + newline$ + "\newblock " write$ + } + { output.state before.all = + 'write$ + { output.state after.dblslash = + { "~//" * change.language * " " * write$ } + { output.state after.slash = + { "~/ " * write$ } + { output.state after.column = + { ": " * write$ } + { output.state after.semicolumn = + { "; " * write$ } + { add.period$ " " * write$ } + if$ + } + if$ + } + if$ + } + if$ + } + if$ + } + if$ + mid.sentence 'output.state := + } + if$ +%%% s +} + +FUNCTION {output} +{ duplicate$ empty$ + 'pop$ + 'output.nonnull + if$ +} + +FUNCTION {output.check} +{ 't := + duplicate$ empty$ + { pop$ "empty " t * " in " * cite$ * warning$ } + 'output.nonnull + if$ +} + +FUNCTION {fin.entry} +{ add.period$ + write$ + newline$ +} + +FUNCTION {new.block} +{ output.state before.all = + 'skip$ + { after.block 'output.state := } + if$ +} + +FUNCTION {new.dblslash} +{ output.state before.all = + 'skip$ + { after.dblslash 'output.state := } + if$ +} + +FUNCTION {new.slash} +{ output.state before.all = + 'skip$ + { after.slash 'output.state := } + if$ +} + +FUNCTION {new.column} +{ output.state before.all = + 'skip$ + { after.column 'output.state := } + if$ +} + +FUNCTION {new.semicolumn} +{ output.state before.all = + 'skip$ + { after.semicolumn 'output.state := } + if$ +} + +FUNCTION {new.sentence} +{ output.state after.block = + 'skip$ + { output.state before.all = + 'skip$ + { after.sentence 'output.state := } + if$ + } + if$ +} + +FUNCTION {add.blank} +{ " " * before.all 'output.state := +} + +FUNCTION {not} +{ { #0 } + { #1 } + if$ +} + +FUNCTION {and} +{ 'skip$ + { pop$ #0 } + if$ +} + +FUNCTION {or} +{ { pop$ #1 } + 'skip$ + if$ +} + +FUNCTION {non.stop} +{ duplicate$ + "}" * add.period$ + #-1 #1 substring$ "." = +} + +FUNCTION {new.block.checka} +{ empty$ + 'skip$ + 'new.block + if$ +} + +FUNCTION {new.block.checkb} +{ empty$ + swap$ empty$ + and + 'skip$ + 'new.block + if$ +} + +FUNCTION {new.sentence.checka} +{ empty$ + 'skip$ + 'new.sentence + if$ +} + +FUNCTION {new.sentence.checkb} +{ empty$ + swap$ empty$ + and + 'skip$ + 'new.sentence + if$ +} + +FUNCTION {field.or.null} +{ duplicate$ empty$ + { pop$ "" } + 'skip$ + if$ +} + +FUNCTION {emphasize} +{ duplicate$ empty$ + { pop$ "" } + { "\BibEmph{" swap$ * "}" * } + if$ +} + +FUNCTION {space.word} +{ " " swap$ * " " * } + +FUNCTION {bbl.edby} % { "\bbledby{}" } +{ + curlanguage "english" = + {"Ed. by "} + { curlanguage "russian" = + {"{\cyr\CYRP\cyro\cyrd\ \cyrr\cyre\cyrd.\ }"} + {"language is not defined: " language "edited by" * * warning$ "edited by"} + if$} + if$ +} + +FUNCTION {bbl.cmplr} +{ + curlanguage "english" = + {"Compiler "} + { curlanguage "russian" = + {"{\cyr\CYRS\cyro\cyrs\cyrt.\ }"} + {"language is not defined: " language "compiler" * * warning$ "compiler"} + if$} + if$ +} + +FUNCTION {bbl.edition} % { "\bbledition{}" } +{ + curlanguage "english" = + {"edition"} + { curlanguage "russian" = + {"{\cyr\cyri\cyrz\cyrd.}"} + {"language is not defined: " language "edition" * * warning$ "edition"} + if$} + if$ +} + +FUNCTION {bbl.vvolume} % { "\bblVolume{}" } +{ + curlanguage "english" = + {"Volume"} + { curlanguage "russian" = + {"\CYRT\cyro\cyrm"} + {"language is not defined: " language "Volume" * * warning$ "Volume"} + if$} + if$ +} + +FUNCTION {bbl.vvol} % { "\bblVol{}" } +{ + curlanguage "english" = + {"Vol."} + { curlanguage "russian" = + {"\CYRT."} + {"language is not defined: " language "Vol." * * warning$ "Vol."} + if$} + if$ +} + +FUNCTION {bbl.iissue} % { "\bblIssue{}" } +{ + curlanguage "english" = + {"Issue"} + { curlanguage "russian" = + {"\CYRV\cyrery\cyrp\cyru\cyrs\cyrk"} + {"language is not defined: " language * warning$ "Issue"} + if$} + if$ +} + +FUNCTION {bbl.iiss} % { "\bblIss{}" } +{ + curlanguage "english" = + {"Iss."} + { curlanguage "russian" = + {"\CYRV\cyrery\cyrp."} + {"language is not defined: " language * warning$ "Issue"} + if$} + if$ +} + +FUNCTION {bbl.of} % { "\bblof{}" } +{ + curlanguage "english" = + {"of"} + { curlanguage "russian" = + {"{\cyr\cyri\cyrz}"} + {"language is not defined: " language "of" * * warning$ "of"} + if$} + if$ +} + +FUNCTION {bbl.etal} % { "\bblof{}" } +{ + curlanguage "english" = + {"et~al."} + { curlanguage "russian" = + {"{\cyr\cyri~\cyrd\cyrr.}"} + {"language is not defined: " language "at al" * * warning$ "at al."} + if$} + if$ +} + +FUNCTION {bbl.nnumber} % { "\bblNumber{}" } +{ + curlanguage "english" = + {"Number"} + { curlanguage "russian" = + {"\CYRN\cyro\cyrm\cyre\cyrr"} + {"language is not defined: " language "Number" * * warning$ "Number"} + if$} + if$ +} + +FUNCTION {bbl.number} % { "\bblnumber{}" } +{ + curlanguage "english" = + {"number"} + { curlanguage "russian" = + {"{\cyr\cyrn\cyro\cyrm\cyre\cyrr}"} + {"language is not defined: " language "number" * * warning$ "number"} + if$} + if$ +} + +FUNCTION {bbl.nr} % { "\bblno{}" } +{ + curlanguage "english" = + {"no."} + { curlanguage "russian" = + {"{\cyr\textnumero}"} + {"language is not defined: " language "no." * * warning$ "no."} + if$} + if$ +} + +FUNCTION {bbl.nnr} % { "\bblno{}" } +{ + curlanguage "english" = + {"No."} + { curlanguage "russian" = + {"{\cyr\textnumero}"} + {"language is not defined: " language "No." * * warning$ "No."} + if$} + if$ +} + +FUNCTION {bbl.in} % { "\bblin{}" } +{ + curlanguage "english" = + {"in"} + { curlanguage "russian" = + {"{\cyr\cyrv}"} + {"language is not defined: " language "in" * * warning$ "in"} + if$} + if$ +} + +FUNCTION {bbl.iin} % { "\bblIn{}" } +{ + curlanguage "english" = + {"In"} + { curlanguage "russian" = + {"\CYRV"} + {"language is not defined: " language "In" * * warning$ "In"} + if$} + if$ +} + +FUNCTION {bbl.pages} % { "\bblpp." } +{ + curlanguage "english" = + {"pp."} + { curlanguage "russian" = + {"{\cyr\cyrs.}"} + {"language is not defined: " language "pp." * * warning$ "pp."} + if$} + if$ +} + +FUNCTION {bbl.page} % { "\bblp." +{ + curlanguage "english" = + {"p."} + { curlanguage "russian" = + {"{\cyr\cyrs.}"} + {"language is not defined: " language "p." * * warning$ "p."} + if$} + if$ +} + +FUNCTION {bbl.ppages}% { "\bblPp." } +{ + curlanguage "english" = + {"Pp."} + { curlanguage "russian" = + {"{\cyr\CYRS.}"} + {"language is not defined: " language "Pp." * * warning$ "Pp."} + if$} + if$ +} + +FUNCTION {bbl.ppage} % { "\bblP." } +{ + curlanguage "english" = + {"P."} + { curlanguage "russian" = + {"{\cyr\CYRS.}"} + {"language is not defined: " language "P." * * warning$ "P."} + if$} + if$ +} + + +FUNCTION {bbl.techrep} { "Tech. Rep." } +FUNCTION {bbl.mthesis} { "Master's thesis" } +FUNCTION {bbl.phdthesis} { "Ph.D. thesis" } + +INTEGERS { nameptr namesleft numnames } + +FUNCTION {format.names} +{ 's := + #1 'nameptr := + s num.names$ 'numnames := + numnames 'namesleft := + { namesleft #0 > } + { s nameptr + "{ff~}{vv~}{ll}{, jj}" format.name$ 't := + nameptr #1 > + { + nameptr #4 = + numnames #4 > and + { "others" 't := + #1 'namesleft := } + 'skip$ + if$ + namesleft #1 > + { ", " * t * } + { + t "others" = + t "~others" = + or + { " " * bbl.etal * } + { ", " * t * } + if$ + } + if$ + } + 't + if$ + nameptr #1 + 'nameptr := + namesleft #1 - 'namesleft := + } + while$ +} + +FUNCTION {format.names.rev} +{ 's := + #1 'nameptr := + s num.names$ 'numnames := + numnames 'namesleft := + { namesleft #0 > } + { s nameptr + "{f.}{~vv}{~ll}{, jj}" format.name$ 't := + nameptr #1 > + { + nameptr #4 = + numnames #4 > and + { "others" 't := + #1 'namesleft := } + 'skip$ + if$ + namesleft #1 > + { ", " * t * } + { + t "others" = + t "~others" = + or + { " " * bbl.etal * } + { ", " * t * } + if$ + } + if$ + } + 't + if$ + nameptr #1 + 'nameptr := + namesleft #1 - 'namesleft := + } + while$ +} + +FUNCTION {format.authors} +{ author empty$ + { "" } + { author format.names emphasize } + if$ +} + +FUNCTION {format.bookauthors} +{ bookauthor empty$ + { "" } + { bookauthor format.names } + if$ +} + +FUNCTION {format.authors.after} +{ author empty$ + { "" } + { author format.names.rev } + if$ +} + +FUNCTION {format.bookauthors.after} +{ bookauthor empty$ + { "" } + { bookauthor format.names.rev } + if$ +} + +FUNCTION {format.editors.after} +{ editor empty$ + { "" } + { bbl.edby editor format.names.rev * } + if$ +} + +FUNCTION { format.compiler.after } +{ compiler empty$ + { "" } + { bbl.cmplr compiler format.names.rev * } + if$ +} + +FUNCTION {format.title} +{ title empty$ + { "" } + { title } + if$ +} + +FUNCTION {format.date} +{ year empty$ + { month empty$ + { "" } + { "there's a month but no year in " cite$ * warning$ + month + } + if$ + } + { month empty$ + 'year + { year ". " quote$ "--- " month * * * * } + if$ + } + if$ +} + +FUNCTION {output.address.publisher.date} +{ + address empty$ + 'skip$ + { address output + publisher empty$ + 'skip$ + { new.column + } + if$ + } + if$ + publisher output + format.date output +} + +FUNCTION {output.bibitem} +{ newline$ + "\bibitem[" write$ + "\BibPrefix" write$ + label write$ + "]{" write$ + cite$ write$ + "}" write$ + newline$ + language empty$ + {"english" 'curlanguage :=} + {language 'curlanguage :=} + if$ + "\selectlanguageifdefined{" write$ + curlanguage write$ + "}" write$ newline$ + "" + before.all 'output.state := +} + +FUNCTION {n.dashify} +{ 't := + "" + { t empty$ not } + { t #1 #1 substring$ "-" = + { t #1 #2 substring$ "--" = not + { "--" * + t #2 global.max$ substring$ 't := + } + { { t #1 #1 substring$ "-" = } + { "-" * + t #2 global.max$ substring$ 't := + } + while$ + } + if$ + } + { t #1 #1 substring$ * + t #2 global.max$ substring$ 't := + } + if$ + } + while$ +} + +FUNCTION {word.in} +{ bbl.iin + " " * } + +FUNCTION {format.btitle} +{ title } + +FUNCTION {tie.or.space.connect} +{ duplicate$ text.length$ #3 < + { "~" } + { " " } + if$ + swap$ * * +} + +FUNCTION {tie.connect} +{"~" +swap$ * * +} + +FUNCTION {either.or.check} +{ empty$ + 'pop$ + { "can't use both " swap$ * " fields in " * cite$ * warning$ } + if$ +} + +FUNCTION {format.bvolume} +{ volume empty$ + { "" } + { bbl.vvol volume tie.connect + series empty$ + 'skip$ + { bbl.of space.word * series emphasize * } + if$ + "volume and number" number either.or.check + } + if$ +} + +FUNCTION {format.number.series} +{ volume empty$ + { number empty$ + { series field.or.null } + { series empty$ + { "there's a number but no series in " cite$ * warning$ + bbl.nnr } + { + %new.dblslash + new.sentence + series + bbl.nr + tie.or.space.connect} + if$ + number tie.or.space.connect + } + if$ + } + { "" } + if$ +} + +FUNCTION {is.num} +{ chr.to.int$ + duplicate$ "0" chr.to.int$ < not + swap$ "9" chr.to.int$ > not and +} + +FUNCTION {extract.num} +{ duplicate$ 't := + "" 's := + { t empty$ not } + { t #1 #1 substring$ + t #2 global.max$ substring$ 't := + duplicate$ is.num + { s swap$ * 's := } + { pop$ "" 't := } + if$ + } + while$ + s empty$ + 'skip$ + { pop$ s } + if$ +} + + +FUNCTION {convert.edition} +{ edition } + +FUNCTION {format.edition} +{ edition empty$ + { "" } + { output.state mid.sentence = + { convert.edition "l" change.case$ " " * bbl.edition * } + { convert.edition "t" change.case$ " " * bbl.edition * } + if$ + } + if$ +} + +INTEGERS { multiresult } + +FUNCTION {multi.page.check} +{ 't := + #0 'multiresult := + { multiresult not + t empty$ not + and + } + { t #1 #1 substring$ + duplicate$ "-" = + swap$ duplicate$ "," = + swap$ "+" = + or or + { #1 'multiresult := } + { t #2 global.max$ substring$ 't := } + if$ + } + while$ + multiresult +} + +FUNCTION {format.pages} +{ pages empty$ + { "" } + { pages multi.page.check + { bbl.ppages pages n.dashify tie.connect } + { bbl.ppage pages tie.connect } + if$ + } + if$ +} + +FUNCTION {format.pages.page} +{ pages empty$ + { numpages empty$ + { "" } + { numpages bbl.pages tie.connect } + if$} + { format.pages} + if$ +} + +FUNCTION {format.vol.num.pages} +{ volume field.or.null + number empty$ + 'skip$ + { + ", no." number tie.or.space.connect * + volume empty$ + { "there's a number but no volume in " cite$ * warning$ } + 'skip$ + if$ + } + if$ + pages empty$ + 'skip$ + { duplicate$ empty$ + { pop$ format.pages } + { ": " * pages n.dashify * } + if$ + } + if$ +} + +FUNCTION {format.volume} +{ volume empty$ + { "" } + { bbl.vvol volume tie.or.space.connect } + if$ +} + +FUNCTION {format.number} +{ number empty$ + { "" } + { bbl.nr number tie.or.space.connect } + if$ +} + + +FUNCTION {empty.misc.check} +{ author empty$ title empty$ howpublished empty$ + month empty$ year empty$ note empty$ + and and and and and + key empty$ not and + { "all relevant fields are empty in " cite$ * warning$ } + 'skip$ + if$ +} + +FUNCTION {format.thesis.type} +{ type empty$ + 'skip$ + { pop$ + type "t" change.case$ + } + if$ +} + +FUNCTION {format.tr.number} +{ type empty$ + { bbl.techrep } + 'type + if$ + number empty$ + { "t" change.case$ } + { number tie.or.space.connect } + if$ +} + +FUNCTION {author.before} +{ + author empty$ + 'skip$ + { + format.authors output + new.sentence + } + if$ +} + +FUNCTION {bookauthor.before} +{ + bookauthor empty$ + 'skip$ + { + format.bookauthors output + new.sentence + } + if$ +} + +FUNCTION {author.after} +{ + author empty$ + 'skip$ + {author num.names$ #3 > + {format.authors.after output + new.semicolumn } + 'skip$ + if$} + if$ +} + +FUNCTION {bookauthor.after} +{ + bookauthor empty$ + 'skip$ + {bookauthor num.names$ #3 > + {format.bookauthors.after output + new.semicolumn } + 'skip$ + if$} + if$ +} + +FUNCTION {editor.organization.after} +{ + compiler empty$ + {} + { format.compiler.after output + new.semicolumn + } + if$ + editor empty$ + {} + { format.editors.after output + new.semicolumn + } + if$ + organization empty$ + {} + {organization output + new.semicolumn + } + if$ +} + +FUNCTION {format.url} +{ url empty$ + { "" } + { after.sentence 'output.state := + "\BibUrl{ " url * "}" * + } + if$ +} + +FUNCTION {format.annote} +{ annote empty$ + { "" } +{ after.sentence 'output.state := + "\BibAnnote{" annote add.period$ * "}" * +} + if$ +} + +FUNCTION {article} +{ output.bibitem + author.before + format.title "title" output.check + new.dblslash + journal emphasize "journal" output.check + new.block + format.date output + new.block + format.volume output + format.number output + new.block + format.pages.page output + new.block + note output + new.sentence + format.url output + format.annote output + fin.entry +} + +FUNCTION {book} +{ output.bibitem + author.before + format.btitle "title" output.check + editor.organization.after + new.sentence + format.number.series output + new.block + format.edition output + new.block + output.address.publisher.date + new.block + format.bvolume output + new.block + format.pages.page output + new.block + note output + new.sentence + format.url output + format.annote output + fin.entry +} + +FUNCTION {booklet} +{ output.bibitem + author.before + format.title "title" output.check + editor.organization.after + new.block + howpublished output + address output + format.date output + new.block + note output + new.sentence + format.url output + format.annote output + fin.entry +} + +FUNCTION {inbook} +{ output.bibitem + author.before + format.btitle "title" output.check + new.dblslash + bookauthor.before + booktitle "booktitle" output.check + editor.organization.after + new.block + format.edition output + new.block + format.number.series output + new.sentence + output.address.publisher.date + new.block + format.bvolume output + new.block + format.pages.page output + new.block + note output + new.sentence + format.url output + format.annote output + fin.entry +} + +FUNCTION {incollection} +{ output.bibitem + author.before + new.sentence + format.title "title" output.check + new.dblslash + booktitle "booktitle" output.check + new.slash + editor.organization.after + new.block + output.address.publisher.date + new.block + format.bvolume output + format.number.series output + new.block + format.pages.page output + new.block + note output + new.sentence + format.url output + format.annote output + fin.entry +} + +FUNCTION {inproceedings} +{ output.bibitem + author.before + new.sentence + format.title "title" output.check + new.dblslash + booktitle "booktitle" output.check + new.slash + editor.organization.after + new.block + format.bvolume output + format.number.series output + new.block + address empty$ + { publisher output + format.date "year" output.check + } + { address output.nonnull + new.column + publisher output + format.date "year" output.check + } + if$ + new.block + format.pages.page output + new.block + note output + new.sentence + format.url output + format.annote output + fin.entry +} + +FUNCTION {conference} { inproceedings } + +FUNCTION {manual} +{ output.bibitem + author empty$ + { organization empty$ + 'skip$ + { organization output.nonnull + address output + } + if$ + } + { format.authors output.nonnull } + if$ + new.block + format.btitle "title" output.check + author empty$ + { organization empty$ + { + address new.block.checka + address output + } + 'skip$ + if$ + } + { + organization address new.block.checkb + organization output + address output + } + if$ + format.edition output + format.date output + new.block + note output + new.sentence + format.url output + format.annote output + fin.entry +} + +FUNCTION {mastersthesis} +{ output.bibitem + format.authors "author" output.check + new.block + format.btitle "title" output.check + new.block + bbl.mthesis format.thesis.type output.nonnull + school "school" output.check + address output + format.date "year" output.check + new.block + note output + new.block + format.url output + format.annote output + fin.entry +} + +FUNCTION {misc} +{ output.bibitem + format.authors output + title howpublished new.sentence.checkb + format.title output + howpublished new.block.checka + howpublished output + new.block + format.date output + new.block + note output + new.sentence + format.url output + format.annote output + fin.entry +} + +FUNCTION {phdthesis} +{ output.bibitem + format.authors "author" output.check + new.sentence + format.btitle "title" output.check + new.column + bbl.phdthesis format.thesis.type output.nonnull + new.slash + school "school" output.check + new.block + output.address.publisher.date + new.block + format.pages.page output + note output + new.sentence + format.url output + format.annote output + fin.entry +} + +FUNCTION {proceedings} +{ output.bibitem + format.btitle "title" output.check + new.slash + editor.organization.after + new.block + format.bvolume output + format.number.series output + address empty$ + { publisher output + format.date "year" output.check + } + { address output.nonnull + format.date "year" output.check + new.sentence + publisher output + } + if$ + new.block + note output + new.sentence + format.url output + format.annote output + fin.entry +} + +FUNCTION {techreport} +{ output.bibitem + author.before + new.sentence + format.title "title" output.check + new.column + format.tr.number output.nonnull + editor.organization.after + new.block + address output + new.column + institution "institution" output.check + format.date "year" output.check + new.block + note output + new.sentence + format.url output + format.annote output + fin.entry +} + +FUNCTION {unpublished} +{ output.bibitem + author.before + format.btitle "title" output.check + editor.organization.after + new.block + note "note" output.check + new.sentence + format.url output + format.annote output + fin.entry +} + +FUNCTION {default.type} { misc } + +MACRO {jan} {"\bbljan{}"} + +MACRO {feb} {"\bblfeb{}"} + +MACRO {mar} {"\bblmar{}"} + +MACRO {apr} {"\bblapr{}"} + +MACRO {may} {"\bblmay{}"} + +MACRO {jun} {"\bbljun{}"} + +MACRO {jul} {"\bbljul{}"} + +MACRO {aug} {"\bblaug{}"} + +MACRO {sep} {"\bblsep{}"} + +MACRO {oct} {"\bbloct{}"} + +MACRO {nov} {"\bblnov{}"} + +MACRO {dec} {"\bbldec{}"} + +MACRO {acmcs} {"ACM Computing Surveys"} + +MACRO {acta} {"Acta Informatica"} + +MACRO {cacm} {"Communications of the ACM"} + +MACRO {ibmjrd} {"IBM Journal of Research and Development"} + +MACRO {ibmsj} {"IBM Systems Journal"} + +MACRO {ieeese} {"IEEE Transactions on Software Engineering"} + +MACRO {ieeetc} {"IEEE Transactions on Computers"} + +MACRO {ieeetcad} + {"IEEE Transactions on Computer-Aided Design of Integrated Circuits"} + +MACRO {ipl} {"Information Processing Letters"} + +MACRO {jacm} {"Journal of the ACM"} + +MACRO {jcss} {"Journal of Computer and System Sciences"} + +MACRO {scp} {"Science of Computer Programming"} + +MACRO {sicomp} {"SIAM Journal on Computing"} + +MACRO {tocs} {"ACM Transactions on Computer Systems"} + +MACRO {tods} {"ACM Transactions on Database Systems"} + +MACRO {tog} {"ACM Transactions on Graphics"} + +MACRO {toms} {"ACM Transactions on Mathematical Software"} + +MACRO {toois} {"ACM Transactions on Office Information Systems"} + +MACRO {toplas} {"ACM Transactions on Programming Languages and Systems"} + +MACRO {tcs} {"Theoretical Computer Science"} + +READ + + +STRINGS { longest.label } + +INTEGERS { number.label longest.label.width } + +FUNCTION {initialize.longest.label} +{ "" 'longest.label := + #1 'number.label := + #0 'longest.label.width := +} + +FUNCTION {longest.label.pass} +{ number.label int.to.str$ 'label := + number.label #1 + 'number.label := + label width$ longest.label.width > + { label 'longest.label := + label width$ 'longest.label.width := + } + 'skip$ + if$ +} + +EXECUTE {initialize.longest.label} + +ITERATE {longest.label.pass} + +FUNCTION {begin.bib} +{ + "\ifx\undefined\BibPrefix\def\BibPrefix{}\else\fi" write$ newline$ + "\begin{thebibliography}{\BibPrefix" longest.label * "}" * write$ newline$ + "\def\selectlanguageifdefined#1{" write$ newline$ + "\expandafter\ifx\csname date#1\endcsname\relax" write$ newline$ + "\else\language\csname l@#1\endcsname\fi}" write$ newline$ + "\ifx\undefined\url\def\url#1{{\small #1}}\else\fi" write$ newline$ + "\ifx\undefined\BibUrl\def\BibUrl#1{\url{#1}}\else\fi" write$ newline$ + "\ifx\undefined\BibAnnote\long\def\BibAnnote#1{}\else\fi" write$ newline$ + "\ifx\undefined\BibEmph\def\BibEmph#1{\emph{#1}}\else\fi" write$ newline$ + preamble$ empty$ + 'skip$ + { preamble$ write$ newline$ } + if$ +} + +EXECUTE {begin.bib} + +EXECUTE {init.state.consts} + +ITERATE {call.type$} + +FUNCTION {end.bib} +{ newline$ + "\end{thebibliography}" write$ newline$ +} + +EXECUTE {end.bib} + +%</disser-bst> +% \end{macrocode} diff --git a/Master/texmf-dist/source/latex/disser/disser.dtx b/Master/texmf-dist/source/latex/disser/disser.dtx index f256fa6ed2c..444e081f971 100644 --- a/Master/texmf-dist/source/latex/disser/disser.dtx +++ b/Master/texmf-dist/source/latex/disser/disser.dtx @@ -3,7 +3,7 @@ %% %% disser -- LaTeX document class for dissertations. %% -%% Copyright (c) 2004-2008 Stanislav Kruchinin +%% Copyright (c) 2004-2009 Stanislav Kruchinin %% %% It may be distributed and/or modified under the %% conditions of the LaTeX Project Public License, either version 1.3 @@ -19,23 +19,23 @@ %% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% %<*driver> -\ProvidesFile{disser.drv}[2008/05/01 1.0.5 Document class for dissertations.] +\ProvidesFile{disser.drv}[2008/12/01 1.1.0 Document class for dissertations.] \documentclass{ltxdoc} \usepackage[a4paper, includehead, includefoot, mag=1000, - left=4cm, right=1.5cm, top=1cm, bottom=2cm]{geometry} + left=4cm, right=1.5cm, top=1cm, bottom=1.5cm]{geometry} \usepackage[T2A]{fontenc} \usepackage[cp1251]{inputenc} \usepackage[english,russian]{babel} \usepackage{ifpdf,indentfirst,tabularx,doc} -\usepackage{makeidx} +\usepackage{makeidx,longtable} \ifpdf \usepackage[unicode, - pdftitle = {Documented source code of the disser package}, - pdfauthor = {Stanislav Kruchinin}, - pdfsubject = {disser}, - pdfstartview = {FitH}, + pdftitle = {Documented source code of the disser class}, + pdfauthor = {Stanislav Kruchinin}, + pdfsubject = {disser}, + pdfstartview = {FitH}, pdfborder = {0 0 0}, bookmarksopen = true, bookmarksnumbered = true, @@ -75,7 +75,11 @@ \makeindex \setlength\hfuzz{15pt} % dont make so many -\hbadness=7000 % over and under full box warnings +\hbadness=9000 % over and under full box warnings + + +\setlength\oddsidemargin{72pt} +\setlength\textwidth{420pt} \begin{document} \sloppy @@ -127,14 +131,15 @@ % % Класс |disser| был создан в результате объединения множества дополнений и % исправлений для |extreport|, написанных автором при оформлении -% бакалаврской и магистерской работ по физике. Основной целью являлось -% устранение одного из главных недостатков стандартных классов --- -% отсутствия возможности прямого изменения формата элементов титульного +% бакалаврской и магистерской работ, а также кандидатской диссертации. +% Основной целью являлось устранение одного из главных недостатков стандартных +% классов "--- отсутствия возможности прямого изменения формата элементов титульного % листа, заголовков и записей в автоматически генерируемых списках -% (содержание, список иллюстраций, список таблиц). Для этого введен ряд -% высокоуровневых команд, которые описаны в комментариях к исходным текстам. -% К сожалению, на данный момент полноценная документация по этим -% командам отсутствует. +% (содержание, список иллюстраций, список таблиц). Для этого переопределена часть команд, +% входящих в ядро \LaTeX{} и введен ряд высокоуровневых команд, которые описаны в +% комментариях к исходным текстам. К сожалению, на данный момент пользовательская +% документация по этим командам отсутствует. Пример их использования можно увидеть +% в исходном тексте класса |gost732|. % % \section{Руководство по использованию} % @@ -144,38 +149,13 @@ % к классу прилагаются соответствующие шаблоны (каталог |disser/templates|), % которые рекомендуется использовать для создания своих документов. % -% \subsection{Зависимости} -% -% Список пакетов необходимых для cборки документации и шаблонов с минимумом -% опций (помимо пакетов для руссификации): -% \texttt{amssymb}, -% \texttt{amsmath}, -% \texttt{cmap}, -% \texttt{floatflt}, -% \texttt{graphicx}, -% \texttt{ifpdf}, -% \texttt{natbib}, -% \texttt{oberdiek}, -% \texttt{tabularx}. -% -% Дополнительные пакеты: -% \texttt{caption}, -% \texttt{hypernat}, -% \texttt{hyperref}, -% \texttt{pscyr}, -% \texttt{subfig}, -% \texttt{txfonts}. -% -% Для полноценной работы рекомендуется установить все вышеперечисленное. -% % \subsection{Опции} % +% \textbf{Примечание:} полужирным начертанием выделены опции, используемые по умолчанию. % \extrarowheight=3pt % \tabcolsep=6pt % \arraycolsep=0pt -% -% \begin{table}[!h] -% \begin{tabular}{p{0.3\linewidth}|p{0.55\linewidth}} +% \begin{longtable}{p{0.3\linewidth}|p{0.55\linewidth}} % \hline\hline % \textbf{a4paper}, a5paper, b5paper & % Размеры листов. @@ -228,18 +208,25 @@ % Тип диссертации. % \\\hline % fixint = \{\textbf{true}$\,\vert\,$false\} & -% Исправление знаков интегралов и положения пределов интегрирования -% на более привычные. +% Исправление знаков интегралов на прямые (из математического шрифта |euler|). +% \\\hline +% libcat & +% Включает вывод номера УДК на титульном листе. +% \\\hline +% facsimile & +% Включает отображение подписей диссертанта и ученого секретаря на +% титульных листах автореферата и диссертации (только для кандидатских и докторских). +% По умолчанию включена только в шаблоне автореферата. +% \\\hline +% mtpro & +% Поддержка шрифтов MathTime Pro. При наличии опции |times| вместо +% пакета |txfonts| подключается пакет |mtpro|. % \\\hline\hline -% \end{tabular} -% \end{table} -% -% \textbf{Примечание:} жирным шрифтом выделены опции, используемые -% по умолчанию. +% \end{longtable} % % \subsection{\texttt{Makefile} и \texttt{nomake.cmd}} % -% Для автоматизации операций сборки, установки и обновления пакета созданы +% Для автоматизации операций сборки и установки пакета созданы % две системы скриптов, имеющих одинаковый набор целей: % |Makefile| в формате GNU Make и файлы |nomake.cmd|, написанные на языке % командного интерпретатора |cmd.exe| ОС Windows 2000 и выше. @@ -334,8 +321,9 @@ % \end{deflist} % % \textbf{Примечания:} -% 1) |nomake.cmd| в подкаталогах шаблонов зависят от |include/latex.nmk.cmd| и -% |include/latex.fig.nmk.cmd|. |Makefile| зависят от |include/latex.mk| и |include/latex.fig.mk|. +% 1) Файлы |nomake.cmd| в подкаталогах шаблонов зависят от |include/latex.nmk.cmd| и +% |include/latex.fig.nmk.cmd|. Файлы |Makefile| зависят от |include/latex.mk| и +% |include/latex.fig.mk|. % 2) |Makefile/nomake.cmd| в подкаталогах шаблонов включают цели каталога |fig|. % % \subsubsection{Каталог \texttt{disser/templates/<тип-диссертации>/fig/}} @@ -353,13 +341,93 @@ % Справка по целям сборки. Цель по умолчанию. % \end{deflist} % -% \section{Исходный текст}\parindent=0pt +% \subsection{Стиль верстки библиографических ссылок \texttt{disser.bst}} +% +% В состав пакета начиная с версии 1.1.0 включен стиль для оформления +% библиографических ссылок |disser.bst|. Данный стиль |disser.bst| представляет собой +% доработанную версию |gost71u.bst| из пакета |gost|, написанного Максимом Поляковым. +% Создание |disser.bst| обусловлено следующими причинами: пакет |gost| более не +% поддерживается автором, а оформление библиографии в соответствии с его стилями +% противоречит некоторым требованиям, предъявляемым диссертационными советами +% к библиографическим ссылкам. +% +% Основные отличия |disser.bst| от |gost71u.bst|: +% +% \begin{enumerate} +% \item Инициалы авторов всегда печатаются перед фамилией. +% \item Авторы, независимо от их количества, всегда печатаются перед +% названием источника. +% \item Отсутствует поддержка украинского языка. +% \item Настраиваемый префикс у номера библиографической ссылки (макрос |\BibPrefix|). +% \end{enumerate} +% +% Руководство по использованию стиля и описание его исходного кода +% находится в файле |disser-bst.dtx|. +% +% \subsection{Особенности верстки авторефератов кандидатских и докторских диссертаций} +% +% \subsubsection{Общий текст} +% +% Согласно требованиям, раздел <<Общая характеристика работы>> автореферата +% и глава <<Введение>> диссертации должны совпадать. Общие разделы создаются с помощью +% команды |\mkcommonsect| в файле |common.tex|, который подключается из +% |autoref.tex| и |thesis.tex|. +% +% Пример: +% \begin{verbatim} +% \mkcommonsect{novelty}{Научная новизна}{% +% Текст раздела +% } +% \end{verbatim} +% Здесь первый аргумент |novelty| "--- базовое имя создаваемых макросов +% (|\noveltysection| и |\noveltytext|), +% второй аргумент "--- заголовок раздела (значение |\noveltysection|), +% третий "--- текст раздела (значение |\noveltytext|). +% +% \subsubsection{Список работ диссертанта} +% +% В автореферате список работ диссертанта должен быть отделен от списка цитируемой +% литературы, а ссылки на них должны отличаться друг от друга. +% Для решения этой задачи используются пакет |multibib| и стиль |disser.bst|. +% +% Макрос, в котором содержится префикс номеров ссылок называется |\BibPrefix|. +% +% Описание библиографических ссылок на работы диссертанта должно находиться в +% файле |thesis.bib| вместе с остальными ссылками. +% +% Полная ручная сборка автореферата с двумя библиографиями выполняется следующей +% последовательностью команд. +% \begin{verbatim} +% latex autoref +% bibtex8 -H -c cp1251 autoref +% bibtex8 -H -c cp1251 my +% latex autoref +% latex autoref +% \end{verbatim} +% Сборка автореферата автоматизирована с помощью скриптов |Makefile| и |nomake.cmd|. +% +% \subsubsection{Подписи диссертанта и ученого секретаря} +% +% Согласно требованиям ВАК, автореферат должен быть подписан диссертантом и +% ученым секретарем. Поскольку экземпляров автореферата достаточно много, эту +% задачу необходимо автоматизировать. Начиная с версии 1.1.0 в классе появилась опция +% |facsimile|, позволяющая включать графические файлы в нужных местах на +% титульном листе и внутренней стороне обложки. Эта опция включена по умолчанию только +% в шаблонах авторефератов. Факсимиле диссертанта должно находиться в файле +% |./fig/facsimile.<type>|, факсимиле ученого секретаря диссертационного совета "--- +% в файле |./fig/sec-facsimile.<type>|. Здесь |<type>| "--- один из типов графических файлов, +% поддерживаемых в \LaTeX{} (eps) или в pdf\LaTeX{} (pdf, tiff, png). +% Команда |\facsimile|, включающая файл с подписью диссертанта в документ, +% определена в файле |titledefs.dtx|. Команда, включающая файл с подписью +% ученого секретаря, находится в файле |autoref.tex|. +% +% \section{Исходный текст класса}\parindent=0pt % % \begin{macrocode} %<*disser> \NeedsTeXFormat{LaTeX2e} -\ProvidesClass{disser}[2007/11/29 Document class for dissertations.] +\ProvidesClass{disser}[2008/11/11 1.1.0 Document class for dissertations.] % \end{macrocode} % Расширение включаемых в |disser.cls| файлов. @@ -394,6 +462,8 @@ \newif\ifDis@candidate \newif\ifDis@doctor \newif\ifDis@autoref +\newif\ifDis@libcat +\newif\ifDis@facsimile % \end{macrocode} % \item |true|, если подключается |hyperref|. @@ -407,6 +477,10 @@ % \item Шрифт Times как основной. % \begin{macrocode} \newif\ifDis@times +% \end{macrocode} +% \item Поддержка математических шрифтов MathTime Pro. +% \begin{macrocode} +\newif\ifDis@mtpro % \end{macrocode} % \end{itemize} @@ -420,8 +494,11 @@ \Dis@doctorfalse \Dis@autoreffalse \Dis@timesfalse +\Dis@mtprofalse \Dis@subffalse \Dis@hreffalse +\Dis@libcatfalse +\Dis@facsimilefalse % \end{macrocode} % @@ -443,6 +520,16 @@ \DeclareOption{subf}{\Dis@subftrue} % \end{macrocode} +% Показывать номер УДК на титульном листе. +% \begin{macrocode} +\DeclareOption{libcat}{\Dis@libcattrue} +% \end{macrocode} +% Включить отображение подписей диссертанта и ученого секретаря на +% титульных листах автореферата и диссертации (для кандидатских и докторских). +% \begin{macrocode} +\DeclareOption{facsimile}{\Dis@facsimiletrue} + +% \end{macrocode} % Настройка опций. % \begin{macrocode} \SetupKeyvalOptions{ @@ -540,6 +627,10 @@ % \begin{macrocode} \DeclareOption{times}{\Dis@timestrue} % \end{macrocode} +% Использовать математические шрифты MathTime Pro. +% \begin{macrocode} +\DeclareOption{mtpro}{\Dis@mtprotrue} +% \end{macrocode} % Если указана эта опция, то блоки текста в списке литературы будут % печататься на новых строках и с отступом. % \begin{macrocode} @@ -595,7 +686,17 @@ } % \end{macrocode} -% Команды изменения регистра. +% Выполнение опций по умолчанию. +% \begin{macrocode} +\ExecuteOptions{a4paper,14pt,oneside,titlepage,onecolumn,final,openany} +% \end{macrocode} +% Выполнение пользовательских опций. +% \begin{macrocode} +\ProcessOptions +\ProcessKeyvalOptions{Dis} + +% \end{macrocode} +% Команды изменения регистра. Им самое место в ядре. % \DescribeMacro{\MakeTextUppercase}\index{Макросы!\verb*+\MakeTextUppercase+} % \begin{macrocode} \DeclareRobustCommand\MakeTextUppercase{% @@ -612,16 +713,6 @@ \protected@edef\MakeTextLowercase#1{\MakeTextLowercase{#1}} % \end{macrocode} -% Выполнение опций по умолчанию. -% \begin{macrocode} -\ExecuteOptions{a4paper,14pt,oneside,titlepage,onecolumn,final,openany} -% \end{macrocode} -% Выполнение пользовательских опций. -% \begin{macrocode} -\ProcessOptions -\ProcessKeyvalOptions{Dis} - -% \end{macrocode} % \subsection{Настройка шрифтов} % \subsubsection{Определение размеров} % \begin{macrocode} @@ -708,8 +799,8 @@ % % \subsection{Параметры основного текста} % -% \DescribeMacro{\lineskip}\index{Макросы!\verb*+\lineskip+} -% \DescribeMacro{\normallineskip}\index{Макросы!\verb*+\normallineskip+} +% \DescribeMacro{\lineskip}\index{Расстояния!\verb*+\lineskip+} +% \DescribeMacro{\normallineskip}\index{Расстояния!\verb*+\normallineskip+} % Вертикальный интервал между строками. Упоминаемый здесь и далее макрос |\p@| % определяет единицу длины. По умолчанию она равна английскому пункту (pt). % \begin{macrocode} @@ -731,31 +822,20 @@ \onehalfspacing % \end{macrocode} % Интервал между абзацами (добавляется к межстрочному). -% \DescribeMacro{\parskip}\index{Макросы!\verb*+\parskip+} +% \DescribeMacro{\parskip}\index{Расстояния!\verb*+\parskip+} % \begin{macrocode} \setlength\parskip{0\p@ \@plus \p@} % \end{macrocode} -% Максимальный уровень вложенности секций, помещаемых в Содержание -% (по умолчанию вносятся |\part|, |\chapter| и |\section|). -% \DescribeMacro{tocdepth}\index{Счетчики!\verb*+tocdepth+} -% \begin{macrocode} -\setcounter{tocdepth}{1} -% \end{macrocode} -% Максимальный уровень вложенности нумеруемых секций -% (по умолчанию нумеруются |\part|, |\chapter|, |\section| и |\subsection|). -% \DescribeMacro{secnumdepth}\index{Счетчики!\verb*+secnumdepth+} -% \begin{macrocode} -\setcounter{secnumdepth}{2} - -% \end{macrocode} % % Интервал между колонками текста. +% \DescribeMacro{\columnsep}\index{Расстояния!\verb*+\columnsep+} % \begin{macrocode} \setlength\columnsep{10\p@} % \end{macrocode} % % Ширина разделителя (линии) между колонками текста (по умолчанию его нет). +% \DescribeMacro{\columnseprule}\index{Расстояния!\verb*+\columnseprule+} % \begin{macrocode} \setlength\columnseprule{0\p@} diff --git a/Master/texmf-dist/source/latex/disser/disser.ins b/Master/texmf-dist/source/latex/disser/disser.ins index 7c5cee5d26d..e228fbdc2ba 100644 --- a/Master/texmf-dist/source/latex/disser/disser.ins +++ b/Master/texmf-dist/source/latex/disser/disser.ins @@ -12,7 +12,7 @@ \input docstrip \preamble -Copyright (c) 2004-2007 Stanislav Kruchinin. +Copyright (c) 2004-2009 Stanislav Kruchinin. All rights reserved. This file is part of the disser package. @@ -50,7 +50,9 @@ This file is part of the disser package. \rtxfile{doctor} \rtxfile{autoref} \clsfile{gost732} + \nopostamble + \file{disser.bst}{\from{disser-bst.dtx}{disser-bst}} } -\def\npostamble{}\usepostamble\npostamble +%\def\npostamble{}\usepostamble\npostamble \endbatchfile -\endinput
\ No newline at end of file +\endinput diff --git a/Master/texmf-dist/source/latex/disser/doctor.dtx b/Master/texmf-dist/source/latex/disser/doctor.dtx index bb1dc58f229..4b8ac4beaad 100644 --- a/Master/texmf-dist/source/latex/disser/doctor.dtx +++ b/Master/texmf-dist/source/latex/disser/doctor.dtx @@ -7,17 +7,27 @@ % \subsubsection{Титульный лист докторской диссертации} % % Вертикальные интервалы между элементами титульного листа. -% \DescribeMacro{\firstskip}\index{Макросы!\verb*+\firstskip+} -% \DescribeMacro{\secondskip}\index{Макросы!\verb*+\secondskip+} -% \DescribeMacro{\thirdskip}\index{Макросы!\verb*+\thirdskip+} -% \DescribeMacro{\fourthskip}\index{Макросы!\verb*+\fourthskip+} -% \DescribeMacro{\fifthskip}\index{Макросы!\verb*+\fifthskip+} +% \DescribeMacro{\firstskip}\index{Расстояния!\verb*+\firstskip+} +% \DescribeMacro{\secondskip}\index{Расстояния!\verb*+\secondskip+} +% \DescribeMacro{\thirdskip}\index{Расстояния!\verb*+\thirdskip+} +% \DescribeMacro{\fourthskip}\index{Расстояния!\verb*+\fourthskip+} +% \DescribeMacro{\fifthskip}\index{Расстояния!\verb*+\fifthskip+} % \begin{macrocode} -\def\firstskip{\vskip1.5cm} -\def\secondskip{\vskip3cm} -\def\thirdskip{\vskip1cm} -\def\fourthskip{\vskip1cm} -\def\fifthskip{\vskip1cm} +\newlength\firstskip +\newlength\secondskip +\newlength\thirdskip +\newlength\fourthskip +\newlength\fifthskip + +\ifDis@libcat + \setlength\firstskip{1em} +\else + \setlength\firstskip{4em} +\fi +\setlength\secondskip{3cm} +\setlength\thirdskip{1cm} +\setlength\fourthskip{1cm} +\setlength\fifthskip{1cm} % \end{macrocode} % Шрифты элементов титульного листа. @@ -31,38 +41,41 @@ \def\authorfont{\large} \def\specfont{\normalsize} +\vskip\firstskip \normalfont \begin{flushright} % \end{macrocode} % На правах рукописи % \begin{macrocode} - \firstskip \asmanuscriptname\\ + \ifDis@facsimile\facsimile\fi % \end{macrocode} % Номер УДК % \begin{macrocode} - {\libcatname\;\@libcatnum} +\ifDis@libcat + {\libcatname\ \@libcatnum} +\fi \end{flushright} \begin{center} % \end{macrocode} % Автор % \begin{macrocode} - \secondskip + \vskip\secondskip {\authorfont\@author} % \end{macrocode} % Название диссертации % \begin{macrocode} - \thirdskip + \vskip\thirdskip {\topicfont\@topic\par} % \end{macrocode} % Шифр и наименование специальности % \begin{macrocode} - \fourthskip + \vskip\fourthskip {\specfont\@specnum~--\;\@spec} % \end{macrocode} % Диссертация на соискание ученой степени... % \begin{macrocode} - \fifthskip + \vskip\fifthskip {\titlefont\@title} \end{center} %</doctor> diff --git a/Master/texmf-dist/source/latex/disser/env.dtx b/Master/texmf-dist/source/latex/disser/env.dtx index f7a9d0d57da..18fc0f82d2d 100644 --- a/Master/texmf-dist/source/latex/disser/env.dtx +++ b/Master/texmf-dist/source/latex/disser/env.dtx @@ -16,7 +16,21 @@ {\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{Аннотация} @@ -26,19 +40,18 @@ \thispagestyle{empty} \@beginparpenalty\@lowpenalty \begin{center}% - \bfseries\small\abstractname + \abstractnamefont\abstractname \@endparpenalty\@M - \end{center}\small - }{\par\vfil\null} + \end{center}\abstractfont + }{\postabstract} \else \newenvironment{abstract}{ \if@twocolumn \section*{\abstractname} \else - \small \begin{center} - {\bfseries\abstractname\vspace{-.5em}\vspace{\z@}}% - \end{center} + {\abstractnamefont\vspace{-.5em}\vspace{\z@}}% + \end{center}\abstractfont \quotation \fi }{\if@twocolumn\else\endquotation\fi} @@ -76,8 +89,7 @@ \fi \thispagestyle{empty} \setcounter{page}\@ne -} -{ +}{ \if@restonecol\twocolumn\else\newpage\fi \if@twoside\else\setcounter{page}\@ne\fi } @@ -144,6 +156,11 @@ % \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} diff --git a/Master/texmf-dist/source/latex/disser/floats.dtx b/Master/texmf-dist/source/latex/disser/floats.dtx index 4d45bc57fe8..68564074eab 100644 --- a/Master/texmf-dist/source/latex/disser/floats.dtx +++ b/Master/texmf-dist/source/latex/disser/floats.dtx @@ -83,13 +83,13 @@ % % \subsubsection{Параметры формата подписей} % -% \DescribeMacro{\abovecaptionskip}\index{Макросы!\verb*+\abovecaptionskip+} +% \DescribeMacro{\abovecaptionskip}\index{Расстояния!\verb*+\abovecaptionskip+} % Вертикальный интервал перед подписью. % \begin{macrocode} \newlength\abovecaptionskip \setlength\abovecaptionskip{10\p@} % \end{macrocode} -% \DescribeMacro{\belowcaptionskip}\index{Макросы!\verb*+\belowcaptionskip+} +% \DescribeMacro{\belowcaptionskip}\index{Расстояния!\verb*+\belowcaptionskip+} % Вертикальный интервал за подписью. % \begin{macrocode} \newlength\belowcaptionskip @@ -166,27 +166,27 @@ % \end{macrocode} % -% \DescribeMacro{\arraycolsep}\index{Длины!\verb*+\arraycolsep+} +% \DescribeMacro{\arraycolsep}\index{Расстояния!\verb*+\arraycolsep+} % Промежуток между колонками в |array|. % \begin{macrocode} \setlength\arraycolsep{5\p@} % \end{macrocode} -% \DescribeMacro{\tabcolsep}\index{Длины!\verb*+\tabcolsep+} +% \DescribeMacro{\tabcolsep}\index{Расстояния!\verb*+\tabcolsep+} % Промежуток между колонками в таблице. % \begin{macrocode} \setlength\tabcolsep{6\p@} % \end{macrocode} -% \DescribeMacro{\arrayrulewidth}\index{Длины!\verb*+\arrayrulewidth+} +% \DescribeMacro{\arrayrulewidth}\index{Расстояния!\verb*+\arrayrulewidth+} % Толщина линейки в |array|. % \begin{macrocode} \setlength\arrayrulewidth{.4\p@} % \end{macrocode} -% \DescribeMacro{\doublerulesep}\index{Длины!\verb*+\doublerulesep+} +% \DescribeMacro{\doublerulesep}\index{Расстояния!\verb*+\doublerulesep+} % Промежуток между линиями в двойной линейке |\hrule\hrule|. % \begin{macrocode} \setlength\doublerulesep{2\p@} % \end{macrocode} -% \DescribeMacro{\tabbingsep}\index{Длины!\verb*+\tabbingsep+} +% \DescribeMacro{\tabbingsep}\index{Расстояния!\verb*+\tabbingsep+} % Промежуток между столбцами в окружении |tabular|. % \begin{macrocode} \setlength\tabbingsep{\labelsep} @@ -196,12 +196,12 @@ % \begin{macrocode} \skip\@mpfootins = \skip\footins % \end{macrocode} -% \DescribeMacro{\fboxsep}\index{Длины!\verb*+\fboxsep+} +% \DescribeMacro{\fboxsep}\index{Расстояния!\verb*+\fboxsep+} % Промежуток между линией и текстом в |\fbox|. % \begin{macrocode} \setlength\fboxsep{3\p@} % \end{macrocode} -% \DescribeMacro{\fboxrule}\index{Длины!\verb*+\fboxrule+} +% \DescribeMacro{\fboxrule}\index{Расстояния!\verb*+\fboxrule+} % Толщина линии для |\fbox|. % \begin{macrocode} \setlength\fboxrule{.4\p@} diff --git a/Master/texmf-dist/source/latex/disser/gost732.dtx b/Master/texmf-dist/source/latex/disser/gost732.dtx index 9b686321b9e..b9c586e6faa 100644 --- a/Master/texmf-dist/source/latex/disser/gost732.dtx +++ b/Master/texmf-dist/source/latex/disser/gost732.dtx @@ -3,7 +3,7 @@ %% %% gost732 -- GOST 7.32-2001 implementation. %% -%% Copyright (c) 2004-2007 Stanislav Kruchinin +%% Copyright (c) 2004-2009 Stanislav Kruchinin %% %% It may be distributed and/or modified under the %% conditions of the LaTeX Project Public License, either version 1.3 @@ -189,4 +189,4 @@ % \end{macrocode} % \Finale -\endinput
\ No newline at end of file +\endinput diff --git a/Master/texmf-dist/source/latex/disser/lists.dtx b/Master/texmf-dist/source/latex/disser/lists.dtx index cfd22947ce5..a266a6a0c60 100644 --- a/Master/texmf-dist/source/latex/disser/lists.dtx +++ b/Master/texmf-dist/source/latex/disser/lists.dtx @@ -10,7 +10,13 @@ % % \subsection{Списки} % -% Пробелы между левым полем полем окружения и полем перечня для элементов +% \DescribeMacro{\leftmargini}\index{Расстояния!\verb*+\leftmargini+} +% \DescribeMacro{\leftmarginii}\index{Расстояния!\verb*+\leftmarginii+} +% \DescribeMacro{\leftmarginiii}\index{Расстояния!\verb*+\leftmarginiii+} +% \DescribeMacro{\leftmarginiv}\index{Расстояния!\verb*+\leftmarginiv+} +% \DescribeMacro{\leftmarginv}\index{Расстояния!\verb*+\leftmarginv+} +% \DescribeMacro{\leftmarginvi}\index{Расстояния!\verb*+\leftmarginvi+} +% Величины отступов от левого поля окружения до поля перечня для элементов % указанного уровня вложенности. % \paragraph{1} % \begin{macrocode} @@ -67,6 +73,10 @@ \renewcommand\theenumiv {\@Asbuk\c@enumiv} % \end{macrocode} % +% \DescribeMacro{\labelenumi}\index{Макросы!\verb*+\labelenumi+} +% \DescribeMacro{\labelenumii}\index{Макросы!\verb*+\labelenumii+} +% \DescribeMacro{\labelenumiii}\index{Макросы!\verb*+\labelenumiii+} +% \DescribeMacro{\labelenumiv}\index{Макросы!\verb*+\labelenumiv+} % Формат меток. % \begin{macrocode} \newcommand\labelenumi {\theenumi.} @@ -83,6 +93,10 @@ % % \subsubsection{Маркированный список} % +% \DescribeMacro{\labelitemi}\index{Макросы!\verb*+\labelitemi+} +% \DescribeMacro{\labelitemii}\index{Макросы!\verb*+\labelitemii+} +% \DescribeMacro{\labelitemiii}\index{Макросы!\verb*+\labelitemiii+} +% \DescribeMacro{\labelitemiv}\index{Макросы!\verb*+\labelitemiv+} % Формат меток. % \begin{macrocode} \newcommand\labelitemi {\textbullet} diff --git a/Master/texmf-dist/source/latex/disser/master.dtx b/Master/texmf-dist/source/latex/disser/master.dtx index f4c4ba7535d..284f125f61e 100644 --- a/Master/texmf-dist/source/latex/disser/master.dtx +++ b/Master/texmf-dist/source/latex/disser/master.dtx @@ -7,17 +7,23 @@ % \subsubsection{Титульный лист магистерской диссертации} % % Вертикальные интервалы между элементами титульного листа. -% \DescribeMacro{\firstskip}\index{Макросы!\verb*+\firstskip+} -% \DescribeMacro{\secondskip}\index{Макросы!\verb*+\secondskip+} -% \DescribeMacro{\thirdskip}\index{Макросы!\verb*+\thirdskip+} -% \DescribeMacro{\fourthskip}\index{Макросы!\verb*+\fourthskip+} -% \DescribeMacro{\fifthskip}\index{Макросы!\verb*+\fifthskip+} +% \DescribeMacro{\firstskip}\index{Расстояния!\verb*+\firstskip+} +% \DescribeMacro{\secondskip}\index{Расстояния!\verb*+\secondskip+} +% \DescribeMacro{\thirdskip}\index{Расстояния!\verb*+\thirdskip+} +% \DescribeMacro{\fourthskip}\index{Расстояния!\verb*+\fourthskip+} +% \DescribeMacro{\fifthskip}\index{Расстояния!\verb*+\fifthskip+} % \begin{macrocode} -\def\firstskip{\vspace*{1em}} -\def\secondskip{\vspace*{1em}} -\def\thirdskip{\vskip1.em} -\def\fourthskip{\vspace*{-1cm}} -\def\fifthskip{\vskip0em} +\newlength\firstskip +\newlength\secondskip +\newlength\thirdskip +\newlength\fourthskip +\newlength\fifthskip + +\setlength\firstskip{1em} +\setlength\secondskip{1em} +\setlength\thirdskip{1em} +\setlength\fourthskip{-1cm} +\setlength\fifthskip{0em} % \end{macrocode} % Шрифты элементов титульного листа. @@ -32,22 +38,23 @@ % \end{macrocode} % Диссертация допущена к защите % \begin{macrocode} -\firstskip\@approved\secondskip +\vskip\firstskip +\@approved +\vskip\secondskip \begin{center} % \end{macrocode} % Заголовок. % \begin{macrocode} {\titlefont\@title} - \par\thirdskip + \vskip\thirdskip % \end{macrocode} % % Тема % \begin{macrocode} {\topiclabelfont\topiclabel} {\topicfont\@topic} - \par \end{center} -\fourthskip +\vskip\fourthskip \begin{tabbing} \phantom{\masterproglabel}\=\\ % \end{macrocode} @@ -61,7 +68,7 @@ % \begin{macrocode} \masterproglabel\>\ \@masterprognum\ --\ \@masterprog \end{tabbing} -\fifthskip +\vskip\fifthskip \begin{tabbing} % \end{macrocode} % diff --git a/Master/texmf-dist/source/latex/disser/page.dtx b/Master/texmf-dist/source/latex/disser/page.dtx index d7f2190ce3a..77b67fe1364 100644 --- a/Master/texmf-dist/source/latex/disser/page.dtx +++ b/Master/texmf-dist/source/latex/disser/page.dtx @@ -98,6 +98,7 @@ % \begin{macrocode} \else % \if@twoside % \end{macrocode} +% \DescribeMacro{\ps@headings}\index{Макросы!\verb*+\ps@headings+} % \item Для односторонних документов. % \begin{macrocode} \def\ps@headings{% @@ -112,6 +113,7 @@ }% \let\@mkboth\markboth % \end{macrocode} +% \DescribeMacro{\chaptermark}\index{Макросы!\verb*+\chaptermark+} % \item Формат маркера главы. % \begin{macrocode} \def\chaptermark##1{% @@ -121,6 +123,7 @@ \fi ##1}}{}} % \end{macrocode} +% \DescribeMacro{\sectionmark}\index{Макросы!\verb*+\sectionmark+} % \item Формат маркера секции. % \begin{macrocode} \def\sectionmark##1{% diff --git a/Master/texmf-dist/source/latex/disser/part.dtx b/Master/texmf-dist/source/latex/disser/part.dtx index 4e9b4d49c88..fae6a1f2ca2 100644 --- a/Master/texmf-dist/source/latex/disser/part.dtx +++ b/Master/texmf-dist/source/latex/disser/part.dtx @@ -13,7 +13,7 @@ % отсутствие простого способа настройки формата заголовков и соответствующих % им записей в Содержании. Любое изменение приходится вносить путем % переопределения громоздких низкоуровневых макросов. Класс |disser| -% устраняет эту проблему путем ввода высокоуровневых макросов для всех +% устраняет эту проблему путем введения высокоуровневых макросов для всех % основных параметров формата заголовков и записей в автоматически формируемых % списках. % diff --git a/Master/texmf-dist/source/latex/disser/sections.dtx b/Master/texmf-dist/source/latex/disser/sections.dtx index 13d5b311658..5f60cb3916d 100644 --- a/Master/texmf-dist/source/latex/disser/sections.dtx +++ b/Master/texmf-dist/source/latex/disser/sections.dtx @@ -10,7 +10,14 @@ % \subsection{Секции и параграфы} % % \subsubsection{Section} +% % \paragraph{Параметры формата записи в Содержании} +% \DescribeMacro{\tocprethesection}\index{Макросы!\verb*+\tocprethesection+} +% \DescribeMacro{\tocpostthesection}\index{Макросы!\verb*+\tocpostthesection+} +% \DescribeMacro{\tocsectionfill}\index{Макросы!\verb*+\tocsectionfill+} +% \DescribeMacro{\tocsectionfont}\index{Макросы!\verb*+\tocsectionfont+} +% \DescribeMacro{\tocsectionfillfont}\index{Макросы!\verb*+\tocsectionfillfont+} +% \DescribeMacro{\tocsectionnumfont}\index{Макросы!\verb*+\tocsectionnumfont+} % \begin{macrocode} \providecommand\tocprethesection{} \providecommand\tocpostthesection{.\@postskip} @@ -32,6 +39,9 @@ % \end{macrocode} % \paragraph{Параметры формата в тексте} +% \DescribeMacro{\sectionfont}\index{Макросы!\verb*+\sectionfont+} +% \DescribeMacro{\prethesection}\index{Макросы!\verb*+\prethesection+} +% \DescribeMacro{\postthesection}\index{Макросы!\verb*+\postthesection+} % \begin{macrocode} \providecommand\sectionfont{\normalfont\large\bfseries} @@ -62,6 +72,14 @@ % \end{macrocode} % \subsubsection{Subsection} % \paragraph{Параметры формата записи в Содержании} +% \DescribeMacro{\tocprethesubsection}\index{Макросы!\verb*+\tocprethesubsection+} +% \DescribeMacro{\tocpostthesubsection}\index{Макросы!\verb*+\tocpostthesubsection+} +% \DescribeMacro{\tocsubsectionfill}\index{Макросы!\verb*+\tocsubsectionfill+} +% \DescribeMacro{\tocsubsectionfont}\index{Макросы!\verb*+\tocsubsectionfont+} +% \DescribeMacro{\tocsubsectionfillfont}\index{Макросы!\verb*+\tocsubsectionfillfont+} +% \DescribeMacro{\tocsubsectionnumfont}\index{Макросы!\verb*+\tocsubsectionnumfont+} +% \DescribeMacro{\tocsubsectionindent}\index{Макросы!\verb*+\tocsubsectionindent+} +% \DescribeMacro{\tocsubsectionnameindent}\index{Макросы!\verb*+\tocsubsectionnameindent+} % \begin{macrocode} \providecommand\tocprethesubsection{} \providecommand\tocpostthesubsection{.\@postskip} @@ -76,6 +94,13 @@ % \end{macrocode} % \paragraph{Параметры формата в тексте} +% \DescribeMacro{\subsectionfont}\index{Макросы!\verb*+\subsectionfont+} +% \DescribeMacro{\prethesubsection}\index{Макросы!\verb*+\prethesubsection+} +% \DescribeMacro{\postthesubsection}\index{Макросы!\verb*+\postthesubsection+} +% \DescribeMacro{\subsectionindent}\index{Макросы!\verb*+\subsectionindent+} +% \DescribeMacro{\beforesubsection}\index{Макросы!\verb*+\beforesubsection+} +% \DescribeMacro{\aftersubsection}\index{Макросы!\verb*+\aftersubsection+} +% \DescribeMacro{\subsectionalign}\index{Макросы!\verb*+\subsectionalign+} % \begin{macrocode} \providecommand\subsectionfont{\normalfont\normalsize\bfseries} @@ -90,6 +115,16 @@ % \end{macrocode} % \subsubsection{Subsubsection} % \paragraph{Параметры формата записи в Содержании} +% \DescribeMacro{\tocprethesubsubsection}\index{Макросы!\verb*+\tocprethesubsubsection+} +% \DescribeMacro{\tocpostthesubsubsection}\index{Макросы!\verb*+\tocpostthesubsubsection+} +% \DescribeMacro{\tocsubsubsectionfill}\index{Макросы!\verb*+\tocsubsubsectionfill+} +% +% \DescribeMacro{\tocsubsubsectionfont}\index{Макросы!\verb*+\tocsubsubsectionfont+} +% \DescribeMacro{\tocsubsubsectionfillfont}\index{Макросы!\verb*+\tocsubsubsectionfillfont+} +% \DescribeMacro{\tocsubsubsectionnumfont}\index{Макросы!\verb*+\tocsubsubsectionnumfont+} +% +% \DescribeMacro{\tocsubsubsectionindent}\index{Макросы!\verb*+\tocsubsubsectionindent+} +% \DescribeMacro{\tocsubsubsectionnameindent}\index{Макросы!\verb*+\tocsubsubsectionnameindent+} % \begin{macrocode} \providecommand\tocprethesubsubsection{} \providecommand\tocpostthesubsubsection{.\@postskip} @@ -104,6 +139,15 @@ % \end{macrocode} % \paragraph{Параметры формата в тексте} +% \DescribeMacro{\subsubsectionfont}\index{Макросы!\verb*+\subsubsectionfont+} +% +% \DescribeMacro{\prethesubsubsection}\index{Макросы!\verb*+\prethesubsubsection+} +% \DescribeMacro{\postthesubsubsection}\index{Макросы!\verb*+\postthesubsubsection+} +% +% \DescribeMacro{\subsubsectionindent}\index{Макросы!\verb*+\subsubsectionindent+} +% \DescribeMacro{\beforesubsubsection}\index{Макросы!\verb*+\beforesubsubsection+} +% \DescribeMacro{\aftersubsubsection}\index{Макросы!\verb*+\aftersubsubsection+} +% \DescribeMacro{\subsubsectionalign}\index{Макросы!\verb*+\subsubsectionalign+} % \begin{macrocode} \providecommand\subsubsectionfont{\normalfont\normalsize\bfseries} @@ -118,20 +162,43 @@ % \end{macrocode} % \subsubsection{Paragraph} % \paragraph{Параметры формата записи в Содержании} +% +% \DescribeMacro{\tocpretheparagraph}\index{Макросы!\verb*+\tocpretheparagraph+} +% \DescribeMacro{\tocposttheparagraph}\index{Макросы!\verb*+\tocposttheparagraph+} +% \DescribeMacro{\tocparagraphfill}\index{Макросы!\verb*+\tocparagraphfill+} +% % \begin{macrocode} \providecommand\tocpretheparagraph{} \providecommand\tocposttheparagraph{.\@postskip} \providecommand\tocparagraphfill{\tocfill{.}} +% \end{macrocode} +% \DescribeMacro{\tocparagraphfont}\index{Макросы!\verb*+\tocparagraphfont+} +% \DescribeMacro{\tocparagraphfillfont}\index{Макросы!\verb*+\tocparagraphfillfont+} +% \DescribeMacro{\tocparagraphnumfont}\index{Макросы!\verb*+\tocparagraphnumfont+} +% \begin{macrocode} \providecommand\tocparagraphfont{\normalfont} \providecommand\tocparagraphfillfont{} \providecommand\tocparagraphnumfont{} +% \end{macrocode} +% \DescribeMacro{\tocparagraphindent}\index{Макросы!\verb*+\tocparagraphindent+} +% \DescribeMacro{\tocparagraphnameindent}\index{Макросы!\verb*+\tocparagraphnameindent+} +% \begin{macrocode} \providecommand\tocparagraphindent{10em} \providecommand\tocparagraphnameindent{5em} % \end{macrocode} % \paragraph{Параметры формата в тексте} +% \DescribeMacro{\paragraphfont}\index{Макросы!\verb*+\paragraphfont+} +% +% \DescribeMacro{\pretheparagraph}\index{Макросы!\verb*+\pretheparagraph+} +% \DescribeMacro{\posttheparagraph}\index{Макросы!\verb*+\posttheparagraph+} +% +% \DescribeMacro{\paragraphindent}\index{Макросы!\verb*+\paragraphindent+} +% \DescribeMacro{\beforeparagraph}\index{Макросы!\verb*+\beforeparagraph+} +% \DescribeMacro{\afterparagraph}\index{Макросы!\verb*+\afterparagraph+} +% \DescribeMacro{\paragraphalign}\index{Макросы!\verb*+\paragraphalign+} % \begin{macrocode} \providecommand\paragraphfont{\normalfont\normalsize\bfseries} @@ -141,11 +208,21 @@ \providecommand\paragraphindent{\z@} \providecommand\beforeparagraph{3.25ex \@plus1ex \@minus.2ex} \providecommand\afterparagraph{-1em} -\providecommand\paragraphalign{\raggedright} +\providecommand\paragraphalign{} % \end{macrocode} % \subsubsection{Subparagraph} % \paragraph{Параметры формата записи в Содержании} +% \DescribeMacro{\tocprethesubparagraph}\index{Макросы!\verb*+\tocprethesubparagraph+} +% \DescribeMacro{\tocpostthesubparagraph}\index{Макросы!\verb*+\tocpostthesubparagraph+} +% \DescribeMacro{\tocsubparagraphfill}\index{Макросы!\verb*+\tocsubparagraphfill+} +% +% \DescribeMacro{\tocsubparagraphfont}\index{Макросы!\verb*+\tocsubparagraphfont+} +% \DescribeMacro{\tocsubparagraphfillfont}\index{Макросы!\verb*+\tocsubparagraphfillfont+} +% \DescribeMacro{\tocsubparagraphnumfont}\index{Макросы!\verb*+\tocsubparagraphnumfont+} +% +% \DescribeMacro{\tocsubparagraphindent}\index{Макросы!\verb*+\tocsubparagraphindent+} +% \DescribeMacro{\tocsubparagraphnameindent}\index{Макросы!\verb*+\tocsubparagraphnameindent+} % \begin{macrocode} \providecommand\tocprethesubparagraph{} \providecommand\tocpostthesubparagraph{.\@postskip} @@ -160,6 +237,15 @@ % \end{macrocode} % \paragraph{Параметры формата в тексте} +% \DescribeMacro{\subparagraphfont}\index{Макросы!\verb*+\subparagraphfont+} +% +% \DescribeMacro{\prethesubparagraph}\index{Макросы!\verb*+\prethesubparagraph+} +% \DescribeMacro{\postthesubparagraph}\index{Макросы!\verb*+\postthesubparagraph+} +% +% \DescribeMacro{\subparagraphindent}\index{Макросы!\verb*+\subparagraphindent+} +% \DescribeMacro{\beforesubparagraph}\index{Макросы!\verb*+\beforesubparagraph+} +% \DescribeMacro{\aftersubparagraph}\index{Макросы!\verb*+\aftersubparagraph+} +% \DescribeMacro{\subparagraphalign}\index{Макросы!\verb*+\subparagraphalign+} % \begin{macrocode} \providecommand\subparagraphfont{\normalfont\normalsize\bfseries} @@ -235,26 +321,13 @@ % \end{macrocode} % -% \DescribeMacro{\defsection}\index{Макросы!\verb*+\defsection+} -% Генератор команд типа |\l@<section>| и |\<section>|. +% \DescribeMacro{\section}\index{Макросы!\verb+\section+} +% \DescribeMacro{\subsection}\index{Макросы!\verb+\subsection+} +% \DescribeMacro{\subsubsection}\index{Макросы!\verb+\subsubsection+} +% \DescribeMacro{\paragraph}\index{Макросы!\verb+\paragraph+} +% \DescribeMacro{\subparagraph}\index{Макросы!\verb+\subparagraph+} +% Интерфейс для создания секций. % \begin{macrocode} -%\newcommand\defsection[2]{% -% \@namedef{l@#1}{% -% \@tocline{#1}{#2}{\csname toc#1indent\endcsname} -% {\csname toc#1nameindent\endcsname} -% } -% \@namedef{#1}{% -% \@startsection{#1}{#2}{\csname #1indent\endcsname} -% {\csname before#1\endcsname}{\csname after#1\endcsname} -% {\csname #1font\endcsname\csname #1align\endcsname} -% } -%} -% -%\defsection{section}{1} -%\defsection{subsection}{2} -%\defsection{subsubsection}{3} -%\defsection{paragraph}{4} -%\defsection{subparagraph}{5} \newcommand\section{\@startsection{section}{1} {\sectionindent}{\beforesection}% diff --git a/Master/texmf-dist/source/latex/disser/titledefs.dtx b/Master/texmf-dist/source/latex/disser/titledefs.dtx index 49848fe24e7..53216611c41 100644 --- a/Master/texmf-dist/source/latex/disser/titledefs.dtx +++ b/Master/texmf-dist/source/latex/disser/titledefs.dtx @@ -231,12 +231,12 @@ % \begin{macrocode} \def\yearname{\cyr\cyrg.} % \end{macrocode} -% \DescribeMacro{\introsect}\index{Макросы!\verb*+\introsect+} -% \DescribeMacro{\postintrosect}\index{Макросы!\verb*+\postintrosect+} +% \DescribeMacro{\commonsect}\index{Макросы!\verb*+\commonsect+} +% \DescribeMacro{\postcommonsect}\index{Макросы!\verb*+\postcommonsect+} % Стиль заголовков общего текста <<Введения>> и автореферата. % \begin{macrocode} -\let\introsect=\paragraph -\def\postintrosect{\ } +\let\commonsect=\textbf +\def\postcommonsect{\ } % \end{macrocode} % % \subsubsection{Научный руководитель} @@ -315,7 +315,8 @@ % \end{itemize} % \begin{macrocode} \newcommand\defsname{% -{\cyr\CYRS\cyrp\cyri\cyrs\cyro\cyrk\ \cyru\cyrs\cyrl\cyro\cyrv\cyrn\cyrery\cyrh % +{\cyr\CYRS\cyrp\cyri\cyrs\cyro\cyrk\ % +\cyri\cyrs\cyrp\cyro\cyrl\cyrsftsn\cyrz\cyru\cyre\cyrm\cyrery\cyrh\ % \cyro\cyrb\cyro\cyrz\cyrn\cyra\cyrch\cyre\cyrn\cyri\cyrishrt} } \newcommand\defs{\nchapter{\defsname}} @@ -329,7 +330,7 @@ \newcommand\review{\nchapter{\reviewname}} % \end{macrocode} % -% \subsubsection{Низкоуровневые макросы} +% \subsubsection{Поля титульного листа} % % \DescribeMacro{\field}\index{Макросы!\verb*+\field+} % Формат записей для научного руководителя, рецензента и консультанта @@ -366,15 +367,21 @@ \newcommand\datefield[1][\number\year]{<<\rule[0pt]{1cm}{.5pt}\,>>% \rule[0pt]{3cm}{0.5pt}\ #1~\yearname} % \end{macrocode} -% \DescribeMacro{\mkintrosect}\index{Макросы!\verb*+\mkintrosect+} -% Генератор команд для оформления общего текста из <<Введения>> -% диссертации и автореферата. +% \DescribeMacro{\mkcommonsect}\index{Макросы!\verb*+\mkcommonsect+} +% Генератор команд для общего текста диссертации и автореферата. % \begin{macrocode} -\newcommand\mkintrosect[3]{% +\newcommand\mkcommonsect[3]{% \@namedef{#1head}{#2} - \@namedef{#1section}{\introsect{\expandafter\csname #1head\endcsname}\postintrosect} + \@namedef{#1section}{\commonsect{\expandafter\csname #1head\endcsname}\postcommonsect} \@namedef{#1text}{#3} } +\let\mkintrosect=\mkcommonsect + +% \end{macrocode} +% \DescribeMacro{\facsimile}\index{Макросы!\verb*+\facsimile+} +% Команда для включения графического файла с подписью диссертанта. +% \begin{macrocode} +\newcommand\facsimile{\vskip 6pt\includegraphics[width=3cm]{facsimile}} %</titledefs> % \end{macrocode} diff --git a/Master/texmf-dist/source/latex/disser/toc.dtx b/Master/texmf-dist/source/latex/disser/toc.dtx index 1567c54869d..555883910bd 100644 --- a/Master/texmf-dist/source/latex/disser/toc.dtx +++ b/Master/texmf-dist/source/latex/disser/toc.dtx @@ -45,7 +45,7 @@ \newcommand\indexspace{\par \vskip 10\p@ \@plus5\p@ \@minus3\p@\relax} % \end{macrocode} % Величина отступа для элементов списка литературы. -% \DescribeMacro{\bibindent}\index{Макросы!\verb*+\bibindent+} +% \DescribeMacro{\bibindent}\index{Расстояния!\verb*+\bibindent+} % \begin{macrocode} \newdimen\bibindent \setlength\bibindent{1.5em} |