diff options
Diffstat (limited to 'Master/texmf-dist/doc/bibtex/econ-bst/customization/econ-a.bst')
-rw-r--r-- | Master/texmf-dist/doc/bibtex/econ-bst/customization/econ-a.bst | 210 |
1 files changed, 133 insertions, 77 deletions
diff --git a/Master/texmf-dist/doc/bibtex/econ-bst/customization/econ-a.bst b/Master/texmf-dist/doc/bibtex/econ-bst/customization/econ-a.bst index bea9f43e8c5..6a047e97d07 100644 --- a/Master/texmf-dist/doc/bibtex/econ-bst/customization/econ-a.bst +++ b/Master/texmf-dist/doc/bibtex/econ-bst/customization/econ-a.bst @@ -4,8 +4,7 @@ % Maintainer: Shiro Takeda % Copyright (C) 2001-2018 Shiro Takeda % First-written: <2007/07/28> -% Time-stamp: <2018-12-07 18:49:52 st> -% Version: 2.5 +% Version: 2.7 % Keywords: TeX, BibTeX, bst % URL: https://github.com/ShiroTakeda/econ-bst @@ -38,7 +37,10 @@ % For changelogs, see CHANGES.txt file. % version number -FUNCTION {econ.version} { "2.5" } +FUNCTION {econ.version} { "2.7" } + +% File name +FUNCTION {econ.file} { "econ.bst" } % Debug mode. Non-zero makes debug mode on. FUNCTION {econ.debug} @@ -61,7 +63,7 @@ ENTRY %% String entry variable { label cyear flabel alabel extra.label sort.label sort.label.abb - extra.label.bysame nameorder.temp } + extra.label.bysame nameorder.temp jname } %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% %% @@ -314,7 +316,11 @@ FUNCTION {bst.cite.and.nameorder} % authors is greater or equal to bst.and.others.num. FUNCTION {bst.and.others.num} { #3 } % If the number of authors is greater or equal to three (default). -% { #4 } + +% If the number of authors is greater or equal to bst.max.author.num, only +% first author is listed and other authors' names are abbreviated as "et al.". +FUNCTION {bst.max.author.num} +{ #12 } % If the number of authors is greater or equal to 12 (default). %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% @@ -340,7 +346,8 @@ FUNCTION {bst.author.pre} % The string after author: % FUNCTION {bst.author.post} -{ "." } % (default) +{ "." } +% { "" } % (default) %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% % year @@ -426,9 +433,18 @@ FUNCTION {bst.journal.pre} % The string after journal name: % FUNCTION {bst.journal.post} -{ "" } +{ "." } % { "}" } % (default) +% Use the abbreviated journal name +% +% If set to #0, do not use abbreviated journal name. +% If set to non-#0, use abbreviated journal name. +% +FUNCTION {bst.journal.name.abb} +{ #0 } % (default) +% { #1 } + %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% % editor notation: @@ -469,8 +485,8 @@ FUNCTION {bst.edition.post} % The string before volume: % FUNCTION {bst.volume.pre} -{ ", " } -% { ", Vol. " } % (default) +{ ". " } +% { ", " } % (default) % The string after volume: % @@ -490,14 +506,12 @@ FUNCTION {bst.hide.number} % The string before number: % FUNCTION {bst.number.pre} -{ " (" } -% { ", No. " } % (default) +{ " (" } % (default) % The string after number: % FUNCTION {bst.number.post} -{ ")" } -% { "" } % (default) +{ ")" } % (default) %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% % in @@ -514,13 +528,12 @@ FUNCTION {bst.in} % The string before page (multiple pages): % FUNCTION {bst.pages.pre} -{ ", " } -% { ", pp." } % (default) +{ ", " } % (default) % The string before page: % FUNCTION {bst.page.pre} -{ ", p." } % (default) +{ ", " } % (default) % The string after page (multiple pages): % @@ -669,7 +682,7 @@ FUNCTION {bst.show.url} % The string before url: % FUNCTION {bst.url.pre} -{ ", URL: \url{" } % (default) +{ ", \url{" } % (default) % The string after url: % @@ -704,12 +717,12 @@ FUNCTION {bst.show.doi} % The string before DOI: % FUNCTION {bst.doi.pre} -{ ", DOI: \href{http://dx.doi.org/" doi * "}{" * } % (default) +{ ", \href{http://dx.doi.org/" doi * "}{\urlstyle{rm} \nolinkurl{" * } % (default) % The string after DOI: % FUNCTION {bst.doi.post} -{ "}" } % (default) +{ "}}" } % (default) % How to show URL and DOI fields when both fields exist. % @@ -718,9 +731,9 @@ FUNCTION {bst.doi.post} % #2 -> Only DOI field is displayed % FUNCTION {bst.url.doi} -% { #0 } % (default) -> Both fields are displayed +% { #0 } % -> Both fields are displayed { #1 } % -> Only URL field is displayed -% { #2 } % -> Only DOI field is displayed +% { #2 } % (default) --> Only DOI field is displayed %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% % Other functions: @@ -736,7 +749,7 @@ FUNCTION {bst.note.post} % The string that represents Technical report: % FUNCTION {bst.techrep} -{ " Tech. Rep." } % (default) +{ "Technical Report" } % (default) % The string that represents master thesis: % @@ -746,7 +759,7 @@ FUNCTION {bst.mthesis} % The string that represents phd thesis: % FUNCTION {bst.phdthesis} -{ " Ph.D. thesis" } % (default) +{ " Ph.D. dissertation" } % (default) %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% %% @@ -1079,11 +1092,37 @@ FUNCTION {format.btitle} if$ } +FUNCTION {journal.name.sub} +{ 't := + t #1 #4 substring$ "The " = + % Use #30 to handle with the long journal name. + { t #5 #30 substring$ 't := } + 'skip$ + if$ + t +} + +FUNCTION {format.journal.name.abb} +{ journal 's := + journal 'jname := + s journal.name.sub 's := + bst.journal.name.abb #0 = + 'skip$ + { + s "Academic Management Review" = + { "Acad. Manage. J." 'jname := } + 'skip$ + if$ + } + if$ + jname +} + %%% journal FUNCTION {format.journal} { journal empty$ { "" } - { bst.journal.pre journal * bst.journal.post * } + { bst.journal.pre format.journal.name.abb * bst.journal.post * } if$ } @@ -1159,56 +1198,62 @@ FUNCTION {format.names} numnames 'namesleft := % Repeat if namesleft > 0 { namesleft #0 > } - { nameptr #1 = - % First author - { bst.author.name #0 = - bst.author.name #1 = - or - { bst.first.name.initial #0 = - { s nameptr "{vv~}{ll}{, ff}{, jj}" format.name$ 't := } - { s nameptr "{vv~}{ll}{, f.}{, jj}" format.name$ 't := } - if$ - } - { bst.first.name.initial #0 = - { s nameptr "{ff~}{vv~}{ll}{, jj}" format.name$ 't := } - { s nameptr "{f.~}{vv~}{ll}{, jj}" format.name$ 't := } - if$ - } - if$ - } - % The second or later authors - { bst.author.name #0 = - bst.author.name #2 = - or - { bst.first.name.initial #0 = - { s nameptr "{ff~}{vv~}{ll}{, jj}" format.name$ 't := } - { s nameptr "{f.~}{vv~}{ll}{, jj}" format.name$ 't := } - if$ - } - { bst.first.name.initial #0 = - { s nameptr "{vv~}{ll}{, ff}{, jj}" format.name$ 't := } - { s nameptr "{vv~}{ll}{, f.}{, jj}" format.name$ 't := } - if$ - } - if$ - } - if$ + { nameptr #1 = + % First author + { bst.author.name #0 = + bst.author.name #1 = + or + { bst.first.name.initial #0 = + { s nameptr "{vv~}{ll}{, ff}{, jj}" format.name$ 't := } + { s nameptr "{vv~}{ll}{, f.}{, jj}" format.name$ 't := } + if$ + } + { bst.first.name.initial #0 = + { s nameptr "{ff~}{vv~}{ll}{, jj}" format.name$ 't := } + { s nameptr "{f.~}{vv~}{ll}{, jj}" format.name$ 't := } + if$ + } + if$ + } + % The second or later authors + { bst.author.name #0 = + bst.author.name #2 = + or + { bst.first.name.initial #0 = + { s nameptr "{ff~}{vv~}{ll}{, jj}" format.name$ 't := } + { s nameptr "{f.~}{vv~}{ll}{, jj}" format.name$ 't := } + if$ + } + { bst.first.name.initial #0 = + { s nameptr "{vv~}{ll}{, ff}{, jj}" format.name$ 't := } + { s nameptr "{vv~}{ll}{, f.}{, jj}" format.name$ 't := } + if$ + } + if$ + } + if$ + nameptr #1 > % The second or later authors - { nameorder.temp "random" = - bst.use.nameorder #0 = not and - { bst.and.nameorder * t * } - { namesleft #1 > - % More than one authors left - { ", " * t * } - % Only one author left - { t "others" = - { bst.and.others.output * } - { numnames #2 = - % Entry with two authors - { bst.and * t * } - { bst.ands * t * } + { numnames bst.max.author.num > + { bst.and.others * + #1 'namesleft := } + { nameorder.temp "random" = + bst.use.nameorder #0 = not and + { bst.and.nameorder * t * } + { namesleft #1 > + % More than one authors left + { ", " * t * } + % Only one author left + { t "others" = + { bst.and.others.output * } + { numnames #2 = + % Entry with two authors + { bst.and * t * } + { bst.ands * t * } + if$ + } if$ } if$ @@ -1935,7 +1980,7 @@ FUNCTION {format.thesis.type} FUNCTION {format.tr.number} { type empty$ - { "Technical Report" } + { bst.techrep } { " " type * } if$ number empty$ @@ -2172,9 +2217,9 @@ FUNCTION {incollection} format.in.ed.booktitle "booktitle" output.check.nocomma format.bvolume output.nocomma - output.address.organization.publisher format.edition output.nocomma format.chapter.pages output.nocomma + output.address.organization.publisher bst.year.position #0 = not { format.year "year" output.check.nocomma } @@ -2419,6 +2464,8 @@ FUNCTION {techreport} 'skip$ if$ + format.url.doi output.nocomma + format.note output.nocomma fin.entry } @@ -2931,6 +2978,15 @@ FUNCTION {calc.flabel} } if$ 'flabel := + author empty$ + 'skip$ + { author num.names$ 'numnames := + numnames bst.max.author.num > + { alabel 'flabel := } + 'skip$ + if$ + } + if$ % For debug econ.debug #0 = not { "flabel = ``\texttt{" write$ @@ -3469,10 +3525,10 @@ ITERATE {forward.pass.two} FUNCTION{punctuation} { - "%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%" write$ newline$ - "% This bbl file is created by econ.bst ver." econ.version * write$ newline$ - "% The latest econ.bst is available at" write$ newline$ - "% <https://github.com/ShiroTakeda/econ-bst>" write$ newline$ newline$ + "%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%" write$ newline$ + "% This bbl file is created by " econ.file * " ver." * econ.version * write$ newline$ + "% The latest " econ.file * " is available at " * write$ newline$ + "% <https://github.com/ShiroTakeda/econ-bst>" write$ newline$ newline$ } EXECUTE {punctuation} |