diff options
Diffstat (limited to 'Master/texmf-dist/source/latex/disser/gost705.dtx')
-rw-r--r-- | Master/texmf-dist/source/latex/disser/gost705.dtx | 337 |
1 files changed, 275 insertions, 62 deletions
diff --git a/Master/texmf-dist/source/latex/disser/gost705.dtx b/Master/texmf-dist/source/latex/disser/gost705.dtx index deb3424936e..46b7cd6ea11 100644 --- a/Master/texmf-dist/source/latex/disser/gost705.dtx +++ b/Master/texmf-dist/source/latex/disser/gost705.dtx @@ -16,7 +16,7 @@ % % bibtex8 -H -c <encoding>.csf <your_document> % -% Copyright (C) 2004-2012 by +% Copyright (C) 2004-2014 by % Stanislav Kruchinin <stanislav.kruchinin at gmail.com> % % This work may be distributed and/or modified under the @@ -127,6 +127,7 @@ and the derived files \let\MetaPrefix\DoubleperCent \generate{% + \nopostamble \usedir{bibtex/bst/disser}% \file{gost705.bst}{\from{gost705.dtx}{gost705}}% \file{gost705s.bst}{\from{gost705.dtx}{gost705s}}% @@ -155,7 +156,7 @@ and the derived files %</ignore> %<*driver> \ProvidesFile{gost705.drv}% - [2012/11/21 1.2.0 Bibliography style for GOST R 7.0.5-2008] + [2013/12/25 1.3.0 Bibliography style for GOST R 7.0.5-2008] \documentclass{ltxdoc} \usepackage[a4paper,includeheadfoot,nohead,mag=1000, @@ -306,6 +307,20 @@ ENTRY archivePrefix primaryClass eprint + authortype + media + location + ipc + holder + credits + reqnumber + reqdate + pubdate + publication + prdate + prnumber + prcountry + pagetotal } {} { label } @@ -314,7 +329,7 @@ ENTRY % \subsection{Объявление и инициализация переменных и констант} % \begin{macrocode} INTEGERS { output.state before.all mid.sentence after.sentence after.block -after.dblslash after.slash after.column after.semicolumn } +after.dblslash after.slash after.colon after.semicolon after.dash } % \end{macrocode} % \DescribeBSTFunction{init.state.consts} @@ -327,8 +342,9 @@ FUNCTION {init.state.consts} #3 'after.block := #4 'after.dblslash := #5 'after.slash := - #6 'after.column := - #7 'after.semicolumn := + #6 'after.colon := + #7 'after.semicolon := + #8 'after.dash := } STRINGS { s t } @@ -371,11 +387,15 @@ FUNCTION {output.nonnull} { "~//" * change.language * " " * write$ } { output.state after.slash = { "~/ " * write$ } - { output.state after.column = + { output.state after.colon = { ": " * write$ } - { output.state after.semicolumn = + { output.state after.semicolon = { "; " * write$ } - { add.period$ " " * write$ } + { output.state after.dash = + { "~--- " * write$ } + { add.period$ " " * write$ } + if$ + } if$ } if$ @@ -460,24 +480,35 @@ FUNCTION {new.slash} } % \end{macrocode} -% \DescribeBSTFunction{new.column} +% \DescribeBSTFunction{new.colon} % \begin{macrocode} -FUNCTION {new.column} +FUNCTION {new.colon} { output.state before.all = 'skip$ - { after.column 'output.state := } + { after.colon 'output.state := } if$ } % \end{macrocode} -% \DescribeBSTFunction{new.semicolumn} +% \DescribeBSTFunction{new.semicolon} % \begin{macrocode} -FUNCTION {new.semicolumn} +FUNCTION {new.semicolon} { output.state before.all = 'skip$ - { after.semicolumn 'output.state := } + { after.semicolon 'output.state := } + if$ +} + +% \end{macrocode} +% \DescribeBSTFunction{new.dash} +% \begin{macrocode} +FUNCTION {new.dash} +{ + output.state before.all = + 'skip$ + { after.dash 'output.state := } if$ } @@ -623,14 +654,14 @@ 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" * * + { 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$ } if$ @@ -643,15 +674,15 @@ FUNCTION {bbl.cmplr} { curlanguage "english" = { "Compiler " } - { curlanguage "german" = - { "Hrsg. " } - { curlanguage "russian" = - { "{\cyr\CYRS\cyro\cyrs\cyrt.\ }" } - { "language is not defined: " language "compiler" * * warning$ "compiler" } + { curlanguage "german" = + { "Hrsg. " } + { curlanguage "russian" = + { "{\cyr\CYRS\cyro\cyrs\cyrt.\ }" } + { "language is not defined: " language "compiler" * * warning$ "compiler" } + if$ + } if$ - } - if$ - } + } if$ } @@ -1009,7 +1040,7 @@ FUNCTION {bbl.mthesis} { 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$ "In" } + { "language is not defined: " language * warning$ "Master thesis" } if$ } if$ @@ -1029,7 +1060,7 @@ FUNCTION {bbl.phdthesis} { 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$ "In" } + { "language is not defined: " language * warning$ "PhD thesis" } if$ } if$ @@ -1049,6 +1080,63 @@ FUNCTION {bbl.docdisser} { 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} +% \DescribeBSTFunction{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} +% \DescribeBSTFunction{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} +% \DescribeBSTFunction{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$ } @@ -1244,7 +1332,7 @@ FUNCTION {output.address.publisher.date} { address output publisher empty$ 'skip$ - { new.column } + { new.colon } if$ } if$ @@ -1531,8 +1619,7 @@ FUNCTION {format.volume} % \DescribeBSTFunction{format.number} % \begin{macrocode} FUNCTION {format.number} -{ - number empty$ +{ number empty$ { "" } { bbl.nr number tie.or.space.connect } if$ @@ -1615,7 +1702,7 @@ FUNCTION {author.after} 'skip$ { author num.names$ #3 > { format.authors.after output - new.semicolumn + new.semicolon } 'skip$ if$ @@ -1632,7 +1719,7 @@ FUNCTION {bookauthor.after} 'skip$ { bookauthor num.names$ #3 > { format.bookauthors.after output - new.semicolumn + new.semicolon } 'skip$ if$ @@ -1648,19 +1735,19 @@ FUNCTION {editor.organization.after} compiler empty$ 'skip$ { format.compiler.after output - new.semicolumn + new.semicolon } if$ editor empty$ 'skip$ { format.editors.after output - new.semicolumn + new.semicolon } if$ organization empty$ 'skip$ { organization output - new.semicolumn + new.semicolon } if$ } @@ -1730,14 +1817,18 @@ FUNCTION {format.isbn} } % \end{macrocode} -% \DescribeBSTFunction{add.doi} +% \DescribeBSTFunction{add.doi.url} % \begin{macrocode} -FUNCTION {add.doi} +FUNCTION {add.doi.url} { duplicate$ empty$ 'skip$ { doi empty$ - 'skip$ - { "\href{http://dx.doi.org/" doi * "}{" * swap$ * "}" * } + { url empty$ + 'skip$ + { "\href{" url * "}{" * swap$ * "}" * } + if$ + } + { "\href{http://dx.doi.org/" doi * "}{" * swap$ * "}" * } if$ } if$ @@ -1758,12 +1849,90 @@ FUNCTION {format.eprint} "{" * primaryClass * "/" * eprint * "}" * } { " \href{http://arxiv.org/abs/" eprint * "}" * - "{" * archivePrefix * ":" * primaryClass * "/" * eprint * "}" * + "{" * archivePrefix * ":" * primaryClass * "/" * eprint * "}" * } if$ } - if$ - } + if$ + } + if$ +} + +% \end{macrocode} +% \DescribeBSTFunction{add.number} +% \begin{macrocode} +FUNCTION {add.number} +{ duplicate$ empty$ + { "" } + { bbl.nr swap$ tie.or.space.connect } + if$ +} + +% \end{macrocode} +% \DescribeBSTFunction{in.square.brackets} +% \begin{macrocode} +FUNCTION {in.square.brackets} +{ + duplicate$ empty$ + { pop$ "" } + { "[" swap$ * "]" * } + if$ +} + +% \end{macrocode} +% \DescribeBSTFunction{in.round.brackets} +% \begin{macrocode} +FUNCTION {in.round.brackets} +{ + duplicate$ empty$ + { pop$ "" } + { "(" swap$ * ")" * } + if$ +} + +% \end{macrocode} +% \DescribeBSTFunction{format.type.number} +% \begin{macrocode} +FUNCTION {format.type.number} +{ + type empty$ + { "" } + { + number empty$ + { "" } + { type number tie.or.space.connect } + if$ + } + if$ +} + +% \end{macrocode} +% \DescribeBSTFunction{format.reqdate} +% \begin{macrocode} +FUNCTION {format.reqdate} +{ reqdate empty$ + { "" } + { bbl.req reqdate tie.or.space.connect } + if$ +} + +% \end{macrocode} +% \DescribeBSTFunction{format.pubdate} +% \begin{macrocode} +FUNCTION {format.pubdate} +{ pubdate empty$ + { "" } + { bbl.publ pubdate tie.or.space.connect } + if$ +} + +% \end{macrocode} +% \DescribeBSTFunction{format.prdate} +% \begin{macrocode} +FUNCTION {format.prdate} +{ prdate empty$ + { "" } + { bbl.prio prdate tie.or.space.connect } if$ } @@ -1777,7 +1946,7 @@ FUNCTION {article} author.before format.title "title" output.check new.dblslash - journal emphasize add.doi "journal" output.check + journal emphasize add.doi.url "journal" output.check new.block format.date output new.block @@ -1802,7 +1971,7 @@ FUNCTION {book} { output.bibitem author.before - format.btitle add.doi "title" output.check + format.btitle add.doi.url "title" output.check new.slash editor.organization.after new.sentence @@ -1857,7 +2026,7 @@ FUNCTION {inbook} { output.bibitem author.before - format.btitle add.doi "title" output.check + format.btitle add.doi.url "title" output.check new.dblslash bookauthor.before booktitle "booktitle" output.check @@ -1892,7 +2061,7 @@ FUNCTION {incollection} output.bibitem author.before new.sentence - format.title add.doi "title" output.check + format.title add.doi.url "title" output.check new.dblslash booktitle "booktitle" output.check new.slash @@ -1922,7 +2091,7 @@ FUNCTION {inproceedings} output.bibitem author.before new.sentence - format.title add.doi "title" output.check + format.title add.doi.url "title" output.check new.dblslash booktitle "booktitle" output.check new.slash @@ -1936,7 +2105,7 @@ FUNCTION {inproceedings} format.date "year" output.check } { address output.nonnull - new.column + new.colon publisher output format.date "year" output.check } @@ -2009,7 +2178,7 @@ FUNCTION {mastersthesis} output.bibitem format.authors "author" output.check new.block - format.btitle add.doi "title" output.check + format.btitle add.doi.url "title" output.check new.block bbl.mthesis format.thesis.type output.nonnull school "school" output.check @@ -2056,8 +2225,8 @@ FUNCTION {phdthesis} output.bibitem format.authors "author" output.check new.sentence - format.btitle add.doi "title" output.check - new.column + format.btitle add.doi.url "title" output.check + new.colon bbl.phdthesis format.thesis.type output.nonnull new.slash school "school" output.check @@ -2082,8 +2251,8 @@ FUNCTION {docdisser} output.bibitem format.authors "author" output.check new.sentence - format.btitle add.doi "title" output.check - new.column + format.btitle add.doi.url "title" output.check + new.colon bbl.docdisser format.thesis.type output.nonnull new.slash school "school" output.check @@ -2106,7 +2275,7 @@ FUNCTION {docdisser} FUNCTION {proceedings} { output.bibitem - format.btitle add.doi "title" output.check + format.btitle add.doi.url "title" output.check new.slash editor.organization.after new.block @@ -2140,13 +2309,13 @@ FUNCTION {techreport} output.bibitem author.before new.sentence - format.title add.doi "title" output.check - new.column + format.title add.doi.url "title" output.check + new.colon format.tr.number output.nonnull editor.organization.after new.block address output - new.column + new.colon institution "institution" output.check format.date "year" output.check new.block @@ -2160,13 +2329,57 @@ FUNCTION {techreport} } % \end{macrocode} +% \DescribeBSTFunction{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.dash + 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} % \DescribeBSTFunction{unpublished} % \begin{macrocode} FUNCTION {unpublished} { output.bibitem author.before - format.btitle "title" output.check + format.btitle add.doi.url "title" output.check editor.organization.after new.block note "note" output.check |