diff options
Diffstat (limited to 'Master/texmf-dist/source/latex/disser')
-rw-r--r-- | Master/texmf-dist/source/latex/disser/chapter.dtx | 22 | ||||
-rw-r--r-- | Master/texmf-dist/source/latex/disser/custom.dtx | 88 | ||||
-rw-r--r-- | Master/texmf-dist/source/latex/disser/disser.dtx | 28 | ||||
-rw-r--r-- | Master/texmf-dist/source/latex/disser/disser.ins | 2 | ||||
-rw-r--r-- | Master/texmf-dist/source/latex/disser/gost705.dtx | 2739 | ||||
-rw-r--r-- | Master/texmf-dist/source/latex/disser/gost732.dtx | 12 | ||||
-rw-r--r-- | Master/texmf-dist/source/latex/disser/titledefs.dtx | 4 |
7 files changed, 37 insertions, 2858 deletions
diff --git a/Master/texmf-dist/source/latex/disser/chapter.dtx b/Master/texmf-dist/source/latex/disser/chapter.dtx index dd054126c89..984d935219a 100644 --- a/Master/texmf-dist/source/latex/disser/chapter.dtx +++ b/Master/texmf-dist/source/latex/disser/chapter.dtx @@ -10,7 +10,7 @@ % % \subsection{Глава} % -% \subsubsection{Параметры формата записи в оглавлении} +% \subsubsection{Параметры формата главы в оглавлении} % % \DescribeMacro{\tocprethechapter}\index{Макросы!\verb*+\tocprethechapter+} % \DescribeMacro{\tocpostthechapter}\index{Макросы!\verb*+\tocpostthechapter+} @@ -29,7 +29,7 @@ \providecommand\tocchapternumfont{\normalfont} % \end{macrocode} -% \subsubsection{Параметры формата в тексте} +% \subsubsection{Параметры формата нумеруемой главы в тексте} % \DescribeMacro{\thechapteralign}\index{Макросы!\verb*+\thechapteralign+} % \DescribeMacro{\thechapterfont}\index{Макросы!\verb*+\thechapterfont+} % \DescribeMacro{\prethechapter}\index{Макросы!\verb*+\prethechapter+} @@ -53,6 +53,20 @@ \setlength{\chapterindent}{0\p@} % \end{macrocode} +% \subsubsection{Параметры формата ненумеруемой главы в тексте} +% \DescribeMacro{\schapteralign}\index{Макросы!\verb*+\schapteralign+} +% \DescribeMacro{\schapterfont}\index{Макросы!\verb*+\schapterfont+} +% \DescribeMacro{\beforeschapter}\index{Макросы!\verb*+\beforeschapter+} +% \DescribeMacro{\afterschapter}\index{Макросы!\verb*+\afterschapter+} +% \begin{macrocode} +\providecommand\schapteralign{\chapteralign} +\providecommand\schapterfont{\chapterfont} +\providecommand\beforeschapter{\beforechapter} +\providecommand\afterschapter{\afterchapter} +\newlength{\schapterindent} +\setlength{\schapterindent}{0\p@} + +% \end{macrocode} % % \subsubsection{Низкоуровневые команды} % @@ -133,9 +147,9 @@ % \begin{macrocode} \def\@makeschapterhead#1{{% \parindent\z@ - \normalfont\hskip\chapterindent% + \normalfont\hskip\schapterindent% \interlinepenalty\@M - \chapteralign\chapterfont\beforechapter #1\afterchapter + \schapteralign\schapterfont\beforeschapter #1\afterschapter }} % \end{macrocode} diff --git a/Master/texmf-dist/source/latex/disser/custom.dtx b/Master/texmf-dist/source/latex/disser/custom.dtx index 3bdcb1e3840..f585d74e8f2 100644 --- a/Master/texmf-dist/source/latex/disser/custom.dtx +++ b/Master/texmf-dist/source/latex/disser/custom.dtx @@ -9,90 +9,7 @@ % \end{macrocode} % \subsection{Подключение и настройка сторонних пакетов} % -% \DescribePackage{amsmath} -% \DescribePackage{amssymb} -% \DescribePackage{amsfonts} -% \begin{macrocode} -\ifDis@ams - \usepackage[intlimits]{amsmath} - \usepackage{amssymb,amsfonts} -\fi - -% \end{macrocode} -% Подключение шрифта Times вместо Computer Modern Roman. -% \begin{macrocode} -\ifDis@times -% \end{macrocode} -% Реализация команд |\English| и |\Eng| без переключения кодировок шрифта. -% Это необходимо для корректного отображения символа переноса строки при -% использовании пакетов \pkg{pscyr} и \pkg{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} -% \DescribePackage{mtpro2} -% \begin{macrocode} - \IfFileExists{mtpro2.sty}{ - \usepackage[subscriptcorrection,nofontinfo]{mtpro2} - }{ -% \DescribePackage{mtpro} - \IfFileExists{mtpro.sty}{ - \usepackage[subscriptcorrection,nofontinfo,boldalphabet]{mtpro} - }{ - \PackageWarning{disser}% - {Unable to find mtpro2 or mtpro package. Math font is unchanged.} - } - } - } - \else -% \end{macrocode} -% \DescribePackage{newtxmath} -% \begin{macrocode} - \AtEndOfPackage{% - \IfFileExists{newtxmath.sty}{ - \usepackage[varg,cmbraces,cmintegrals]{newtxmath} - }{ - \PackageWarning{disser}% - {Unable to find txfonts package. Font is unchanged.} - } - } - \fi - \AtEndOfPackage{% - \IfFileExists{pscyr.sty}{ -% \end{macrocode} -% \DescribePackage{pscyr} -% Установка Times как шрифта по умолчанию, выбор стандартного моноширинного -% шрифта. -% \begin{macrocode} - \usepackage{pscyr} - \renewcommand\rmdefault{ftm} - \renewcommand\ttdefault{cmtt} - }{ - \IfFileExists{cyrtimes.sty}{ -% \end{macrocode} -% \DescribePackage{cyrtimes} -% Вместо \pkg{pscyr} может быть использован пакет \pkg{cyrtimes}, входящий в -% состав дистрибутива \TeX Live. -% \begin{macrocode} - \usepackage{cyrtimes} - }{ - \PackageWarning{disser}% - {Unable to find pscyr or cyrtimes package. Font is unchanged.} - } - } - } -\fi - -% \end{macrocode} -% Более естественные символы интегралов из шрифтов семейства Euler. +% Прямые символы интегралов из шрифтов семейства Euler. % \begin{macrocode} \ifDis@fixint \DeclareSymbolFont{EulerExtension}{U}{euex}{m}{n} @@ -215,8 +132,9 @@ % \DescribePackage{subcaption} % \begin{macrocode} \ifDis@subf - \usepackage[config,font=small,labelsep=period]{caption} + \usepackage[font=small,labelsep=period]{caption} \usepackage[list=true,subrefformat=parens]{subcaption} + \captionsetup{compatibility=false} % \end{macrocode} % Формат счетчика. % \begin{macrocode} diff --git a/Master/texmf-dist/source/latex/disser/disser.dtx b/Master/texmf-dist/source/latex/disser/disser.dtx index 25652a8f366..92ca65b3466 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}[2016/06/26 1.4.0 Document class for dissertations] +\ProvidesFile{disser.drv}[2017/03/03 1.5.0 Document class for dissertations] \documentclass{ltxdoc} \usepackage[a4paper,includeheadfoot,nohead,mag=1000, @@ -169,9 +169,6 @@ % \item[\href{file:gost732.pdf}{gost732.dtx}] % Исходный текст класса \pkg{gost732} для оформления документов в % соответствии с ГОСТ 7.32-2001. -% \item[\href{file:gost705.pdf}{gost705.dtx}] -% Исходный текст стилей библиографии \pkg{gost705.bst} и -% \pkg{gost705s.bst}. % \end{deflist} % % \clearpage @@ -183,7 +180,7 @@ %<*disser> \NeedsTeXFormat{LaTeX2e} -\ProvidesClass{disser}[2016/06/26 1.4.0 Document class for dissertations] +\ProvidesClass{disser}[2017/03/03 1.4.1 Document class for dissertations] % \end{macrocode} % Подключение пакета \pkg{kvoptions} для обработки опций в формате @@ -244,11 +241,6 @@ % \begin{macrocode} \newif\ifDis@facsimile\Dis@facsimilefalse % \end{macrocode} -% \item Подключение пакетов \pkg{amsmath}, \pkg{amsfonts}, \pkg{amssymb} -% (включено). -% \begin{macrocode} -\newif\ifDis@ams\Dis@amstrue -% \end{macrocode} % \item Подключение \pkg{hyperref} (отключено). % \begin{macrocode} \newif\ifDis@href\Dis@hreffalse @@ -301,10 +293,6 @@ % \begin{macrocode} \DeclareOption{facsimile}{\Dis@facsimiletrue} % \end{macrocode} -% Не подключать пакеты \pkg{amsmath}, \pkg{amsfonts}, \pkg{amssymb}. -% \begin{macrocode} -\DeclareOption{noams}{\Dis@amsfalse} -% \end{macrocode} % Подключение пакета \pkg{natbib} и необходимых настроек. % \begin{macrocode} \DeclareOption{natbib}{\Dis@natbibtrue} @@ -395,15 +383,6 @@ % \begin{macrocode} \DeclareOption{fleqn}{\input{fleqn.clo}} % \end{macrocode} -% Использовать в тексте и формулах шрифт Times вместо Computer Modern -% Roman. -% \begin{macrocode} -\DeclareOption{times}{\Dis@timestrue} -% \end{macrocode} -% Использовать математические шрифты MathTime Pro. -% \begin{macrocode} -\DeclareOption{mtpro}{\Dis@mtprotrue} -% \end{macrocode} % Если указана эта опция, то блоки текста в списке литературы будут печататься % на новых строках и с отступом. % \begin{macrocode} @@ -448,6 +427,7 @@ } \DeclareOption{candidate}{% \Dis@bachelorfalse + \Dis@specialistfalse \Dis@masterfalse \Dis@candidatetrue \Dis@doctorfalse @@ -455,6 +435,7 @@ } \DeclareOption{doctor}{% \Dis@bachelorfalse + \Dis@specialistfalse \Dis@masterfalse \Dis@candidatefalse \Dis@doctortrue @@ -462,6 +443,7 @@ } \DeclareOption{autoref}{% \Dis@bachelorfalse + \Dis@specialistfalse \Dis@masterfalse \Dis@candidatefalse \Dis@doctorfalse diff --git a/Master/texmf-dist/source/latex/disser/disser.ins b/Master/texmf-dist/source/latex/disser/disser.ins index e0ece32ef57..e4c61ef38af 100644 --- a/Master/texmf-dist/source/latex/disser/disser.ins +++ b/Master/texmf-dist/source/latex/disser/disser.ins @@ -53,8 +53,6 @@ This file is part of the disser package. \clsfile{gost732} \nopostamble \usedir{bibtex/bst/disser}% - \file{gost705.bst}{\from{gost705.dtx}{gost705}} - \file{gost705s.bst}{\from{gost705.dtx}{gost705s}} } \endbatchfile \endinput diff --git a/Master/texmf-dist/source/latex/disser/gost705.dtx b/Master/texmf-dist/source/latex/disser/gost705.dtx deleted file mode 100644 index eef65bff23b..00000000000 --- a/Master/texmf-dist/source/latex/disser/gost705.dtx +++ /dev/null @@ -1,2739 +0,0 @@ -% \iffalse meta-comment -% -% This bibliography style attempts to format bibliography according to -% GOST R 7.0.5-2008 with some 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 -H and csf file supporting cyrillic. -% -% bibtex8 -H -c <encoding>.csf <your_document> -% -% Copyright (C) Stanislav Kruchinin -% -% This work may be distributed and/or modified under the -% conditions of the LaTeX Project Public License, either -% version 1.3c of this license or (at your option) any later -% version. This version of this license is in -% http://www.latex-project.org/lppl/lppl-1-3c.txt -% and the latest version of this license is in -% http://www.latex-project.org/lppl.txt -% and version 1.3 or later is part of all distributions of -% LaTeX version 2005/12/01 or later. -% -% This work has the LPPL maintenance status "maintained". -% -% Current Maintainer of this work is Stanislav Kruchinin. -% -% This work consists of the main source file gost705.dtx -% and the derived files -% gost705.bst, gost705s.bst, gost705.pdf. -% -% Distribution: -% CTAN:macros/latex/contrib/disser/src/gost705.dtx -% -% Unpacking: -% (a) If disser.ins present: -% latex disser.ins -% (b) Without disser.ins: -% tex gost705.dtx -% -% Documentation: -% latex gost705.dtx; ... -% -% Programm calls to get the documentation (example): -% pdflatex gost705.dtx -% makeindex -r -s dtx.ist gost705 -% pdflatex gost705.dtx -% pdflatex gost705.dtx -% -% Installation: -% TDS:bibtex/bst/disser/ -% TDS:doc/latex/disser/ -% TDS:source/latex/disser/ -% -%<*ignore> -\begingroup - \catcode123=1 % - \catcode125=2 % - \def\x{LaTeX2e}% -\expandafter\endgroup -\ifcase 0\ifx\install y1\fi\expandafter - \ifx\csname processbatchFile\endcsname\relax\else1\fi - \ifx\fmtname\x\else 1\fi\relax -\else\csname fi\endcsname -%</ignore> -%<*install> -\input docstrip.tex -\Msg{************************************************************************} -\Msg{* Installation} -\Msg{* gost705: Format bibliography according to GOST R 7.0.5-2008} -\Msg{************************************************************************} - -\keepsilent -\askforoverwritefalse - -\let\MetaPrefix\relax -\preamble - -This is a generated file. - -This bibliography style attempts to format bibliography according to -GOST R 7.0.5-2008 with some conventional modifications. - -Based on style gost71u.bst by Maksym Polyakov. - -For the Russian or German bibliographic entries you need to create field - language = {russian} or language = {german}. - -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 -H and csf file supporting cyrillic. - -bibtex8 -H -c <encoding>.csf <your_document> - -Copyright (C) Stanislav Kruchinin - -This work may be distributed and/or modified under the -conditions of the LaTeX Project Public License, either -version 1.3c of this license or (at your option) any later -version. This version of this license is in - http://www.latex-project.org/lppl/lppl-1-3c.txt -and the latest version of this license is in - http://www.latex-project.org/lppl.txt -and version 1.3 or later is part of all distributions of -LaTeX version 2005/12/01 or later. - -This work has the LPPL maintenance status "maintained". - -Current Maintainer of this work is Stanislav Kruchinin. - -This work consists of the main source file gost705.dtx -and the derived files - gost705.bst gost705s.bst gost705.pdf. - -\endpreamble -\let\MetaPrefix\DoubleperCent - -\generate{% - \nopostamble - \usedir{bibtex/bst/disser}% - \file{gost705.bst}{\from{gost705.dtx}{gost705}}% - \file{gost705s.bst}{\from{gost705.dtx}{gost705s}}% -} - -\catcode32=13\relax% active space -\let =\space% -\Msg{************************************************************************} -\Msg{*} -\Msg{* To finish the installation you have to move the following} -\Msg{* file into a directory searched by TeX:} -\Msg{*} -\Msg{* gost705.bst gost705s.bst} -\Msg{*} -\Msg{* To produce the documentation run the file `gost705.dtx'} -\Msg{* through LaTeX or pdfLaTeX.} -\Msg{*} -\Msg{* Happy TeXing!} -\Msg{*} -\Msg{************************************************************************} - -\endbatchfile -%</install> -%<*ignore> -\fi -%</ignore> -%<*driver> -\ProvidesFile{gost705.drv}% - [2016/06/18 1.4.0 Bibliography style for GOST R 7.0.5-2008] - -\documentclass{ltxdoc} -\usepackage[a4paper,includeheadfoot,nohead,mag=1000, - left=5.5cm,right=1cm,top=1.5cm,bottom=1.5cm]{geometry} -\usepackage{ifpdf,indentfirst,color,makeidx} -\definecolor{darkblue}{rgb}{0,0,.6} -\ifpdf - \usepackage[pdftex,hyperindex,unicode]{hyperref} - \usepackage{cmap} -\else - \usepackage[hypertex]{hyperref} -\fi - -\hypersetup{ - pdftitle = {Documented source code of gost705 style}, - pdfauthor = {Stanislav Kruchinin}, - pdfsubject = {gost705}, - pdfstartview = {FitH}, - pdfborder = {0 0 0}, - bookmarksopen = true, - bookmarksnumbered = true, - bookmarksopenlevel = 2, - colorlinks = true, linkcolor = darkblue, - citecolor = darkblue, filecolor = darkblue, - menucolor = darkblue, urlcolor = darkblue -} - -\usepackage[T2A]{fontenc} -\usepackage[cp1251]{inputenc} -\usepackage[english,russian]{babel} - -\MakeShortVerb{\|} - -\def\file#1{\texttt{#1}} -\def\pkg#1{\textsf{#1}} -\def\cmd#1{\texttt{#1}} - -\newcommand\DescribeFunction[1]{ - \DescribeMacro{#1}\index{\texttt{#1}} -} - -\makeatletter - \def\IndexParms{% - \parindent \z@ - \columnsep 15pt - \parskip 0pt plus 1pt - \rightskip 15pt - \mathsurround \z@ - \parfillskip=-15pt - \small - \def\@idxitem{\normalfont\par\hangindent 30pt\bfseries}% - \def\subitem{\normalfont\par\hangindent 30pt}% - \def\subsubitem{\normalfont\par\hangindent 30pt\hspace*{15pt}}% - \def\indexspace{\par\vspace{10pt plus 2pt minus 3pt}}% - } - \def\theindex{\@restonecoltrue\if@twocolumn\@restonecolfalse\fi - \columnseprule \z@ \columnsep 35\p@ - \twocolumn[\index@prologue]% - \IndexParms \let\item\@idxitem \ignorespaces} - \def\endtheindex{\if@restonecol\onecolumn\else\clearpage\fi} -\makeatother - -\setlength\hfuzz{20pt} -\hbadness=10000 - -\makeindex - -\begin{document} - \sloppy - \DocInput{gost705.dtx} - \IndexPrologue{\section{Предметный указатель}} - \printindex -\end{document} -%</driver> -% \fi -% -% \GetFileInfo{gost705.drv} -% -% \title{\pkg{gost705} и \pkg{gost705s} "--- стили оформления библиографии -% в соответствии с ГОСТ Р 7.0.5-2008} -% \date{Версия \fileversion\\[6pt]\filedate} -% \author{Станислав Кручинин\\[6pt] -% \normalsize E-mail: -% \href{mailto:stanislav.kruchinin@gmail.com} -% {\texttt{stanislav.kruchinin@gmail.com}}} -% -% \maketitle -% -% \tableofcontents -% -% \section{Исходный текст}\parindent=0pt -% \begin{macrocode} - -%<*gost705|gost705s> - -% \end{macrocode} -% \subsection{Поля, используемые в 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 - urldate - isbn - doi - archive - archivePrefix - primaryClass - eprint - authortype - media - location - ipc - holder - credits - reqnumber - reqdate - pubdate - publication - prdate - prnumber - prcountry - pagetotal - } - {} - { label } - -% \end{macrocode} -% \subsection{Объявление и инициализация переменных и констант} -% \begin{macrocode} -INTEGERS { output.state before.all mid.sentence after.sentence after.block -after.dblslash after.slash after.colon after.semicolon } - -% \end{macrocode} -% \DescribeFunction{init.state.consts} -% \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.colon := - #7 'after.semicolon := -} - -STRINGS { s t } - -STRINGS { curlanguage } - -% \end{macrocode} -% \subsection{Переключение языка} -% \DescribeFunction{change.language} -% \begin{macrocode} -FUNCTION {change.language} -{ - booklanguage empty$ - { "" } - { booklanguage 'curlanguage := - "\selectlanguageifdefined{" - curlanguage * - "}" * - } - if$ -} - -% \end{macrocode} -% \subsection{Вывод библиографической записи} -% \DescribeFunction{output.nonnull} -% \begin{macrocode} -FUNCTION {output.nonnull} -{ - swap$ - output.state mid.sentence = - { ", " * write$ } - { output.state after.block = - { add.period$ write$ - " \BibDash " write$ - newline$ - "\newblock " write$ - } - { output.state before.all = - 'write$ - { output.state after.dblslash = - { "~//" * change.language * " " * write$ } - { output.state after.slash = - { "~/ " * write$ } - { output.state after.colon = - { ": " * write$ } - { output.state after.semicolon = - { "; " * write$ } - { add.period$ " " * write$ } - if$ - } - if$ - } - if$ - } - if$ - } - if$ - } - if$ - mid.sentence 'output.state := - } - if$ -} - -% \end{macrocode} -% \DescribeFunction{output} -% \begin{macrocode} -FUNCTION {output} -{ - duplicate$ empty$ - 'pop$ - 'output.nonnull - if$ -} - -% \end{macrocode} -% \DescribeFunction{output.check} -% \begin{macrocode} -FUNCTION {output.check} -{ - 't := - duplicate$ empty$ - { pop$ "empty " t * " in " * cite$ * warning$ } - 'output.nonnull - if$ -} - -% \end{macrocode} -% \subsection{Вывод блоков и ограничителей} -% \DescribeFunction{fin.entry} -% \begin{macrocode} -FUNCTION {fin.entry} -{ - add.period$ - write$ - newline$ -} - -% \end{macrocode} -% \DescribeFunction{new.block} -% \begin{macrocode} -FUNCTION {new.block} -{ - output.state before.all = - 'skip$ - { after.block 'output.state := } - if$ -} - -% \end{macrocode} -% \DescribeFunction{new.dblslash} -% \begin{macrocode} -FUNCTION {new.dblslash} -{ - output.state before.all = - 'skip$ - { after.dblslash 'output.state := } - if$ -} - -% \end{macrocode} -% \DescribeFunction{new.slash} -% \begin{macrocode} -FUNCTION {new.slash} -{ - output.state before.all = - 'skip$ - { after.slash 'output.state := } - if$ -} - -% \end{macrocode} -% \DescribeFunction{new.colon} -% \begin{macrocode} -FUNCTION {new.colon} -{ - output.state before.all = - 'skip$ - { after.colon 'output.state := } - if$ -} - -% \end{macrocode} -% \DescribeFunction{new.semicolon} -% \begin{macrocode} -FUNCTION {new.semicolon} -{ - output.state before.all = - 'skip$ - { after.semicolon 'output.state := } - if$ -} - -% \end{macrocode} -% \DescribeFunction{new.sentence} -% \begin{macrocode} -FUNCTION {new.sentence} -{ - output.state after.block = - 'skip$ - { output.state before.all = - 'skip$ - { after.sentence 'output.state := } - if$ - } - if$ -} - -% \end{macrocode} -% \DescribeFunction{add.blank} -% \begin{macrocode} -FUNCTION {add.blank} { " " * before.all 'output.state := } - -% \end{macrocode} -% \DescribeFunction{not} -% \begin{macrocode} -FUNCTION {not} -{ - { #0 } - { #1 } - if$ -} - -% \end{macrocode} -% \DescribeFunction{and} -% \begin{macrocode} -FUNCTION {and} -{ - 'skip$ - { pop$ #0 } - if$ -} - -% \end{macrocode} -% \DescribeFunction{or} -% \begin{macrocode} -FUNCTION {or} -{ - { pop$ #1 } - 'skip$ - if$ -} - -% \end{macrocode} -% \DescribeFunction{non.stop} -% \begin{macrocode} -FUNCTION {non.stop} -{ - duplicate$ - "}" * add.period$ - #-1 #1 substring$ "." = -} - -% \end{macrocode} -% \DescribeFunction{new.block.checka} -% \begin{macrocode} -FUNCTION {new.block.checka} -{ - empty$ - 'skip$ - 'new.block - if$ -} - -% \end{macrocode} -% \DescribeFunction{new.block.checkb} -% \begin{macrocode} -FUNCTION {new.block.checkb} -{ - empty$ - swap$ empty$ - and - 'skip$ - 'new.block - if$ -} - -% \end{macrocode} -% \DescribeFunction{new.sentence.checka} -% \begin{macrocode} -FUNCTION {new.sentence.checka} -{ - empty$ - 'skip$ - 'new.sentence - if$ -} - -% \end{macrocode} -% \DescribeFunction{new.sentence.checkb} -% \begin{macrocode} -FUNCTION {new.sentence.checkb} -{ - empty$ - swap$ empty$ - and - 'skip$ - 'new.sentence - if$ -} - -% \end{macrocode} -% \DescribeFunction{field.or.null} -% \begin{macrocode} -FUNCTION {field.or.null} -{ - duplicate$ empty$ - { pop$ "" } - 'skip$ - if$ -} - -% \end{macrocode} -% \DescribeFunction{emphasize} -% \begin{macrocode} -FUNCTION {emphasize} -{ - duplicate$ empty$ - { pop$ "" } - { "\BibEmph{" swap$ * "}" * } - if$ -} - -% \end{macrocode} -% \DescribeFunction{space.word} -% \begin{macrocode} -FUNCTION {space.word} { " " swap$ * " " * } - -% \end{macrocode} -% \subsection{Общепринятые сокращения} -% \begin{macrocode} -FUNCTION {bbl.edby} % { "\bbledby{}" } -{ - curlanguage "english" = - { "Ed. by " } - { curlanguage "german" = - { "ed. " } - { curlanguage "russian" = - { "{\cyr\CYRP\cyro\cyrd\ \cyrr\cyre\cyrd.\ }" } - { "language is not defined: " language "edited by" * * - warning$ "edited by" } - if$ - } - if$ - } - if$ -} - -% \end{macrocode} -% \DescribeFunction{bbl.cmplr} -% \begin{macrocode} -FUNCTION {bbl.cmplr} -{ - curlanguage "english" = - { "Compiler " } - { curlanguage "german" = - { "Hrsg. " } - { curlanguage "russian" = - { "{\cyr\CYRS\cyro\cyrs\cyrt.\ }" } - { "language is not defined: " language "compiler" * * warning$ "compiler" } - if$ - } - if$ - } - if$ -} - -% \end{macrocode} -% \DescribeFunction{bbl.edition} -% \begin{macrocode} -FUNCTION {bbl.edition} % { "\bbledition{}" } -{ - curlanguage "english" = - { "edition" } - { curlanguage "german" = - { "Aufl." } - { curlanguage "russian" = - { "{\cyr\cyri\cyrz\cyrd.}" } - { "language is not defined: " language "edition" * * warning$ "edition" } - if$ - } - if$ - } - if$ -} - -% \end{macrocode} -% \DescribeFunction{bbl.vvolume} -% \begin{macrocode} -FUNCTION {bbl.vvolume} % { "\bblVolume{}" } -{ - curlanguage "english" = - { "Volume" } - { curlanguage "german" = - { "Band" } - { curlanguage "russian" = - { "{\cyr\CYRT\cyro\cyrm}" } - { "language is not defined: " language "Volume" * * warning$ "Volume" } - if$ - } - if$ - } - if$ -} - -% \end{macrocode} -% \DescribeFunction{bbl.vvol} -% \begin{macrocode} -FUNCTION {bbl.vvol} % { "\bblVol{}" } -{ - curlanguage "english" = - { "Vol." } - { curlanguage "german" = - { "Bd." } - { curlanguage "russian" = - { "{\cyr\CYRT.}" } - { "language is not defined: " language "Vol." * * warning$ "Vol." } - if$ - } - if$ - } - if$ -} - -% \end{macrocode} -% \DescribeFunction{bbl.iissue} -% \begin{macrocode} -FUNCTION {bbl.iissue} % { "\bblIssue{}" } -{ - curlanguage "english" = - { "Issue" } - { curlanguage "german" = - { "Heft" } - { curlanguage "russian" = - { "{\cyr\CYRV\cyrery\cyrp\cyru\cyrs\cyrk}" } - { "language is not defined: " language * warning$ "Issue" } - if$ - } - if$ - } - if$ -} - -% \end{macrocode} -% \DescribeFunction{bbl.iiss} -% \begin{macrocode} -FUNCTION {bbl.iiss} % { "\bblIss{}" } -{ - curlanguage "english" = - { "Iss." } - { curlanguage "german" = - { "H." } - { curlanguage "russian" = - { "{\cyr\CYRV\cyrery\cyrp.}" } - { "language is not defined: " language * warning$ "Iss." } - if$ - } - if$ - } - if$ -} - -% \end{macrocode} -% \DescribeFunction{bbl.of} -% \begin{macrocode} -FUNCTION {bbl.of} % { "\bblof{}" } -{ - curlanguage "english" = - { "of" } - { curlanguage "german" = - { "von" } - { curlanguage "russian" = - { "{\cyr\cyri\cyrz}" } - { "language is not defined: " language * warning$ "of" } - if$ - } - if$ - } - if$ -} - -% \end{macrocode} -% \DescribeFunction{bbl.etal} -% \begin{macrocode} -FUNCTION {bbl.etal} % { "\bblof{}" } -{ - curlanguage "english" = - { "et~al." } - { curlanguage "german" = - { "u.~a." } - { curlanguage "russian" = - { "{\cyr\cyri~\cyrd\cyrr.}" } - { "language is not defined: " language * warning$ "etal" } - if$ - } - if$ - } - if$ -} - -% \end{macrocode} -% \DescribeFunction{bbl.nnumber} -% \begin{macrocode} -FUNCTION {bbl.nnumber} % { "\bblNumber{}" } -{ - curlanguage "english" = - { "Number" } - { curlanguage "german" = - { "Heft" } - { curlanguage "russian" = - { "{\cyr\CYRN\cyro\cyrm\cyre\cyrr}" } - { "language is not defined: " language * warning$ "Number" } - if$ - } - if$ - } - if$ -} - -% \end{macrocode} -% \DescribeFunction{bbl.number} -% \begin{macrocode} -FUNCTION {bbl.number} % { "\bblnumber{}" } -{ - curlanguage "english" = - { "number" } - { curlanguage "german" = - { "Heft" } - { curlanguage "russian" = - { "{\cyr\cyrn\cyro\cyrm\cyre\cyrr}" } - { "language is not defined: " language * warning$ "number" } - if$ - } - if$ - } - if$ -} - -% \end{macrocode} -% \DescribeFunction{bbl.nr} -% \begin{macrocode} -FUNCTION {bbl.nr} % { "\bblno{}" } -{ - curlanguage "english" = - { "no." } - { curlanguage "german" = - { "H." } - { curlanguage "russian" = - { "{\cyr\textnumero}" } - { "language is not defined: " language * warning$ "no" } - if$ - } - if$ - } - if$ -} - -% \end{macrocode} -% \DescribeFunction{bbl.nnr} -% \begin{macrocode} -FUNCTION {bbl.nnr} % { "\bblno{}" } -{ - curlanguage "english" = - { "No." } - { curlanguage "german" = - { "H." } - { curlanguage "russian" = - { "{\cyr\textnumero}" } - { "language is not defined: " language * warning$ "No" } - if$ - } - if$ - } - if$ -} - -% \end{macrocode} -% \DescribeFunction{bbl.in} -% \begin{macrocode} -FUNCTION {bbl.in} % { "\bblin{}" } -{ - curlanguage "english" = - { "in" } - { curlanguage "german" = - { "in" } - { curlanguage "russian" = - { "{\cyr\cyrv}" } - { "language is not defined: " language * warning$ "in" } - if$ - } - if$ - } - if$ -} - -% \end{macrocode} -% \DescribeFunction{bbl.iin} -% \begin{macrocode} -FUNCTION {bbl.iin} % { "\bblIn{}" } -{ - curlanguage "english" = - { "In" } - { curlanguage "german" = - { "In" } - { curlanguage "russian" = - { "{\cyr\CYRV}" } - { "language is not defined: " language * warning$ "In" } - if$ - } - if$ - } - if$ -} - -% \end{macrocode} -% \DescribeFunction{bbl.pages} -% \begin{macrocode} -FUNCTION {bbl.pages} % { "\bblpp." } -{ - curlanguage "english" = - { "p." } - { curlanguage "german" = - { "S." } - { curlanguage "russian" = - { "{\cyr\cyrs.}" } - { "language is not defined: " language * warning$ "p." } - if$ - } - if$ - } - if$ -} - -% \end{macrocode} -% \DescribeFunction{bbl.page} -% \begin{macrocode} -FUNCTION {bbl.page} % { "\bblp." } -{ - curlanguage "english" = - { "p." } - { curlanguage "german" = - { "S." } - { curlanguage "russian" = - { "{\cyr\cyrs.}"} - { "language is not defined: " language * warning$ "p." } - if$ - } - if$ - } - if$ -} - -% \end{macrocode} -% \DescribeFunction{bbl.ppages} -% \begin{macrocode} -FUNCTION {bbl.ppages} % { "\bblPp." } -{ - curlanguage "english" = - { "P." } - { curlanguage "german" = - { "S." } - { curlanguage "russian" = - { "{\cyr\CYRS.}" } - { "language is not defined: " language * warning$ "P." } - if$ - } - if$ - } - if$ -} - -% \end{macrocode} -% \DescribeFunction{bbl.ppage} -% \begin{macrocode} -FUNCTION {bbl.ppage} % { "\bblP." } -{ - curlanguage "english" = - { "P." } - { curlanguage "german" = - { "S." } - { curlanguage "russian" = - { "{\cyr\CYRS.}" } - { "language is not defined: " language * warning$ "P." } - if$ - } - if$ - } - if$ -} - -% \end{macrocode} -% \DescribeFunction{bbl.techrep} -% \begin{macrocode} -FUNCTION {bbl.techrep} -{ - curlanguage "english" = - { "Tech.~Rep." } - { curlanguage "german" = - { "Tech.~Bericht" } - { curlanguage "russian" = - { "{\cyr\CYRT\cyre\cyrh.\ \cyrd\cyro\cyrk\cyrl\cyra\cyrd.}" } - { "language is not defined: " language * warning$ "Tech Rep" } - if$ - } - if$ - } - if$ -} - -% \end{macrocode} -% \DescribeFunction{bbl.mthesis} -% \begin{macrocode} -FUNCTION {bbl.mthesis} -{ - curlanguage "english" = - { "Master's thesis" } - { curlanguage "german" = - { "Diss.~Mag." } - { curlanguage "russian" = - { "{\cyr\CYRM\cyra\cyrg\cyri\cyrs\cyrt\cyre\cyrr\cyrs\cyrk\cyra\cyrya\ " - "\cyrd\cyri\cyrs\cyrs\cyre\cyrr\cyrt\cyra\cyrc\cyri\cyrya}" * } - { "language is not defined: " language * warning$ "Master thesis" } - if$ - } - if$ - } - if$ -} - -% \end{macrocode} -% \DescribeFunction{bbl.phdthesis} -% \begin{macrocode} -FUNCTION {bbl.phdthesis} -{ - curlanguage "english" = - { "Ph.\,D. thesis" } - { curlanguage "german" = - { "Diss.~Ph.\,D." } - { curlanguage "russian" = - { "{\cyr\CYRK\cyra\cyrn\cyrd\cyri\cyrd\cyra\cyrt\cyrs\cyrk\cyra\cyrya\ " - "\cyrd\cyri\cyrs\cyrs\cyre\cyrr\cyrt\cyra\cyrc\cyri\cyrya}" * } - { "language is not defined: " language * warning$ "PhD thesis" } - if$ - } - if$ - } - if$ -} - -% \end{macrocode} -% \DescribeFunction{bbl.dscithesis} -% \begin{macrocode} -FUNCTION {bbl.dscithesis} -{ - curlanguage "english" = - { "Dr.\,Sci. dissertation" } - { curlanguage "german" = - { "Diss.~Dr." } - { curlanguage "russian" = - { "{\cyr\CYRD\cyro\cyrk\cyrt\cyro\cyrr\cyrs\cyrk\cyra\cyrya\ " - "\cyrd\cyri\cyrs\cyrs\cyre\cyrr\cyrt\cyra\cyrc\cyri\cyrya}" * } - { "language is not defined: " language * warning$ "Dr. Sci. dissertation" } - if$ - } - if$ - } - if$ -} - -% \end{macrocode} -% \DescribeFunction{bbl.req} -% \begin{macrocode} -FUNCTION {bbl.req} -{ - curlanguage "english" = - { "req." } - { curlanguage "german" = - { "ang." } - { curlanguage "russian" = - { "{\cyr\cyrz\cyra\cyrya\cyrv\cyrl.}" } - { "language is not defined: " language * warning$ "req" } - if$ - } - if$ - } - if$ -} - -% \end{macrocode} -% \DescribeFunction{bbl.publ} -% \begin{macrocode} -FUNCTION {bbl.publ} -{ - curlanguage "english" = - { "publ." } - { curlanguage "german" = - { "ausg." } - { curlanguage "russian" = - { "{\cyr\cyro\cyrp\cyru\cyrb\cyrl.}" } - { "language is not defined: " language * warning$ "In" } - if$ - } - if$ - } - if$ -} - -% \end{macrocode} -% \DescribeFunction{bbl.prio} -% \begin{macrocode} -FUNCTION {bbl.prio} -{ - curlanguage "english" = - { "priority" } - { curlanguage "german" = - { "Prioritat" } - { curlanguage "russian" = - { "{\cyr\cyrp\cyrr\cyri\cyro\cyrr\cyri\cyrt\cyre\cyrt}" } - { "language is not defined: " language * warning$ "In" } - if$ - } - if$ - } - if$ -} - -% \end{macrocode} -% \subsection{Формат элементов библиографических ссылок} -% \begin{macrocode} -INTEGERS { nameptr namesleft numnames } - -% \end{macrocode} -% \DescribeFunction{format.names} -% \begin{macrocode} -FUNCTION {format.names} -{ - 's := - #1 'nameptr := - s num.names$ 'numnames := - numnames 'namesleft := - { namesleft #0 > } - { s nameptr - "{vv~}{ll}{~f.}{, 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$ -} - -% \end{macrocode} -% \DescribeFunction{format.names.rev} -% \begin{macrocode} -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$ -} - -% \end{macrocode} -% \DescribeFunction{format.authors} -% \begin{macrocode} -FUNCTION {format.authors} -{ - author empty$ - { "" } - { author format.names emphasize } - if$ -} - -% \end{macrocode} -% \DescribeFunction{format.bookauthors} -% \begin{macrocode} -FUNCTION {format.bookauthors} -{ - bookauthor empty$ - { "" } - { bookauthor format.names } - if$ -} - -% \end{macrocode} -% \DescribeFunction{format.authors.after} -% \begin{macrocode} -FUNCTION {format.authors.after} -{ - author empty$ - { "" } - { author format.names.rev } - if$ -} - -% \end{macrocode} -% \DescribeFunction{format.bookauthors.after} -% \begin{macrocode} -FUNCTION {format.bookauthors.after} -{ - bookauthor empty$ - { "" } - { bookauthor format.names.rev } - if$ -} - -% \end{macrocode} -% \DescribeFunction{format.editors.after} -% \begin{macrocode} -FUNCTION {format.editors.after} -{ - editor empty$ - { "" } - { bbl.edby editor format.names.rev * } - if$ -} - -% \end{macrocode} -% \DescribeFunction{format.compiler.after} -% \begin{macrocode} -FUNCTION {format.compiler.after} -{ - compiler empty$ - { "" } - { bbl.cmplr compiler format.names.rev * } - if$ -} - -% \end{macrocode} -% \DescribeFunction{format.title} -% \begin{macrocode} -FUNCTION {format.title} -{ - title empty$ - { "" } - { title } - if$ -} - -% \end{macrocode} -% \DescribeFunction{format.date} -% \begin{macrocode} -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$ -} - -% \end{macrocode} -% \DescribeFunction{output.address.publisher.date} -% \begin{macrocode} -FUNCTION {output.address.publisher.date} -{ - address empty$ - 'skip$ - { address output - publisher empty$ - 'skip$ - { new.colon } - if$ - } - if$ - publisher output - format.date output -} - -% \end{macrocode} -% \DescribeFunction{output.bibitem} -% \begin{macrocode} -FUNCTION {output.bibitem} -{ - newline$ - "\bibitem" "{" * write$ - cite$ write$ - "}" write$ - newline$ - language empty$ - { "english" 'curlanguage := } - { language 'curlanguage := } - if$ - "\selectlanguageifdefined{" write$ - curlanguage write$ - "}" write$ newline$ - "" - before.all 'output.state := -} - -% \end{macrocode} -% \DescribeFunction{n.dashify} -% \begin{macrocode} -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$ -} - -% \end{macrocode} -% \DescribeFunction{word.in} -% \begin{macrocode} -FUNCTION {word.in} { bbl.iin " " * } - -% \end{macrocode} -% \DescribeFunction{format.btitle} -% \begin{macrocode} -FUNCTION {format.btitle} { title } - -% \end{macrocode} -% \DescribeFunction{tie.or.space.connect} -% \begin{macrocode} -FUNCTION {tie.or.space.connect} -{ - duplicate$ text.length$ #3 < - { "~" } - { " " } - if$ - swap$ * * -} - -% \end{macrocode} -% \DescribeFunction{tie.connect} -% \begin{macrocode} -FUNCTION {tie.connect} { "~" swap$ * * } - -% \end{macrocode} -% \DescribeFunction{either.or.check} -% \begin{macrocode} -FUNCTION {either.or.check} -{ - empty$ - 'pop$ - { "can't use both " swap$ * " fields in " * cite$ * warning$ } - if$ -} - -% \end{macrocode} -% \DescribeFunction{format.bvolume} -% \begin{macrocode} -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$ -} - -% \end{macrocode} -% \DescribeFunction{format.number.series} -% \begin{macrocode} -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.sentence - bbl.iiss series tie.or.space.connect - ", " * bbl.nr - tie.or.space.connect - } - if$ - number tie.or.space.connect - } - if$ - } - { "" } - if$ -} - -% \end{macrocode} -% \DescribeFunction{is.num} -% \begin{macrocode} -FUNCTION {is.num} -{ - chr.to.int$ - duplicate$ "0" chr.to.int$ < not - swap$ "9" chr.to.int$ > not and -} - -% \end{macrocode} -% \DescribeFunction{extract.num} -% \begin{macrocode} -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$ -} - -% \end{macrocode} -% \DescribeFunction{convert.edition} -% \begin{macrocode} -FUNCTION {convert.edition} { edition } - -% \end{macrocode} -% \DescribeFunction{format.edition} -% \begin{macrocode} -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 } - -% \end{macrocode} -% \DescribeFunction{multi.page.check} -% \begin{macrocode} -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 -} - -% \end{macrocode} -% \DescribeFunction{format.pages} -% \begin{macrocode} -FUNCTION {format.pages} -{ - pages empty$ - { "" } - { pages multi.page.check - { bbl.ppages pages n.dashify tie.connect } - { bbl.ppage pages tie.connect } - if$ - } - if$ -} - -% \end{macrocode} -% \DescribeFunction{format.pages.page} -% \begin{macrocode} -FUNCTION {format.pages.page} -{ - pages empty$ - { numpages empty$ - { "" } - { numpages bbl.pages tie.connect } - if$ - } - { format.pages } - if$ -} - -% \end{macrocode} -% \DescribeFunction{format.vol.num.pages} -% \begin{macrocode} -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$ -} - -% \end{macrocode} -% \DescribeFunction{format.volume} -% \begin{macrocode} -FUNCTION {format.volume} -{ - volume empty$ - { "" } - { bbl.vvol volume tie.or.space.connect } - if$ -} - -% \end{macrocode} -% \DescribeFunction{format.number} -% \begin{macrocode} -FUNCTION {format.number} -{ number empty$ - { "" } - { bbl.nr number tie.or.space.connect } - if$ -} - -% \end{macrocode} -% \DescribeFunction{empty.misc.check} -% \begin{macrocode} -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$ -} - -% \end{macrocode} -% \DescribeFunction{format.thesis.type} -% \begin{macrocode} -FUNCTION {format.thesis.type} -{ - type empty$ - 'skip$ - { pop$ - type "t" change.case$ - } - if$ -} - -% \end{macrocode} -% \DescribeFunction{format.tr.number} -% \begin{macrocode} -FUNCTION {format.tr.number} -{ - type empty$ - { bbl.techrep } - 'type - if$ - number empty$ - { "t" change.case$ } - { number tie.or.space.connect } - if$ -} - -% \end{macrocode} -% \DescribeFunction{author.before} -% \begin{macrocode} -FUNCTION {author.before} -{ - author empty$ - 'skip$ - { format.authors output - new.sentence - } - if$ -} - -% \end{macrocode} -% \DescribeFunction{bookauthor.before} -% \begin{macrocode} -FUNCTION {bookauthor.before} -{ - bookauthor empty$ - 'skip$ - { format.bookauthors output - new.sentence - } - if$ -} - -% \end{macrocode} -% \DescribeFunction{author.after} -% \begin{macrocode} -FUNCTION {author.after} -{ - author empty$ - 'skip$ - { author num.names$ #3 > - { format.authors.after output - new.semicolon - } - 'skip$ - if$ - } - if$ -} - -% \end{macrocode} -% \DescribeFunction{bookauthor.after} -% \begin{macrocode} -FUNCTION {bookauthor.after} -{ - bookauthor empty$ - 'skip$ - { bookauthor num.names$ #3 > - { format.bookauthors.after output - new.semicolon - } - 'skip$ - if$ - } - if$ -} - -% \end{macrocode} -% \DescribeFunction{editor.organization.after} -% \begin{macrocode} -FUNCTION {editor.organization.after} -{ - compiler empty$ - 'skip$ - { format.compiler.after output - new.semicolon - } - if$ - editor empty$ - 'skip$ - { format.editors.after output - new.semicolon - } - if$ - organization empty$ - 'skip$ - { organization output - new.semicolon - } - if$ -} - -% \end{macrocode} -% \DescribeFunction{format.annote} -% \begin{macrocode} -FUNCTION {format.annote} -{ - annote empty$ - { "" } - { after.sentence 'output.state := - "\BibAnnote{" annote add.period$ * "}" * - } - if$ -} - -% \end{macrocode} -% \subsection{Создание гиперссылок} -% \DescribeFunction{format.url} -% \begin{macrocode} -FUNCTION {format.url} -{ - url empty$ - { "" } - { "\BibUrl{" url * "}" * } - if$ -} - -% \end{macrocode} -% \DescribeFunction{format.urldate} -% \begin{macrocode} -FUNCTION {format.urldate} -{ - urldate empty$ - { "" } - { add.blank - "\BibUrlDate{" urldate * "}" * - } - if$ -} - -% \end{macrocode} -% \DescribeFunction{output.url} -% \begin{macrocode} -FUNCTION {output.url} -{ - url empty$ - 'skip$ - { format.url output - format.urldate output - } - if$ -} - -% \end{macrocode} -% \DescribeFunction{format.isbn} -% \begin{macrocode} -FUNCTION {format.isbn} -{ - isbn empty$ - { "" } - { "ISBN:~\href{http://isbndb.com/search-all.html?kw=" isbn * - "}{" * isbn * "}" * - } - if$ -} - -% \end{macrocode} -% \DescribeFunction{add.doi.url} -% \begin{macrocode} -FUNCTION {add.doi.url} -{ duplicate$ empty$ - 'skip$ - { doi empty$ - { url empty$ - 'skip$ - { "\href{" url * "}{" * swap$ * "}" * } - if$ - } - { "\href{http://dx.doi.org/" doi * "}{" * swap$ * "}" * } - if$ - } - if$ -} - -% \end{macrocode} -% \DescribeFunction{format.eprint} -% \begin{macrocode} -FUNCTION {format.eprint} -{ eprint empty$ - { "" } - { primaryClass empty$ - { " \href{http://arxiv.org/abs/" eprint * "}" * - "{" * eprint * "}" * - } - { archivePrefix empty$ - { " \href{http://arxiv.org/abs/" eprint * "}" * - "{" * primaryClass * "/" * eprint * "}" * - } - { " \href{http://arxiv.org/abs/" eprint * "}" * - "{" * archivePrefix * ":" * primaryClass * "/" * eprint * "}" * - } - if$ - } - if$ - } - if$ -} - -% \end{macrocode} -% \DescribeFunction{add.number} -% \begin{macrocode} -FUNCTION {add.number} -{ duplicate$ empty$ - { "" } - { bbl.nr swap$ tie.or.space.connect } - if$ -} - -% \end{macrocode} -% \DescribeFunction{in.square.brackets} -% \begin{macrocode} -FUNCTION {in.square.brackets} -{ - duplicate$ empty$ - { pop$ "" } - { "[" swap$ * "]" * } - if$ -} - -% \end{macrocode} -% \DescribeFunction{in.round.brackets} -% \begin{macrocode} -FUNCTION {in.round.brackets} -{ - duplicate$ empty$ - { pop$ "" } - { "(" swap$ * ")" * } - if$ -} - -% \end{macrocode} -% \DescribeFunction{format.type.number} -% \begin{macrocode} -FUNCTION {format.type.number} -{ - type empty$ - { "" } - { - number empty$ - { "" } - { type number tie.or.space.connect } - if$ - } - if$ -} - -% \end{macrocode} -% \DescribeFunction{format.reqdate} -% \begin{macrocode} -FUNCTION {format.reqdate} -{ reqdate empty$ - { "" } - { bbl.req reqdate tie.or.space.connect } - if$ -} - -% \end{macrocode} -% \DescribeFunction{format.pubdate} -% \begin{macrocode} -FUNCTION {format.pubdate} -{ pubdate empty$ - { "" } - { bbl.publ pubdate tie.or.space.connect } - if$ -} - -% \end{macrocode} -% \DescribeFunction{format.prdate} -% \begin{macrocode} -FUNCTION {format.prdate} -{ prdate empty$ - { "" } - { bbl.prio prdate tie.or.space.connect } - if$ -} - -% \end{macrocode} -% \subsection{Описание типов библиографических ссылок} -% \DescribeFunction{article} -% \begin{macrocode} -FUNCTION {article} -{ - output.bibitem - author.before - format.title "title" output.check - new.dblslash - journal emphasize add.doi.url "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.eprint output - new.block - output.url - format.annote output - fin.entry -} - -% \end{macrocode} -% \DescribeFunction{book} -% \begin{macrocode} -FUNCTION {book} -{ - output.bibitem - author.before - format.btitle add.doi.url "title" output.check - new.slash - 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 - format.isbn output - new.block - note output - new.sentence - format.eprint output - new.block - output.url - format.annote output - fin.entry -} - -% \end{macrocode} -% \DescribeFunction{booklet} -% \begin{macrocode} -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.eprint output - new.block - output.url - format.annote output - fin.entry -} - -% \end{macrocode} -% \DescribeFunction{inbook} -% \begin{macrocode} -FUNCTION {inbook} -{ - output.bibitem - author.before - format.btitle add.doi.url "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 - format.isbn output - new.block - note output - new.sentence - format.eprint output - new.block - output.url - format.annote output - fin.entry -} - -% \end{macrocode} -% \DescribeFunction{incollection} -% \begin{macrocode} -FUNCTION {incollection} -{ - output.bibitem - author.before - new.sentence - format.title add.doi.url "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.block - format.eprint output - new.block - output.url - format.annote output - fin.entry -} - -% \end{macrocode} -% \DescribeFunction{inproceedings} -% \begin{macrocode} -FUNCTION {inproceedings} -{ - output.bibitem - author.before - new.sentence - format.title add.doi.url "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.colon - publisher output - format.date "year" output.check - } - if$ - new.block - format.pages.page output - new.block - note output - new.sentence - format.eprint output - new.block - output.url - format.annote output - fin.entry -} - -% \end{macrocode} -% \DescribeFunction{conference} -% \begin{macrocode} -FUNCTION {conference} { inproceedings } - -% \end{macrocode} -% \DescribeFunction{manual} -% \begin{macrocode} -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.eprint output - new.block - output.url - format.annote output - fin.entry -} - -% \end{macrocode} -% \DescribeFunction{mastersthesis} -% \begin{macrocode} -FUNCTION {mastersthesis} -{ - output.bibitem - format.authors "author" output.check - new.block - format.btitle add.doi.url "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.eprint output - new.block - output.url - format.annote output - fin.entry -} - -% \end{macrocode} -% \DescribeFunction{misc} -% \begin{macrocode} -FUNCTION {misc} -{ - output.bibitem - format.authors "author" output.check - new.block - format.title "title" output.check - new.block - howpublished output - new.block - format.date output - new.block - note output - new.sentence - format.eprint output - new.block - output.url - format.annote output - fin.entry -} - -% \end{macrocode} -% \DescribeFunction{phdthesis} -% \begin{macrocode} -FUNCTION {phdthesis} -{ - output.bibitem - format.authors "author" output.check - new.sentence - format.btitle add.doi.url "title" output.check - new.colon - 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.eprint output - new.block - output.url - format.annote output - fin.entry -} - -% \end{macrocode} -% \DescribeFunction{dscithesis} -% \begin{macrocode} -FUNCTION {dscithesis} -{ - output.bibitem - format.authors "author" output.check - new.sentence - format.btitle add.doi.url "title" output.check - new.colon - bbl.dscithesis 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.eprint output - new.block - output.url - format.annote output - fin.entry -} - -% \end{macrocode} -% \DescribeFunction{proceedings} -% \begin{macrocode} -FUNCTION {proceedings} -{ - output.bibitem - format.btitle add.doi.url "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.eprint output - new.block - output.url - format.annote output - fin.entry -} - -% \end{macrocode} -% \DescribeFunction{techreport} -% \begin{macrocode} -FUNCTION {techreport} -{ - output.bibitem - author.before - new.sentence - format.title add.doi.url "title" output.check - new.colon - format.tr.number output.nonnull - editor.organization.after - new.block - address output - new.colon - institution "institution" output.check - format.date "year" output.check - new.block - note output - new.sentence - format.eprint output - new.block - output.url - format.annote output - fin.entry -} - -% \end{macrocode} -% \DescribeFunction{patent} -% \begin{macrocode} -FUNCTION {patent} -{ - output.bibitem - title output.nonnull - add.blank - media in.square.brackets output - new.colon - format.type.number output - add.blank - location output - new.colon - ipc output - new.slash - format.authors.after "author" output.check - add.blank - authortype in.round.brackets output.nonnull - new.semicolon - holder output.nonnull - new.semicolon - credits output.nonnull - new.block - reqnumber add.number output - new.semicolon - format.reqdate output - new.semicolon - format.pubdate output - publication output - new.semicolon - format.prdate output - prnumber output - prcountry in.round.brackets output - new.block - note output - new.sentence - output.url - format.annote output - new.block - pagetotal output - fin.entry -} - -% \end{macrocode} -% \DescribeFunction{unpublished} -% \begin{macrocode} -FUNCTION {unpublished} -{ - output.bibitem - author.before - format.btitle add.doi.url "title" output.check - editor.organization.after - new.block - note "note" output.check - new.sentence - format.eprint output - new.block - output.url - format.annote output - fin.entry -} - -% \end{macrocode} -% \DescribeFunction{default.type} -% \begin{macrocode} -FUNCTION {default.type} { misc } - -% \end{macrocode} -% \subsection{Сокращения названий месяцев} -% \begin{macrocode} -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{}"} - -% \end{macrocode} -% \subsection{Сокращения названий журналов} -% \subsubsection{Физика и астрономия} -% Код данной секции создан на основе файла \file{physjour.mbs} пакета -% \pkg{custom-bib}. -% \begin{macrocode} -MACRO {aa}{"Astron. \& Astrophys."} -MACRO {aasup}{"Astron. \& Astrophys. Suppl. Ser."} -MACRO {aj} {"Astron. J."} -MACRO {aph} {"Acta Phys."} -MACRO {advp} {"Adv. Phys."} -MACRO {ajp} {"Amer. J. Phys."} -MACRO {ajm} {"Amer. J. Math."} -MACRO {amsci} {"Amer. Sci."} -MACRO {anofd} {"Ann. Fluid Dyn."} -MACRO {am} {"Ann. Math."} -MACRO {ap} {"Ann. Phys. (NY)"} -MACRO {adp} {"Ann. Phys. (Leipzig)"} -MACRO {ao} {"Appl. Opt."} -MACRO {apl} {"Appl. Phys. Lett."} -MACRO {app} {"Astroparticle Phys."} -MACRO {apj} {"Astrophys. J."} -MACRO {apjsup} {"Astrophys. J. Suppl."} -MACRO {apss} {"Astrophys. Space Sci."} -MACRO {araa} {"Ann. Rev. Astron. Astrophys."} -MACRO {baas} {"Bull. Amer. Astron. Soc."} -MACRO {baps} {"Bull. Amer. Phys. Soc."} -MACRO {cmp} {"Comm. Math. Phys."} -MACRO {cpam} {"Commun. Pure Appl. Math."} -MACRO {cppcf} {"Comm. Plasma Phys. \& Controlled Fusion"} -MACRO {cpc} {"Comp. Phys. Comm."} -MACRO {cqg} {"Class. Quant. Grav."} -MACRO {cra} {"C. R. Acad. Sci. A"} -MACRO {fed} {"Fusion Eng. \& Design"} -MACRO {ft} {"Fusion Tech."} -MACRO {grg} {"Gen. Relativ. Gravit."} -MACRO {ieeens} {"IEEE Trans. Nucl. Sci."} -MACRO {ieeeps} {"IEEE Trans. Plasma Sci."} -MACRO {ijimw} {"Interntl. J. Infrared \& Millimeter Waves"} -MACRO {ip} {"Infrared Phys."} -MACRO {irp} {"Infrared Phys."} -MACRO {jap} {"J. Appl. Phys."} -MACRO {jasa} {"J. Acoust. Soc. America"} -MACRO {jcp} {"J. Comp. Phys."} -MACRO {jchp} {"J. Chem. Phys."} -MACRO {jetp} {"Sov. Phys.--JETP"} -MACRO {jfe} {"J. Fusion Energy"} -MACRO {jfm} {"J. Fluid Mech."} -MACRO {jmp} {"J. Math. Phys."} -MACRO {jne} {"J. Nucl. Energy"} -MACRO {jnec} {"J. Nucl. Energy, C: Plasma Phys., Accelerators, Thermonucl. Res."} -MACRO {jnm} {"J. Nucl. Mat."} -MACRO {jpc} {"J. Phys. Chem."} -MACRO {jpp} {"J. Plasma Phys."} -MACRO {jpsj} {"J. Phys. Soc. Japan"} -MACRO {jsi} {"J. Sci. Instrum."} -MACRO {jvst} {"J. Vac. Sci. \& Tech."} -MACRO {nat} {"Nature"} -MACRO {nature} {"Nature"} -MACRO {nedf} {"Nucl. Eng. \& Design/Fusion"} -MACRO {nf} {"Nucl. Fusion"} -MACRO {nim} {"Nucl. Inst. \& Meth."} -MACRO {nimpr} {"Nucl. Inst. \& Meth. in Phys. Res."} -MACRO {np} {"Nucl. Phys."} -MACRO {npb} {"Nucl. Phys. B"} -MACRO {nt/f} {"Nucl. Tech./Fusion"} -MACRO {npbpc} {"Nucl. Phys. B (Proc. Suppl.)"} -MACRO {inc} {"Nuovo Cimento"} -MACRO {nc} {"Nuovo Cimento"} -MACRO {pf} {"Phys. Fluids"} -MACRO {pfa} {"Phys. Fluids A: Fluid Dyn."} -MACRO {pfb} {"Phys. Fluids B: Plasma Phys."} -MACRO {pl} {"Phys. Lett."} -MACRO {pla} {"Phys. Lett. A"} -MACRO {plb} {"Phys. Lett. B"} -MACRO {prep} {"Phys. Rep."} -MACRO {pnas} {"Proc. Nat. Acad. Sci. USA"} -MACRO {pp} {"Phys. Plasmas"} -MACRO {ppcf} {"Plasma Phys. \& Controlled Fusion"} -MACRO {phitrsl} {"Philos. Trans. Roy. Soc. London"} -MACRO {prl} {"Phys. Rev. Lett."} -MACRO {pr} {"Phys. Rev."} -MACRO {physrev} {"Phys. Rev."} -MACRO {pra} {"Phys. Rev. A"} -MACRO {prb} {"Phys. Rev. B"} -MACRO {prc} {"Phys. Rev. C"} -MACRO {prd} {"Phys. Rev. D"} -MACRO {pre} {"Phys. Rev. E"} -MACRO {ps} {"Phys. Scripta"} -MACRO {procrsl} {"Proc. Roy. Soc. London"} -MACRO {rmp} {"Rev. Mod. Phys."} -MACRO {rsi} {"Rev. Sci. Inst."} -MACRO {science} {"Science"} -MACRO {sciam} {"Sci. Am."} -MACRO {sam} {"Stud. Appl. Math."} -MACRO {sjpp} {"Sov. J. Plasma Phys."} -MACRO {spd} {"Sov. Phys.--Doklady"} -MACRO {sptp} {"Sov. Phys.--Tech. Phys."} -MACRO {spu} {"Sov. Phys.--Uspekhi"} -MACRO {st} {"Sky and Telesc."} - -% \end{macrocode} -% \subsubsection{Оптика} -% Из файла~\file{photjour.mbs}. -% \begin{macrocode} -MACRO {appopt} {"Appl. Opt."} -MACRO {bell} {"Bell Syst. Tech. J."} -MACRO {ell} {"Electron. Lett."} -MACRO {jasp} {"J. Appl. Spectr."} -MACRO {jqe} {"IEEE J. Quantum Electron."} -MACRO {jlwt} {"J. Lightwave Technol."} -MACRO {jmo} {"J. Mod. Opt."} -MACRO {josa} {"J. Opt. Soc. America"} -MACRO {josaa} {"J. Opt. Soc. Amer.~A"} -MACRO {josab} {"J. Opt. Soc. Amer.~B"} -MACRO {jdp} {"J. Phys. (Paris)"} -MACRO {oc} {"Opt. Commun."} -MACRO {ol} {"Opt. Lett."} -MACRO {os} {"Opt. Spectrosc."} -MACRO {phtl} {"IEEE Photon. Technol. Lett."} -MACRO {pspie} {"Proc. Soc. Photo-Opt. Instrum. Eng."} -MACRO {sjot} {"Sov. J. Opt. Technol."} -MACRO {sjqe} {"Sov. J. Quantum Electron."} -MACRO {sleb} {"Sov. Phys.--Leb. Inst. Rep."} -MACRO {stph} {"Sov. Phys.--Techn. Phys."} -MACRO {stphl} {"Sov. Techn. Phys. Lett."} -MACRO {vr} {"Vision Res."} -MACRO {zph} {"Z. f. Physik"} -MACRO {zphb} {"Z. f. Physik~B"} -MACRO {zphd} {"Z. f. Physik~D"} - -% \end{macrocode} -% \subsubsection{Физика конденсированного состояния} -% \begin{macrocode} -MACRO {sse} {"Solid-State Electron."} -MACRO {pss} {"Phys. Sol. State"} -MACRO {sst} {"Semicond. Sci. Tech."} -MACRO {nl} {"Nano Lett."} - -READ - -% \end{macrocode} -% \subsection{Сортировка списка литературы по именам авторов и названиям} -% \begin{macrocode} -%<*gost705s> -% \end{macrocode} -% \DescribeFunction{sortify} -% \begin{macrocode} -FUNCTION {sortify} -{ - purify$ - "l" change.case$ -} - -INTEGERS { len } - -% \end{macrocode} -% \DescribeFunction{chop.word} -% \begin{macrocode} -FUNCTION {chop.word} -{ - 's := - 'len := - s #1 len substring$ = - { s len #1 + global.max$ substring$ } - 's - if$ -} - -% \end{macrocode} -% \DescribeFunction{sort.format.names} -% \begin{macrocode} -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$ -} - -% \end{macrocode} -% \DescribeFunction{sort.format.title} -% \begin{macrocode} -FUNCTION {sort.format.title} -{ - 't := - "A " #2 - "An " #3 - "The " #4 t chop.word - chop.word - chop.word - sortify - #1 global.max$ substring$ -} - -% \end{macrocode} -% \DescribeFunction{author.sort} -% \begin{macrocode} -FUNCTION {author.sort} -{ - author empty$ - { key empty$ - { "to sort, need author or key in " cite$ * warning$ "" } - { key sortify } - if$ - } - { author sort.format.names } - if$ -} - -% \end{macrocode} -% \DescribeFunction{author.title.sort} -% \begin{macrocode} -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 sort.format.names } - if$ -} - -% \end{macrocode} -% \DescribeFunction{presort} -% \begin{macrocode} -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 - -%</gost705s> - -% \end{macrocode} -% \subsection{Вычисление длины табуляции между номером и текстом} -% \begin{macrocode} -STRINGS { longest.label } - -INTEGERS { number.label longest.label.width } - -% \end{macrocode} -% \DescribeFunction{initialize.longest.label} -% \begin{macrocode} -FUNCTION {initialize.longest.label} -{ - "" 'longest.label := - #1 'number.label := - #0 'longest.label.width := -} - -% \end{macrocode} -% \DescribeFunction{longest.label.pass} -% \begin{macrocode} -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} - -% \end{macrocode} -% \subsection{Формирование окружения thebibliography} -% \subsubsection{Преамбула} -% \DescribeFunction{begin.bib} -% \begin{macrocode} -FUNCTION {begin.bib} -{ - preamble$ empty$ - 'skip$ - { preamble$ write$ newline$ } - if$ - "\providecommand*\BibEmph[1]{#1}" write$ newline$ - "\providecommand*\BibDash{}" write$ newline$ - "\providecommand*\href[2]{#2}" write$ newline$ - "\providecommand*\url[1]{\texttt{#1}}" write$ newline$ - "\providecommand*\urlprefix{URL: }" write$ newline$ - "\providecommand*\BibUrl[1]{\urlprefix\url{#1}}" write$ newline$ - "\providecommand*\BibUrlDate[1]{({%" write$ newline$ - "\cyr\cyrd\cyra\cyrt\cyra\ %" write$ newline$ - "\cyro\cyrb\cyrr\cyra\cyrshch\cyre\cyrn\cyri\cyrya}: #1)}" write$ newline$ - "\providecommand*\BibAnnote[1]{#1}" write$ newline$ - "\begin{thebibliography}{" 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$ -} - -% \end{macrocode} -% \subsubsection{Начало окружения} -% \begin{macrocode} -EXECUTE {begin.bib} - -EXECUTE {init.state.consts} - -ITERATE {call.type$} - -% \end{macrocode} -% \subsubsection{Конец окружения} -% \DescribeFunction{end.bib} -% \begin{macrocode} -FUNCTION {end.bib} -{ - newline$ - "\end{thebibliography}" write$ newline$ -} - -EXECUTE {end.bib} - -%</gost705|gost705s> -% \end{macrocode} diff --git a/Master/texmf-dist/source/latex/disser/gost732.dtx b/Master/texmf-dist/source/latex/disser/gost732.dtx index 002106bedc1..1d29304f000 100644 --- a/Master/texmf-dist/source/latex/disser/gost732.dtx +++ b/Master/texmf-dist/source/latex/disser/gost732.dtx @@ -18,9 +18,9 @@ % % Current Maintainer of this work is Stanislav Kruchinin. % -% This work consists of the main source file gost705.dtx +% This work consists of the main source file gost732.dtx % and the derived files -% gost732.bst, gost732.pdf. +% gost732.cls, gost732.pdf. % % Distribution: % CTAN:macros/latex/contrib/disser/src/gost732.dtx @@ -90,9 +90,9 @@ This work has the LPPL maintenance status "maintained". Current Maintainer of this work is Stanislav Kruchinin. -This work consists of the main source file gost705.dtx +This work consists of the main source file gost732.dtx and the derived files - gost732.bst gost732.pdf. + gost732.cls gost732.pdf. \endpreamble \let\MetaPrefix\DoubleperCent @@ -124,7 +124,7 @@ and the derived files \fi %</ignore> %<*driver> -\ProvidesFile{gost732.drv}[2016/06/26 1.4.0 GOST 7.32-2001 implementation] +\ProvidesFile{gost732.drv}[2017/03/03 1.5.0 GOST 7.32-2001 implementation] \documentclass{ltxdoc} \usepackage[a4paper,includeheadfoot,nohead,mag=1000, @@ -255,6 +255,8 @@ and the derived files \CYRI\ \CYRS\CYRO\CYRK\CYRR\CYRA\CYRSHCH\CYRE\CYRN\CYRI\CYRYA } +\def\nomname{\defsname} + \renewcommand\defs{% \nchapter{\defsname} } diff --git a/Master/texmf-dist/source/latex/disser/titledefs.dtx b/Master/texmf-dist/source/latex/disser/titledefs.dtx index 4d4ab138480..ea307de6ea2 100644 --- a/Master/texmf-dist/source/latex/disser/titledefs.dtx +++ b/Master/texmf-dist/source/latex/disser/titledefs.dtx @@ -381,6 +381,10 @@ } \providecommand*\defs{\nchapter{\defsname}} +\AtBeginDocument{% + \addto\captionsrussian{\def\nomname{\defsname}} +} + % \end{macrocode} % \item Словарь терминов % \DescribeMacro{\dictname}\index{Макросы!\verb*+\dictname+} |