diff options
Diffstat (limited to 'Master/texmf-dist/source/latex')
19 files changed, 635 insertions, 445 deletions
diff --git a/Master/texmf-dist/source/latex/disser/Makefile b/Master/texmf-dist/source/latex/disser/Makefile index 696a2f32438..5fb3559a31a 100644 --- a/Master/texmf-dist/source/latex/disser/Makefile +++ b/Master/texmf-dist/source/latex/disser/Makefile @@ -1,17 +1,17 @@ # -# Makefile for LaTeX packages +# Makefile for disser package # Author: Stanislav Kruchinin <stanislav.kruchinin@gmail.com> # TARGET=disser SUBCLASS=gost732 BST=disser-bst -MANUAL?=manual +MANUAL=manual CLSFILES=$(TARGET).cls *.rtx $(SUBCLASS).cls -BSTFILE=$(TARGET).bst -DOCFILES=$(TARGET).pdf $(SUBCLASS).pdf $(MANUAL).pdf ../README ../README.ru ../ChangeLog -BSTDOCFILE=$(BST).pdf +BSTFILES=$(TARGET).bst $(TARGET)-s.bst +DOCFILES=$(TARGET).pdf $(SUBCLASS).pdf $(BST).pdf $(MANUAL).pdf +TEXTFILES=../README ../README.ru ../ChangeLog SRCFILES=*.dtx *.ins $(MANUAL).tex TEXMF?=/usr/share/texmf @@ -19,11 +19,10 @@ TEXMF?=/usr/share/texmf CLSDIR?=$(TEXMF)/tex/latex/$(TARGET) DOCDIR?=$(TEXMF)/doc/latex/$(TARGET) BSTDIR?=$(TEXMF)/bibtex/bst/$(TARGET) -BSTDOCDIR?=$(TEXMF)/doc/bibtex/$(TARGET) SRCDIR?=$(TEXMF)/source/latex/$(TARGET) -CLEXT?= *.log *.out *.aux *.dvi *.idx *.ilg *.ind *.glo *.toc *.bak *.bbl *.blg *.sav -CLFILES?=$(CLSFILES) $(BSTFILE) $(DOCFILES) $(BSTDOCFILE) $(CLEXT) +CLEXT?=*.log *.out *.aux *.dvi *.idx *.ilg *.ind *.glo *.toc *.bak *.bbl *.blg *.sav +CLFILES?=$(CLSFILES) $(BSTFILE) $(DOCFILES) $(CLEXT) LATEX?=latex PDFLATEX?=pdflatex @@ -32,9 +31,10 @@ MI?=makeindex LATEXFLAGS?= PDFLATEXFLAGS?= -all: class doc +all: package doc -class: *.cls +package: $(TARGET).ins + $(LATEX) $^ doc: pdf @@ -47,28 +47,45 @@ install: all mkdir -p $(BSTDIR) mkdir -p $(DOCDIR) mkdir -p $(SRCDIR) - cp $(CLSFILES) $(CLSDIR) - cp $(BSTFILE) $(BSTDIR) - cp $(DOCFILES) $(DOCDIR) - cp $(BSTDOCFILE) $(DOCDIR) - cp $(SRCFILES) $(SRCDIR) - @echo -e "\nDon't forget to run 'mktexlsr' if you install this class first time\n" + cp $(CLSFILES) $(CLSDIR) + cp $(BSTFILES) $(BSTDIR) + cp $(DOCFILES) $(DOCDIR) + cp $(TEXTFILES) $(DOCDIR) + cp $(SRCFILES) $(SRCDIR) + +uninstall: + rm $(addprefix $(CLSDIR)/, $(CLSFILES)) + rm $(addprefix $(BSTDIR)/, $(BSTFILES)) + rm $(addprefix $(DOCDIR)/, $(DOCFILES)) + rm $(addprefix $(DOCDIR)/, $(notdir $(TEXTFILES))) + rm $(addprefix $(SRCDIR)/, $(SRCFILES)) + rmdir $(CLSDIR) + rmdir $(BSTDIR) + rmdir $(DOCDIR) + rmdir $(SRCDIR) + +reinstall: uninstall install clean: rm -f $(CLFILES) -%.cls: %.ins - $(TEX) $< - -%.dvi: %.dtx +disser.dvi: disser.dtx $(LATEX) $(LATEXFLAGS) $< $(MI) -r $(TARGET) $(LATEX) $(LATEXFLAGS) $< $(LATEX) $(LATEXFLAGS) $< -%.dvi: %.tex - $(LATEX) $(LATEXFLAGS) $< +disser.pdf: disser.dtx + $(PDFLATEX) $(PDFLATEXFLAGS) $< $(MI) -r $(TARGET) + $(PDFLATEX) $(PDFLATEXFLAGS) $< + $(PDFLATEX) $(PDFLATEXFLAGS) $< + +%.dvi: %.dtx + $(LATEX) $(LATEXFLAGS) $< + $(LATEX) $(LATEXFLAGS) $< + +%.dvi: %.tex $(LATEX) $(LATEXFLAGS) $< $(LATEX) $(LATEXFLAGS) $< @@ -81,13 +98,13 @@ clean: $(PDFLATEX) $(PDFLATEXFLAGS) $< help: - @echo "Targets:" - @echo " all (default) build classes and documentation" - @echo " class build classes" - @echo " clean remove ouptut files" - @echo " doc build DVI and PDF versions of documentation" - @echo " dvi build DVI version of documentation" - @echo " pdf build PDF version of documentation" - @echo " install install package and documentation" - @echo " help show help" - + @echo " all (default) build package files and documentation" + @echo " package build package" + @echo " clean remove output files" + @echo " doc build DVI and PDF versions of documentation" + @echo " dvi build DVI version of documentation" + @echo " help show description of targets" + @echo " install install package and documentation" + @echo " pdf build PDF version of documentation" + @echo " reinstall reinstall package and documentation" + @echo " uninstall uninstall package and documentation" diff --git a/Master/texmf-dist/source/latex/disser/autoref.dtx b/Master/texmf-dist/source/latex/disser/autoref.dtx index d652f7c84f1..752616088d5 100644 --- a/Master/texmf-dist/source/latex/disser/autoref.dtx +++ b/Master/texmf-dist/source/latex/disser/autoref.dtx @@ -8,11 +8,11 @@ % % Вертикальные интервалы между элементами титульного листа. % \begin{macrocode} -\def\firstskip{\vskip1cm} -\def\secondskip{\vskip2cm} -\def\thirdskip{\vskip1cm} -\def\fourthskip{\vskip1cm} -\def\fifthskip{\vskip1cm} +\deflength\firstskip{1cm} +\deflength\secondskip{2cm} +\deflength\thirdskip{1cm} +\deflength\fourthskip{1cm} +\deflength\fifthskip{1cm} \def\titlefont{\normalsize} \def\topicfont{\Large\bfseries} @@ -24,7 +24,7 @@ % \end{macrocode} % На правах рукописи % \begin{macrocode} - \firstskip + \vskip\firstskip \asmanuscriptname\\ \ifDis@facsimile\facsimile\fi \end{flushright} @@ -32,22 +32,22 @@ % \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} %</autoref> diff --git a/Master/texmf-dist/source/latex/disser/bachelor.dtx b/Master/texmf-dist/source/latex/disser/bachelor.dtx index 739c0a07d49..ae7742db795 100644 --- a/Master/texmf-dist/source/latex/disser/bachelor.dtx +++ b/Master/texmf-dist/source/latex/disser/bachelor.dtx @@ -14,17 +14,11 @@ % \DescribeMacro{\fifthskip}\index{Расстояния!\verb*+\fifthskip+} % \begin{macrocode} -\newlength\firstskip -\newlength\secondskip -\newlength\thirdskip -\newlength\fourthskip -\newlength\fifthskip - -\setlength\firstskip{1.5cm} -\setlength\secondskip{1.5cm} -\setlength\thirdskip{1ex} -\setlength\fourthskip{1ex} -\setlength\fifthskip{2cm} +\deflength\firstskip{1.5cm} +\deflength\secondskip{1.5cm} +\deflength\thirdskip{1ex} +\deflength\fourthskip{1ex} +\deflength\fifthskip{2cm} % \end{macrocode} % Шрифты элементов титульного листа. diff --git a/Master/texmf-dist/source/latex/disser/candidate.dtx b/Master/texmf-dist/source/latex/disser/candidate.dtx index 41f230ac824..0f9e04ac509 100644 --- a/Master/texmf-dist/source/latex/disser/candidate.dtx +++ b/Master/texmf-dist/source/latex/disser/candidate.dtx @@ -15,25 +15,18 @@ % \DescribeMacro{\sixthskip}\index{Расстояния!\verb*+\sixthskip+} % \begin{macrocode} \newlength\firstskip -\newlength\secondskip -\newlength\thirdskip -\newlength\fourthskip -\newlength\fifthskip -\newlength\sixthskip - \ifDis@libcat \setlength\firstskip{2ex} \else \setlength\firstskip{4ex} \fi -\setlength\secondskip{2cm} -\setlength\thirdskip{1cm} -\setlength\fourthskip{1cm} -\setlength\fifthskip{1cm} -\setlength\sixthskip{0pt} +\deflength\secondskip{2cm} +\deflength\thirdskip{1cm} +\deflength\fourthskip{1cm} +\deflength\fifthskip{1cm} +\deflength\sixthskip{0pt} -\newlength\@sahshift -\setlength\@sahshift{8cm} +\deflength\@sahshift{8cm} % \end{macrocode} % Шрифты элементов титульного листа. diff --git a/Master/texmf-dist/source/latex/disser/chapter.dtx b/Master/texmf-dist/source/latex/disser/chapter.dtx index 2ad390b64d9..3562d7b78ca 100644 --- a/Master/texmf-dist/source/latex/disser/chapter.dtx +++ b/Master/texmf-dist/source/latex/disser/chapter.dtx @@ -49,6 +49,7 @@ \providecommand\chapterfont{\Large\bfseries} \providecommand\beforechapter{} \providecommand\afterchapter{\par\nobreak\vskip 20\p@} +\providecommand\chapterindent{0pt} % \end{macrocode} % @@ -87,9 +88,6 @@ {\def\\{ }\addcontentsline{toc}{chapter}{#1}}% \fi \chaptermark{#1}% -% \end{macrocode} -% Добавление вертикальных разделителей в списки рисунков и таблиц. -% \begin{macrocode} \addtocontents{lof}{\protect\addvspace{10\p@}}% \addtocontents{lot}{\protect\addvspace{10\p@}}% \if@twocolumn @@ -104,22 +102,15 @@ % \DescribeMacro{\@makechapterhead}\index{Макросы!\verb+"\"@makechapterhead+} % Формат нумеруемого заголовка. % \begin{macrocode} -\def\@makechapterhead#1{% - {% -% \end{macrocode} -% Установка нулевого абзацного отступа. -% \begin{macrocode} - \parindent \z@ \raggedright \normalfont -% \end{macrocode} -% Постоянная часть заголовка. -% \begin{macrocode} - \ifnum \c@secnumdepth >\m@ne - {\thechapterfont\thechapteralign\@seccntformat{chapter}} - \fi - \interlinepenalty\@M - \chapterfont\chapteralign\beforechapter #1\afterchapter - } -} +\def\@makechapterhead#1{{% + \parindent\z@ + \normalfont\hskip\chapterindent% + \ifnum \c@secnumdepth >\m@ne + {\thechapterfont\thechapteralign\@seccntformat{chapter}} + \fi + \interlinepenalty\@M + \chapterfont\chapteralign\beforechapter #1\afterchapter +}} % \end{macrocode} % @@ -140,13 +131,12 @@ % \DescribeMacro{\@makeschapterhead}\index{Макросы!\verb+"\"@makeschapterhead+} % Формат ненумеруемого заголовка. % \begin{macrocode} -\def\@makeschapterhead#1{% - {% - \parindent \z@ \raggedright - \normalfont\interlinepenalty\@M - \chapteralign{\chapterfont\beforechapter #1\afterchapter} - } -} +\def\@makeschapterhead#1{{% + \parindent\z@ + \normalfont\hskip\chapterindent% + \interlinepenalty\@M + \chapteralign\chapterfont\beforechapter #1\afterchapter +}} % \end{macrocode} % % \DescribeMacro{\l@chapter}\index{Макросы!\verb+"\l"@chapter+} @@ -213,6 +203,7 @@ \providecommand\appendixfont{\Large\bfseries} \providecommand\beforeappendix{} \providecommand\afterappendix{\par\nobreak\vskip 20\p@} +\providecommand\appendixindent{0pt} % \end{macrocode} % % \DescribeMacro{\appendix}\index{Макросы!\verb*+\appendix+} @@ -242,6 +233,7 @@ \let\oldchapteralign=\chapteralign \let\oldchapterfont=\chapterfont + \let\oldchapterindent=\chapterindent \let\oldbeforechapter=\afterchapter \let\oldafterchapter=\afterchapter \let\oldthechapter=\thechapter @@ -266,6 +258,7 @@ \renewcommand\chapterfont{\appendixfont} \renewcommand\beforechapter{\beforeappendix} \renewcommand\afterchapter{\afterappendix} + \renewcommand\chapterindent{\appendixindent} \gdef\thechapter{\theappendix} } diff --git a/Master/texmf-dist/source/latex/disser/custom.dtx b/Master/texmf-dist/source/latex/disser/custom.dtx index 100e9964c7b..2d86b8f44e7 100644 --- a/Master/texmf-dist/source/latex/disser/custom.dtx +++ b/Master/texmf-dist/source/latex/disser/custom.dtx @@ -8,18 +8,7 @@ %<*custom> % \end{macrocode} % \subsection{Подключение и настройка сторонних пакетов} -% Отступ в первой строке первого абзаца. -% \begin{macrocode} -\let\@afterindentfalse\@afterindenttrue -\@afterindenttrue -% \end{macrocode} -% Перенос в словах с дефисом. -% \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+} @@ -28,10 +17,24 @@ \usepackage[intlimits]{amsmath} \usepackage{amssymb,amsfonts} \fi + % \end{macrocode} -% Использование шрифта Times вместо Computer Modern Roman. +% Подключение шрифта Times вместо Computer Modern Roman. % \begin{macrocode} \ifDis@times +% \end{macrocode} +% Реализация команд |\English| и |\Eng| без переключения кодировок шрифта. +% Это необходимо для корректного отображения символа переноса строки при +% использовании пакетов |pscyr| и |cyrtimes|. +% \DescribeMacro{\English}\index{Макросы!\verb*+\English+} +% \DescribeMacro{\Eng}\index{Макросы!\verb*+\Eng+} +% \begin{macrocode} + \AtBeginDocument{ + \DeclareRobustCommand{\English}{% + \expandafter\set@hyphenmins\englishhyphenmins + \language\l@english}% + \let\Eng=\English + } \ifDis@mtpro \AtBeginDocument{% % \end{macrocode} @@ -39,7 +42,10 @@ % \begin{macrocode} \IfFileExists{mtpro.sty}{ \usepackage[subscriptcorrection,nofontinfo,boldalphabet]{mtpro} - }{\PackageWarning{disser}{Unable to find mtpro package. Font is unchanged.}} + }{ + \PackageWarning{disser}% + {Unable to find mtpro package. Font is unchanged.} + } } \else % \end{macrocode} @@ -48,33 +54,38 @@ \AtEndOfPackage{% \IfFileExists{txfonts.sty}{ \usepackage{txfonts} - }{\PackageWarning{disser}{Unable to find txfonts package. Font is unchanged.}} + }{ + \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} -% \end{macrocode} % Выбор стандартного моноширинного шрифта. % \begin{macrocode} + \usepackage{pscyr} + \renewcommand\rmdefault{ftm} \renewcommand\ttdefault{cmtt} }{ \IfFileExists{cyrtimes.sty}{ % \end{macrocode} % \DescribePackage{cyrtimes}\index{Пакеты!\verb*+cyrtimes+} +% Вместо |pscyr| может быть использован пакет |cyrtimes|, входящий в состав +% дистрибутива \TeX Live. % \begin{macrocode} \usepackage{cyrtimes} - }{\PackageWarning{disser}{Unable to find pscyr or cyrtimes package. Font is unchanged.}} + }{ + \PackageWarning{disser}% + {Unable to find pscyr or cyrtimes package. Font is unchanged.} + } } } \fi + % \end{macrocode} % Более естественные символы интегралов из шрифтов семейства Euler. % \begin{macrocode} @@ -102,53 +113,13 @@ \renewcommand{\idotsint}{\DOTSI\protect\MultiIntegral{0}} }{} \fi + % \end{macrocode} +% \subsubsection{Библиографические ссылки} % \DescribePackage{natbib}\index{Пакеты!\verb*+natbib+} -% Пакет для оформления библиографических ссылок. % \begin{macrocode} \usepackage[square, comma, sort&compress, numbers]{natbib} -% \end{macrocode} -% \DescribeMacro{\metaphantom}\index{Макросы!\verb*+\metaphantom+} -% Команда для исправления PDF-закладок, указывающих на ненумеруемые разделы -% (|\chapter*|, |\section*| и т. п.). -% \begin{macrocode} -\def\metaphantom#1{% - \ifDis@href - \Hy@GlobalStepCount\Hy@linkcounter - \xdef\@currentHref{#1*.\the\Hy@linkcounter}% - \Hy@raisedlink{\hyper@anchorstart{\@currentHref}\hyper@anchorend}% - \fi -} -% \end{macrocode} -% Команда для создания ненумеруемых глав, которые будут включены в -% Содержание и PDF-закладки. Для того, чтобы закладка указывала именно на -% заголовок, а не на первый абзац под ним, нужно поместить |\metaphantom{chapter}| -% и |\addcontentsline| внутри аргумента |\chapter*|. Честно говоря, мне это -% не нравится. Надо придумать что-то более простое и изящное. -% \DescribeMacro{\nchapter}\index{Макросы!\verb*+\nchapter+} -% \DescribeMacro{\nsection}\index{Макросы!\verb*+\nsection+} -% \DescribeMacro{\nsubsection}\index{Макросы!\verb*+\nsubsection+} -% \DescribeMacro{\nsubsubsection}\index{Макросы!\verb*+\nsubsubsection+} -% \begin{macrocode} -\newcommand\nchapter[1]{% - \chapter*{% - \metaphantom{chapter}\addcontentsline{toc}{chapter}{#1}% - #1% - \@mkboth{\MakeUppercase{#1}}{\MakeUppercase{#1}} - } -} -\newcommand\nsection[1]{% - \section*{\metaphantom{section}% - \addcontentsline{toc}{section}{#1}#1} -} -\newcommand\nsubsection[1]{% - \subsection*{\metaphantom{subsection}% - \addcontentsline{toc}{subsection}{#1}#1} -} -\newcommand\nsubsubsection[1]{% - \subsection*{\metaphantom{subsubsection}% - \addcontentsline{toc}{subsubsection}{#1}#1} -} + % \end{macrocode} % Переопределение для включения ссылки на список литературы в Содержание. % \DescribeMacro{\bibsection}\index{Макросы!\verb*+\bibsection+} @@ -177,14 +148,18 @@ \let\shortcite\cite \let\citeasnoun\cite % \end{macrocode} -% Убираем интервал между библиографическими ссылками для автореферата. +% Убираем вертикальный интервал между библиографическими ссылками для автореферата. % \begin{macrocode} \ifDis@autoref\setlength\bibsep{0pt}\fi }{% \def\@noitemerr{\PackageWarning{natbib}{Empty `thebibliography' environment}} \endlist\vskip-\lastskip% } + % \end{macrocode} +% \subsubsection{Плавающие объекты} +% +% \DescribePackage{wrapfig}\index{Пакеты!\verb*+wrapfig+} % Плавающие рисунки ``в оборку''. % \begin{macrocode} \usepackage{wrapfig} @@ -207,15 +182,11 @@ \providecommand\thefigsubsep{,~} \def\p@subfigure{\@nameuse{thefigure}\thefigsubsep} \fi + % \end{macrocode} -% -% Подключение и настройка параметров пакета |hyperref|: +% \subsubsection{Hyperref} % \begin{macrocode} \ifpdf -% \end{macrocode} -% \begin{itemize} -% \item для pdf\LaTeX{} -% \begin{macrocode} \ifDis@href % \end{macrocode} % \DescribePackage{hyperref}\index{Пакеты!\verb*+hyperref+} @@ -238,10 +209,6 @@ \usepackage[pdftex]{graphicx} \usepackage{cmap} \else -% \end{macrocode} -% \item для \LaTeX{} -% \end{itemize} -% \begin{macrocode} \ifDis@href % \end{macrocode} % \DescribePackage{hyperref}\index{Пакеты!\verb*+hyperref+} @@ -262,5 +229,55 @@ \usepackage{hypernat} \usepackage[all]{hypcap} \fi + +% \end{macrocode} +% \DescribeMacro{\metaphantom}\index{Макросы!\verb*+\metaphantom+} +% Команда, создающая цель для |hyperref| над заголовками ненумеруемых разделов. +% \begin{macrocode} +\def\metaphantom#1{% + \ifDis@href + \Hy@GlobalStepCount\Hy@linkcounter + \xdef\@currentHref{#1*.\the\Hy@linkcounter}% + \Hy@raisedlink{\hyper@anchorstart{\@currentHref}\hyper@anchorend}% + \fi +} + +% \end{macrocode} +% Команды для создания ненумеруемых глав и секций, которые включаются в +% Содержание и PDF-закладки. +% \DescribeMacro{\nchapter}\index{Макросы!\verb*+\nchapter+} +% \DescribeMacro{\nsection}\index{Макросы!\verb*+\nsection+} +% \DescribeMacro{\nsubsection}\index{Макросы!\verb*+\nsubsection+} +% \DescribeMacro{\nsubsubsection}\index{Макросы!\verb*+\nsubsubsection+} +% \begin{macrocode} +\newcommand\nchapter[1]{% + \if@openright + \cleardoublepage + \else + \clearpage + \fi + \thispagestyle{\@chapterpagestyle}% + \global\@topnum\z@ + \metaphantom{chapter} + {\def\\{ }\addcontentsline{toc}{chapter}{#1}}% + \@afterindentfalse + \@schapter{#1} +} +\newcommand\nsection[1]{% + \metaphantom{section}% + \addcontentsline{toc}{section}{#1} + \section*{#1} +} +\newcommand\nsubsection[1]{% + \metaphantom{subsection}% + \addcontentsline{toc}{subsection}{#1} + \subsection*{#1} +} +\newcommand\nsubsubsection[1]{% + \metaphantom{subsubsection}% + \addcontentsline{toc}{subsubsection}{#1} + \subsubsection*{#1} +} + %</custom> % \end{macrocode} diff --git a/Master/texmf-dist/source/latex/disser/disser-bst.dtx b/Master/texmf-dist/source/latex/disser/disser-bst.dtx index 0e519751885..7e504c7d62d 100644 --- a/Master/texmf-dist/source/latex/disser/disser-bst.dtx +++ b/Master/texmf-dist/source/latex/disser/disser-bst.dtx @@ -22,13 +22,13 @@ %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% %<*driver> -\ProvidesFile{disser-bst.drv}[2008/12/01 1.0.0 Bibliography style for dissertations.] +\ProvidesFile{disser-bst.drv}[2009/06/19 1.1.2 Bibliography style for dissertations.] \documentclass{ltxdoc} \usepackage[a4paper, includeheadfoot, nohead, mag=1000, left=5cm, right=1cm, top=1.5cm, bottom=1.5cm]{geometry} \usepackage{ifpdf,indentfirst,color} -\definecolor{darkblue}{rgb}{0,0,.5} +\definecolor{darkblue}{rgb}{0,0,.6} \ifpdf \usepackage[% pdftex, @@ -50,7 +50,7 @@ \fi \hypersetup{ - colorlinks = true, linkcolor = black, + colorlinks = true, linkcolor = darkblue, citecolor = darkblue, filecolor = darkblue, menucolor = darkblue, urlcolor = darkblue } @@ -87,7 +87,7 @@ % % %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% % -% \title{\texttt{disser.bst} "--- стиль библиографических ссылок} +% \title{Стили библиографии: \texttt{disser} и \texttt{disser-s}} % \date{Версия \fileversion\\[6pt]\filedate} % \author{Станислав Кручинин\\[6pt] % \normalsize E-mail: @@ -96,69 +96,10 @@ % % \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> + +%<*disser-bst|disser-s-bst> % \end{macrocode} % Список полей, используемых в bib-файлах. @@ -840,6 +781,7 @@ FUNCTION {output.bibitem} "\bibitem[" write$ "\BibPrefix" write$ label write$ + "\BibPostfix" write$ "]{" write$ cite$ write$ "}" write$ @@ -1544,6 +1486,121 @@ MACRO {tcs} {"Theoretical Computer Science"} READ +%<*disser-s-bst> + +FUNCTION {sortify} +{ purify$ + "l" change.case$ +} + +INTEGERS { len } + +FUNCTION {chop.word} +{ 's := + 'len := + s #1 len substring$ = + { s len #1 + global.max$ substring$ } + 's + if$ +} + +FUNCTION {sort.format.names} +{ 's := + #1 'nameptr := + "" + s num.names$ 'numnames := + numnames 'namesleft := + { namesleft #0 > } + { nameptr #1 > + { " " * } + 'skip$ + if$ + s nameptr + "{vv{ } }{ll{ }}{ f{ }}{ jj{ }}" + format.name$ 't := + nameptr numnames = t "others" = and + { "et al" * } + { t sortify * } + if$ + nameptr #1 + 'nameptr := + namesleft #1 - 'namesleft := + } + while$ +} + +FUNCTION {sort.format.title} +{ 't := + "A " #2 + "An " #3 + "The " #4 t chop.word + chop.word + chop.word + sortify + #1 global.max$ substring$ +} + +FUNCTION {author.sort} +{ author empty$ + { key empty$ + { "to sort, need author or key in " cite$ * warning$ + "" + } + { key sortify } + if$ + } + { + author num.names$ #4 < + {author sort.format.names } + {title sort.format.title} + if$ + } + if$ +} + +FUNCTION {author.title.sort} +{ author empty$ + { title empty$ + { key empty$ + { "to sort, need author, title, or key in " cite$ * warning$ + "" + } + { key sortify } + if$ + } + { title sort.format.title } + if$ + } + { + author num.names$ #4 < + {author sort.format.names } + {title sort.format.title} + if$ + } + if$ +} + + +FUNCTION {presort} +{ + author.title.sort + " " + * + year field.or.null sortify + * + " " + * + title field.or.null + sort.format.title + * + #1 entry.max$ substring$ + 'sort.key$ := +} + +ITERATE {presort} + +SORT + +%</disser-s-bst> STRINGS { longest.label } @@ -1572,15 +1629,16 @@ 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$ + "\ifx\undefined\BibPrefix\def\BibPrefix{}\else\fi" write$ newline$ + "\ifx\undefined\BibPostfix\def\BibPostfix{}\else\fi" write$ newline$ + "\begin{thebibliography}{\BibPrefix" longest.label * "\BibPostfix}" * 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$ + "\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$ } @@ -1600,5 +1658,5 @@ FUNCTION {end.bib} EXECUTE {end.bib} -%</disser-bst> +%</disser-bst|disser-s-bst> % \end{macrocode} diff --git a/Master/texmf-dist/source/latex/disser/disser.dtx b/Master/texmf-dist/source/latex/disser/disser.dtx index 61767fad42f..6757a7688ff 100644 --- a/Master/texmf-dist/source/latex/disser/disser.dtx +++ b/Master/texmf-dist/source/latex/disser/disser.dtx @@ -19,7 +19,7 @@ %% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% %<*driver> -\ProvidesFile{disser.drv}[2009/04/08 1.1.1 Document class for dissertations.] +\ProvidesFile{disser.drv}[2009/06/11 1.1.2 Document class for dissertations] \documentclass{ltxdoc} \usepackage[a4paper, includeheadfoot, nohead, mag=1000, @@ -27,11 +27,12 @@ \usepackage{ifpdf,indentfirst,tabularx,doc} \usepackage{makeidx,longtable,color} -\definecolor{darkblue}{rgb}{0,0,.5} +\definecolor{darkblue}{rgb}{0,0,.6} \ifpdf \usepackage[pdftex,hyperindex,unicode]{hyperref} \usepackage{cmap} + \usepackage{hypdestopt} \else \usepackage[hypertex]{hyperref} \fi @@ -45,13 +46,11 @@ bookmarksopen = true, bookmarksnumbered = true, bookmarksopenlevel = 2, - colorlinks = true, linkcolor = black, + colorlinks = true, linkcolor = darkblue, citecolor = darkblue, filecolor = darkblue, menucolor = darkblue, urlcolor = darkblue } -\ifpdf\usepackage{hypdestopt}\fi - \IfFileExists{pscyr.sty}{% \usepackage{pscyr} \renewcommand\ttdefault{cmtt} @@ -124,7 +123,7 @@ % % %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% % -% \title{|disser| "--- класс \LaTeX{} для оформления диссертаций} +% \title{|disser| "--- пакет для оформления диссертаций} % \date{Версия \fileversion\\[6pt]\filedate} % \author{Станислав Кручинин\\[6pt] % \normalsize E-mail: @@ -133,27 +132,29 @@ % % \maketitle % -% \section{Обзор документации} +% \section*{Обзор документации} % -% Документация пакета |disser| включает следующие файлы: +% Документация пакета |disser| состоит из следующих файлов: % -% \begingroup % \begin{deflist}{README, README.ru} -% \item[\href{file:manual.pdf}{Manual.pdf}] Руководство пользователя. -% \item[README, README.ru] Информация о сборке и установке пакета (текстовые файлы). +% \item[\href{file:manual.pdf}{manual.pdf}] Руководство пользователя. +% \item[README, README.ru] Информация о сборке и установке пакета +% (текстовые файлы). % \item[ChangeLog] История версий (текстовый файл). % \end{deflist} -% \endgroup +% % Документированные исходные тексты: % \begin{deflist}{disser-bst.dtx} -% \item[\href{file:disser.pdf}{disser.dtx}] Исходный текст класса |disser| (данный файл). +% \item[\href{file:disser.pdf}{disser.dtx}] Исходный текст класса |disser| +% (данный файл). % \item[\href{file:gost732.pdf}{gost732.dtx}] % Исходный текст класса класса |gost732| для оформления документов в % соответствии с ГОСТ 7.32-2001. % \item[\href{file:disser-bst.pdf}{disser-bst.dtx}] -% Стиль библиографических ссылок. +% Исходный текст стилей библиографии |disser.bst| и |disser-s.bst|. % \end{deflist} % +% \clearpage % \tableofcontents % % \section{Исходный текст класса}\parindent=0pt @@ -162,10 +163,10 @@ %<*disser> \NeedsTeXFormat{LaTeX2e} -\ProvidesClass{disser}[2008/04/08 1.1.1 Document class for dissertations.] +\ProvidesClass{disser}[2009/06/11 1.1.2 Document class for dissertations] % \end{macrocode} -% Расширение включаемых в |disser.cls| файлов. +% Расширение файлов, включаемых в |disser.cls|. % \begin{macrocode} \def\substyle@ext{.rtx} @@ -176,6 +177,7 @@ % \DescribePackage{ifpdf}\index{Пакеты!\verb*+ifpdf+} % \begin{macrocode} \RequirePackage{ifpdf} + % \end{macrocode} % \item Разрешено оставлять одну колонку при двухколонном наборе. % \begin{macrocode} @@ -224,6 +226,7 @@ % \item Поддержка математических шрифтов MathTime Pro (отключено). % \begin{macrocode} \newif\ifDis@mtpro\Dis@mtprofalse + % \end{macrocode} % \end{itemize} % @@ -232,29 +235,24 @@ % Подключение пакета |kvoptions| для обработки опций в формате % |ключ = значение|. % \begin{macrocode} - \RequirePackage{kvoptions}[2006/08/17] % \end{macrocode} % Подключение пакета |hyperref| и необходимых настроек. % \begin{macrocode} \DeclareOption{href}{\Dis@hreftrue} - % \end{macrocode} % Подключение пакета |subfig| и необходимых настроек. % \begin{macrocode} \DeclareOption{subf}{\Dis@subftrue} - % \end{macrocode} % Отображение УДК на титульном листе. % \begin{macrocode} \DeclareOption{libcat}{\Dis@libcattrue} - % \end{macrocode} % Отображение подписей диссертанта и ученого секретаря. % \begin{macrocode} \DeclareOption{facsimile}{\Dis@facsimiletrue} - % \end{macrocode} % Не подключать пакеты |amsmath|, |amsfonts|, |amssymb|. % \begin{macrocode} @@ -420,7 +418,7 @@ % \end{macrocode} % Выполнение опций по умолчанию. % \begin{macrocode} -\ExecuteOptions{a4paper,14pt,oneside,titlepage,onecolumn,final,openany} +\ExecuteOptions{a4paper,14pt,oneside,titlepage,onecolumn,final,openany,candidate} % \end{macrocode} % Выполнение пользовательских опций. % \begin{macrocode} @@ -448,8 +446,6 @@ % \subsection{Настройка шрифтов} % \subsubsection{Определение размеров} % -% Эти вещи должны быть в стандартных классах. -% Ради таких незначительных отличий не стоило городить |extarticle|, |extreport|, |extbook|. % \begin{macrocode} \def\EC@family#1#2#3#4#5{% \DeclareFontShape{#1}{#2}{#3}{#4}% @@ -513,8 +509,6 @@ % % \subsubsection{Старые команды изменения начертания шрифтов (без NFSS)} % -% Опять же, не ясно, почему все это вынесено в классы, а не входит в ядро. -% % Изменение начертания в текстовом режиме. % \begin{macrocode} \DeclareOldFontCommand{\rm}{\normalfont\rmfamily}{\mathrm} @@ -531,21 +525,28 @@ \DeclareRobustCommand*\mit{\@fontswitch\relax\mathnormal} % \end{macrocode} +% Команда, объединяющая |\newlength| и |\setlength|. +% \DescribeMacro{\deflength}\index{Макросы!\verb*+\deflength+} +% \begin{macrocode} +\providecommand\deflength[2]{\newlength{#1}\setlength{#1}{#2}} + +% \end{macrocode} % -% \subsection{Параметры основного текста} +% \subsection{Параметры текста} % % \DescribeMacro{\lineskip}\index{Расстояния!\verb*+\lineskip+} % \DescribeMacro{\normallineskip}\index{Расстояния!\verb*+\normallineskip+} -% Вертикальный интервал между строками. Упоминаемый здесь и далее макрос |\p@| -% определяет стандартную единицу длины. По умолчанию она равна английскому пункту (pt). +% Вертикальный интервал между строками. Упоминаемый здесь и далее макрос +% |\p@| определяет стандартную единицу длины. По умолчанию она равна +% английскому пункту (pt). % \begin{macrocode} \setlength\lineskip{1\p@} \setlength\normallineskip{1\p@} + % \end{macrocode} -% -% \DescribeMacro{\singlespacing}\index{Макросы!\verb*+\singlespacing+} +% \DescribeMacro{\singlespacing} \index{Макросы!\verb*+\singlespacing+} % \DescribeMacro{\onehalfspacing}\index{Макросы!\verb*+\onehalfspacing+} -% \DescribeMacro{\doublespacing}\index{Макросы!\verb*+\doublespacing+} +% \DescribeMacro{\doublespacing} \index{Макросы!\verb*+\doublespacing+} % Характерные величины межстрочнах интервалов. % \begin{macrocode} \newcommand\singlespacing {\renewcommand\baselinestretch{1}\normalsize} @@ -555,6 +556,13 @@ % Межстрочный интервал по умолчанию. % \begin{macrocode} \onehalfspacing + +% \end{macrocode} +% \DescribeMacro{\parindent}\index{Расстояния!\verb*+\parindent+} +% Абзацный отступ. +% \begin{macrocode} +\setlength\parindent{1cm} + % \end{macrocode} % Интервал между абзацами (добавляется к межстрочному). % \DescribeMacro{\parskip}\index{Расстояния!\verb*+\parskip+} @@ -567,6 +575,7 @@ % \DescribeMacro{\columnsep}\index{Расстояния!\verb*+\columnsep+} % \begin{macrocode} \setlength\columnsep{10\p@} + % \end{macrocode} % % Ширина разделителя (линии) между колонками текста (по умолчанию его нет). @@ -575,33 +584,24 @@ \setlength\columnseprule{0\p@} % \end{macrocode} -% Описание структуры заголовков. -% \begin{itemize} -% \item в тексте, -% \DescribeMacro{\@seccntformat}\index{Макросы!\verb*+"\"@seccntformat+} -% \begin{macrocode} -\def\@seccntformat#1{% - \csname prethe#1\endcsname% - \csname the#1\endcsname% - \csname postthe#1\endcsname% -} -% \end{macrocode} -% \item в Содержании. -% \DescribeMacro{\@tocseccntformat}\index{Макросы!\verb*+"\"@tocseccntformat+} -% \begin{macrocode} -\def\@tocseccntformat#1{% - \csname tocprethe#1\endcsname% - \csname tocthe#1\endcsname% - \csname tocpostthe#1\endcsname% -} - -% \end{macrocode} -% \end{itemize} % Характерные величины штрафов. Штраф --- мера <<красоты>> разбиения % абзаца на строки. Чем больше величина, тем менее красиво. % \begin{macrocode} \@lowpenalty 51 \@medpenalty 151 \@highpenalty 301 + +% \end{macrocode} +% Всегда ставить отступ в первой строке первого абзаца. +% \begin{macrocode} +\let\@afterindentfalse\@afterindenttrue +\@afterindenttrue + +% \end{macrocode} +% Перенос в словах с дефисом. +% \begin{macrocode} +\lccode`\-=`\- +\defaulthyphenchar=127 + %</disser> % \end{macrocode} diff --git a/Master/texmf-dist/source/latex/disser/disser.ins b/Master/texmf-dist/source/latex/disser/disser.ins index e228fbdc2ba..9be2772c2db 100644 --- a/Master/texmf-dist/source/latex/disser/disser.ins +++ b/Master/texmf-dist/source/latex/disser/disser.ins @@ -52,6 +52,7 @@ This file is part of the disser package. \clsfile{gost732} \nopostamble \file{disser.bst}{\from{disser-bst.dtx}{disser-bst}} + \file{disser-s.bst}{\from{disser-bst.dtx}{disser-s-bst}} } %\def\npostamble{}\usepostamble\npostamble \endbatchfile diff --git a/Master/texmf-dist/source/latex/disser/doctor.dtx b/Master/texmf-dist/source/latex/disser/doctor.dtx index 98fd74da174..5bf6b770de0 100644 --- a/Master/texmf-dist/source/latex/disser/doctor.dtx +++ b/Master/texmf-dist/source/latex/disser/doctor.dtx @@ -14,20 +14,15 @@ % \DescribeMacro{\fifthskip}\index{Расстояния!\verb*+\fifthskip+} % \begin{macrocode} \newlength\firstskip -\newlength\secondskip -\newlength\thirdskip -\newlength\fourthskip -\newlength\fifthskip - \ifDis@libcat \setlength\firstskip{1ex} \else \setlength\firstskip{4ex} \fi -\setlength\secondskip{3cm} -\setlength\thirdskip{1cm} -\setlength\fourthskip{1cm} -\setlength\fifthskip{1cm} +\deflength\secondskip{3cm} +\deflength\thirdskip{1cm} +\deflength\fourthskip{1cm} +\deflength\fifthskip{1cm} % \end{macrocode} % Шрифты элементов титульного листа. diff --git a/Master/texmf-dist/source/latex/disser/env.dtx b/Master/texmf-dist/source/latex/disser/env.dtx index 18fc0f82d2d..2c419560422 100644 --- a/Master/texmf-dist/source/latex/disser/env.dtx +++ b/Master/texmf-dist/source/latex/disser/env.dtx @@ -56,6 +56,7 @@ \fi }{\if@twocolumn\else\endquotation\fi} \fi + % \end{macrocode} % \DescribeEnv{quotation}\index{Окружения!\verb*+quotation+} % \subsubsection{Цитирование} @@ -69,6 +70,7 @@ } \item\relax }{\endlist} + % \end{macrocode} % \DescribeEnv{quote}\index{Окружения!\verb*+quote+} % \subsubsection{Выдержка} @@ -77,6 +79,7 @@ \list{}{\rightmargin\leftmargin} \item\relax }{\endlist} + % \end{macrocode} % \DescribeEnv{titlepage}\index{Окружения!\verb*+titlepage+} % \subsubsection{Титульный лист} @@ -93,6 +96,7 @@ \if@restonecol\twocolumn\else\newpage\fi \if@twoside\else\setcounter{page}\@ne\fi } + % \end{macrocode} % % \DescribeEnv{figure}\index{Окружения!\verb*+figure+} @@ -111,7 +115,7 @@ \newenvironment{table*}{\@dblfloat{table}}{\end@dblfloat} % \end{macrocode} % -% \subsubsection{Окружения типа <<теорема>>} +% \subsubsection{Генератор окружений типа <<теорема>>} % % \DescribeMacro{\newtheorem}\index{Макросы!\verb*+\newtheorem+} % Переопределяем |\newtheorem|, так чтобы автоматически создавались @@ -143,7 +147,7 @@ % \end{macrocode} % Стиль опционального аргумента (текста в скобках после заголовка и номера). % \begin{macrocode} - \global\@namedef{oparg#1style}{\rm} + \global\@namedef{oparg#1style}{\upshape} % \end{macrocode} % Символы, окружающие опциональный аргумент (по умолчанию --- круглые скобки). % \begin{macrocode} @@ -168,19 +172,20 @@ \@opargbegintheorem{#1}{#2}{#3}\ignorespaces} \def\@begintheorem#1#2{\trivlist - \item[\hskip \labelsep{\csname the#1style\endcsname #2\ % - \csname the#1\endcsname\unskip% - \csname postthe#1\endcsname}]% - \csname #1style\endcsname} + \item[\hskip\labelsep% + {\csname the#1style\endcsname #2\ % + \csname the#1\endcsname\unskip\csname postthe#1\endcsname}]% + \csname #1style\endcsname% +} \def\@opargbegintheorem#1#2#3{\trivlist - \item[\hskip \labelsep{% - {\csname the#1style\endcsname #2}\ % - \csname the#1\endcsname\ % + \item[\hskip\labelsep% + {\csname the#1style\endcsname #2\ \csname the#1\endcsname}\ % {\csname oparg#1style\endcsname% \csname preoparg#1\endcsname #3% - \csname postoparg#1\endcsname}}]% - \csname #1style\endcsname} + \csname postoparg#1\endcsname}]% + \csname #1style\endcsname% +} \def\@endtheorem{\endtrivlist} diff --git a/Master/texmf-dist/source/latex/disser/floats.dtx b/Master/texmf-dist/source/latex/disser/floats.dtx index 68564074eab..73115b45b46 100644 --- a/Master/texmf-dist/source/latex/disser/floats.dtx +++ b/Master/texmf-dist/source/latex/disser/floats.dtx @@ -86,14 +86,12 @@ % \DescribeMacro{\abovecaptionskip}\index{Расстояния!\verb*+\abovecaptionskip+} % Вертикальный интервал перед подписью. % \begin{macrocode} -\newlength\abovecaptionskip -\setlength\abovecaptionskip{10\p@} +\deflength\abovecaptionskip{10\p@} % \end{macrocode} % \DescribeMacro{\belowcaptionskip}\index{Расстояния!\verb*+\belowcaptionskip+} % Вертикальный интервал за подписью. % \begin{macrocode} -\newlength\belowcaptionskip -\setlength\belowcaptionskip{0\p@} +\deflength\belowcaptionskip{0\p@} % \end{macrocode} % \DescribeMacro{\captionlabeldelim}\index{Макросы!\verb*+\captionlabeldelim+} % Разделитель метки (постоянная часть + номер) и текста подписи. @@ -136,12 +134,12 @@ % \end{macrocode} % \DescribeMacro{\fps@figure} -% Описатель положения плавающих объектов типа |figure|. +% Дескриптор положения плавающих объектов типа |figure|. % \begin{macrocode} \def\fps@figure{tbp} % \end{macrocode} % \DescribeMacro{\ftype@figure} -% Номер типа, ассоциированный с |figure|. +% Номер типа плавающего объекта |figure|. % \begin{macrocode} \def\ftype@figure{1} % \end{macrocode} diff --git a/Master/texmf-dist/source/latex/disser/footnote.dtx b/Master/texmf-dist/source/latex/disser/footnote.dtx index eda861efbac..515e6e2dd03 100644 --- a/Master/texmf-dist/source/latex/disser/footnote.dtx +++ b/Master/texmf-dist/source/latex/disser/footnote.dtx @@ -10,16 +10,56 @@ % % \subsection{Сноска} % +% \end{macrocode} +% \DescribeMacro{\thefootnote}\index{Макросы!\verb+\thefootnote+} +% Формат счетчика сносок. +% \begin{macrocode} +\def\thefootnote{\@arabic\c@footnote} + +% \end{macrocode} +% \DescribeMacro{\thempfootnote}\index{Макросы!\verb+\thempfootnote+} +% Формат счетчика сносок внутри окружения |minipage|. +% \begin{macrocode} +\def\thempfootnote{{\itshape\@alph\c@mpfootnote}} + +% \end{macrocode} % \DescribeMacro{\footnoterule}\index{Макросы!\verb+\footnoterule+} -% Горизонтальная линия, отделяющая сноску. +% Команда, рисующая линию. % \begin{macrocode} -\renewcommand\footnoterule{% +\def\footnoterule{% \kern-3\p@\hrule\@width.4\columnwidth\kern2.6\p@ } + +% \end{macrocode} +% \DescribeMacro{\prethefootnote}\index{Макросы!\verb+\prethefootnote+} +% \DescribeMacro{\postthefootnote}\index{Макросы!\verb+\postthefootnote+} +% \DescribeMacro{\prefootnotetext}\index{Макросы!\verb+\prefootnotetext+} +% Дополнительный текст до и после номера сноски, перед текстом сноски. +% \begin{macrocode} +\providecommand\prethefootnote{} +\providecommand\postthefootnote{} +\providecommand\prefootnote{\;} +% \end{macrocode} +% \DescribeMacro{\footnoteindent}\index{Расстояния!\verb+\footnoteindent+} +% \begin{macrocode} +\deflength{\footnoteindent}{\parindent} + +% \end{macrocode} +% \DescribeMacro{\@makefnmark}\index{Макросы!\verb+\@makefnmark+} +% Формат метки сноски. +% \begin{macrocode} +\def\@makefnmark{\hbox{\prethefootnote% +\@textsuperscript{\normalfont\@thefnmark}% +\postthefootnote}} + +% \end{macrocode} +% \DescribeMacro{\@makefntext}\index{Макросы!\verb+\@makefntext+} +% Команда, создающая текст сноски. +% \begin{macrocode} \newcommand\@makefntext[1]{% - \parindent 1em% - \noindent - \hb@xt@1.8em{\hss\@makefnmark}#1 + \noindent\hspace{\footnoteindent}% + \@makefnmark\prefootnote #1 } + %</footnote> % \end{macrocode} diff --git a/Master/texmf-dist/source/latex/disser/gost732.dtx b/Master/texmf-dist/source/latex/disser/gost732.dtx index 63eff10bf97..9f69893c5b4 100644 --- a/Master/texmf-dist/source/latex/disser/gost732.dtx +++ b/Master/texmf-dist/source/latex/disser/gost732.dtx @@ -20,7 +20,7 @@ %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% %<*driver> -\ProvidesFile{gost732.drv}[2007/11/29 1.0.1 GOST 7.32-2001 implementation.] +\ProvidesFile{gost732.drv}[2009/06/19 1.1.2 GOST 7.32-2001 implementation] \documentclass{ltxdoc} \usepackage[a4paper, includeheadfoot, nohead, mag=1000, @@ -29,7 +29,7 @@ \usepackage[cp1251]{inputenc} \usepackage[english,russian]{babel} \usepackage{ifpdf,indentfirst,color} -\definecolor{darkblue}{rgb}{0,0,.5} +\definecolor{darkblue}{rgb}{0,0,.6} \ifpdf \usepackage[% pdftex, @@ -51,7 +51,7 @@ \fi \hypersetup{ - colorlinks = true, linkcolor = black, + colorlinks = true, linkcolor = darkblue, citecolor = darkblue, filecolor = darkblue, menucolor = darkblue, urlcolor = darkblue } @@ -66,7 +66,6 @@ \renewcommand\rmdefault{ftm} }{} } -\IfFileExists{url.sty}{\RequirePackage{url}}{\newcommand\url{\texttt}} \MakeShortVerb{\|} @@ -83,7 +82,8 @@ % % %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% % -% \title{Подкласс для оформления документов в соответствии с ГОСТ 7.32-2001} +% \title{\texttt{gost732} --- класс для оформления документов в соответствии +% с ГОСТ 7.32-2001} % \date{Версия \fileversion\\[6pt]\filedate} % \author{Станислав Кручинин\\[6pt] % \normalsize E-mail: @@ -96,19 +96,20 @@ % % \section{Введение} % -% Насколько известно автору, на данный момент отсутствуют какие-либо ГОСТы, -% регламентирующие структуру и правила оформления диссертаций. Наиболее -% подходящим среди существующих стандартов следует считать ГОСТ 7.32-2001 -% <<Отчет о научно-исследовательской работе>>, реализованный в настоящем -% классе. С другой стороны, количество кода, использованное для создания -% этого подкласса является демонстрацией эффективности высокоуровневых -% макросов класса |disser|. +% Насколько известно автору, на данный момент отсутствуют ГОСТы, +% регламентирующие структуру и правила оформления диссертаций. +% Диссертационные советы, как правило, не предъявляют каких-либо требований +% к форматированию, за исключением тех, что реализованы в классе |disser|. +% Однако, если возникнет вопрос о соответствии верстки диссертации каким-либо +% ГОСТам, то следует воспользоваться наиболее подходящим среди существующих +% стандартов --- ГОСТ~7.32-2001 <<Отчет о научно-исследовательской работе>>, +% который реализован в данном классе. % % \section{Исходный текст}\parindent=0pt % % \begin{macrocode} \NeedsTeXFormat{LaTeX2e}[1999/12/01] -\ProvidesClass{gost732}[2007/11/29 1.0.1 GOST 7.32-2001 implementation] +\ProvidesClass{gost732}[2009/06/19 1.1.2 GOST 7.32-2001 implementation] \DeclareOption*{\PassOptionsToClass{\CurrentOption}{disser}} \ProcessOptions\relax @@ -121,22 +122,23 @@ % \begin{macrocode} \renewcommand\tocprethechapter{} \renewcommand\tocpostthechapter{\@postskip} -\renewcommand\tocposttheappendix{\@postskip} - -\renewcommand\chapteralign{\raggedright} +\renewcommand\chapteralign{\centering} \renewcommand\thechapterfont{\Large\bfseries} -\renewcommand\prethechapter{\newpage} +\renewcommand\prethechapter{} \renewcommand\postthechapter{\@postskip} -\renewcommand\postchapter{\vskip 16\p@} +\renewcommand\afterchapter{\vskip 16\p@} \renewcommand\postthesection{\@postskip} \renewcommand\tocpostthesection{\@postskip} +\renewcommand\sectionindent{1cm} \renewcommand\postthesubsection{\@postskip} \renewcommand\tocpostthesubsection{\@postskip} +\renewcommand\subsectionindent{1cm} \renewcommand\postthesubsubsection{\@postskip} \renewcommand\tocpostthesubsubsection{\@postskip} +\renewcommand\subsubsectionindent{1cm} \renewcommand\posttheparagraph{\@postskip} \renewcommand\tocposttheparagraph{\@postskip} @@ -145,19 +147,42 @@ \renewcommand\tocpostthesubparagraph{\@postskip} % \end{macrocode} -% Изменение заголовка библиографии на <<Список литературы>>. +% Изменение стандартных заголовков. % \begin{macrocode} -\AtBeginDocument{% -\addto\captionsrussian{% +\AtBeginDocument{\addto\captionsrussian{% \def\bibname{% -\cyr\CYRS\cyrp\cyri\cyrs\cyro\cyrk\ % -\cyri\cyrs\cyrp\cyro\cyrl\cyrsftsn\cyrz\cyro\cyrv\cyra\cyrn\cyrn\cyrery\cyrh\ % -\cyri\cyrs\cyrt\cyro\cyrch\cyrn\cyri\cyrk\cyro\cyrv} +\cyr\CYRS\CYRP\CYRI\CYRS\CYRO\CYRK\ % +\CYRI\CYRS\CYRP\CYRO\CYRL\CYRSFTSN\CYRZ\CYRO\CYRV\CYRA\CYRN\CYRN\CYRERY\CYRH\ % +\CYRI\CYRS\CYRT\CYRO\CYRCH\CYRN\CYRI\CYRK\CYRO\CYRV} +\def\figurename{\cyr\CYRR\cyri\cyrs\cyru\cyrn\cyro\cyrk} +\def\appendixname{\cyr\CYRP\CYRR\CYRI\CYRL\CYRO\CYRZH\CYRE\CYRN\CYRI\CYRE} +\def\contentsname{\cyr\CYRS\CYRO\CYRD\CYRE\CYRR\CYRZH\CYRA\CYRN\CYRI\CYRE} }} +% \end{macrocode} +% Обозначения и сокращения. +% \begin{macrocode} +\renewcommand\defsname{% +\cyr\CYRO\CYRB\CYRO\CYRZ\CYRN\CYRA\CYRCH\CYRE\CYRN\CYRI\CYRYA\ % +\CYRI\ \CYRS\CYRO\CYRK\CYRR\CYRA\CYRSHCH\CYRE\CYRN\CYRI\CYRYA +} + +\renewcommand\defs{% + \nchapter{\defsname} +} \renewcommand\bibsection{% \nchapter{\bibname} } +\renewcommand\introname{% +\cyr\CYRV\CYRV\CYRE\CYRD\CYRE\CYRN\CYRI\CYRE +} +\renewcommand\reviewname{% +\cyr\CYRO\CYRB\CYRZ\CYRO\CYRR\ % +\CYRL\CYRI\CYRT\CYRE\CYRR\CYRA\CYRT\CYRU\CYRR\CYRERY +} +\renewcommand\conclusionname{% +\cyr\CYRZ\CYRA\CYRK\CYRL\CYRYU\CYRCH\CYRE\CYRN\CYRI\CYRE +} % \end{macrocode} % \subsection{Списки} % \subsubsection{Нумерованный список} @@ -197,5 +222,21 @@ \renewcommand\labelitemiv {\textperiodcentered} % \end{macrocode} +% +% \subsection{Подписи к плавающим объектам} +% \begin{macrocode} +\captionsetup{format=plain,justification=centering,labelsep=endash} +\captionsetup[longtable]{justification=raggedright,singlelinecheck=false} +\captionsetup[table]{justification=raggedright,singlelinecheck=false} + +% \end{macrocode} +% +% \subsection{Сноска} +% +% \begin{macrocode} +\renewcommand\postthefootnote{)} + +% \end{macrocode} +% % \Finale \endinput diff --git a/Master/texmf-dist/source/latex/disser/master.dtx b/Master/texmf-dist/source/latex/disser/master.dtx index 7cc00cdb399..27b2d0534fe 100644 --- a/Master/texmf-dist/source/latex/disser/master.dtx +++ b/Master/texmf-dist/source/latex/disser/master.dtx @@ -13,17 +13,11 @@ % \DescribeMacro{\fourthskip}\index{Расстояния!\verb*+\fourthskip+} % \DescribeMacro{\fifthskip}\index{Расстояния!\verb*+\fifthskip+} % \begin{macrocode} -\newlength\firstskip -\newlength\secondskip -\newlength\thirdskip -\newlength\fourthskip -\newlength\fifthskip - -\setlength\firstskip{1ex} -\setlength\secondskip{1ex} -\setlength\thirdskip{1ex} -\setlength\fourthskip{-1cm} -\setlength\fifthskip{0ex} +\deflength\firstskip{1ex} +\deflength\secondskip{1ex} +\deflength\thirdskip{1ex} +\deflength\fourthskip{-1cm} +\deflength\fifthskip{0ex} % \end{macrocode} % Шрифты элементов титульного листа. diff --git a/Master/texmf-dist/source/latex/disser/part.dtx b/Master/texmf-dist/source/latex/disser/part.dtx index 775740a43d5..633d63b225d 100644 --- a/Master/texmf-dist/source/latex/disser/part.dtx +++ b/Master/texmf-dist/source/latex/disser/part.dtx @@ -9,14 +9,6 @@ % \end{macrocode} % \subsection{Часть} % -% Как уже говорилось во Введении, одной из основных проблем \LaTeX{} является -% отсутствие простого способа настройки формата заголовков и соответствующих -% им записей в Содержании. Любое изменение приходится вносить путем -% переопределения громоздких низкоуровневых макросов. Класс |disser| -% устраняет эту проблему путем введения высокоуровневых макросов для всех -% основных параметров формата заголовков и записей в автоматически формируемых -% списках. -% % \subsubsection{Параметры формата записи в Содержании} % % \DescribeMacro{\tocprethepart}\index{Макросы!\verb*+\tocprethepart+} @@ -85,6 +77,29 @@ % % \subsubsection{Низкоуровневые команды} % +% Описание структуры заголовков. +% \begin{itemize} +% \item в тексте, +% \DescribeMacro{\@seccntformat}\index{Макросы!\verb*+"\"@seccntformat+} +% \begin{macrocode} +\def\@seccntformat#1{% + \csname prethe#1\endcsname% + \csname the#1\endcsname% + \csname postthe#1\endcsname% +} + +% \end{macrocode} +% \item в Содержании. +% \DescribeMacro{\@tocseccntformat}\index{Макросы!\verb*+"\"@tocseccntformat+} +% \begin{macrocode} +\def\@tocseccntformat#1{% + \csname tocprethe#1\endcsname% + \csname tocthe#1\endcsname% + \csname tocpostthe#1\endcsname% +} + +% \end{macrocode} +% \end{itemize} % \DescribeMacro{\part}\index{Макросы!\verb*+\part+} % Интерфейс. % \begin{macrocode} @@ -167,8 +182,7 @@ % \DescribeMacro{\l@part} % Низкоуровневая команда, создающая запись в Содержании. % \begin{macrocode} -\newcommand*\l@part[2] -{% +\newcommand*\l@part[2]{% \ifnum \c@tocdepth >-2\relax \addpenalty{-\@highpenalty}% \addvspace{2.25em \@plus\p@}% diff --git a/Master/texmf-dist/source/latex/disser/sections.dtx b/Master/texmf-dist/source/latex/disser/sections.dtx index 0f1c918d666..fca34184ffd 100644 --- a/Master/texmf-dist/source/latex/disser/sections.dtx +++ b/Master/texmf-dist/source/latex/disser/sections.dtx @@ -12,6 +12,7 @@ % \subsubsection{Section} % % \paragraph{Параметры формата записи в Содержании} +% % \DescribeMacro{\tocprethesection}\index{Макросы!\verb*+\tocprethesection+} % \DescribeMacro{\tocpostthesection}\index{Макросы!\verb*+\tocpostthesection+} % \DescribeMacro{\tocsectionfill}\index{Макросы!\verb*+\tocsectionfill+} @@ -39,6 +40,7 @@ % \end{macrocode} % \paragraph{Параметры формата в тексте} +% % \DescribeMacro{\sectionfont}\index{Макросы!\verb*+\sectionfont+} % \DescribeMacro{\prethesection}\index{Макросы!\verb*+\prethesection+} % \DescribeMacro{\postthesection}\index{Макросы!\verb*+\postthesection+} @@ -72,6 +74,7 @@ % \end{macrocode} % \subsubsection{Subsection} % \paragraph{Параметры формата записи в Содержании} +% % \DescribeMacro{\tocprethesubsection}\index{Макросы!\verb*+\tocprethesubsection+} % \DescribeMacro{\tocpostthesubsection}\index{Макросы!\verb*+\tocpostthesubsection+} % \DescribeMacro{\tocsubsectionfill}\index{Макросы!\verb*+\tocsubsectionfill+} @@ -94,6 +97,7 @@ % \end{macrocode} % \paragraph{Параметры формата в тексте} +% % \DescribeMacro{\subsectionfont}\index{Макросы!\verb*+\subsectionfont+} % \DescribeMacro{\prethesubsection}\index{Макросы!\verb*+\prethesubsection+} % \DescribeMacro{\postthesubsection}\index{Макросы!\verb*+\postthesubsection+} @@ -115,6 +119,7 @@ % \end{macrocode} % \subsubsection{Subsubsection} % \paragraph{Параметры формата записи в Содержании} +% % \DescribeMacro{\tocprethesubsubsection}\index{Макросы!\verb*+\tocprethesubsubsection+} % \DescribeMacro{\tocpostthesubsubsection}\index{Макросы!\verb*+\tocpostthesubsubsection+} % \DescribeMacro{\tocsubsubsectionfill}\index{Макросы!\verb*+\tocsubsubsectionfill+} @@ -139,7 +144,7 @@ % \end{macrocode} % \paragraph{Параметры формата в тексте} -% +% % \DescribeMacro{\subsubsectionfont}\index{Макросы!\verb*+\subsubsectionfont+} % \DescribeMacro{\prethesubsubsection}\index{Макросы!\verb*+\prethesubsubsection+} % \DescribeMacro{\postthesubsubsection}\index{Макросы!\verb*+\postthesubsubsection+} @@ -189,6 +194,7 @@ % \end{macrocode} % \paragraph{Параметры формата в тексте} +% % \DescribeMacro{\paragraphfont}\index{Макросы!\verb*+\paragraphfont+} % % \DescribeMacro{\pretheparagraph}\index{Макросы!\verb*+\pretheparagraph+} @@ -212,6 +218,7 @@ % \end{macrocode} % \subsubsection{Subparagraph} % \paragraph{Параметры формата записи в Содержании} +% % \DescribeMacro{\tocprethesubparagraph}\index{Макросы!\verb*+\tocprethesubparagraph+} % \DescribeMacro{\tocpostthesubparagraph}\index{Макросы!\verb*+\tocpostthesubparagraph+} % \DescribeMacro{\tocsubparagraphfill}\index{Макросы!\verb*+\tocsubparagraphfill+} @@ -236,6 +243,7 @@ % \end{macrocode} % \paragraph{Параметры формата в тексте} +% % \DescribeMacro{\subparagraphfont}\index{Макросы!\verb*+\subparagraphfont+} % % \DescribeMacro{\prethesubparagraph}\index{Макросы!\verb*+\prethesubparagraph+} @@ -252,15 +260,59 @@ \providecommand\postthesubparagraph{.~} \providecommand\subparagraphindent{\parindent} +\providecommand\subparagraphalign{\raggedright} \providecommand\beforesubparagraph{3.25ex \@plus1ex \@minus .2ex} \providecommand\aftersubparagraph{-1em} -\providecommand\subparagraphalign{\raggedright} % \end{macrocode} % \subsubsection{Низкоуровневые команды} % +% \DescribeMacro{\@startsection}\index{Макросы!\verb+"\"@startsection+} +% Команда, создающая заголовки секций. +% \begin{macrocode} +\def\@startsection#1#2{% + \if@noskipsec \leavevmode \fi + \par + \@tempskipa \csname before#1\endcsname\relax + \@afterindenttrue + \ifdim \@tempskipa <\z@ + \@tempskipa -\@tempskipa \@afterindentfalse + \fi + \if@nobreak + \everypar{}% + \else + \addpenalty\@secpenalty\addvspace\@tempskipa + \fi + \@ifstar + {\@ssect{\csname #1indent\endcsname}% + {\csname before#1\endcsname}{\csname after#1\endcsname}% + {\csname #1font\endcsname\csname #1align\endcsname}}% + {\@dblarg{\@sect{#1}{#2}{\csname #1indent\endcsname}% + {\csname before#1\endcsname}{\csname after#1\endcsname}% + {\csname #1font\endcsname\csname #1align\endcsname}}}% +} + +% \end{macrocode} +% \DescribeMacro{\@ssect}\index{Макросы!\verb+"\"@ssect+} +% Для ненумеруемых секций. +% \begin{macrocode} +\def\@ssect#1#2#3#4#5{% + \@tempskipa #3\relax + \ifdim \@tempskipa>\z@ + \begingroup + #4{% + \@hangfrom{\hskip #1}% + \interlinepenalty \@M #5\@@par}% + \endgroup + \else + \def\@svsechd{#4{\hskip #1\relax #5}}% + \fi + \@xsect{#3}% +} + +% \end{macrocode} % \DescribeMacro{\@sect}\index{Макросы!\verb+"\"@sect+} -% Обобщенная версия команды, создающей заголовки секций. +% Для нумеруемых секций. % \begin{macrocode} \def\@sect#1#2#3#4#5#6[#7]#8{% \ifnum #2>\c@secnumdepth @@ -295,24 +347,27 @@ \fi \@xsect{#5}% } + % \end{macrocode} % % \DescribeMacro{\@tocline}\index{Макросы!\verb+"\"@tocline+} % Обобщенная версия команды, добавляющей запись в Содержание. % \begin{macrocode} -\def\@tocline#1#2#3#4#5#6{% +\def\@tocline#1#2#3#4{% \ifnum #2>\c@tocdepth \else \vskip \z@ \@plus.2\p@ - {\leftskip #3\relax \rightskip \@tocrmarg \parfillskip -\rightskip - \parindent #3\relax\@afterindenttrue + {\leftskip \csname toc#1indent\endcsname\relax% + \rightskip \@tocrmarg \parfillskip -\rightskip + \parindent \csname toc#1indent\endcsname\relax% + \@afterindenttrue \interlinepenalty\@M \leavevmode - \@tempdima #4\relax + \@tempdima \csname toc#1nameindent\endcsname\relax \csname toc#1font\endcsname \advance\leftskip \@tempdima \null\nobreak\hskip -\leftskip - {#5}\nobreak + {#3}\nobreak \csname toc#1fillfont\endcsname \csname toc#1fill\endcsname\hfill - \nobreak\hb@xt@\@pnumwidth{\hfil\csname toc#1numfont\endcsname #6}% + \nobreak\hb@xt@\@pnumwidth{\hfil\csname toc#1numfont\endcsname #4}% \par% }% \fi @@ -320,43 +375,40 @@ % \end{macrocode} % +% Команда, создающие секции в тексте и в Содержании. % \DescribeMacro{\section}\index{Макросы!\verb+\section+} +% \DescribeMacro{\l@section}\index{Макросы!\verb+\l@section+} +% \begin{macrocode} +\newcommand\section{\@startsection{section}{1}} +\newcommand*\l@section{\@tocline{section}{1}} + +% \end{macrocode} % \DescribeMacro{\subsection}\index{Макросы!\verb+\subsection+} +% \DescribeMacro{\l@subsection}\index{Макросы!\verb+\l@subsection+} +% \begin{macrocode} +\newcommand\subsection{\@startsection{subsection}{2}} +\newcommand*\l@subsection{\@tocline{subsection}{2}} + +% \end{macrocode} % \DescribeMacro{\subsubsection}\index{Макросы!\verb+\subsubsection+} +% \DescribeMacro{\l@subsubsection}\index{Макросы!\verb+\l@subsubsection+} +% \begin{macrocode} +\newcommand\subsubsection{\@startsection{subsubsection}{3}} +\newcommand*\l@subsubsection{\@tocline{subsubsection}{3}} + +% \end{macrocode} % \DescribeMacro{\paragraph}\index{Макросы!\verb+\paragraph+} -% \DescribeMacro{\subparagraph}\index{Макросы!\verb+\subparagraph+} -% Интерфейс для создания секций. +% \DescribeMacro{\l@paragraph}\index{Макросы!\verb+\l@paragraph+} % \begin{macrocode} +\newcommand\paragraph{\@startsection{paragraph}{4}} +\newcommand*\l@paragraph{\@tocline{paragraph}{4}} -\newcommand\section{\@startsection{section}{1} - {\sectionindent}{\beforesection}% - {\aftersection}{\sectionfont\sectionalign}} -\newcommand*\l@section{\@tocline{section}{1}{\tocsectionindent}% -{\tocsectionnameindent}} - -\newcommand\subsection{\@startsection{subsection}{2} - {\subsectionindent}{\beforesubsection}% - {\aftersubsection}{\subsectionfont\subsectionalign}} -\newcommand*\l@subsection{\@tocline{subsection}{2}{\tocsubsectionindent}% -{\tocsubsectionnameindent}} - -\newcommand\subsubsection{\@startsection{subsubsection}{3} - {\subsubsectionindent}{\beforesubsubsection}% - {\aftersubsubsection}{\subsubsectionfont\subsubsectionalign}} -\newcommand*\l@subsubsection{\@tocline{subsubsection}{3}{\tocsubsubsectionindent}% -{\tocsubsubsectionnameindent}} - -\newcommand\paragraph{\@startsection{paragraph}{4} - {\paragraphindent}{\beforeparagraph}% - {\afterparagraph}{\paragraphfont\paragraphalign}} -\newcommand*\l@paragraph{\@tocline{paragraph}{4}{\tocparagraphindent}% -{\tocparagraphnameindent}} - -\newcommand\subparagraph{\@startsection{subparagraph}{5} - {\subparagraphindent}{\beforesubparagraph}% - {\aftersubparagraph}{\subparagraphfont\subparagraphalign}} -\newcommand*\l@subparagraph{\@tocline{subparagraph}{5}{\tocsubparagraphindent}% -{\tocsubparagraphnameindent}} +% \end{macrocode} +% \DescribeMacro{\subparagraph}\index{Макросы!\verb+\subparagraph+} +% \DescribeMacro{\l@subparagraph}\index{Макросы!\verb+\l@subparagraph+} +% \begin{macrocode} +\newcommand\subparagraph{\@startsection{subparagraph}{5}} +\newcommand*\l@subparagraph{\@tocline{subparagraph}{5}} %</sections> % \end{macrocode} diff --git a/Master/texmf-dist/source/latex/disser/titledefs.dtx b/Master/texmf-dist/source/latex/disser/titledefs.dtx index 53216611c41..24005ae5382 100644 --- a/Master/texmf-dist/source/latex/disser/titledefs.dtx +++ b/Master/texmf-dist/source/latex/disser/titledefs.dtx @@ -233,7 +233,7 @@ % \end{macrocode} % \DescribeMacro{\commonsect}\index{Макросы!\verb*+\commonsect+} % \DescribeMacro{\postcommonsect}\index{Макросы!\verb*+\postcommonsect+} -% Стиль заголовков общего текста <<Введения>> и автореферата. +% Формат заголовков общего текста <<Введения>> и автореферата. % \begin{macrocode} \let\commonsect=\textbf \def\postcommonsect{\ } @@ -299,14 +299,14 @@ % \DescribeMacro{\introname}\index{Макросы!\verb*+\introname+} % \DescribeMacro{\intro}\index{Макросы!\verb*+\intro+} % \begin{macrocode} -\newcommand\introname{{\cyr\CYRV\cyrv\cyre\cyrd\cyre\cyrn\cyri\cyre}} +\newcommand\introname{\cyr\CYRV\cyrv\cyre\cyrd\cyre\cyrn\cyri\cyre} \newcommand\intro{\nchapter{\introname}} % \end{macrocode} % \item Заключение % \DescribeMacro{\conclusionname}\index{Макросы!\verb*+\conclusionname+} % \begin{macrocode} \newcommand\conclusionname{% -{\cyr\CYRZ\cyra\cyrk\cyrl\cyryu\cyrch\cyre\cyrn\cyri\cyre} +\cyr\CYRZ\cyra\cyrk\cyrl\cyryu\cyrch\cyre\cyrn\cyri\cyre } \newcommand\conclusion{\nchapter{\conclusionname}} % \end{macrocode} @@ -364,13 +364,13 @@ % Поле для записи даты. Для отображения произвольного года нужно % присвоить значение необязательному аргументу. % \begin{macrocode} -\newcommand\datefield[1][\number\year]{<<\rule[0pt]{1cm}{.5pt}\,>>% +\providecommand\datefield[1][\number\year]{<<\rule[0pt]{1cm}{.5pt}>>\ % \rule[0pt]{3cm}{0.5pt}\ #1~\yearname} % \end{macrocode} % \DescribeMacro{\mkcommonsect}\index{Макросы!\verb*+\mkcommonsect+} % Генератор команд для общего текста диссертации и автореферата. % \begin{macrocode} -\newcommand\mkcommonsect[3]{% +\providecommand\mkcommonsect[3]{% \@namedef{#1head}{#2} \@namedef{#1section}{\commonsect{\expandafter\csname #1head\endcsname}\postcommonsect} \@namedef{#1text}{#3} @@ -381,7 +381,7 @@ % \DescribeMacro{\facsimile}\index{Макросы!\verb*+\facsimile+} % Команда для включения графического файла с подписью диссертанта. % \begin{macrocode} -\newcommand\facsimile{\vskip 6pt\includegraphics[width=3cm]{facsimile}} +\providecommand\facsimile{\vskip 6pt\includegraphics[width=3cm]{facsimile}} %</titledefs> % \end{macrocode} diff --git a/Master/texmf-dist/source/latex/disser/titlepage.dtx b/Master/texmf-dist/source/latex/disser/titlepage.dtx index f19d039d1e3..eb5af19d55d 100644 --- a/Master/texmf-dist/source/latex/disser/titlepage.dtx +++ b/Master/texmf-dist/source/latex/disser/titlepage.dtx @@ -10,6 +10,11 @@ % \begin{macrocode} \newcommand\today{} +% \end{macrocode} +% Подключение констант и команд, используемых для верстки титульного листа. +% \begin{macrocode} +\input{titledefs\substyle@ext} + \if@titlepage % \end{macrocode} % @@ -30,7 +35,6 @@ % \begin{macrocode} \newcommand\cdsep{~-- } - \input{titledefs\substyle@ext} % \end{macrocode} % \DescribeMacro{\maketitle}\index{Макросы!\verb*+\maketitle+} % \begin{macrocode} @@ -77,32 +81,6 @@ % \DescribeMacro{\maketitle}\index{Макросы!\verb*+\maketitle+} % \begin{macrocode} \newcommand\maketitle{% - \par - \begingroup - \renewcommand\thefootnote{\@fnsymbol\c@footnote}% - \def\@makefnmark{\rlap{\@textsuperscript{\normalfont\@thefnmark}}}% - \long\def\@makefntext##1{% - \parindent 1em\noindent - \hb@xt@1.8em{\hss\@textsuperscript{\normalfont\@thefnmark}}##1% - }% - \if@twocolumn - \ifnum \col@number=\@ne - \@maketitle - \else - \twocolumn[\@maketitle]% - \fi - \else - \newpage -% \end{macrocode} -% Предотвращает размещение плавающих объектов вверху страницы. -% \begin{macrocode} - \global\@topnum\z@ - \@maketitle - \fi - \thispagestyle{plain} - \endgroup - \setcounter{footnote}{0}% - \global\let\thanks\relax \global\let\maketitle\relax \global\let\@maketitle\relax |