diff options
author | Karl Berry <karl@freefriends.org> | 2008-12-31 18:46:01 +0000 |
---|---|---|
committer | Karl Berry <karl@freefriends.org> | 2008-12-31 18:46:01 +0000 |
commit | 66a510089fd3f3f081f17b0f317f1834a9475f0b (patch) | |
tree | 1b6ae1809a8d28a406c8499fd2e49da9d0311c4f | |
parent | e92f643b99a97c1ce1e3c1424f9d27a4155e6b0e (diff) |
economic update (30dec08)
git-svn-id: svn://tug.org/texlive/trunk@11770 c570f23f-e606-0410-a88d-b1316a301751
34 files changed, 12901 insertions, 108 deletions
diff --git a/Master/texmf-dist/bibtex/bst/economic/agecon.bst b/Master/texmf-dist/bibtex/bst/economic/agecon.bst new file mode 100644 index 00000000000..77b3d799c01 --- /dev/null +++ b/Master/texmf-dist/bibtex/bst/economic/agecon.bst @@ -0,0 +1,1523 @@ +%%% journal "Agricultural Economics" (AgEcon) +%%% bibliography style for use with LaTeX2e +%%% version: 1.0 (04 January 2008) +%%% license: LaTeX Project Public License (see below) +%%% This file was created with makebst (see below) and modified +%%% by Arne Henningsen. +%%% Note: This is an unofficial style file that may not fully comply +%%% with the AgEcon reference guidelines in every detail. +%%% Please report any problems to <ahenningsen@email.uni-kiel.de>. +%%% Further information is available at +%%% http://www.uni-kiel.de/agrarpol/ahenningsen/latex-bibtex.html +%%% +%%% This BibTeX style should be used with the corresponding +%%% LaTeX class "agecon" (agecon.cls). +%%% Otherwise, the following line has to be added to the LaTeX preamble: +%%% \usepackage[authoryear]{natbib} +%%% +%% +%% +%% This is file `agecon.bst', +%% generated with the docstrip utility. +%% +%% The original source files were: +%% +%% merlin.mbs (with options: `ay,nat,nm-rev,ed-rev,jnrlst,keyxyr,dt-beg,yr-com,yrp-per,note-yr,jttl-rm,thtit-a,volp-com,num-xser,ser-vol,jnm-x,btit-rm,bt-rm,edpar,bkedcap,blk-tit,in-col,pp,ed,ord,jabr,and-com,and-com-ed,xand,nfss,') +%% ---------------------------------------- +%% *** agecon *** +%% +%% Copyright 1994-2004 Patrick W Daly + % =============================================================== + % IMPORTANT NOTICE: + % This bibliographic style (bst) file has been generated from one or + % more master bibliographic style (mbs) files, listed above. + % + % This generated file can be redistributed and/or modified under the terms + % of the LaTeX Project Public License Distributed from CTAN + % archives in directory macros/latex/base/lppl.txt; either + % version 1 of the License, or any later version. + % =============================================================== + % Name and version information of the main mbs file: + % \ProvidesFile{merlin.mbs}[2004/02/09 4.13 (PWD, AO, DPC)] + % For use with BibTeX version 0.99a or later + %------------------------------------------------------------------- + % This bibliography style file is intended for texts in ENGLISH + % This is an author-year citation style bibliography. As such, it is + % non-standard LaTeX, and requires a special package file to function properly. + % Such a package is natbib.sty by Patrick W. Daly + % The form of the \bibitem entries is + % \bibitem[Jones et al.(1990)]{key}... + % \bibitem[Jones et al.(1990)Jones, Baker, and Smith]{key}... + % The essential feature is that the label (the part in brackets) consists + % of the author names, as they should appear in the citation, with the year + % in parentheses following. There must be no space before the opening + % parenthesis! + % With natbib v5.3, a full list of authors may also follow the year. + % In natbib.sty, it is possible to define the type of enclosures that is + % really wanted (brackets or parentheses), but in either case, there must + % be parentheses in the label. + % The \cite command functions as follows: + % \citet{key} ==>> Jones et al. (1990) + % \citet*{key} ==>> Jones, Baker, and Smith (1990) + % \citep{key} ==>> (Jones et al., 1990) + % \citep*{key} ==>> (Jones, Baker, and Smith, 1990) + % \citep[chap. 2]{key} ==>> (Jones et al., 1990, chap. 2) + % \citep[e.g.][]{key} ==>> (e.g. Jones et al., 1990) + % \citep[e.g.][p. 32]{key} ==>> (e.g. Jones et al., p. 32) + % \citeauthor{key} ==>> Jones et al. + % \citeauthor*{key} ==>> Jones, Baker, and Smith + % \citeyear{key} ==>> 1990 + %--------------------------------------------------------------------- + +ENTRY + { address + author + booktitle + chapter + edition + editor + eid + howpublished + institution + journal + key + month + note + number + organization + pages + publisher + school + series + title + type + volume + year + } + {} + { label extra.label sort.label short.list } +INTEGERS { output.state before.all mid.sentence after.sentence after.block } +FUNCTION {init.state.consts} +{ #0 'before.all := + #1 'mid.sentence := + #2 'after.sentence := + #3 'after.block := +} +STRINGS { s t} +FUNCTION {output.nonnull} +{ 's := + output.state mid.sentence = + { ", " * write$ } + { output.state after.block = + { add.period$ write$ + newline$ + "\newblock " write$ + } + { output.state before.all = + 'write$ + { add.period$ " " * write$ } + if$ + } + if$ + mid.sentence 'output.state := + } + if$ + s +} +FUNCTION {output} +{ duplicate$ empty$ + 'pop$ + 'output.nonnull + if$ +} +FUNCTION {output.check} +{ 't := + duplicate$ empty$ + { pop$ "empty " t * " in " * cite$ * warning$ } + 'output.nonnull + if$ +} +FUNCTION {fin.entry} +{ add.period$ + write$ + newline$ +} + +FUNCTION {new.block} +{ output.state before.all = + 'skip$ + { after.block 'output.state := } + if$ +} +FUNCTION {new.sentence} +{ output.state after.block = + 'skip$ + { output.state before.all = + 'skip$ + { after.sentence 'output.state := } + if$ + } + if$ +} +FUNCTION {add.blank} +{ " " * before.all 'output.state := +} + +FUNCTION {date.block} +{ + new.sentence +} + +FUNCTION {not} +{ { #0 } + { #1 } + if$ +} +FUNCTION {and} +{ 'skip$ + { pop$ #0 } + if$ +} +FUNCTION {or} +{ { pop$ #1 } + 'skip$ + if$ +} +FUNCTION {new.block.checkb} +{ empty$ + swap$ empty$ + and + 'skip$ + 'new.block + if$ +} +FUNCTION {field.or.null} +{ duplicate$ empty$ + { pop$ "" } + 'skip$ + if$ +} +FUNCTION {emphasize} +{ duplicate$ empty$ + { pop$ "" } + { "\emph{" swap$ * "}" * } + if$ +} +FUNCTION {tie.or.space.prefix} +{ duplicate$ text.length$ #3 < + { "~" } + { " " } + if$ + swap$ +} + +FUNCTION {capitalize} +{ "u" change.case$ "t" change.case$ } + +FUNCTION {space.word} +{ " " swap$ * " " * } + % Here are the language-specific definitions for explicit words. + % Each function has a name bbl.xxx where xxx is the English word. + % The language selected here is ENGLISH +FUNCTION {bbl.and} +{ "and"} + +FUNCTION {bbl.etal} +{ "et~al." } + +FUNCTION {bbl.editors} +{ "eds." } + +FUNCTION {bbl.editor} +{ "ed." } + +FUNCTION {bbl.edby} +{ "edited by" } + +FUNCTION {bbl.edition} +{ "edition" } + +FUNCTION {bbl.volume} +{ "volume" } + +FUNCTION {bbl.of} +{ "of" } + +FUNCTION {bbl.number} +{ "number" } + +FUNCTION {bbl.nr} +{ "no." } + +FUNCTION {bbl.in} +{ "in" } + +FUNCTION {bbl.pages} +{ "pp." } + +FUNCTION {bbl.page} +{ "p." } + +FUNCTION {bbl.chapter} +{ "chapter" } + +FUNCTION {bbl.techrep} +{ "Technical Report" } + +FUNCTION {bbl.mthesis} +{ "Master's thesis" } + +FUNCTION {bbl.phdthesis} +{ "Ph.D. thesis" } + +FUNCTION {bbl.first} +{ "1st" } + +FUNCTION {bbl.second} +{ "2nd" } + +FUNCTION {bbl.third} +{ "3rd" } + +FUNCTION {bbl.fourth} +{ "4th" } + +FUNCTION {bbl.fifth} +{ "5th" } + +FUNCTION {bbl.st} +{ "st" } + +FUNCTION {bbl.nd} +{ "nd" } + +FUNCTION {bbl.rd} +{ "rd" } + +FUNCTION {bbl.th} +{ "th" } + +MACRO {jan} {"January"} + +MACRO {feb} {"February"} + +MACRO {mar} {"March"} + +MACRO {apr} {"April"} + +MACRO {may} {"May"} + +MACRO {jun} {"June"} + +MACRO {jul} {"July"} + +MACRO {aug} {"August"} + +MACRO {sep} {"September"} + +MACRO {oct} {"October"} + +MACRO {nov} {"November"} + +MACRO {dec} {"December"} + +FUNCTION {eng.ord} +{ duplicate$ "1" swap$ * + #-2 #1 substring$ "1" = + { bbl.th * } + { duplicate$ #-1 #1 substring$ + duplicate$ "1" = + { pop$ bbl.st * } + { duplicate$ "2" = + { pop$ bbl.nd * } + { "3" = + { bbl.rd * } + { bbl.th * } + if$ + } + if$ + } + if$ + } + if$ +} + +MACRO {acmcs} {"ACM Comput. Surv."} + +MACRO {acta} {"Acta Inf."} + +MACRO {cacm} {"Commun. ACM"} + +MACRO {ibmjrd} {"IBM J. Res. Dev."} + +MACRO {ibmsj} {"IBM Syst.~J."} + +MACRO {ieeese} {"IEEE Trans. Software Eng."} + +MACRO {ieeetc} {"IEEE Trans. Comput."} + +MACRO {ieeetcad} + {"IEEE Trans. Comput. Aid. Des."} + +MACRO {ipl} {"Inf. Process. Lett."} + +MACRO {jacm} {"J.~ACM"} + +MACRO {jcss} {"J.~Comput. Syst. Sci."} + +MACRO {scp} {"Sci. Comput. Program."} + +MACRO {sicomp} {"SIAM J. Comput."} + +MACRO {tocs} {"ACM Trans. Comput. Syst."} + +MACRO {tods} {"ACM Trans. Database Syst."} + +MACRO {tog} {"ACM Trans. Graphic."} + +MACRO {toms} {"ACM Trans. Math. Software"} + +MACRO {toois} {"ACM Trans. Office Inf. Syst."} + +MACRO {toplas} {"ACM Trans. Progr. Lang. Syst."} + +MACRO {tcs} {"Theor. Comput. Sci."} + +FUNCTION {bibinfo.check} +{ swap$ + duplicate$ missing$ + { + pop$ pop$ + "" + } + { duplicate$ empty$ + { + swap$ pop$ + } + { swap$ + pop$ + } + if$ + } + if$ +} +FUNCTION {bibinfo.warn} +{ swap$ + duplicate$ missing$ + { + swap$ "missing " swap$ * " in " * cite$ * warning$ pop$ + "" + } + { duplicate$ empty$ + { + swap$ "empty " swap$ * " in " * cite$ * warning$ + } + { swap$ + pop$ + } + if$ + } + if$ +} +STRINGS { bibinfo} +INTEGERS { nameptr namesleft numnames } + +FUNCTION {format.names} +{ 'bibinfo := + duplicate$ empty$ 'skip$ { + 's := + "" 't := + #1 'nameptr := + s num.names$ 'numnames := + numnames 'namesleft := + { namesleft #0 > } + { s nameptr + "{vv~}{ll}{, f.}{, jj}" + format.name$ + bibinfo bibinfo.check + 't := + nameptr #1 > + { + namesleft #1 > + { ", " * t * } + { + "," * + s nameptr "{ll}" format.name$ duplicate$ "others" = + { 't := } + { pop$ } + if$ + t "others" = + { + " " * bbl.etal * + } + { " " * t * } + if$ + } + if$ + } + 't + if$ + nameptr #1 + 'nameptr := + namesleft #1 - 'namesleft := + } + while$ + } if$ +} +FUNCTION {format.names.ed} +{ + format.names +} +FUNCTION {format.key} +{ empty$ + { key field.or.null } + { "" } + if$ +} + +FUNCTION {format.authors} +{ author "author" format.names +} +FUNCTION {get.bbl.editor} +{ editor num.names$ #1 > 'bbl.editors 'bbl.editor if$ } + +FUNCTION {format.editors} +{ editor "editor" format.names duplicate$ empty$ 'skip$ + { + " " * + get.bbl.editor + capitalize + "(" swap$ * ")" * + * + } + if$ +} +FUNCTION {format.note} +{ + note empty$ + { "" } + { note #1 #1 substring$ + duplicate$ "{" = + 'skip$ + { output.state mid.sentence = + { "l" } + { "u" } + if$ + change.case$ + } + if$ + note #2 global.max$ substring$ * "note" bibinfo.check + } + if$ +} + +FUNCTION {format.title} +{ title + duplicate$ empty$ 'skip$ + { "t" change.case$ } + if$ + "title" bibinfo.check +} +FUNCTION {format.full.names} +{'s := + "" 't := + #1 'nameptr := + s num.names$ 'numnames := + numnames 'namesleft := + { namesleft #0 > } + { s nameptr + "{vv~}{ll}" format.name$ + 't := + nameptr #1 > + { + namesleft #1 > + { ", " * t * } + { + s nameptr "{ll}" format.name$ duplicate$ "others" = + { 't := } + { pop$ } + if$ + t "others" = + { + " " * bbl.etal * + } + { + numnames #2 > + { "," * } + 'skip$ + if$ + bbl.and + space.word * t * + } + if$ + } + if$ + } + 't + if$ + nameptr #1 + 'nameptr := + namesleft #1 - 'namesleft := + } + while$ +} + +FUNCTION {author.editor.key.full} +{ author empty$ + { editor empty$ + { key empty$ + { cite$ #1 #3 substring$ } + 'key + if$ + } + { editor format.full.names } + if$ + } + { author format.full.names } + if$ +} + +FUNCTION {author.key.full} +{ author empty$ + { key empty$ + { cite$ #1 #3 substring$ } + 'key + if$ + } + { author format.full.names } + if$ +} + +FUNCTION {editor.key.full} +{ editor empty$ + { key empty$ + { cite$ #1 #3 substring$ } + 'key + if$ + } + { editor format.full.names } + if$ +} + +FUNCTION {make.full.names} +{ type$ "book" = + type$ "inbook" = + or + 'author.editor.key.full + { type$ "proceedings" = + 'editor.key.full + 'author.key.full + if$ + } + if$ +} + +FUNCTION {output.bibitem} +{ newline$ + "\bibitem[{" write$ + label write$ + ")" make.full.names duplicate$ short.list = + { pop$ } + { * } + if$ + "}]{" * write$ + cite$ write$ + "}" write$ + newline$ + "" + before.all 'output.state := +} + +FUNCTION {n.dashify} +{ + 't := + "" + { t empty$ not } + { t #1 #1 substring$ "-" = + { t #1 #2 substring$ "--" = not + { "--" * + t #2 global.max$ substring$ 't := + } + { { t #1 #1 substring$ "-" = } + { "-" * + t #2 global.max$ substring$ 't := + } + while$ + } + if$ + } + { t #1 #1 substring$ * + t #2 global.max$ substring$ 't := + } + if$ + } + while$ +} + +FUNCTION {word.in} +{ bbl.in capitalize + ":" * + " " * } + +FUNCTION {format.date} +{ year "year" bibinfo.check duplicate$ empty$ + { + "empty year in " cite$ * "; set to ????" * warning$ + pop$ "????" + } + 'skip$ + if$ + extra.label * + before.all 'output.state := + ", " swap$ * +} +FUNCTION {format.btitle} +{ title "title" bibinfo.check + duplicate$ empty$ 'skip$ + { + } + if$ +} +FUNCTION {either.or.check} +{ empty$ + 'pop$ + { "can't use both " swap$ * " fields in " * cite$ * warning$ } + if$ +} +FUNCTION {format.bvolume} +{ volume empty$ + { "" } + { bbl.volume volume tie.or.space.prefix + "volume" bibinfo.check * * + series "series" bibinfo.check + duplicate$ empty$ 'pop$ + { emphasize ", " * swap$ * } + if$ + "volume and number" number either.or.check + } + if$ +} +FUNCTION {format.number.series} +{ volume empty$ + { number empty$ + { series field.or.null } + { series empty$ + { number "number" bibinfo.check } + { output.state mid.sentence = + { bbl.number } + { bbl.number capitalize } + if$ + number tie.or.space.prefix "number" bibinfo.check * * + bbl.in space.word * + series "series" bibinfo.check * + } + if$ + } + if$ + } + { "" } + if$ +} +FUNCTION {is.num} +{ chr.to.int$ + duplicate$ "0" chr.to.int$ < not + swap$ "9" chr.to.int$ > not and +} + +FUNCTION {extract.num} +{ duplicate$ 't := + "" 's := + { t empty$ not } + { t #1 #1 substring$ + t #2 global.max$ substring$ 't := + duplicate$ is.num + { s swap$ * 's := } + { pop$ "" 't := } + if$ + } + while$ + s empty$ + 'skip$ + { pop$ s } + if$ +} + +FUNCTION {convert.edition} +{ extract.num "l" change.case$ 's := + s "first" = s "1" = or + { bbl.first 't := } + { s "second" = s "2" = or + { bbl.second 't := } + { s "third" = s "3" = or + { bbl.third 't := } + { s "fourth" = s "4" = or + { bbl.fourth 't := } + { s "fifth" = s "5" = or + { bbl.fifth 't := } + { s #1 #1 substring$ is.num + { s eng.ord 't := } + { edition 't := } + if$ + } + if$ + } + if$ + } + if$ + } + if$ + } + if$ + t +} + +FUNCTION {format.edition} +{ edition duplicate$ empty$ 'skip$ + { + convert.edition + output.state mid.sentence = + { "l" } + { "t" } + if$ change.case$ + "edition" bibinfo.check + " " * bbl.edition * + } + if$ +} +INTEGERS { multiresult } +FUNCTION {multi.page.check} +{ 't := + #0 'multiresult := + { multiresult not + t empty$ not + and + } + { t #1 #1 substring$ + duplicate$ "-" = + swap$ duplicate$ "," = + swap$ "+" = + or or + { #1 'multiresult := } + { t #2 global.max$ substring$ 't := } + if$ + } + while$ + multiresult +} +FUNCTION {format.pages} +{ pages duplicate$ empty$ 'skip$ + { duplicate$ multi.page.check + { + bbl.pages swap$ + n.dashify + } + { + bbl.page swap$ + } + if$ + tie.or.space.prefix + "pages" bibinfo.check + * * + } + if$ +} +FUNCTION {format.journal.pages} +{ pages duplicate$ empty$ 'pop$ + { swap$ duplicate$ empty$ + { pop$ pop$ format.pages } + { + ", " * + swap$ + n.dashify + "pages" bibinfo.check + * + } + if$ + } + if$ +} +FUNCTION {format.journal.eid} +{ eid "eid" bibinfo.check + duplicate$ empty$ 'pop$ + { swap$ duplicate$ empty$ 'skip$ + { + ", " * + } + if$ + swap$ * + } + if$ +} +FUNCTION {format.vol.num.pages} +{ volume field.or.null + duplicate$ empty$ 'skip$ + { + "volume" bibinfo.check + } + if$ + number "number" bibinfo.check duplicate$ empty$ 'skip$ + { + swap$ duplicate$ empty$ + { "there's a number but no volume in " cite$ * warning$ } + 'skip$ + if$ + swap$ + "(" swap$ * ")" * + } + if$ * + eid empty$ + { format.journal.pages } + { format.journal.eid } + if$ +} + +FUNCTION {format.chapter.pages} +{ chapter empty$ + 'format.pages + { type empty$ + { bbl.chapter } + { type "l" change.case$ + "type" bibinfo.check + } + if$ + chapter tie.or.space.prefix + "chapter" bibinfo.check + * * + pages empty$ + 'skip$ + { ", " * format.pages * } + if$ + } + if$ +} + +FUNCTION {format.booktitle} +{ + booktitle "booktitle" bibinfo.check +} +FUNCTION {format.in.ed.booktitle} +{ format.booktitle duplicate$ empty$ 'skip$ + { + editor "editor" format.names.ed duplicate$ empty$ 'pop$ + { + " " * + get.bbl.editor + capitalize + "(" swap$ * "), " * + * swap$ + * } + if$ + word.in swap$ * + } + if$ +} +FUNCTION {format.thesis.type} +{ type duplicate$ empty$ + 'pop$ + { swap$ pop$ + "t" change.case$ "type" bibinfo.check + } + if$ +} +FUNCTION {format.tr.number} +{ number "number" bibinfo.check + type duplicate$ empty$ + { pop$ bbl.techrep } + 'skip$ + if$ + "type" bibinfo.check + swap$ duplicate$ empty$ + { pop$ "t" change.case$ } + { tie.or.space.prefix * * } + if$ +} +FUNCTION {format.article.crossref} +{ + word.in + " \cite{" * crossref * "}" * +} +FUNCTION {format.book.crossref} +{ volume duplicate$ empty$ + { "empty volume in " cite$ * "'s crossref of " * crossref * warning$ + pop$ word.in + } + { bbl.volume + capitalize + swap$ tie.or.space.prefix "volume" bibinfo.check * * bbl.of space.word * + } + if$ + " \cite{" * crossref * "}" * +} +FUNCTION {format.incoll.inproc.crossref} +{ + word.in + " \cite{" * crossref * "}" * +} +FUNCTION {format.org.or.pub} +{ 't := + "" + address empty$ t empty$ and + 'skip$ + { + t empty$ + { address "address" bibinfo.check * + } + { t * + address empty$ + 'skip$ + { ", " * address "address" bibinfo.check * } + if$ + } + if$ + } + if$ +} +FUNCTION {format.publisher.address} +{ publisher "publisher" bibinfo.warn format.org.or.pub +} + +FUNCTION {format.organization.address} +{ organization "organization" bibinfo.check format.org.or.pub +} + +FUNCTION {article} +{ output.bibitem + format.authors "author" output.check + author format.key output + format.date "year" output.check + date.block + format.title "title" output.check + new.sentence + crossref missing$ + { + journal + "journal" bibinfo.check + "journal" output.check + add.blank + format.vol.num.pages output + } + { format.article.crossref output.nonnull + format.pages output + } + if$ + format.note output + fin.entry +} +FUNCTION {book} +{ output.bibitem + author empty$ + { format.editors "author and editor" output.check + editor format.key output + } + { format.authors output.nonnull + crossref missing$ + { "author and editor" editor either.or.check } + 'skip$ + if$ + } + if$ + format.date "year" output.check + date.block + format.btitle "title" output.check + crossref missing$ + { format.bvolume output + new.sentence + format.number.series output + format.publisher.address output + } + { + new.sentence + format.book.crossref output.nonnull + } + if$ + format.edition output + format.note output + fin.entry +} +FUNCTION {booklet} +{ output.bibitem + format.authors output + author format.key output + format.date "year" output.check + date.block + format.title "title" output.check + new.sentence + howpublished "howpublished" bibinfo.check output + address "address" bibinfo.check output + format.note output + fin.entry +} + +FUNCTION {inbook} +{ output.bibitem + author empty$ + { format.editors "author and editor" output.check + editor format.key output + } + { format.authors output.nonnull + crossref missing$ + { "author and editor" editor either.or.check } + 'skip$ + if$ + } + if$ + format.date "year" output.check + date.block + format.btitle "title" output.check + crossref missing$ + { + format.bvolume output + format.chapter.pages "chapter and pages" output.check + new.sentence + format.number.series output + format.publisher.address output + } + { + format.chapter.pages "chapter and pages" output.check + new.sentence + format.book.crossref output.nonnull + } + if$ + format.edition output + format.note output + fin.entry +} + +FUNCTION {incollection} +{ output.bibitem + format.authors "author" output.check + author format.key output + format.date "year" output.check + date.block + format.title "title" output.check + new.sentence + crossref missing$ + { format.in.ed.booktitle "booktitle" output.check + format.bvolume output + format.number.series output + format.chapter.pages output + format.publisher.address output + format.edition output + } + { format.incoll.inproc.crossref output.nonnull + format.chapter.pages output + } + if$ + format.note output + fin.entry +} +FUNCTION {inproceedings} +{ output.bibitem + format.authors "author" output.check + author format.key output + format.date "year" output.check + date.block + format.title "title" output.check + new.sentence + crossref missing$ + { format.in.ed.booktitle "booktitle" output.check + format.bvolume output + format.number.series output + format.pages output + publisher empty$ + { format.organization.address output } + { organization "organization" bibinfo.check output + format.publisher.address output + } + if$ + } + { format.incoll.inproc.crossref output.nonnull + format.pages output + } + if$ + format.note output + fin.entry +} +FUNCTION {conference} { inproceedings } +FUNCTION {manual} +{ output.bibitem + format.authors output + author format.key output + format.date "year" output.check + date.block + format.btitle "title" output.check + new.sentence + organization "organization" bibinfo.check output + address "address" bibinfo.check output + format.edition output + format.note output + fin.entry +} + +FUNCTION {mastersthesis} +{ output.bibitem + format.authors "author" output.check + author format.key output + format.date "year" output.check + date.block + format.title + "title" output.check + new.sentence + bbl.mthesis format.thesis.type output.nonnull + school "school" bibinfo.warn output + address "address" bibinfo.check output + format.note output + fin.entry +} + +FUNCTION {misc} +{ output.bibitem + format.authors output + author format.key output + format.date "year" output.check + date.block + format.title output + new.sentence + howpublished "howpublished" bibinfo.check output + format.note output + fin.entry +} +FUNCTION {phdthesis} +{ output.bibitem + format.authors "author" output.check + author format.key output + format.date "year" output.check + date.block + format.title + "title" output.check + new.sentence + bbl.phdthesis format.thesis.type output.nonnull + school "school" bibinfo.warn output + address "address" bibinfo.check output + format.note output + fin.entry +} + +FUNCTION {proceedings} +{ output.bibitem + format.editors output + editor format.key output + format.date "year" output.check + date.block + format.btitle "title" output.check + format.bvolume output + format.number.series output + publisher empty$ + { format.organization.address output } + { organization "organization" bibinfo.check output + format.publisher.address output + } + if$ + format.note output + fin.entry +} + +FUNCTION {techreport} +{ output.bibitem + format.authors "author" output.check + author format.key output + format.date "year" output.check + date.block + format.title + "title" output.check + new.sentence + format.tr.number output.nonnull + institution "institution" bibinfo.warn output + address "address" bibinfo.check output + format.note output + fin.entry +} + +FUNCTION {unpublished} +{ output.bibitem + format.authors "author" output.check + author format.key output + format.date "year" output.check + date.block + format.title "title" output.check + format.note "note" output.check + fin.entry +} + +FUNCTION {default.type} { misc } +READ +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 {format.lab.names} +{ 's := + "" 't := + s #1 "{vv~}{ll}" format.name$ + s num.names$ duplicate$ + #2 > + { pop$ + " " * bbl.etal * + } + { #2 < + 'skip$ + { s #2 "{ff }{vv }{ll}{ jj}" format.name$ "others" = + { + " " * bbl.etal * + } + { bbl.and space.word * s #2 "{vv~}{ll}" format.name$ + * } + if$ + } + if$ + } + if$ +} + +FUNCTION {author.key.label} +{ author empty$ + { key empty$ + { cite$ #1 #3 substring$ } + 'key + if$ + } + { author format.lab.names } + if$ +} + +FUNCTION {author.editor.key.label} +{ author empty$ + { editor empty$ + { key empty$ + { cite$ #1 #3 substring$ } + 'key + if$ + } + { editor format.lab.names } + if$ + } + { author format.lab.names } + if$ +} + +FUNCTION {editor.key.label} +{ editor empty$ + { key empty$ + { cite$ #1 #3 substring$ } + 'key + if$ + } + { editor format.lab.names } + if$ +} + +FUNCTION {calc.short.authors} +{ type$ "book" = + type$ "inbook" = + or + 'author.editor.key.label + { type$ "proceedings" = + 'editor.key.label + 'author.key.label + if$ + } + if$ + 'short.list := +} + +FUNCTION {calc.label} +{ calc.short.authors + short.list + "(" + * + year duplicate$ empty$ + short.list key field.or.null = or + { pop$ "" } + 'skip$ + if$ + * + 'label := +} + +FUNCTION {sort.format.names} +{ 's := + #1 'nameptr := + "" + s num.names$ 'numnames := + numnames 'namesleft := + { namesleft #0 > } + { s nameptr + "{vv{ } }{ll{ }}{ f{ }}{ jj{ }}" + format.name$ 't := + nameptr #1 > + { + " " * + namesleft #1 = t "others" = and + { "zzzzz" * } + { t sortify * } + if$ + } + { 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 sort.format.names } + if$ +} +FUNCTION {author.editor.sort} +{ author empty$ + { editor empty$ + { key empty$ + { "to sort, need author, editor, or key in " cite$ * warning$ + "" + } + { key sortify } + if$ + } + { editor sort.format.names } + if$ + } + { author sort.format.names } + if$ +} +FUNCTION {editor.sort} +{ editor empty$ + { key empty$ + { "to sort, need editor or key in " cite$ * warning$ + "" + } + { key sortify } + if$ + } + { editor sort.format.names } + if$ +} +FUNCTION {presort} +{ calc.label + label sortify + " " + * + type$ "book" = + type$ "inbook" = + or + 'author.editor.sort + { type$ "proceedings" = + 'editor.sort + 'author.sort + if$ + } + if$ + #1 entry.max$ substring$ + 'sort.label := + sort.label + * + " " + * + title field.or.null + sort.format.title + * + #1 entry.max$ substring$ + 'sort.key$ := +} + +ITERATE {presort} +SORT +STRINGS { last.label next.extra } +INTEGERS { last.extra.num number.label } +FUNCTION {initialize.extra.label.stuff} +{ #0 int.to.chr$ 'last.label := + "" 'next.extra := + #0 'last.extra.num := + #0 'number.label := +} +FUNCTION {forward.pass} +{ last.label label = + { last.extra.num #1 + 'last.extra.num := + last.extra.num int.to.chr$ 'extra.label := + } + { "a" chr.to.int$ 'last.extra.num := + "" 'extra.label := + label 'last.label := + } + if$ + number.label #1 + 'number.label := +} +FUNCTION {reverse.pass} +{ next.extra "b" = + { "a" 'extra.label := } + 'skip$ + if$ + extra.label 'next.extra := + extra.label + duplicate$ empty$ + 'skip$ + { "{\natexlab{" swap$ * "}}" * } + if$ + 'extra.label := + label extra.label * 'label := +} +EXECUTE {initialize.extra.label.stuff} +ITERATE {forward.pass} +REVERSE {reverse.pass} +FUNCTION {bib.sort.order} +{ sort.label + " " + * + year field.or.null sortify + * + " " + * + title field.or.null + sort.format.title + * + #1 entry.max$ substring$ + 'sort.key$ := +} +ITERATE {bib.sort.order} +SORT +FUNCTION {begin.bib} +{ preamble$ empty$ + 'skip$ + { preamble$ write$ newline$ } + if$ + "\begin{thebibliography}{" number.label int.to.str$ * "}" * + write$ newline$ + "\providecommand{\natexlab}[1]{#1}" + write$ newline$ +} +EXECUTE {begin.bib} +EXECUTE {init.state.consts} +ITERATE {call.type$} +FUNCTION {end.bib} +{ newline$ + "\end{thebibliography}" write$ newline$ +} +EXECUTE {end.bib} +%% End of customized bst file +%% +%% End of file `agecon.bst'. diff --git a/Master/texmf-dist/bibtex/bst/economic/apecon.bst b/Master/texmf-dist/bibtex/bst/economic/apecon.bst new file mode 100644 index 00000000000..ef5d0678e7e --- /dev/null +++ b/Master/texmf-dist/bibtex/bst/economic/apecon.bst @@ -0,0 +1,1445 @@ +%%% journal "Applied Economics" (apecon) +%%% bibliography style for use with LaTeX2e +%%% version: 1.0 (14 April 2008) +%%% license: LaTeX Project Public License (see below) +%%% This file was created with makebst (see below) and modified +%%% by Arne Henningsen. +%%% Note: This is an unofficial style file that may not fully comply +%%% with the reference guidelines of "Applied Economics" in every detail. +%%% Please report any problems to <ahenningsen<at>email<dot>uni-kiel<dot>de>. +%%% Further information is available at +%%% http://www.uni-kiel.de/agrarpol/ahenningsen/latex-bibtex.html +%%% +%%% This BibTeX style should be used with the corresponding +%%% LaTeX class "apecon" (apecon.cls). +%%% Otherwise, the following line has to be added to the LaTeX preamble: +%%% \usepackage[authoryear]{natbib} +%%% +%% +%% This is file `apecon.bst', +%% generated with the docstrip utility. +%% +%% The original source files were: +%% +%% merlin.mbs (with options: `ay,nat,nm-rev,jnrlst,keyxyr,dt-beg,yr-par,yrp-x,note-yr,vol-bf,vnum-x,volp-com,num-xser,pre-pub,edpar,bkedcap,edby,edbyw,edcap,blk-com,pp,ed,abr,xedn,and-xcom,etal-it,em-it,nfss,') +%% ---------------------------------------- +%% *** BibTeX style for the journal 'Applied Economics' *** +%% +%% Copyright 1994-2004 Patrick W Daly + % =============================================================== + % IMPORTANT NOTICE: + % This bibliographic style (bst) file has been generated from one or + % more master bibliographic style (mbs) files, listed above. + % + % This generated file can be redistributed and/or modified under the terms + % of the LaTeX Project Public License Distributed from CTAN + % archives in directory macros/latex/base/lppl.txt; either + % version 1 of the License, or any later version. + % =============================================================== + % Name and version information of the main mbs file: + % \ProvidesFile{merlin.mbs}[2004/02/09 4.13 (PWD, AO, DPC)] + % For use with BibTeX version 0.99a or later + %------------------------------------------------------------------- + % This bibliography style file is intended for texts in ENGLISH + % This is an author-year citation style bibliography. As such, it is + % non-standard LaTeX, and requires a special package file to function properly. + % Such a package is natbib.sty by Patrick W. Daly + % The form of the \bibitem entries is + % \bibitem[Jones et al.(1990)]{key}... + % \bibitem[Jones et al.(1990)Jones, Baker, and Smith]{key}... + % The essential feature is that the label (the part in brackets) consists + % of the author names, as they should appear in the citation, with the year + % in parentheses following. There must be no space before the opening + % parenthesis! + % With natbib v5.3, a full list of authors may also follow the year. + % In natbib.sty, it is possible to define the type of enclosures that is + % really wanted (brackets or parentheses), but in either case, there must + % be parentheses in the label. + % The \cite command functions as follows: + % \citet{key} ==>> Jones et al. (1990) + % \citet*{key} ==>> Jones, Baker, and Smith (1990) + % \citep{key} ==>> (Jones et al., 1990) + % \citep*{key} ==>> (Jones, Baker, and Smith, 1990) + % \citep[chap. 2]{key} ==>> (Jones et al., 1990, chap. 2) + % \citep[e.g.][]{key} ==>> (e.g. Jones et al., 1990) + % \citep[e.g.][p. 32]{key} ==>> (e.g. Jones et al., p. 32) + % \citeauthor{key} ==>> Jones et al. + % \citeauthor*{key} ==>> Jones, Baker, and Smith + % \citeyear{key} ==>> 1990 + %--------------------------------------------------------------------- + +ENTRY + { address + author + booktitle + chapter + edition + editor + eid + howpublished + institution + journal + key + month + note + number + organization + pages + publisher + school + series + title + type + volume + year + } + {} + { label extra.label sort.label short.list } +INTEGERS { output.state before.all mid.sentence after.sentence after.block } +FUNCTION {init.state.consts} +{ #0 'before.all := + #1 'mid.sentence := + #2 'after.sentence := + #3 'after.block := +} +STRINGS { s t} +FUNCTION {output.nonnull} +{ 's := + output.state mid.sentence = + { ", " * write$ } + { output.state after.block = + { add.period$ write$ + newline$ + "\newblock " write$ + } + { output.state before.all = + 'write$ + { add.period$ " " * write$ } + if$ + } + if$ + mid.sentence 'output.state := + } + if$ + s +} +FUNCTION {output} +{ duplicate$ empty$ + 'pop$ + 'output.nonnull + if$ +} +FUNCTION {output.check} +{ 't := + duplicate$ empty$ + { pop$ "empty " t * " in " * cite$ * warning$ } + 'output.nonnull + if$ +} +FUNCTION {fin.entry} +{ add.period$ + write$ + newline$ +} + +FUNCTION {new.block} +{ output.state before.all = + 'skip$ + { after.block 'output.state := } + if$ +} +FUNCTION {new.sentence} +{ output.state after.block = + 'skip$ + { output.state before.all = + 'skip$ + { after.sentence 'output.state := } + if$ + } + if$ +} +FUNCTION {add.blank} +{ " " * before.all 'output.state := +} + +FUNCTION {date.block} +{ + add.blank +} + +FUNCTION {not} +{ { #0 } + { #1 } + if$ +} +FUNCTION {and} +{ 'skip$ + { pop$ #0 } + if$ +} +FUNCTION {or} +{ { pop$ #1 } + 'skip$ + if$ +} +FUNCTION {new.block.checkb} +{ empty$ + swap$ empty$ + and + 'skip$ + 'new.block + if$ +} +FUNCTION {field.or.null} +{ duplicate$ empty$ + { pop$ "" } + 'skip$ + if$ +} +FUNCTION {emphasize} +{ duplicate$ empty$ + { pop$ "" } + { "\textit{" swap$ * "}" * } + if$ +} +FUNCTION {bolden} +{ duplicate$ empty$ + { pop$ "" } + { "\textbf{" swap$ * "}" * } + if$ +} +FUNCTION {tie.or.space.prefix} +{ duplicate$ text.length$ #3 < + { "~" } + { " " } + if$ + swap$ +} + +FUNCTION {capitalize} +{ "u" change.case$ "t" change.case$ } + +FUNCTION {space.word} +{ " " swap$ * " " * } + % Here are the language-specific definitions for explicit words. + % Each function has a name bbl.xxx where xxx is the English word. + % The language selected here is ENGLISH +FUNCTION {bbl.and} +{ "and"} + +FUNCTION {bbl.etal} +{ "et~al." } + +FUNCTION {bbl.editors} +{ "eds." } + +FUNCTION {bbl.editor} +{ "ed." } + +FUNCTION {bbl.edby} +{ "edited by" } + +FUNCTION {bbl.edition} +{ "edn." } + +FUNCTION {bbl.volume} +{ "vol." } + +FUNCTION {bbl.of} +{ "of" } + +FUNCTION {bbl.number} +{ "no." } + +FUNCTION {bbl.nr} +{ "no." } + +FUNCTION {bbl.in} +{ "in" } + +FUNCTION {bbl.pages} +{ "pp." } + +FUNCTION {bbl.page} +{ "p." } + +FUNCTION {bbl.chapter} +{ "chap." } + +FUNCTION {bbl.techrep} +{ "Tech. Rep." } + +FUNCTION {bbl.mthesis} +{ "Master's thesis" } + +FUNCTION {bbl.phdthesis} +{ "Ph.D. thesis" } + +MACRO {jan} {"Jan."} + +MACRO {feb} {"Feb."} + +MACRO {mar} {"Mar."} + +MACRO {apr} {"Apr."} + +MACRO {may} {"May"} + +MACRO {jun} {"Jun."} + +MACRO {jul} {"Jul."} + +MACRO {aug} {"Aug."} + +MACRO {sep} {"Sep."} + +MACRO {oct} {"Oct."} + +MACRO {nov} {"Nov."} + +MACRO {dec} {"Dec."} + +MACRO {acmcs} {"ACM Computing Surveys"} + +MACRO {acta} {"Acta Informatica"} + +MACRO {cacm} {"Communications of the ACM"} + +MACRO {ibmjrd} {"IBM Journal of Research and Development"} + +MACRO {ibmsj} {"IBM Systems Journal"} + +MACRO {ieeese} {"IEEE Transactions on Software Engineering"} + +MACRO {ieeetc} {"IEEE Transactions on Computers"} + +MACRO {ieeetcad} + {"IEEE Transactions on Computer-Aided Design of Integrated Circuits"} + +MACRO {ipl} {"Information Processing Letters"} + +MACRO {jacm} {"Journal of the ACM"} + +MACRO {jcss} {"Journal of Computer and System Sciences"} + +MACRO {scp} {"Science of Computer Programming"} + +MACRO {sicomp} {"SIAM Journal on Computing"} + +MACRO {tocs} {"ACM Transactions on Computer Systems"} + +MACRO {tods} {"ACM Transactions on Database Systems"} + +MACRO {tog} {"ACM Transactions on Graphics"} + +MACRO {toms} {"ACM Transactions on Mathematical Software"} + +MACRO {toois} {"ACM Transactions on Office Information Systems"} + +MACRO {toplas} {"ACM Transactions on Programming Languages and Systems"} + +MACRO {tcs} {"Theoretical Computer Science"} +FUNCTION {bibinfo.check} +{ swap$ + duplicate$ missing$ + { + pop$ pop$ + "" + } + { duplicate$ empty$ + { + swap$ pop$ + } + { swap$ + pop$ + } + if$ + } + if$ +} +FUNCTION {bibinfo.warn} +{ swap$ + duplicate$ missing$ + { + swap$ "missing " swap$ * " in " * cite$ * warning$ pop$ + "" + } + { duplicate$ empty$ + { + swap$ "empty " swap$ * " in " * cite$ * warning$ + } + { swap$ + pop$ + } + if$ + } + if$ +} +STRINGS { bibinfo} +INTEGERS { nameptr namesleft numnames } + +FUNCTION {format.names} +{ 'bibinfo := + duplicate$ empty$ 'skip$ { + 's := + "" 't := + #1 'nameptr := + s num.names$ 'numnames := + numnames 'namesleft := + { namesleft #0 > } + { s nameptr + "{vv~}{ll}{, f.}{, jj}" + format.name$ + bibinfo bibinfo.check + 't := + nameptr #1 > + { + namesleft #1 > + { ", " * t * } + { + s nameptr "{ll}" format.name$ duplicate$ "others" = + { 't := } + { pop$ } + if$ + t "others" = + { + " " * bbl.etal emphasize * + } + { + bbl.and + space.word * t * + } + if$ + } + if$ + } + 't + if$ + nameptr #1 + 'nameptr := + namesleft #1 - 'namesleft := + } + while$ + } if$ +} +FUNCTION {format.names.ed} +{ + 'bibinfo := + duplicate$ empty$ 'skip$ { + 's := + "" 't := + #1 'nameptr := + s num.names$ 'numnames := + numnames 'namesleft := + { namesleft #0 > } + { s nameptr + "{f.~}{vv~}{ll}{, jj}" + format.name$ + bibinfo bibinfo.check + 't := + nameptr #1 > + { + namesleft #1 > + { ", " * t * } + { + s nameptr "{ll}" format.name$ duplicate$ "others" = + { 't := } + { pop$ } + if$ + t "others" = + { + + " " * bbl.etal emphasize * + } + { + bbl.and + space.word * t * + } + if$ + } + if$ + } + 't + if$ + nameptr #1 + 'nameptr := + namesleft #1 - 'namesleft := + } + while$ + } if$ +} +FUNCTION {format.key} +{ empty$ + { key field.or.null } + { "" } + if$ +} + +FUNCTION {format.authors} +{ author "author" format.names +} +FUNCTION {get.bbl.editor} +{ editor num.names$ #1 > 'bbl.editors 'bbl.editor if$ } + +FUNCTION {format.editors} +{ editor "editor" format.names duplicate$ empty$ 'skip$ + { + " " * + get.bbl.editor + capitalize + "(" swap$ * ")" * + * + } + if$ +} +FUNCTION {format.note} +{ + note empty$ + { "" } + { note #1 #1 substring$ + duplicate$ "{" = + 'skip$ + { output.state mid.sentence = + { "l" } + { "u" } + if$ + change.case$ + } + if$ + note #2 global.max$ substring$ * "note" bibinfo.check + } + if$ +} + +FUNCTION {format.title} +{ title + duplicate$ empty$ 'skip$ + { "t" change.case$ } + if$ + "title" bibinfo.check +} +FUNCTION {format.full.names} +{'s := + "" 't := + #1 'nameptr := + s num.names$ 'numnames := + numnames 'namesleft := + { namesleft #0 > } + { s nameptr + "{vv~}{ll}" format.name$ + 't := + nameptr #1 > + { + namesleft #1 > + { ", " * t * } + { + s nameptr "{ll}" format.name$ duplicate$ "others" = + { 't := } + { pop$ } + if$ + t "others" = + { + " " * bbl.etal emphasize * + } + { + bbl.and + space.word * t * + } + if$ + } + if$ + } + 't + if$ + nameptr #1 + 'nameptr := + namesleft #1 - 'namesleft := + } + while$ +} + +FUNCTION {author.editor.key.full} +{ author empty$ + { editor empty$ + { key empty$ + { cite$ #1 #3 substring$ } + 'key + if$ + } + { editor format.full.names } + if$ + } + { author format.full.names } + if$ +} + +FUNCTION {author.key.full} +{ author empty$ + { key empty$ + { cite$ #1 #3 substring$ } + 'key + if$ + } + { author format.full.names } + if$ +} + +FUNCTION {editor.key.full} +{ editor empty$ + { key empty$ + { cite$ #1 #3 substring$ } + 'key + if$ + } + { editor format.full.names } + if$ +} + +FUNCTION {make.full.names} +{ type$ "book" = + type$ "inbook" = + or + 'author.editor.key.full + { type$ "proceedings" = + 'editor.key.full + 'author.key.full + if$ + } + if$ +} + +FUNCTION {output.bibitem} +{ newline$ + "\bibitem[{" write$ + label write$ + ")" make.full.names duplicate$ short.list = + { pop$ } + { * } + if$ + "}]{" * write$ + cite$ write$ + "}" write$ + newline$ + "" + before.all 'output.state := +} + +FUNCTION {n.dashify} +{ + 't := + "" + { t empty$ not } + { t #1 #1 substring$ "-" = + { t #1 #2 substring$ "--" = not + { "--" * + t #2 global.max$ substring$ 't := + } + { { t #1 #1 substring$ "-" = } + { "-" * + t #2 global.max$ substring$ 't := + } + while$ + } + if$ + } + { t #1 #1 substring$ * + t #2 global.max$ substring$ 't := + } + if$ + } + while$ +} + +FUNCTION {word.in} +{ bbl.in + " " * } + +FUNCTION {format.date} +{ year "year" bibinfo.check duplicate$ empty$ + { + "empty year in " cite$ * "; set to ????" * warning$ + pop$ "????" + } + 'skip$ + if$ + extra.label * + before.all 'output.state := + " (" swap$ * ")" * +} +FUNCTION {format.btitle} +{ title "title" bibinfo.check + duplicate$ empty$ 'skip$ + { + emphasize + } + if$ +} +FUNCTION {either.or.check} +{ empty$ + 'pop$ + { "can't use both " swap$ * " fields in " * cite$ * warning$ } + if$ +} +FUNCTION {format.bvolume} +{ volume empty$ + { "" } + { bbl.volume volume tie.or.space.prefix + "volume" bibinfo.check * * + series "series" bibinfo.check + duplicate$ empty$ 'pop$ + { swap$ bbl.of space.word * swap$ + emphasize * } + if$ + "volume and number" number either.or.check + } + if$ +} +FUNCTION {format.number.series} +{ volume empty$ + { number empty$ + { series field.or.null } + { series empty$ + { number "number" bibinfo.check } + { output.state mid.sentence = + { bbl.number } + { bbl.number capitalize } + if$ + number tie.or.space.prefix "number" bibinfo.check * * + bbl.in space.word * + series "series" bibinfo.check * + } + if$ + } + if$ + } + { "" } + if$ +} + +FUNCTION {format.edition} +{ edition duplicate$ empty$ 'skip$ + { + output.state mid.sentence = + { "l" } + { "t" } + if$ change.case$ + "edition" bibinfo.check + " " * bbl.edition * + } + if$ +} +INTEGERS { multiresult } +FUNCTION {multi.page.check} +{ 't := + #0 'multiresult := + { multiresult not + t empty$ not + and + } + { t #1 #1 substring$ + duplicate$ "-" = + swap$ duplicate$ "," = + swap$ "+" = + or or + { #1 'multiresult := } + { t #2 global.max$ substring$ 't := } + if$ + } + while$ + multiresult +} +FUNCTION {format.pages} +{ pages duplicate$ empty$ 'skip$ + { duplicate$ multi.page.check + { + bbl.pages swap$ + n.dashify + } + { + bbl.page swap$ + } + if$ + tie.or.space.prefix + "pages" bibinfo.check + * * + } + if$ +} +FUNCTION {format.journal.pages} +{ pages duplicate$ empty$ 'pop$ + { swap$ duplicate$ empty$ + { pop$ pop$ format.pages } + { + ", " * + swap$ + n.dashify + "pages" bibinfo.check + * + } + if$ + } + if$ +} +FUNCTION {format.journal.eid} +{ eid "eid" bibinfo.check + duplicate$ empty$ 'pop$ + { swap$ duplicate$ empty$ 'skip$ + { + ", " * + } + if$ + swap$ * + } + if$ +} +FUNCTION {format.vol.num.pages} +{ volume field.or.null + duplicate$ empty$ 'skip$ + { + "volume" bibinfo.check + } + if$ + bolden + eid empty$ + { format.journal.pages } + { format.journal.eid } + if$ +} + +FUNCTION {format.chapter.pages} +{ chapter empty$ + 'format.pages + { type empty$ + { bbl.chapter } + { type "l" change.case$ + "type" bibinfo.check + } + if$ + chapter tie.or.space.prefix + "chapter" bibinfo.check + * * + pages empty$ + 'skip$ + { ", " * format.pages * } + if$ + } + if$ +} + +FUNCTION {format.booktitle} +{ + booktitle "booktitle" bibinfo.check + emphasize +} +FUNCTION {format.in.ed.booktitle} +{ format.booktitle duplicate$ empty$ 'skip$ + { + editor "editor" format.names.ed duplicate$ empty$ 'pop$ + { + get.bbl.editor + capitalize + "(" swap$ * ")" * + " " * swap$ * + swap$ + " " * swap$ + * } + if$ + word.in swap$ * + } + if$ +} +FUNCTION {format.thesis.type} +{ type duplicate$ empty$ + 'pop$ + { swap$ pop$ + "t" change.case$ "type" bibinfo.check + } + if$ +} +FUNCTION {format.tr.number} +{ number "number" bibinfo.check + type duplicate$ empty$ + { pop$ bbl.techrep } + 'skip$ + if$ + "type" bibinfo.check + swap$ duplicate$ empty$ + { pop$ "t" change.case$ } + { tie.or.space.prefix * * } + if$ +} +FUNCTION {format.article.crossref} +{ + word.in + " \cite{" * crossref * "}" * +} +FUNCTION {format.book.crossref} +{ volume duplicate$ empty$ + { "empty volume in " cite$ * "'s crossref of " * crossref * warning$ + pop$ word.in + } + { bbl.volume + swap$ tie.or.space.prefix "volume" bibinfo.check * * bbl.of space.word * + } + if$ + " \cite{" * crossref * "}" * +} +FUNCTION {format.incoll.inproc.crossref} +{ + word.in + " \cite{" * crossref * "}" * +} +FUNCTION {format.org.or.pub} +{ 't := + "" + address empty$ t empty$ and + 'skip$ + { + t empty$ + { address "address" bibinfo.check * + } + { t * + address empty$ + 'skip$ + { ", " * address "address" bibinfo.check * } + if$ + } + if$ + } + if$ +} +FUNCTION {format.publisher.address} +{ publisher "publisher" bibinfo.warn format.org.or.pub +} + +FUNCTION {format.organization.address} +{ organization "organization" bibinfo.check format.org.or.pub +} + +FUNCTION {article} +{ output.bibitem + format.authors "author" output.check + author format.key output + format.date "year" output.check + date.block + format.title "title" output.check + crossref missing$ + { + journal + "journal" bibinfo.check + emphasize + "journal" output.check + format.vol.num.pages output + } + { format.article.crossref output.nonnull + format.pages output + } + if$ + format.note output + fin.entry +} +FUNCTION {book} +{ output.bibitem + author empty$ + { format.editors "author and editor" output.check + editor format.key output + } + { format.authors output.nonnull + crossref missing$ + { "author and editor" editor either.or.check } + 'skip$ + if$ + } + if$ + format.date "year" output.check + date.block + format.btitle "title" output.check + crossref missing$ + { format.bvolume output + format.number.series output + format.publisher.address output + } + { + format.book.crossref output.nonnull + } + if$ + format.edition output + format.note output + fin.entry +} +FUNCTION {booklet} +{ output.bibitem + format.authors output + author format.key output + format.date "year" output.check + date.block + format.title "title" output.check + howpublished "howpublished" bibinfo.check output + address "address" bibinfo.check output + format.note output + fin.entry +} + +FUNCTION {inbook} +{ output.bibitem + author empty$ + { format.editors "author and editor" output.check + editor format.key output + } + { format.authors output.nonnull + crossref missing$ + { "author and editor" editor either.or.check } + 'skip$ + if$ + } + if$ + format.date "year" output.check + date.block + format.btitle "title" output.check + crossref missing$ + { + format.publisher.address output + format.bvolume output + format.chapter.pages "chapter and pages" output.check + format.number.series output + } + { + format.chapter.pages "chapter and pages" output.check + format.book.crossref output.nonnull + } + if$ + format.edition output + format.note output + fin.entry +} + +FUNCTION {incollection} +{ output.bibitem + format.authors "author" output.check + author format.key output + format.date "year" output.check + date.block + format.title "title" output.check + crossref missing$ + { format.in.ed.booktitle "booktitle" output.check + format.publisher.address output + format.bvolume output + format.number.series output + format.chapter.pages output + format.edition output + } + { format.incoll.inproc.crossref output.nonnull + format.chapter.pages output + } + if$ + format.note output + fin.entry +} +FUNCTION {inproceedings} +{ output.bibitem + format.authors "author" output.check + author format.key output + format.date "year" output.check + date.block + format.title "title" output.check + crossref missing$ + { format.in.ed.booktitle "booktitle" output.check + publisher empty$ + { format.organization.address output } + { organization "organization" bibinfo.check output + format.publisher.address output + } + if$ + format.bvolume output + format.number.series output + format.pages output + } + { format.incoll.inproc.crossref output.nonnull + format.pages output + } + if$ + format.note output + fin.entry +} +FUNCTION {conference} { inproceedings } +FUNCTION {manual} +{ output.bibitem + format.authors output + author format.key output + format.date "year" output.check + date.block + format.btitle "title" output.check + organization "organization" bibinfo.check output + address "address" bibinfo.check output + format.edition output + format.note output + fin.entry +} + +FUNCTION {mastersthesis} +{ output.bibitem + format.authors "author" output.check + author format.key output + format.date "year" output.check + date.block + format.btitle + "title" output.check + bbl.mthesis format.thesis.type output.nonnull + school "school" bibinfo.warn output + address "address" bibinfo.check output + format.note output + fin.entry +} + +FUNCTION {misc} +{ output.bibitem + format.authors output + author format.key output + format.date "year" output.check + date.block + format.title output + howpublished "howpublished" bibinfo.check output + format.note output + fin.entry +} +FUNCTION {phdthesis} +{ output.bibitem + format.authors "author" output.check + author format.key output + format.date "year" output.check + date.block + format.btitle + "title" output.check + bbl.phdthesis format.thesis.type output.nonnull + school "school" bibinfo.warn output + address "address" bibinfo.check output + format.note output + fin.entry +} + +FUNCTION {proceedings} +{ output.bibitem + format.editors output + editor format.key output + format.date "year" output.check + date.block + format.btitle "title" output.check + format.bvolume output + format.number.series output + publisher empty$ + { format.organization.address output } + { organization "organization" bibinfo.check output + format.publisher.address output + } + if$ + format.note output + fin.entry +} + +FUNCTION {techreport} +{ output.bibitem + format.authors "author" output.check + author format.key output + format.date "year" output.check + date.block + format.title + "title" output.check + format.tr.number output.nonnull + institution "institution" bibinfo.warn output + address "address" bibinfo.check output + format.note output + fin.entry +} + +FUNCTION {unpublished} +{ output.bibitem + format.authors "author" output.check + author format.key output + format.date "year" output.check + date.block + format.title "title" output.check + format.note "note" output.check + fin.entry +} + +FUNCTION {default.type} { misc } +READ +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 {format.lab.names} +{ 's := + "" 't := + s #1 "{vv~}{ll}" format.name$ + s num.names$ duplicate$ + #2 > + { pop$ + " " * bbl.etal emphasize * + } + { #2 < + 'skip$ + { s #2 "{ff }{vv }{ll}{ jj}" format.name$ "others" = + { + " " * bbl.etal emphasize * + } + { bbl.and space.word * s #2 "{vv~}{ll}" format.name$ + * } + if$ + } + if$ + } + if$ +} + +FUNCTION {author.key.label} +{ author empty$ + { key empty$ + { cite$ #1 #3 substring$ } + 'key + if$ + } + { author format.lab.names } + if$ +} + +FUNCTION {author.editor.key.label} +{ author empty$ + { editor empty$ + { key empty$ + { cite$ #1 #3 substring$ } + 'key + if$ + } + { editor format.lab.names } + if$ + } + { author format.lab.names } + if$ +} + +FUNCTION {editor.key.label} +{ editor empty$ + { key empty$ + { cite$ #1 #3 substring$ } + 'key + if$ + } + { editor format.lab.names } + if$ +} + +FUNCTION {calc.short.authors} +{ type$ "book" = + type$ "inbook" = + or + 'author.editor.key.label + { type$ "proceedings" = + 'editor.key.label + 'author.key.label + if$ + } + if$ + 'short.list := +} + +FUNCTION {calc.label} +{ calc.short.authors + short.list + "(" + * + year duplicate$ empty$ + short.list key field.or.null = or + { pop$ "" } + 'skip$ + if$ + * + 'label := +} + +FUNCTION {sort.format.names} +{ 's := + #1 'nameptr := + "" + s num.names$ 'numnames := + numnames 'namesleft := + { namesleft #0 > } + { s nameptr + "{vv{ } }{ll{ }}{ f{ }}{ jj{ }}" + format.name$ 't := + nameptr #1 > + { + " " * + namesleft #1 = t "others" = and + { "zzzzz" * } + { t sortify * } + if$ + } + { 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 sort.format.names } + if$ +} +FUNCTION {author.editor.sort} +{ author empty$ + { editor empty$ + { key empty$ + { "to sort, need author, editor, or key in " cite$ * warning$ + "" + } + { key sortify } + if$ + } + { editor sort.format.names } + if$ + } + { author sort.format.names } + if$ +} +FUNCTION {editor.sort} +{ editor empty$ + { key empty$ + { "to sort, need editor or key in " cite$ * warning$ + "" + } + { key sortify } + if$ + } + { editor sort.format.names } + if$ +} +FUNCTION {presort} +{ calc.label + label sortify + " " + * + type$ "book" = + type$ "inbook" = + or + 'author.editor.sort + { type$ "proceedings" = + 'editor.sort + 'author.sort + if$ + } + if$ + #1 entry.max$ substring$ + 'sort.label := + sort.label + * + " " + * + title field.or.null + sort.format.title + * + #1 entry.max$ substring$ + 'sort.key$ := +} + +ITERATE {presort} +SORT +STRINGS { last.label next.extra } +INTEGERS { last.extra.num number.label } +FUNCTION {initialize.extra.label.stuff} +{ #0 int.to.chr$ 'last.label := + "" 'next.extra := + #0 'last.extra.num := + #0 'number.label := +} +FUNCTION {forward.pass} +{ last.label label = + { last.extra.num #1 + 'last.extra.num := + last.extra.num int.to.chr$ 'extra.label := + } + { "a" chr.to.int$ 'last.extra.num := + "" 'extra.label := + label 'last.label := + } + if$ + number.label #1 + 'number.label := +} +FUNCTION {reverse.pass} +{ next.extra "b" = + { "a" 'extra.label := } + 'skip$ + if$ + extra.label 'next.extra := + extra.label + duplicate$ empty$ + 'skip$ + { "{\natexlab{" swap$ * "}}" * } + if$ + 'extra.label := + label extra.label * 'label := +} +EXECUTE {initialize.extra.label.stuff} +ITERATE {forward.pass} +REVERSE {reverse.pass} +FUNCTION {bib.sort.order} +{ sort.label + " " + * + year field.or.null sortify + * + " " + * + title field.or.null + sort.format.title + * + #1 entry.max$ substring$ + 'sort.key$ := +} +ITERATE {bib.sort.order} +SORT +FUNCTION {begin.bib} +{ preamble$ empty$ + 'skip$ + { preamble$ write$ newline$ } + if$ + "\begin{thebibliography}{" number.label int.to.str$ * "}" * + write$ newline$ + "\providecommand{\natexlab}[1]{#1}" + write$ newline$ +} +EXECUTE {begin.bib} +EXECUTE {init.state.consts} +ITERATE {call.type$} +FUNCTION {end.bib} +{ newline$ + "\end{thebibliography}" write$ newline$ +} +EXECUTE {end.bib} +%% End of customized bst file +%% +%% End of file `apecon.bst'. diff --git a/Master/texmf-dist/bibtex/bst/economic/ier.bst b/Master/texmf-dist/bibtex/bst/economic/ier.bst index d718618caae..033174e4ecd 100644 --- a/Master/texmf-dist/bibtex/bst/economic/ier.bst +++ b/Master/texmf-dist/bibtex/bst/economic/ier.bst @@ -1,7 +1,13 @@ + %% Built initially with Patrick Daly's custom-bib package and then %% modified by Doug McKee 12/2006. Email any comments or suggestions to %% Doug at dmckee@ucla.edu -%% license: LaTeX Project Public License (LPPL) +%% +%% Jan 29, 2008: Fixed in response to the suggestions of Wladimir +%% Ray who kindly pointed out that the names should be in small caps +%% and repeated names should be replaced with dashes as in the +%% Econometrica bibliography style. +%% %% %% This is file `ier.bst', %% generated with the docstrip utility. @@ -195,6 +201,16 @@ FUNCTION {emphasize} { "\emph{" swap$ * "}" * } if$ } +FUNCTION {scaps} +{ duplicate$ empty$ + { pop$ "" } + { "\textsc{" swap$ * "}" * } + if$ +} +FUNCTION {bib.name.font} +{ scaps } +FUNCTION {bib.fname.font} +{ bib.name.font } FUNCTION {tie.or.space.prefix} { duplicate$ text.length$ #3 < { "~" } @@ -394,6 +410,7 @@ FUNCTION {format.names} t "others" = { " " * bbl.etal * + bib.name.font } { bbl.and @@ -410,6 +427,10 @@ FUNCTION {format.names} } while$ } if$ + t "others" = + 'skip$ + { bib.name.font } + if$ } FUNCTION {format.names.ed} { @@ -961,10 +982,27 @@ FUNCTION {format.organization.address} { organization "organization" bibinfo.check format.org.or.pub } +STRINGS {oldname} + +FUNCTION {name.or.dash} +{ 's := + oldname empty$ + { s 'oldname := s } + { s oldname = +% { "---" } old style + { "---\hspace{-.1pt}---\hspace{-.1pt}---" } +%SPD 2000 + { s 'oldname := s } + if$ + } + if$ +} + FUNCTION {article} { output.bibitem format.authors "author" output.check author format.key output + name.or.dash format.title "title" output.check end.quote.title crossref missing$ @@ -994,8 +1032,10 @@ FUNCTION {book} author empty$ { format.editors "author and editor" output.check editor format.key output + name.or.dash } { format.authors output.nonnull + name.or.dash crossref missing$ { "author and editor" editor either.or.check } 'skip$ @@ -1021,6 +1061,7 @@ FUNCTION {booklet} { output.bibitem format.authors output author format.key output + name.or.dash format.title "title" output.check end.quote.title howpublished "howpublished" bibinfo.check output @@ -1035,8 +1076,10 @@ FUNCTION {inbook} author empty$ { format.editors "author and editor" output.check editor format.key output + name.or.dash } { format.authors output.nonnull + name.or.dash crossref missing$ { "author and editor" editor either.or.check } 'skip$ @@ -1067,6 +1110,7 @@ FUNCTION {incollection} { output.bibitem format.authors "author" output.check author format.key output + name.or.dash format.title "title" output.check end.quote.title crossref missing$ @@ -1090,6 +1134,7 @@ FUNCTION {inproceedings} { output.bibitem format.authors "author" output.check author format.key output + name.or.dash format.title "title" output.check end.quote.title crossref missing$ @@ -1116,6 +1161,7 @@ FUNCTION {manual} { output.bibitem format.authors output author format.key output + name.or.dash format.btitle "title" output.check organization "organization" bibinfo.check output address "address" bibinfo.check output @@ -1129,6 +1175,7 @@ FUNCTION {mastersthesis} { output.bibitem format.authors "author" output.check author format.key output + name.or.dash format.btitle "title" output.check bbl.mthesis format.thesis.type output.nonnull @@ -1143,6 +1190,7 @@ FUNCTION {misc} { output.bibitem format.authors output author format.key output + name.or.dash format.title output end.quote.title howpublished "howpublished" bibinfo.check output @@ -1154,6 +1202,7 @@ FUNCTION {phdthesis} { output.bibitem format.authors "author" output.check author format.key output + name.or.dash format.btitle "title" output.check bbl.phdthesis format.thesis.type output.nonnull @@ -1168,6 +1217,7 @@ FUNCTION {proceedings} { output.bibitem format.editors output editor format.key output + name.or.dash format.btitle "title" output.check format.bvolume output format.number.series output @@ -1185,6 +1235,7 @@ FUNCTION {techreport} { output.bibitem format.authors "author" output.check author format.key output + name.or.dash format.title "title" output.check end.quote.title @@ -1200,6 +1251,7 @@ FUNCTION {unpublished} { output.bibitem format.authors "author" output.check author format.key output + name.or.dash format.title "title" output.check end.quote.title diff --git a/Master/texmf-dist/bibtex/bst/economic/jpe.bst b/Master/texmf-dist/bibtex/bst/economic/jpe.bst new file mode 100644 index 00000000000..36e97c26082 --- /dev/null +++ b/Master/texmf-dist/bibtex/bst/economic/jpe.bst @@ -0,0 +1,1611 @@ +%%% Journal of Political Economy (JPE) +%%% bibliography style for use with LaTeX2e +%%% version: 1.0 (12 December 2008) +%%% license: LaTeX Project Public License (see below) +%%% This file was created with makebst (see below) +%%% by Adam Seth Litwin <aslitwin (at) jhu (dot) edu>. +%%% Note: This is an unofficial style file that may not fully comply +%%% with the JPE reference guidelines in every detail. +%%% Please report any problems at +%%% http://sourceforge.net/projects/economtex/ +%%% Further information is available at +%%% http://economtex.wiki.sourceforge.net/ +%% +%% This is file `jpe.bst', +%% generated with the docstrip utility. +%% +%% The original source files were: +%% +%% merlin.mbs (with options: `ay,nat,pres,nm-revv1,jnrlst,nmdash,nmd-3,mcite,mct-1,mct-x3,keyxyr,dt-beg,yr-per,yrp-per,note-yr,tit-qq,atit-u,vnum-sp,pp-last,num-xser,ser-vol,ser-ed,jnm-x,bkpg-x,add-pub,edby,ppx,abr,ednx,xedn,jabr,etal-xc,url,url-blk,nfss,') +%% ---------------------------------------- +%% *** a style as similar as possible to Journal of Political Economy *** +%% +%% Copyright 1994-2007 Patrick W Daly + % =============================================================== + % IMPORTANT NOTICE: + % This bibliographic style (bst) file has been generated from one or + % more master bibliographic style (mbs) files, listed above. + % + % This generated file can be redistributed and/or modified under the terms + % of the LaTeX Project Public License Distributed from CTAN + % archives in directory macros/latex/base/lppl.txt; either + % version 1 of the License, or any later version. + % =============================================================== + % Name and version information of the main mbs file: + % \ProvidesFile{merlin.mbs}[2007/04/24 4.20 (PWD, AO, DPC)] + % For use with BibTeX version 0.99a or later + %------------------------------------------------------------------- + % This bibliography style file is intended for texts in ENGLISH + % This is an author-year citation style bibliography. As such, it is + % non-standard LaTeX, and requires a special package file to function properly. + % Such a package is natbib.sty by Patrick W. Daly + % The form of the \bibitem entries is + % \bibitem[Jones et al.(1990)]{key}... + % \bibitem[Jones et al.(1990)Jones, Baker, and Smith]{key}... + % The essential feature is that the label (the part in brackets) consists + % of the author names, as they should appear in the citation, with the year + % in parentheses following. There must be no space before the opening + % parenthesis! + % With natbib v5.3, a full list of authors may also follow the year. + % In natbib.sty, it is possible to define the type of enclosures that is + % really wanted (brackets or parentheses), but in either case, there must + % be parentheses in the label. + % The \cite command functions as follows: + % \citet{key} ==>> Jones et al. (1990) + % \citet*{key} ==>> Jones, Baker, and Smith (1990) + % \citep{key} ==>> (Jones et al., 1990) + % \citep*{key} ==>> (Jones, Baker, and Smith, 1990) + % \citep[chap. 2]{key} ==>> (Jones et al., 1990, chap. 2) + % \citep[e.g.][]{key} ==>> (e.g. Jones et al., 1990) + % \citep[e.g.][p. 32]{key} ==>> (e.g. Jones et al., p. 32) + % \citeauthor{key} ==>> Jones et al. + % \citeauthor*{key} ==>> Jones, Baker, and Smith + % \citeyear{key} ==>> 1990 + %--------------------------------------------------------------------- + +ENTRY + { address + author + booktitle + chapter + edition + editor + eid + howpublished + institution + journal + key + month + note + number + organization + pages + publisher + school + series + title + type + url + volume + year + } + {} + { label extra.label sort.label short.list } +INTEGERS { output.state before.all mid.sentence after.sentence after.block } +FUNCTION {init.state.consts} +{ #0 'before.all := + #1 'mid.sentence := + #2 'after.sentence := + #3 'after.block := +} +STRINGS { s t} +FUNCTION {output.nonnull} +{ 's := + output.state mid.sentence = + { ", " * write$ } + { output.state after.block = + { add.period$ write$ + newline$ + "\newblock " write$ + } + { output.state before.all = + 'write$ + { add.period$ " " * write$ } + if$ + } + if$ + mid.sentence 'output.state := + } + if$ + s +} +FUNCTION {output} +{ duplicate$ empty$ + 'pop$ + 'output.nonnull + if$ +} +FUNCTION {output.check} +{ 't := + duplicate$ empty$ + { pop$ "empty " t * " in " * cite$ * warning$ } + 'output.nonnull + if$ +} +FUNCTION {fin.entry} +{ add.period$ + write$ + newline$ +} + +FUNCTION {new.block} +{ output.state before.all = + 'skip$ + { after.block 'output.state := } + if$ +} +FUNCTION {new.sentence} +{ output.state after.block = + 'skip$ + { output.state before.all = + 'skip$ + { after.sentence 'output.state := } + if$ + } + if$ +} +FUNCTION {add.blank} +{ " " * before.all 'output.state := +} + +FUNCTION {date.block} +{ + new.block +} + +FUNCTION {not} +{ { #0 } + { #1 } + if$ +} +FUNCTION {and} +{ 'skip$ + { pop$ #0 } + if$ +} +FUNCTION {or} +{ { pop$ #1 } + 'skip$ + if$ +} +FUNCTION {non.stop} +{ duplicate$ + "}" * add.period$ + #-1 #1 substring$ "." = +} + +FUNCTION {new.block.checkb} +{ empty$ + swap$ empty$ + and + 'skip$ + 'new.block + if$ +} +FUNCTION {field.or.null} +{ duplicate$ empty$ + { pop$ "" } + 'skip$ + if$ +} +FUNCTION {emphasize} +{ duplicate$ empty$ + { pop$ "" } + { "\emph{" swap$ * "}" * } + if$ +} +FUNCTION {tie.or.space.prefix} +{ duplicate$ text.length$ #3 < + { "~" } + { " " } + if$ + swap$ +} + +FUNCTION {capitalize} +{ "u" change.case$ "t" change.case$ } + +FUNCTION {space.word} +{ " " swap$ * " " * } + % Here are the language-specific definitions for explicit words. + % Each function has a name bbl.xxx where xxx is the English word. + % The language selected here is ENGLISH +FUNCTION {bbl.and} +{ "and"} + +FUNCTION {bbl.etal} +{ "et~al." } + +FUNCTION {bbl.editors} +{ "editors" } + +FUNCTION {bbl.editor} +{ "editor" } + +FUNCTION {bbl.edby} +{ "edited by" } + +FUNCTION {bbl.edition} +{ "ed." } + +FUNCTION {bbl.volume} +{ "vol." } + +FUNCTION {bbl.of} +{ "of" } + +FUNCTION {bbl.number} +{ "no." } + +FUNCTION {bbl.nr} +{ "no." } + +FUNCTION {bbl.in} +{ "in" } + +FUNCTION {bbl.pages} +{ "" } + +FUNCTION {bbl.page} +{ "" } + +FUNCTION {bbl.chapter} +{ "chap." } + +FUNCTION {bbl.techrep} +{ "Tech. Rep." } + +FUNCTION {bbl.mthesis} +{ "Master's thesis" } + +FUNCTION {bbl.phdthesis} +{ "Ph.D. thesis" } + +MACRO {jan} {"Jan."} + +MACRO {feb} {"Feb."} + +MACRO {mar} {"Mar."} + +MACRO {apr} {"Apr."} + +MACRO {may} {"May"} + +MACRO {jun} {"Jun."} + +MACRO {jul} {"Jul."} + +MACRO {aug} {"Aug."} + +MACRO {sep} {"Sep."} + +MACRO {oct} {"Oct."} + +MACRO {nov} {"Nov."} + +MACRO {dec} {"Dec."} + +MACRO {acmcs} {"ACM Comput. Surv."} + +MACRO {acta} {"Acta Inf."} + +MACRO {cacm} {"Commun. ACM"} + +MACRO {ibmjrd} {"IBM J. Res. Dev."} + +MACRO {ibmsj} {"IBM Syst.~J."} + +MACRO {ieeese} {"IEEE Trans. Software Eng."} + +MACRO {ieeetc} {"IEEE Trans. Comput."} + +MACRO {ieeetcad} + {"IEEE Trans. Comput. Aid. Des."} + +MACRO {ipl} {"Inf. Process. Lett."} + +MACRO {jacm} {"J.~ACM"} + +MACRO {jcss} {"J.~Comput. Syst. Sci."} + +MACRO {scp} {"Sci. Comput. Program."} + +MACRO {sicomp} {"SIAM J. Comput."} + +MACRO {tocs} {"ACM Trans. Comput. Syst."} + +MACRO {tods} {"ACM Trans. Database Syst."} + +MACRO {tog} {"ACM Trans. Graphic."} + +MACRO {toms} {"ACM Trans. Math. Software"} + +MACRO {toois} {"ACM Trans. Office Inf. Syst."} + +MACRO {toplas} {"ACM Trans. Progr. Lang. Syst."} + +MACRO {tcs} {"Theor. Comput. Sci."} + +FUNCTION {bibinfo.check} +{ swap$ + duplicate$ missing$ + { + pop$ pop$ + "" + } + { duplicate$ empty$ + { + swap$ pop$ + } + { swap$ + pop$ + } + if$ + } + if$ +} +FUNCTION {bibinfo.warn} +{ swap$ + duplicate$ missing$ + { + swap$ "missing " swap$ * " in " * cite$ * warning$ pop$ + "" + } + { duplicate$ empty$ + { + swap$ "empty " swap$ * " in " * cite$ * warning$ + } + { swap$ + pop$ + } + if$ + } + if$ +} +FUNCTION {format.url} +{ url empty$ + { "" } + { "\urlprefix\url{" url * "}" * } + if$ +} + +INTEGERS { nameptr namesleft numnames } + + +STRINGS { bibinfo} + +FUNCTION {format.names} +{ 'bibinfo := + duplicate$ empty$ 'skip$ { + 's := + "" 't := + #1 'nameptr := + s num.names$ 'numnames := + numnames 'namesleft := + { namesleft #0 > } + { s nameptr + duplicate$ #1 > + { "{ff~}{vv~}{ll}{, jj}" } + { "{vv~}{ll}{, ff}{, jj}" } + if$ + format.name$ + bibinfo bibinfo.check + 't := + nameptr #1 > + { + namesleft #1 > + { ", " * t * } + { + s nameptr "{ll}" format.name$ duplicate$ "others" = + { 't := } + { pop$ } + if$ + numnames #2 > + t "others" = not and + { "," * } + 'skip$ + if$ + t "others" = + { + " " * bbl.etal * + } + { + bbl.and + space.word * t * + } + if$ + } + if$ + } + 't + if$ + nameptr #1 + 'nameptr := + namesleft #1 - 'namesleft := + } + while$ + } if$ +} +FUNCTION {format.names.ed} +{ + 'bibinfo := + duplicate$ empty$ 'skip$ { + 's := + "" 't := + #1 'nameptr := + s num.names$ 'numnames := + numnames 'namesleft := + { namesleft #0 > } + { s nameptr + "{ff~}{vv~}{ll}{, jj}" + format.name$ + bibinfo bibinfo.check + 't := + nameptr #1 > + { + namesleft #1 > + { ", " * t * } + { + s nameptr "{ll}" format.name$ duplicate$ "others" = + { 't := } + { pop$ } + if$ + numnames #2 > + t "others" = not and + { "," * } + 'skip$ + if$ + t "others" = + { + + " " * bbl.etal * + } + { + bbl.and + space.word * t * + } + if$ + } + if$ + } + 't + if$ + nameptr #1 + 'nameptr := + namesleft #1 - 'namesleft := + } + while$ + } if$ +} +FUNCTION {format.key} +{ empty$ + { key field.or.null } + { "" } + if$ +} + +FUNCTION {format.authors} +{ author "author" format.names +} +FUNCTION {get.bbl.editor} +{ editor num.names$ #1 > 'bbl.editors 'bbl.editor if$ } + +FUNCTION {format.editors} +{ editor "editor" format.names duplicate$ empty$ 'skip$ + { + "," * + " " * + get.bbl.editor + * + } + if$ +} +FUNCTION {format.note} +{ + note empty$ + { "" } + { note #1 #1 substring$ + duplicate$ "{" = + 'skip$ + { output.state mid.sentence = + { "l" } + { "u" } + if$ + change.case$ + } + if$ + note #2 global.max$ substring$ * "note" bibinfo.check + } + if$ +} + +FUNCTION {format.title} +{ title + "title" bibinfo.check + duplicate$ empty$ 'skip$ + { + "\enquote{" swap$ * + add.period$ "}" * + } + if$ +} +FUNCTION {format.full.names} +{'s := + "" 't := + #1 'nameptr := + s num.names$ 'numnames := + numnames 'namesleft := + { namesleft #0 > } + { s nameptr + "{vv~}{ll}" format.name$ + 't := + nameptr #1 > + { + namesleft #1 > + { ", " * t * } + { + s nameptr "{ll}" format.name$ duplicate$ "others" = + { 't := } + { pop$ } + if$ + t "others" = + { + " " * bbl.etal * + } + { + numnames #2 > + { "," * } + 'skip$ + if$ + bbl.and + space.word * t * + } + if$ + } + if$ + } + 't + if$ + nameptr #1 + 'nameptr := + namesleft #1 - 'namesleft := + } + while$ +} + +FUNCTION {author.editor.key.full} +{ author empty$ + { editor empty$ + { key empty$ + { cite$ #1 #3 substring$ } + 'key + if$ + } + { editor format.full.names } + if$ + } + { author format.full.names } + if$ +} + +FUNCTION {author.key.full} +{ author empty$ + { key empty$ + { cite$ #1 #3 substring$ } + 'key + if$ + } + { author format.full.names } + if$ +} + +FUNCTION {editor.key.full} +{ editor empty$ + { key empty$ + { cite$ #1 #3 substring$ } + 'key + if$ + } + { editor format.full.names } + if$ +} + +FUNCTION {make.full.names} +{ type$ "book" = + type$ "inbook" = + or + 'author.editor.key.full + { type$ "proceedings" = + 'editor.key.full + 'author.key.full + if$ + } + if$ +} + +FUNCTION {output.bibitem} +{ newline$ + "\bibitem[{" write$ + label write$ + ")" make.full.names duplicate$ short.list = + { pop$ } + { * } + if$ + "}]{" * write$ + cite$ write$ + "}" write$ + newline$ + "" + before.all 'output.state := +} + +FUNCTION {n.dashify} +{ + 't := + "" + { t empty$ not } + { t #1 #1 substring$ "-" = + { t #1 #2 substring$ "--" = not + { "--" * + t #2 global.max$ substring$ 't := + } + { { t #1 #1 substring$ "-" = } + { "-" * + t #2 global.max$ substring$ 't := + } + while$ + } + if$ + } + { t #1 #1 substring$ * + t #2 global.max$ substring$ 't := + } + if$ + } + while$ +} + +FUNCTION {word.in} +{ bbl.in capitalize + " " * } + +FUNCTION {format.date} +{ year "year" bibinfo.check duplicate$ empty$ + { + "empty year in " cite$ * "; set to ????" * warning$ + pop$ "????" + } + 'skip$ + if$ + extra.label * + before.all 'output.state := + after.sentence 'output.state := +} +FUNCTION {format.btitle} +{ title "title" bibinfo.check + duplicate$ empty$ 'skip$ + { + emphasize + } + if$ +} +FUNCTION {either.or.check} +{ empty$ + 'pop$ + { "can't use both " swap$ * " fields in " * cite$ * warning$ } + if$ +} +FUNCTION {format.bvolume} +{ volume empty$ + { "" } + { bbl.volume volume tie.or.space.prefix + "volume" bibinfo.check * * + series "series" bibinfo.check + duplicate$ empty$ 'pop$ + { emphasize ", " * swap$ * } + if$ + "volume and number" number either.or.check + } + if$ +} +FUNCTION {format.number.series} +{ volume empty$ + { number empty$ + { series field.or.null } + { series empty$ + { number "number" bibinfo.check } + { output.state mid.sentence = + { bbl.number } + { bbl.number capitalize } + if$ + number tie.or.space.prefix "number" bibinfo.check * * + bbl.in space.word * + series "series" bibinfo.check * + } + if$ + } + if$ + } + { "" } + if$ +} + +FUNCTION {format.edition} +{ edition duplicate$ empty$ 'skip$ + { + output.state mid.sentence = + { "l" } + { "t" } + if$ change.case$ + "edition" bibinfo.check + " " * bbl.edition * + } + if$ +} +INTEGERS { multiresult } +FUNCTION {multi.page.check} +{ 't := + #0 'multiresult := + { multiresult not + t empty$ not + and + } + { t #1 #1 substring$ + duplicate$ "-" = + swap$ duplicate$ "," = + swap$ "+" = + or or + { #1 'multiresult := } + { t #2 global.max$ substring$ 't := } + if$ + } + while$ + multiresult +} +FUNCTION {format.pages} +{ pages duplicate$ empty$ 'skip$ + { duplicate$ multi.page.check + { + n.dashify + } + { + } + if$ + "pages" bibinfo.check + } + if$ +} +FUNCTION {format.journal.pages} +{ pages duplicate$ empty$ 'pop$ + { swap$ duplicate$ empty$ + { pop$ pop$ format.pages } + { + ":" * + swap$ + n.dashify + "pages" bibinfo.check + * + } + if$ + } + if$ +} +FUNCTION {format.journal.eid} +{ eid "eid" bibinfo.check + duplicate$ empty$ 'pop$ + { swap$ duplicate$ empty$ 'skip$ + { + ":" * + } + if$ + swap$ * + } + if$ +} +FUNCTION {format.vol.num.pages} +{ volume field.or.null + duplicate$ empty$ 'skip$ + { + "volume" bibinfo.check + } + if$ + number "number" bibinfo.check duplicate$ empty$ 'skip$ + { + swap$ duplicate$ empty$ + { "there's a number but no volume in " cite$ * warning$ } + 'skip$ + if$ + swap$ + "~(" swap$ * ")" * + } + if$ * +} + +FUNCTION {format.chapter.pages} +{ chapter empty$ + { "" } + { type empty$ + { bbl.chapter } + { type "l" change.case$ + "type" bibinfo.check + } + if$ + chapter tie.or.space.prefix + "chapter" bibinfo.check + * * + } + if$ +} + +FUNCTION {format.booktitle} +{ + booktitle "booktitle" bibinfo.check + emphasize +} +FUNCTION {format.in.ed.booktitle} +{ format.booktitle duplicate$ empty$ 'skip$ + { + format.bvolume duplicate$ empty$ 'pop$ + { ", " swap$ * * } + if$ + editor "editor" format.names.ed duplicate$ empty$ 'pop$ + { + bbl.edby + " " * swap$ * + swap$ + "," * + " " * swap$ + * } + if$ + word.in swap$ * + } + if$ +} +FUNCTION {format.thesis.type} +{ type duplicate$ empty$ + 'pop$ + { swap$ pop$ + "t" change.case$ "type" bibinfo.check + } + if$ +} +FUNCTION {format.tr.number} +{ number "number" bibinfo.check + type duplicate$ empty$ + { pop$ bbl.techrep } + 'skip$ + if$ + "type" bibinfo.check + swap$ duplicate$ empty$ + { pop$ "t" change.case$ } + { tie.or.space.prefix * * } + if$ +} +FUNCTION {format.article.crossref} +{ + word.in + " \cite{" * crossref * "}" * +} +FUNCTION {format.book.crossref} +{ volume duplicate$ empty$ + { "empty volume in " cite$ * "'s crossref of " * crossref * warning$ + pop$ word.in + } + { bbl.volume + capitalize + swap$ tie.or.space.prefix "volume" bibinfo.check * * bbl.of space.word * + } + if$ + " \cite{" * crossref * "}" * +} +FUNCTION {format.incoll.inproc.crossref} +{ + word.in + " \cite{" * crossref * "}" * +} +FUNCTION {format.org.or.pub} +{ 't := + "" + address empty$ t empty$ and + 'skip$ + { + address "address" bibinfo.check * + t empty$ + 'skip$ + { address empty$ + 'skip$ + { ": " * } + if$ + t * + } + if$ + } + if$ +} +FUNCTION {format.publisher.address} +{ publisher "publisher" bibinfo.warn format.org.or.pub +} + +FUNCTION {format.organization.address} +{ organization "organization" bibinfo.check format.org.or.pub +} + +STRINGS {oldname} + +FUNCTION {name.or.dash} +{ 's := + oldname empty$ + { s 'oldname := s } + { s oldname = + { "---{}---{}---" } + { s 'oldname := s } + if$ + } + if$ +} + +FUNCTION {article} +{ output.bibitem + format.authors "author" output.check + author format.key output + name.or.dash + format.date "year" output.check + date.block + format.title "title" output.check + new.block + crossref missing$ + { + journal + "journal" bibinfo.check + emphasize + "journal" output.check + add.blank + format.vol.num.pages output + } + { format.article.crossref output.nonnull + } + if$ + eid empty$ + { format.journal.pages } + { format.journal.eid } + if$ + new.block + format.url output + new.block + format.note output + fin.entry +} +FUNCTION {book} +{ output.bibitem + author empty$ + { format.editors "author and editor" output.check + editor format.key output + name.or.dash + } + { format.authors output.nonnull + name.or.dash + crossref missing$ + { "author and editor" editor either.or.check } + 'skip$ + if$ + } + if$ + format.date "year" output.check + date.block + format.btitle "title" output.check + crossref missing$ + { format.bvolume output + new.block + format.number.series output + new.sentence + format.publisher.address output + } + { + new.block + format.book.crossref output.nonnull + } + if$ + format.edition output + new.block + format.url output + new.block + format.note output + fin.entry +} +FUNCTION {booklet} +{ output.bibitem + format.authors output + author format.key output + name.or.dash + format.date "year" output.check + date.block + format.title "title" output.check + new.block + howpublished "howpublished" bibinfo.check output + address "address" bibinfo.check output + new.block + format.url output + new.block + format.note output + fin.entry +} + +FUNCTION {inbook} +{ output.bibitem + author empty$ + { format.editors "author and editor" output.check + editor format.key output + name.or.dash + } + { format.authors output.nonnull + name.or.dash + crossref missing$ + { "author and editor" editor either.or.check } + 'skip$ + if$ + } + if$ + format.date "year" output.check + date.block + format.btitle "title" output.check + crossref missing$ + { + format.bvolume output + format.chapter.pages "chapter and pages" output.check + new.block + format.number.series output + new.sentence + format.publisher.address output + } + { + format.chapter.pages "chapter and pages" output.check + new.block + format.book.crossref output.nonnull + } + if$ + format.edition output + format.pages "pages" output.check + new.block + format.url output + new.block + format.note output + fin.entry +} + +FUNCTION {incollection} +{ output.bibitem + format.authors "author" output.check + author format.key output + name.or.dash + format.date "year" output.check + date.block + format.title "title" output.check + new.block + crossref missing$ + { format.in.ed.booktitle "booktitle" output.check + format.number.series output + format.chapter.pages output + new.sentence + format.publisher.address output + format.edition output + } + { format.incoll.inproc.crossref output.nonnull + format.chapter.pages output + } + if$ + format.pages "pages" output.check + new.block + format.url output + new.block + format.note output + fin.entry +} +FUNCTION {inproceedings} +{ output.bibitem + format.authors "author" output.check + author format.key output + name.or.dash + format.date "year" output.check + date.block + format.title "title" output.check + new.block + crossref missing$ + { format.in.ed.booktitle "booktitle" output.check + format.number.series output + new.sentence + publisher empty$ + { format.organization.address output } + { organization "organization" bibinfo.check output + format.publisher.address output + } + if$ + } + { format.incoll.inproc.crossref output.nonnull + } + if$ + format.pages "pages" output.check + new.block + format.url output + new.block + format.note output + fin.entry +} +FUNCTION {conference} { inproceedings } +FUNCTION {manual} +{ output.bibitem + format.authors output + author format.key output + name.or.dash + format.date "year" output.check + date.block + format.btitle "title" output.check + organization address new.block.checkb + organization "organization" bibinfo.check output + address "address" bibinfo.check output + format.edition output + new.block + format.url output + new.block + format.note output + fin.entry +} + +FUNCTION {mastersthesis} +{ output.bibitem + format.authors "author" output.check + author format.key output + name.or.dash + format.date "year" output.check + date.block + format.btitle + "title" output.check + new.block + bbl.mthesis format.thesis.type output.nonnull + school "school" bibinfo.warn output + address "address" bibinfo.check output + new.block + format.url output + new.block + format.note output + fin.entry +} + +FUNCTION {misc} +{ output.bibitem + format.authors output + author format.key output + name.or.dash + format.date "year" output.check + date.block + format.title output + new.block + howpublished "howpublished" bibinfo.check output + new.block + format.url output + new.block + format.note output + fin.entry +} +FUNCTION {phdthesis} +{ output.bibitem + format.authors "author" output.check + author format.key output + name.or.dash + format.date "year" output.check + date.block + format.btitle + "title" output.check + new.block + bbl.phdthesis format.thesis.type output.nonnull + school "school" bibinfo.warn output + address "address" bibinfo.check output + new.block + format.url output + new.block + format.note output + fin.entry +} + +FUNCTION {presentation} +{ output.bibitem + format.authors output + author format.key output + name.or.dash + new.block + format.title output + new.block + format.organization.address "organization and address" output.check + month "month" output.check + year "year" output.check + new.block + format.note output + new.sentence + type missing$ 'skip$ + {"(" type capitalize * ")" * output} + if$ + new.block + format.url output + fin.entry +} + +FUNCTION {proceedings} +{ output.bibitem + format.editors output + editor format.key output + name.or.dash + format.date "year" output.check + date.block + format.btitle "title" output.check + format.bvolume output + format.number.series output + new.sentence + publisher empty$ + { format.organization.address output } + { organization "organization" bibinfo.check output + format.publisher.address output + } + if$ + new.block + format.url output + new.block + format.note output + fin.entry +} + +FUNCTION {techreport} +{ output.bibitem + format.authors "author" output.check + author format.key output + name.or.dash + format.date "year" output.check + date.block + format.title + "title" output.check + new.block + format.tr.number output.nonnull + institution "institution" bibinfo.warn output + address "address" bibinfo.check output + new.block + format.url output + new.block + format.note output + fin.entry +} + +FUNCTION {unpublished} +{ output.bibitem + format.authors "author" output.check + author format.key output + name.or.dash + format.date "year" output.check + date.block + format.title "title" output.check + new.block + format.url output + new.block + format.note "note" output.check + fin.entry +} + +FUNCTION {default.type} { misc } +READ +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 {format.lab.names} +{'s := + "" 't := + #1 'nameptr := + s num.names$ 'numnames := + numnames 'namesleft := + { namesleft #0 > } + { s nameptr + "{vv~}{ll}" format.name$ + 't := + nameptr #1 > + { + nameptr #2 = + numnames #3 > and + { "others" 't := + #1 'namesleft := } + 'skip$ + if$ + namesleft #1 > + { ", " * t * } + { + s nameptr "{ll}" format.name$ duplicate$ "others" = + { 't := } + { pop$ } + if$ + t "others" = + { + " " * bbl.etal * + } + { + numnames #2 > + { "," * } + 'skip$ + if$ + bbl.and + space.word * t * + } + if$ + } + if$ + } + 't + if$ + nameptr #1 + 'nameptr := + namesleft #1 - 'namesleft := + } + while$ +} + +FUNCTION {author.key.label} +{ author empty$ + { key empty$ + { cite$ #1 #3 substring$ } + 'key + if$ + } + { author format.lab.names } + if$ +} + +FUNCTION {author.editor.key.label} +{ author empty$ + { editor empty$ + { key empty$ + { cite$ #1 #3 substring$ } + 'key + if$ + } + { editor format.lab.names } + if$ + } + { author format.lab.names } + if$ +} + +FUNCTION {editor.key.label} +{ editor empty$ + { key empty$ + { cite$ #1 #3 substring$ } + 'key + if$ + } + { editor format.lab.names } + if$ +} + +FUNCTION {calc.short.authors} +{ type$ "book" = + type$ "inbook" = + or + 'author.editor.key.label + { type$ "proceedings" = + 'editor.key.label + 'author.key.label + if$ + } + if$ + 'short.list := +} + +FUNCTION {calc.label} +{ calc.short.authors + short.list + "(" + * + year duplicate$ empty$ + short.list key field.or.null = or + { pop$ "" } + 'skip$ + if$ + * + 'label := +} + +FUNCTION {sort.format.names} +{ 's := + #1 'nameptr := + "" + s num.names$ 'numnames := + numnames 'namesleft := + { namesleft #0 > } + { s nameptr + "{vv{ } }{ll{ }}{ ff{ }}{ jj{ }}" + format.name$ 't := + nameptr #1 > + { + " " * + namesleft #1 = t "others" = and + { "zzzzz" * } + { t sortify * } + if$ + } + { 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 sort.format.names } + if$ +} +FUNCTION {author.editor.sort} +{ author empty$ + { editor empty$ + { key empty$ + { "to sort, need author, editor, or key in " cite$ * warning$ + "" + } + { key sortify } + if$ + } + { editor sort.format.names } + if$ + } + { author sort.format.names } + if$ +} +FUNCTION {editor.sort} +{ editor empty$ + { key empty$ + { "to sort, need editor or key in " cite$ * warning$ + "" + } + { key sortify } + if$ + } + { editor sort.format.names } + if$ +} +FUNCTION {presort} +{ calc.label + label sortify + " " + * + type$ "book" = + type$ "inbook" = + or + 'author.editor.sort + { type$ "proceedings" = + 'editor.sort + 'author.sort + if$ + } + if$ + #1 entry.max$ substring$ + 'sort.label := + sort.label + * + " " + * + title field.or.null + sort.format.title + * + #1 entry.max$ substring$ + 'sort.key$ := +} + +ITERATE {presort} +SORT +STRINGS { last.label next.extra } +INTEGERS { last.extra.num number.label } +FUNCTION {initialize.extra.label.stuff} +{ #0 int.to.chr$ 'last.label := + "" 'next.extra := + #0 'last.extra.num := + #0 'number.label := +} +FUNCTION {forward.pass} +{ last.label label = + { last.extra.num #1 + 'last.extra.num := + last.extra.num int.to.chr$ 'extra.label := + } + { "a" chr.to.int$ 'last.extra.num := + "" 'extra.label := + label 'last.label := + } + if$ + number.label #1 + 'number.label := +} +FUNCTION {reverse.pass} +{ next.extra "b" = + { "a" 'extra.label := } + 'skip$ + if$ + extra.label 'next.extra := + extra.label + duplicate$ empty$ + 'skip$ + { "{\natexlab{" swap$ * "}}" * } + if$ + 'extra.label := + label extra.label * 'label := +} +EXECUTE {initialize.extra.label.stuff} +ITERATE {forward.pass} +REVERSE {reverse.pass} +FUNCTION {bib.sort.order} +{ sort.label + " " + * + year field.or.null sortify + * + " " + * + title field.or.null + sort.format.title + * + #1 entry.max$ substring$ + 'sort.key$ := +} +ITERATE {bib.sort.order} +SORT +FUNCTION {begin.bib} +{ preamble$ empty$ + 'skip$ + { preamble$ write$ newline$ } + if$ + "\begin{thebibliography}{" number.label int.to.str$ * "}" * + write$ newline$ + "\newcommand{\enquote}[1]{``#1''}" + write$ newline$ + "\providecommand{\natexlab}[1]{#1}" + write$ newline$ + "\providecommand{\url}[1]{\texttt{#1}}" + write$ newline$ + "\providecommand{\urlprefix}{URL }" + write$ newline$ +} +EXECUTE {begin.bib} +EXECUTE {init.state.consts} +ITERATE {call.type$} +FUNCTION {end.bib} +{ newline$ + "\end{thebibliography}" write$ newline$ +} +EXECUTE {end.bib} +%% End of customized bst file +%% +%% End of file `jpe.bst'. diff --git a/Master/texmf-dist/bibtex/bst/economic/oega.bst b/Master/texmf-dist/bibtex/bst/economic/oega.bst new file mode 100644 index 00000000000..8202307f4d3 --- /dev/null +++ b/Master/texmf-dist/bibtex/bst/economic/oega.bst @@ -0,0 +1,1563 @@ +%% +%% This is file `oega.bst', +%% generated with the docstrip utility. +%% +%% The original source files were: +%% +%% merlin.mbs (with options: `ay,nat,nm-rvvc,keyxyr,dt-beg,yr-par,yrp-per,note-yr,thtit-a,num-xser,ser-vol,jnm-x,add-pub,pre-edn,edparxc,in-col,pp,ed,abr,ednx,ord,and-xcom,etal-xc,em-it,nfss,') +%% ---------------------------------------- +%% *** Oesterreichische Gesellschaft fuer Agraroekonomie (OeGA) *** +%% +%% Copyright 1994-2005 Patrick W Daly + % =============================================================== + % IMPORTANT NOTICE: + % This bibliographic style (bst) file has been generated from one or + % more master bibliographic style (mbs) files, listed above. + % + % This generated file can be redistributed and/or modified under the terms + % of the LaTeX Project Public License Distributed from CTAN + % archives in directory macros/latex/base/lppl.txt; either + % version 1 of the License, or any later version. + % =============================================================== + % Name and version information of the main mbs file: + % \ProvidesFile{merlin.mbs}[2005/10/17 4.14 (PWD, AO, DPC)] + % For use with BibTeX version 0.99a or later + %------------------------------------------------------------------- + % This bibliography style file is intended for texts in ENGLISH + % This is an author-year citation style bibliography. As such, it is + % non-standard LaTeX, and requires a special package file to function properly. + % Such a package is natbib.sty by Patrick W. Daly + % The form of the \bibitem entries is + % \bibitem[Jones et al.(1990)]{key}... + % \bibitem[Jones et al.(1990)Jones, Baker, and Smith]{key}... + % The essential feature is that the label (the part in brackets) consists + % of the author names, as they should appear in the citation, with the year + % in parentheses following. There must be no space before the opening + % parenthesis! + % With natbib v5.3, a full list of authors may also follow the year. + % In natbib.sty, it is possible to define the type of enclosures that is + % really wanted (brackets or parentheses), but in either case, there must + % be parentheses in the label. + % The \cite command functions as follows: + % \citet{key} ==>> Jones et al. (1990) + % \citet*{key} ==>> Jones, Baker, and Smith (1990) + % \citep{key} ==>> (Jones et al., 1990) + % \citep*{key} ==>> (Jones, Baker, and Smith, 1990) + % \citep[chap. 2]{key} ==>> (Jones et al., 1990, chap. 2) + % \citep[e.g.][]{key} ==>> (e.g. Jones et al., 1990) + % \citep[e.g.][p. 32]{key} ==>> (e.g. Jones et al., p. 32) + % \citeauthor{key} ==>> Jones et al. + % \citeauthor*{key} ==>> Jones, Baker, and Smith + % \citeyear{key} ==>> 1990 + %--------------------------------------------------------------------- + +ENTRY + { address + author + booktitle + chapter + edition + editor + eid + howpublished + institution + journal + key + month + note + number + organization + pages + publisher + school + series + title + type + volume + year + } + {} + { label extra.label sort.label short.list } +INTEGERS { output.state before.all mid.sentence after.sentence after.block } +FUNCTION {init.state.consts} +{ #0 'before.all := + #1 'mid.sentence := + #2 'after.sentence := + #3 'after.block := +} +STRINGS { s t} +FUNCTION {output.nonnull} +{ 's := + output.state mid.sentence = + { ", " * write$ } + { output.state after.block = + { add.period$ write$ + newline$ + "\newblock " write$ + } + { output.state before.all = + 'write$ + { add.period$ " " * write$ } + if$ + } + if$ + mid.sentence 'output.state := + } + if$ + s +} +FUNCTION {output} +{ duplicate$ empty$ + 'pop$ + 'output.nonnull + if$ +} +FUNCTION {output.check} +{ 't := + duplicate$ empty$ + { pop$ "empty " t * " in " * cite$ * warning$ } + 'output.nonnull + if$ +} +FUNCTION {fin.entry} +{ add.period$ + write$ + newline$ +} + +FUNCTION {new.block} +{ output.state before.all = + 'skip$ + { after.block 'output.state := } + if$ +} +FUNCTION {new.sentence} +{ output.state after.block = + 'skip$ + { output.state before.all = + 'skip$ + { after.sentence 'output.state := } + if$ + } + if$ +} +FUNCTION {add.blank} +{ " " * before.all 'output.state := +} + +FUNCTION {date.block} +{ + new.block +} + +FUNCTION {not} +{ { #0 } + { #1 } + if$ +} +FUNCTION {and} +{ 'skip$ + { pop$ #0 } + if$ +} +FUNCTION {or} +{ { pop$ #1 } + 'skip$ + if$ +} +FUNCTION {new.block.checkb} +{ empty$ + swap$ empty$ + and + 'skip$ + 'new.block + if$ +} +FUNCTION {field.or.null} +{ duplicate$ empty$ + { pop$ "" } + 'skip$ + if$ +} +FUNCTION {emphasize} +{ duplicate$ empty$ + { pop$ "" } + { "\textit{" swap$ * "}" * } + if$ +} +FUNCTION {tie.or.space.prefix} +{ duplicate$ text.length$ #3 < + { "~" } + { " " } + if$ + swap$ +} + +FUNCTION {capitalize} +{ "u" change.case$ "t" change.case$ } + +FUNCTION {space.word} +{ " " swap$ * " " * } + % Here are the language-specific definitions for explicit words. + % Each function has a name bbl.xxx where xxx is the English word. + % The language selected here is ENGLISH +FUNCTION {bbl.and} +{ "and"} + +FUNCTION {bbl.etal} +{ "et~al." } + +FUNCTION {bbl.editors} +{ "eds." } + +FUNCTION {bbl.editor} +{ "ed." } + +FUNCTION {bbl.edby} +{ "edited by" } + +FUNCTION {bbl.edition} +{ "ed." } + +FUNCTION {bbl.volume} +{ "vol." } + +FUNCTION {bbl.of} +{ "of" } + +FUNCTION {bbl.number} +{ "no." } + +FUNCTION {bbl.nr} +{ "no." } + +FUNCTION {bbl.in} +{ "in" } + +FUNCTION {bbl.pages} +{ "pp." } + +FUNCTION {bbl.page} +{ "p." } + +FUNCTION {bbl.chapter} +{ "chap." } + +FUNCTION {bbl.techrep} +{ "Tech. Rep." } + +FUNCTION {bbl.mthesis} +{ "Master's thesis" } + +FUNCTION {bbl.phdthesis} +{ "Ph.D. thesis" } + +FUNCTION {bbl.first} +{ "1st" } + +FUNCTION {bbl.second} +{ "2nd" } + +FUNCTION {bbl.third} +{ "3rd" } + +FUNCTION {bbl.fourth} +{ "4th" } + +FUNCTION {bbl.fifth} +{ "5th" } + +FUNCTION {bbl.st} +{ "st" } + +FUNCTION {bbl.nd} +{ "nd" } + +FUNCTION {bbl.rd} +{ "rd" } + +FUNCTION {bbl.th} +{ "th" } + +MACRO {jan} {"Jan."} + +MACRO {feb} {"Feb."} + +MACRO {mar} {"Mar."} + +MACRO {apr} {"Apr."} + +MACRO {may} {"May"} + +MACRO {jun} {"Jun."} + +MACRO {jul} {"Jul."} + +MACRO {aug} {"Aug."} + +MACRO {sep} {"Sep."} + +MACRO {oct} {"Oct."} + +MACRO {nov} {"Nov."} + +MACRO {dec} {"Dec."} + +FUNCTION {eng.ord} +{ duplicate$ "1" swap$ * + #-2 #1 substring$ "1" = + { bbl.th * } + { duplicate$ #-1 #1 substring$ + duplicate$ "1" = + { pop$ bbl.st * } + { duplicate$ "2" = + { pop$ bbl.nd * } + { "3" = + { bbl.rd * } + { bbl.th * } + if$ + } + if$ + } + if$ + } + if$ +} + +MACRO {acmcs} {"ACM Computing Surveys"} + +MACRO {acta} {"Acta Informatica"} + +MACRO {cacm} {"Communications of the ACM"} + +MACRO {ibmjrd} {"IBM Journal of Research and Development"} + +MACRO {ibmsj} {"IBM Systems Journal"} + +MACRO {ieeese} {"IEEE Transactions on Software Engineering"} + +MACRO {ieeetc} {"IEEE Transactions on Computers"} + +MACRO {ieeetcad} + {"IEEE Transactions on Computer-Aided Design of Integrated Circuits"} + +MACRO {ipl} {"Information Processing Letters"} + +MACRO {jacm} {"Journal of the ACM"} + +MACRO {jcss} {"Journal of Computer and System Sciences"} + +MACRO {scp} {"Science of Computer Programming"} + +MACRO {sicomp} {"SIAM Journal on Computing"} + +MACRO {tocs} {"ACM Transactions on Computer Systems"} + +MACRO {tods} {"ACM Transactions on Database Systems"} + +MACRO {tog} {"ACM Transactions on Graphics"} + +MACRO {toms} {"ACM Transactions on Mathematical Software"} + +MACRO {toois} {"ACM Transactions on Office Information Systems"} + +MACRO {toplas} {"ACM Transactions on Programming Languages and Systems"} + +MACRO {tcs} {"Theoretical Computer Science"} +FUNCTION {bibinfo.check} +{ swap$ + duplicate$ missing$ + { + pop$ pop$ + "" + } + { duplicate$ empty$ + { + swap$ pop$ + } + { swap$ + pop$ + } + if$ + } + if$ +} +FUNCTION {bibinfo.warn} +{ swap$ + duplicate$ missing$ + { + swap$ "missing " swap$ * " in " * cite$ * warning$ pop$ + "" + } + { duplicate$ empty$ + { + swap$ "empty " swap$ * " in " * cite$ * warning$ + } + { swap$ + pop$ + } + if$ + } + if$ +} +STRINGS { bibinfo} +INTEGERS { nameptr namesleft numnames } + +FUNCTION {format.names} +{ 'bibinfo := + duplicate$ empty$ 'skip$ { + 's := + "" 't := + #1 'nameptr := + s num.names$ 'numnames := + numnames 'namesleft := + { namesleft #0 > } + { s nameptr + "{vv~}{ll}{, jj}{, f{.}.}" + format.name$ + bibinfo bibinfo.check + 't := + nameptr #1 > + { + namesleft #1 > + { ", " * t * } + { + s nameptr "{ll}" format.name$ duplicate$ "others" = + { 't := } + { pop$ } + if$ + t "others" = + { + " " * bbl.etal * + } + { + bbl.and + space.word * t * + } + if$ + } + if$ + } + 't + if$ + nameptr #1 + 'nameptr := + namesleft #1 - 'namesleft := + } + while$ + } if$ +} +FUNCTION {format.names.ed} +{ + 'bibinfo := + duplicate$ empty$ 'skip$ { + 's := + "" 't := + #1 'nameptr := + s num.names$ 'numnames := + numnames 'namesleft := + { namesleft #0 > } + { s nameptr + "{f{.}.~}{vv~}{ll}{ jj}" + format.name$ + bibinfo bibinfo.check + 't := + nameptr #1 > + { + namesleft #1 > + { ", " * t * } + { + s nameptr "{ll}" format.name$ duplicate$ "others" = + { 't := } + { pop$ } + if$ + t "others" = + { + + " " * bbl.etal * + } + { + bbl.and + space.word * t * + } + if$ + } + if$ + } + 't + if$ + nameptr #1 + 'nameptr := + namesleft #1 - 'namesleft := + } + while$ + } if$ +} +FUNCTION {format.key} +{ empty$ + { key field.or.null } + { "" } + if$ +} + +FUNCTION {format.authors} +{ author "author" format.names +} +FUNCTION {get.bbl.editor} +{ editor num.names$ #1 > 'bbl.editors 'bbl.editor if$ } + +FUNCTION {format.editors} +{ editor "editor" format.names duplicate$ empty$ 'skip$ + { + " " * + get.bbl.editor + "(" swap$ * ")" * + * + } + if$ +} +FUNCTION {format.note} +{ + note empty$ + { "" } + { note #1 #1 substring$ + duplicate$ "{" = + 'skip$ + { output.state mid.sentence = + { "l" } + { "u" } + if$ + change.case$ + } + if$ + note #2 global.max$ substring$ * "note" bibinfo.check + } + if$ +} + +FUNCTION {format.title} +{ title + duplicate$ empty$ 'skip$ + { "t" change.case$ } + if$ + "title" bibinfo.check +} +FUNCTION {format.full.names} +{'s := + "" 't := + #1 'nameptr := + s num.names$ 'numnames := + numnames 'namesleft := + { namesleft #0 > } + { s nameptr + "{vv~}{ll}" format.name$ + 't := + nameptr #1 > + { + namesleft #1 > + { ", " * t * } + { + s nameptr "{ll}" format.name$ duplicate$ "others" = + { 't := } + { pop$ } + if$ + t "others" = + { + " " * bbl.etal * + } + { + bbl.and + space.word * t * + } + if$ + } + if$ + } + 't + if$ + nameptr #1 + 'nameptr := + namesleft #1 - 'namesleft := + } + while$ +} + +FUNCTION {author.editor.key.full} +{ author empty$ + { editor empty$ + { key empty$ + { cite$ #1 #3 substring$ } + 'key + if$ + } + { editor format.full.names } + if$ + } + { author format.full.names } + if$ +} + +FUNCTION {author.key.full} +{ author empty$ + { key empty$ + { cite$ #1 #3 substring$ } + 'key + if$ + } + { author format.full.names } + if$ +} + +FUNCTION {editor.key.full} +{ editor empty$ + { key empty$ + { cite$ #1 #3 substring$ } + 'key + if$ + } + { editor format.full.names } + if$ +} + +FUNCTION {make.full.names} +{ type$ "book" = + type$ "inbook" = + or + 'author.editor.key.full + { type$ "proceedings" = + 'editor.key.full + 'author.key.full + if$ + } + if$ +} + +FUNCTION {output.bibitem} +{ newline$ + "\bibitem[{" write$ + label write$ + ")" make.full.names duplicate$ short.list = + { pop$ } + { * } + if$ + "}]{" * write$ + cite$ write$ + "}" write$ + newline$ + "" + before.all 'output.state := +} + +FUNCTION {n.dashify} +{ + 't := + "" + { t empty$ not } + { t #1 #1 substring$ "-" = + { t #1 #2 substring$ "--" = not + { "--" * + t #2 global.max$ substring$ 't := + } + { { t #1 #1 substring$ "-" = } + { "-" * + t #2 global.max$ substring$ 't := + } + while$ + } + if$ + } + { t #1 #1 substring$ * + t #2 global.max$ substring$ 't := + } + if$ + } + while$ +} + +FUNCTION {word.in} +{ bbl.in capitalize + ":" * + " " * } + +FUNCTION {format.date} +{ year "year" bibinfo.check duplicate$ empty$ + { + "empty year in " cite$ * "; set to ????" * warning$ + pop$ "????" + } + 'skip$ + if$ + extra.label * + before.all 'output.state := + " (" swap$ * ")" * +} +FUNCTION {format.btitle} +{ title "title" bibinfo.check + duplicate$ empty$ 'skip$ + { + emphasize + } + if$ +} +FUNCTION {either.or.check} +{ empty$ + 'pop$ + { "can't use both " swap$ * " fields in " * cite$ * warning$ } + if$ +} +FUNCTION {format.bvolume} +{ volume empty$ + { "" } + { bbl.volume volume tie.or.space.prefix + "volume" bibinfo.check * * + series "series" bibinfo.check + duplicate$ empty$ 'pop$ + { emphasize ", " * swap$ * } + if$ + "volume and number" number either.or.check + } + if$ +} +FUNCTION {format.number.series} +{ volume empty$ + { number empty$ + { series field.or.null } + { series empty$ + { number "number" bibinfo.check } + { output.state mid.sentence = + { bbl.number } + { bbl.number capitalize } + if$ + number tie.or.space.prefix "number" bibinfo.check * * + bbl.in space.word * + series "series" bibinfo.check * + } + if$ + } + if$ + } + { "" } + if$ +} +FUNCTION {is.num} +{ chr.to.int$ + duplicate$ "0" chr.to.int$ < not + swap$ "9" chr.to.int$ > not and +} + +FUNCTION {extract.num} +{ duplicate$ 't := + "" 's := + { t empty$ not } + { t #1 #1 substring$ + t #2 global.max$ substring$ 't := + duplicate$ is.num + { s swap$ * 's := } + { pop$ "" 't := } + if$ + } + while$ + s empty$ + 'skip$ + { pop$ s } + if$ +} + +FUNCTION {convert.edition} +{ extract.num "l" change.case$ 's := + s "first" = s "1" = or + { bbl.first 't := } + { s "second" = s "2" = or + { bbl.second 't := } + { s "third" = s "3" = or + { bbl.third 't := } + { s "fourth" = s "4" = or + { bbl.fourth 't := } + { s "fifth" = s "5" = or + { bbl.fifth 't := } + { s #1 #1 substring$ is.num + { s eng.ord 't := } + { edition 't := } + if$ + } + if$ + } + if$ + } + if$ + } + if$ + } + if$ + t +} + +FUNCTION {format.edition} +{ edition duplicate$ empty$ 'skip$ + { + convert.edition + output.state mid.sentence = + { "l" } + { "t" } + if$ change.case$ + "edition" bibinfo.check + " " * bbl.edition * + } + if$ +} +INTEGERS { multiresult } +FUNCTION {multi.page.check} +{ 't := + #0 'multiresult := + { multiresult not + t empty$ not + and + } + { t #1 #1 substring$ + duplicate$ "-" = + swap$ duplicate$ "," = + swap$ "+" = + or or + { #1 'multiresult := } + { t #2 global.max$ substring$ 't := } + if$ + } + while$ + multiresult +} +FUNCTION {format.pages} +{ pages duplicate$ empty$ 'skip$ + { duplicate$ multi.page.check + { + bbl.pages swap$ + n.dashify + } + { + bbl.page swap$ + } + if$ + tie.or.space.prefix + "pages" bibinfo.check + * * + } + if$ +} +FUNCTION {format.journal.pages} +{ pages duplicate$ empty$ 'pop$ + { swap$ duplicate$ empty$ + { pop$ pop$ format.pages } + { + ":" * + swap$ + n.dashify + "pages" bibinfo.check + * + } + if$ + } + if$ +} +FUNCTION {format.journal.eid} +{ eid "eid" bibinfo.check + duplicate$ empty$ 'pop$ + { swap$ duplicate$ empty$ 'skip$ + { + ":" * + } + if$ + swap$ * + } + if$ +} +FUNCTION {format.vol.num.pages} +{ volume field.or.null + duplicate$ empty$ 'skip$ + { + "volume" bibinfo.check + } + if$ + number "number" bibinfo.check duplicate$ empty$ 'skip$ + { + swap$ duplicate$ empty$ + { "there's a number but no volume in " cite$ * warning$ } + 'skip$ + if$ + swap$ + "(" swap$ * ")" * + } + if$ * + eid empty$ + { format.journal.pages } + { format.journal.eid } + if$ +} + +FUNCTION {format.chapter.pages} +{ chapter empty$ + 'format.pages + { type empty$ + { bbl.chapter } + { type "l" change.case$ + "type" bibinfo.check + } + if$ + chapter tie.or.space.prefix + "chapter" bibinfo.check + * * + pages empty$ + 'skip$ + { ", " * format.pages * } + if$ + } + if$ +} + +FUNCTION {format.booktitle} +{ + booktitle "booktitle" bibinfo.check + emphasize +} +FUNCTION {format.in.ed.booktitle} +{ format.booktitle duplicate$ empty$ 'skip$ + { + editor "editor" format.names.ed duplicate$ empty$ 'pop$ + { + " " * + get.bbl.editor + "(" swap$ * ") " * + * swap$ + * } + if$ + word.in swap$ * + } + if$ +} +FUNCTION {format.thesis.type} +{ type duplicate$ empty$ + 'pop$ + { swap$ pop$ + "t" change.case$ "type" bibinfo.check + } + if$ +} +FUNCTION {format.tr.number} +{ number "number" bibinfo.check + type duplicate$ empty$ + { pop$ bbl.techrep } + 'skip$ + if$ + "type" bibinfo.check + swap$ duplicate$ empty$ + { pop$ "t" change.case$ } + { tie.or.space.prefix * * } + if$ +} +FUNCTION {format.article.crossref} +{ + word.in + " \cite{" * crossref * "}" * +} +FUNCTION {format.book.crossref} +{ volume duplicate$ empty$ + { "empty volume in " cite$ * "'s crossref of " * crossref * warning$ + pop$ word.in + } + { bbl.volume + capitalize + swap$ tie.or.space.prefix "volume" bibinfo.check * * bbl.of space.word * + } + if$ + " \cite{" * crossref * "}" * +} +FUNCTION {format.incoll.inproc.crossref} +{ + word.in + " \cite{" * crossref * "}" * +} +FUNCTION {format.org.or.pub} +{ 't := + "" + address empty$ t empty$ and + 'skip$ + { + address "address" bibinfo.check * + t empty$ + 'skip$ + { address empty$ + 'skip$ + { ": " * } + if$ + t * + } + if$ + } + if$ +} +FUNCTION {format.publisher.address} +{ publisher "publisher" bibinfo.warn format.org.or.pub +} + +FUNCTION {format.organization.address} +{ organization "organization" bibinfo.check format.org.or.pub +} + +FUNCTION {article} +{ output.bibitem + format.authors "author" output.check + author format.key output + format.date "year" output.check + date.block + format.title "title" output.check + new.block + crossref missing$ + { + journal + "journal" bibinfo.check + emphasize + "journal" output.check + add.blank + format.vol.num.pages output + } + { format.article.crossref output.nonnull + format.pages output + } + if$ + new.block + format.note output + fin.entry +} +FUNCTION {book} +{ output.bibitem + author empty$ + { format.editors "author and editor" output.check + editor format.key output + add.blank + } + { format.authors output.nonnull + crossref missing$ + { "author and editor" editor either.or.check } + 'skip$ + if$ + } + if$ + format.date "year" output.check + date.block + format.btitle "title" output.check + crossref missing$ + { format.bvolume output + new.block + format.number.series output + format.edition output + new.sentence + format.publisher.address output + } + { + new.block + format.book.crossref output.nonnull + } + if$ + new.block + format.note output + fin.entry +} +FUNCTION {booklet} +{ output.bibitem + format.authors output + author format.key output + format.date "year" output.check + date.block + format.title "title" output.check + new.block + howpublished "howpublished" bibinfo.check output + address "address" bibinfo.check output + new.block + format.note output + fin.entry +} + +FUNCTION {inbook} +{ output.bibitem + author empty$ + { format.editors "author and editor" output.check + editor format.key output + } + { format.authors output.nonnull + crossref missing$ + { "author and editor" editor either.or.check } + 'skip$ + if$ + } + if$ + format.date "year" output.check + date.block + format.btitle "title" output.check + crossref missing$ + { + format.bvolume output + format.chapter.pages "chapter and pages" output.check + new.block + format.number.series output + format.edition output + new.sentence + format.publisher.address output + } + { + format.chapter.pages "chapter and pages" output.check + new.block + format.book.crossref output.nonnull + } + if$ + new.block + format.note output + fin.entry +} + +FUNCTION {incollection} +{ output.bibitem + format.authors "author" output.check + author format.key output + format.date "year" output.check + date.block + format.title "title" output.check + new.block + crossref missing$ + { format.in.ed.booktitle "booktitle" output.check + format.bvolume output + format.number.series output + format.edition output + format.chapter.pages output + new.sentence + format.publisher.address output + } + { format.incoll.inproc.crossref output.nonnull + format.chapter.pages output + } + if$ + new.block + format.note output + fin.entry +} +FUNCTION {inproceedings} +{ output.bibitem + format.authors "author" output.check + author format.key output + format.date "year" output.check + date.block + format.title "title" output.check + new.block + crossref missing$ + { format.in.ed.booktitle "booktitle" output.check + format.bvolume output + format.number.series output + format.pages output + new.sentence + publisher empty$ + { format.organization.address output } + { organization "organization" bibinfo.check output + format.publisher.address output + } + if$ + } + { format.incoll.inproc.crossref output.nonnull + format.pages output + } + if$ + new.block + format.note output + fin.entry +} +FUNCTION {conference} { inproceedings } +FUNCTION {manual} +{ output.bibitem + format.authors output + author format.key output + format.date "year" output.check + date.block + format.btitle "title" output.check + organization address new.block.checkb + organization "organization" bibinfo.check output + address "address" bibinfo.check output + format.edition output + new.block + format.note output + fin.entry +} + +FUNCTION {mastersthesis} +{ output.bibitem + format.authors "author" output.check + author format.key output + format.date "year" output.check + date.block + format.title + "title" output.check + new.block + bbl.mthesis format.thesis.type output.nonnull + school "school" bibinfo.warn output + address "address" bibinfo.check output + new.block + format.note output + fin.entry +} + +FUNCTION {misc} +{ output.bibitem + format.authors output + author format.key output + format.date "year" output.check + date.block + format.title output + new.block + howpublished "howpublished" bibinfo.check output + new.block + format.note output + fin.entry +} +FUNCTION {phdthesis} +{ output.bibitem + format.authors "author" output.check + author format.key output + format.date "year" output.check + date.block + format.title + "title" output.check + new.block + bbl.phdthesis format.thesis.type output.nonnull + school "school" bibinfo.warn output + address "address" bibinfo.check output + new.block + format.note output + fin.entry +} + +FUNCTION {proceedings} +{ output.bibitem + format.editors output + editor format.key output + format.date "year" output.check + date.block + format.btitle "title" output.check + format.bvolume output + format.number.series output + new.sentence + publisher empty$ + { format.organization.address output } + { organization "organization" bibinfo.check output + format.publisher.address output + } + if$ + new.block + format.note output + fin.entry +} + +FUNCTION {techreport} +{ output.bibitem + format.authors "author" output.check + author format.key output + format.date "year" output.check + date.block + format.title + "title" output.check + new.block + format.tr.number output.nonnull + institution "institution" bibinfo.warn output + address "address" bibinfo.check output + new.block + format.note output + fin.entry +} + +FUNCTION {unpublished} +{ output.bibitem + format.authors "author" output.check + author format.key output + format.date "year" output.check + date.block + format.title "title" output.check + new.block + format.note "note" output.check + fin.entry +} + +FUNCTION {default.type} { misc } +READ +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 {format.lab.names} +{ 's := + "" 't := + s #1 "{vv~}{ll}" format.name$ + s num.names$ duplicate$ + #2 > + { pop$ + " " * bbl.etal * + } + { #2 < + 'skip$ + { s #2 "{ff }{vv }{ll}{ jj}" format.name$ "others" = + { + " " * bbl.etal * + } + { bbl.and space.word * s #2 "{vv~}{ll}" format.name$ + * } + if$ + } + if$ + } + if$ +} + +FUNCTION {author.key.label} +{ author empty$ + { key empty$ + { cite$ #1 #3 substring$ } + 'key + if$ + } + { author format.lab.names } + if$ +} + +FUNCTION {author.editor.key.label} +{ author empty$ + { editor empty$ + { key empty$ + { cite$ #1 #3 substring$ } + 'key + if$ + } + { editor format.lab.names } + if$ + } + { author format.lab.names } + if$ +} + +FUNCTION {editor.key.label} +{ editor empty$ + { key empty$ + { cite$ #1 #3 substring$ } + 'key + if$ + } + { editor format.lab.names } + if$ +} + +FUNCTION {calc.short.authors} +{ type$ "book" = + type$ "inbook" = + or + 'author.editor.key.label + { type$ "proceedings" = + 'editor.key.label + 'author.key.label + if$ + } + if$ + 'short.list := +} + +FUNCTION {calc.label} +{ calc.short.authors + short.list + "(" + * + year duplicate$ empty$ + short.list key field.or.null = or + { pop$ "" } + 'skip$ + if$ + * + 'label := +} + +FUNCTION {sort.format.names} +{ 's := + #1 'nameptr := + "" + s num.names$ 'numnames := + numnames 'namesleft := + { namesleft #0 > } + { s nameptr + "{vv{ } }{ll{ }}{ ff{ }}{ jj{ }}" + format.name$ 't := + nameptr #1 > + { + " " * + namesleft #1 = t "others" = and + { "zzzzz" * } + { t sortify * } + if$ + } + { 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 sort.format.names } + if$ +} +FUNCTION {author.editor.sort} +{ author empty$ + { editor empty$ + { key empty$ + { "to sort, need author, editor, or key in " cite$ * warning$ + "" + } + { key sortify } + if$ + } + { editor sort.format.names } + if$ + } + { author sort.format.names } + if$ +} +FUNCTION {editor.sort} +{ editor empty$ + { key empty$ + { "to sort, need editor or key in " cite$ * warning$ + "" + } + { key sortify } + if$ + } + { editor sort.format.names } + if$ +} +FUNCTION {presort} +{ calc.label + label sortify + " " + * + type$ "book" = + type$ "inbook" = + or + 'author.editor.sort + { type$ "proceedings" = + 'editor.sort + 'author.sort + if$ + } + if$ + #1 entry.max$ substring$ + 'sort.label := + sort.label + * + " " + * + title field.or.null + sort.format.title + * + #1 entry.max$ substring$ + 'sort.key$ := +} + +ITERATE {presort} +SORT +STRINGS { last.label next.extra } +INTEGERS { last.extra.num number.label } +FUNCTION {initialize.extra.label.stuff} +{ #0 int.to.chr$ 'last.label := + "" 'next.extra := + #0 'last.extra.num := + #0 'number.label := +} +FUNCTION {forward.pass} +{ last.label label = + { last.extra.num #1 + 'last.extra.num := + last.extra.num int.to.chr$ 'extra.label := + } + { "a" chr.to.int$ 'last.extra.num := + "" 'extra.label := + label 'last.label := + } + if$ + number.label #1 + 'number.label := +} +FUNCTION {reverse.pass} +{ next.extra "b" = + { "a" 'extra.label := } + 'skip$ + if$ + extra.label 'next.extra := + extra.label + duplicate$ empty$ + 'skip$ + { "{\natexlab{" swap$ * "}}" * } + if$ + 'extra.label := + label extra.label * 'label := +} +EXECUTE {initialize.extra.label.stuff} +ITERATE {forward.pass} +REVERSE {reverse.pass} +FUNCTION {bib.sort.order} +{ sort.label + " " + * + year field.or.null sortify + * + " " + * + title field.or.null + sort.format.title + * + #1 entry.max$ substring$ + 'sort.key$ := +} +ITERATE {bib.sort.order} +SORT +FUNCTION {begin.bib} +{ preamble$ empty$ + 'skip$ + { preamble$ write$ newline$ } + if$ + "\begin{thebibliography}{" number.label int.to.str$ * "}" * + write$ newline$ + "\providecommand{\natexlab}[1]{#1}" + write$ newline$ +} +EXECUTE {begin.bib} +EXECUTE {init.state.consts} +ITERATE {call.type$} +FUNCTION {end.bib} +{ newline$ + "\end{thebibliography}" write$ newline$ +} +EXECUTE {end.bib} +%% End of customized bst file +%% +%% End of file `oega.bst'. diff --git a/Master/texmf-dist/bibtex/bst/economic/regstud.bst b/Master/texmf-dist/bibtex/bst/economic/regstud.bst new file mode 100644 index 00000000000..2926edd0ba9 --- /dev/null +++ b/Master/texmf-dist/bibtex/bst/economic/regstud.bst @@ -0,0 +1,1430 @@ +%%% journal "Regional Studies" (RegStud) +%%% bibliography style for use with LaTeX2e +%%% version: 1.0 (15 January 2008) +%%% license: LaTeX Project Public License (see below) +%%% This file was created with makebst (see below) and modified +%%% by Arne Henningsen. +%%% Note: This is an unofficial style file that may not fully comply +%%% with the reference guidelines of "Regional Studies" in every detail. +%%% Please report any problems to <ahenningsen@email.uni-kiel.de>. +%%% Further information is available at +%%% http://www.uni-kiel.de/agrarpol/ahenningsen/latex-bibtex.html +%%% +%%% This BibTeX style should be used with the corresponding +%%% LaTeX class "regstud" (regstud.cls). +%%% Otherwise, the following line has to be added to the LaTeX preamble: +%%% \usepackage[authoryear]{natbib} +%%% +%% +%% This is file `regstud.bst', +%% generated with the docstrip utility. +%% +%% The original source files were: +%% +%% merlin.mbs (with options: `ay,nat,nm-rev,ed-rev,jnrlst,nmft,nmft-sc,nmfted,nmand-rm,lab,lab-sc,and-rm,keyxyr,dt-beg,yr-par,yrp-x,note-yr,thtit-a,vol-bf,volp-com,num-xser,ser-vol,jnm-x,edparxc,bkedcap,blk-com,pp,ed,abr,xedn,and-xcom,etal-it,em-it,nfss,') +%% ---------------------------------------- +%% *** Regional Studies *** +%% +%% Copyright 1994-2004 Patrick W Daly + % =============================================================== + % IMPORTANT NOTICE: + % This bibliographic style (bst) file has been generated from one or + % more master bibliographic style (mbs) files, listed above. + % + % This generated file can be redistributed and/or modified under the terms + % of the LaTeX Project Public License Distributed from CTAN + % archives in directory macros/latex/base/lppl.txt; either + % version 1 of the License, or any later version. + % =============================================================== + % Name and version information of the main mbs file: + % \ProvidesFile{merlin.mbs}[2004/02/09 4.13 (PWD, AO, DPC)] + % For use with BibTeX version 0.99a or later + %------------------------------------------------------------------- + % This bibliography style file is intended for texts in ENGLISH + % This is an author-year citation style bibliography. As such, it is + % non-standard LaTeX, and requires a special package file to function properly. + % Such a package is natbib.sty by Patrick W. Daly + % The form of the \bibitem entries is + % \bibitem[Jones et al.(1990)]{key}... + % \bibitem[Jones et al.(1990)Jones, Baker, and Smith]{key}... + % The essential feature is that the label (the part in brackets) consists + % of the author names, as they should appear in the citation, with the year + % in parentheses following. There must be no space before the opening + % parenthesis! + % With natbib v5.3, a full list of authors may also follow the year. + % In natbib.sty, it is possible to define the type of enclosures that is + % really wanted (brackets or parentheses), but in either case, there must + % be parentheses in the label. + % The \cite command functions as follows: + % \citet{key} ==>> Jones et al. (1990) + % \citet*{key} ==>> Jones, Baker, and Smith (1990) + % \citep{key} ==>> (Jones et al., 1990) + % \citep*{key} ==>> (Jones, Baker, and Smith, 1990) + % \citep[chap. 2]{key} ==>> (Jones et al., 1990, chap. 2) + % \citep[e.g.][]{key} ==>> (e.g. Jones et al., 1990) + % \citep[e.g.][p. 32]{key} ==>> (e.g. Jones et al., p. 32) + % \citeauthor{key} ==>> Jones et al. + % \citeauthor*{key} ==>> Jones, Baker, and Smith + % \citeyear{key} ==>> 1990 + %--------------------------------------------------------------------- + +ENTRY + { address + author + booktitle + chapter + edition + editor + eid + howpublished + institution + journal + key + month + note + number + organization + pages + publisher + school + series + title + type + volume + year + } + {} + { label extra.label sort.label short.list } +INTEGERS { output.state before.all mid.sentence after.sentence after.block } +FUNCTION {init.state.consts} +{ #0 'before.all := + #1 'mid.sentence := + #2 'after.sentence := + #3 'after.block := +} +STRINGS { s t} +FUNCTION {output.nonnull} +{ 's := + output.state mid.sentence = + { ", " * write$ } + { output.state after.block = + { add.period$ write$ + newline$ + "\newblock " write$ + } + { output.state before.all = + 'write$ + { add.period$ " " * write$ } + if$ + } + if$ + mid.sentence 'output.state := + } + if$ + s +} +FUNCTION {output} +{ duplicate$ empty$ + 'pop$ + 'output.nonnull + if$ +} +FUNCTION {output.check} +{ 't := + duplicate$ empty$ + { pop$ "empty " t * " in " * cite$ * warning$ } + 'output.nonnull + if$ +} +FUNCTION {fin.entry} +{ add.period$ + write$ + newline$ +} + +FUNCTION {new.block} +{ output.state before.all = + 'skip$ + { after.block 'output.state := } + if$ +} +FUNCTION {new.sentence} +{ output.state after.block = + 'skip$ + { output.state before.all = + 'skip$ + { after.sentence 'output.state := } + if$ + } + if$ +} +FUNCTION {add.blank} +{ " " * before.all 'output.state := +} + +FUNCTION {date.block} +{ + add.blank +} + +FUNCTION {not} +{ { #0 } + { #1 } + if$ +} +FUNCTION {and} +{ 'skip$ + { pop$ #0 } + if$ +} +FUNCTION {or} +{ { pop$ #1 } + 'skip$ + if$ +} +FUNCTION {new.block.checkb} +{ empty$ + swap$ empty$ + and + 'skip$ + 'new.block + if$ +} +FUNCTION {field.or.null} +{ duplicate$ empty$ + { pop$ "" } + 'skip$ + if$ +} +FUNCTION {emphasize} +{ duplicate$ empty$ + { pop$ "" } + { "\textit{" swap$ * "}" * } + if$ +} +FUNCTION {bolden} +{ duplicate$ empty$ + { pop$ "" } + { "\textbf{" swap$ * "}" * } + if$ +} +FUNCTION {scaps} +{ duplicate$ empty$ + { pop$ "" } + { "\textsc{" swap$ * "}" * } + if$ +} +FUNCTION {bib.name.font} +{ scaps } +FUNCTION {bib.fname.font} +{ bib.name.font } +FUNCTION {cite.name.font} +{ scaps } +FUNCTION {tie.or.space.prefix} +{ duplicate$ text.length$ #3 < + { "~" } + { " " } + if$ + swap$ +} + +FUNCTION {capitalize} +{ "u" change.case$ "t" change.case$ } + +FUNCTION {space.word} +{ " " swap$ * " " * } + % Here are the language-specific definitions for explicit words. + % Each function has a name bbl.xxx where xxx is the English word. + % The language selected here is ENGLISH +FUNCTION {bbl.and} +{ "and"} + +FUNCTION {bbl.etal} +{ "et~al." } + +FUNCTION {bbl.editors} +{ "eds." } + +FUNCTION {bbl.editor} +{ "ed." } + +FUNCTION {bbl.edby} +{ "edited by" } + +FUNCTION {bbl.edition} +{ "edn." } + +FUNCTION {bbl.volume} +{ "vol." } + +FUNCTION {bbl.of} +{ "of" } + +FUNCTION {bbl.number} +{ "no." } + +FUNCTION {bbl.nr} +{ "no." } + +FUNCTION {bbl.in} +{ "in" } + +FUNCTION {bbl.pages} +{ "pp." } + +FUNCTION {bbl.page} +{ "p." } + +FUNCTION {bbl.chapter} +{ "chap." } + +FUNCTION {bbl.techrep} +{ "Tech. Rep." } + +FUNCTION {bbl.mthesis} +{ "Master's thesis" } + +FUNCTION {bbl.phdthesis} +{ "Ph.D. thesis" } + +MACRO {jan} {"Jan."} + +MACRO {feb} {"Feb."} + +MACRO {mar} {"Mar."} + +MACRO {apr} {"Apr."} + +MACRO {may} {"May"} + +MACRO {jun} {"Jun."} + +MACRO {jul} {"Jul."} + +MACRO {aug} {"Aug."} + +MACRO {sep} {"Sep."} + +MACRO {oct} {"Oct."} + +MACRO {nov} {"Nov."} + +MACRO {dec} {"Dec."} + +MACRO {acmcs} {"ACM Computing Surveys"} + +MACRO {acta} {"Acta Informatica"} + +MACRO {cacm} {"Communications of the ACM"} + +MACRO {ibmjrd} {"IBM Journal of Research and Development"} + +MACRO {ibmsj} {"IBM Systems Journal"} + +MACRO {ieeese} {"IEEE Transactions on Software Engineering"} + +MACRO {ieeetc} {"IEEE Transactions on Computers"} + +MACRO {ieeetcad} + {"IEEE Transactions on Computer-Aided Design of Integrated Circuits"} + +MACRO {ipl} {"Information Processing Letters"} + +MACRO {jacm} {"Journal of the ACM"} + +MACRO {jcss} {"Journal of Computer and System Sciences"} + +MACRO {scp} {"Science of Computer Programming"} + +MACRO {sicomp} {"SIAM Journal on Computing"} + +MACRO {tocs} {"ACM Transactions on Computer Systems"} + +MACRO {tods} {"ACM Transactions on Database Systems"} + +MACRO {tog} {"ACM Transactions on Graphics"} + +MACRO {toms} {"ACM Transactions on Mathematical Software"} + +MACRO {toois} {"ACM Transactions on Office Information Systems"} + +MACRO {toplas} {"ACM Transactions on Programming Languages and Systems"} + +MACRO {tcs} {"Theoretical Computer Science"} +FUNCTION {bibinfo.check} +{ swap$ + duplicate$ missing$ + { + pop$ pop$ + "" + } + { duplicate$ empty$ + { + swap$ pop$ + } + { swap$ + pop$ + } + if$ + } + if$ +} +FUNCTION {bibinfo.warn} +{ swap$ + duplicate$ missing$ + { + swap$ "missing " swap$ * " in " * cite$ * warning$ pop$ + "" + } + { duplicate$ empty$ + { + swap$ "empty " swap$ * " in " * cite$ * warning$ + } + { swap$ + pop$ + } + if$ + } + if$ +} +STRINGS { bibinfo} +INTEGERS { nameptr namesleft numnames } + +FUNCTION {format.names} +{ 'bibinfo := + duplicate$ empty$ 'skip$ { + 's := + "" 't := + #1 'nameptr := + s num.names$ 'numnames := + numnames 'namesleft := + { namesleft #0 > } + { s nameptr + "{vv~}{ll}{ f.}{, jj}" + format.name$ + bib.name.font + bibinfo bibinfo.check + 't := + nameptr #1 > + { + namesleft #1 > + { ", " * t * } + { + s nameptr "{ll}" format.name$ duplicate$ "others" = + { 't := } + { pop$ } + if$ + t "others" = + { + " " * bbl.etal emphasize * + } + { + bbl.and + space.word * t * + } + if$ + } + if$ + } + 't + if$ + nameptr #1 + 'nameptr := + namesleft #1 - 'namesleft := + } + while$ + } if$ +} +FUNCTION {format.names.ed} +{ + format.names +} +FUNCTION {format.key} +{ empty$ + { key field.or.null } + { "" } + if$ +} + +FUNCTION {format.authors} +{ author "author" format.names +} +FUNCTION {get.bbl.editor} +{ editor num.names$ #1 > 'bbl.editors 'bbl.editor if$ } + +FUNCTION {format.editors} +{ editor "editor" format.names duplicate$ empty$ 'skip$ + { + " " * + get.bbl.editor + capitalize + "(" swap$ * ")" * + * + } + if$ +} +FUNCTION {format.note} +{ + note empty$ + { "" } + { note #1 #1 substring$ + duplicate$ "{" = + 'skip$ + { output.state mid.sentence = + { "l" } + { "u" } + if$ + change.case$ + } + if$ + note #2 global.max$ substring$ * "note" bibinfo.check + } + if$ +} + +FUNCTION {format.title} +{ title + duplicate$ empty$ 'skip$ + { "t" change.case$ } + if$ + "title" bibinfo.check +} +FUNCTION {format.full.names} +{'s := + "" 't := + #1 'nameptr := + s num.names$ 'numnames := + numnames 'namesleft := + { namesleft #0 > } + { s nameptr + "{vv~}{ll}" format.name$ + cite.name.font + 't := + nameptr #1 > + { + namesleft #1 > + { ", " * t * } + { + s nameptr "{ll}" format.name$ duplicate$ "others" = + { 't := } + { pop$ } + if$ + t "others" = + { + " " * bbl.etal emphasize * + } + { + bbl.and + space.word * t * + } + if$ + } + if$ + } + 't + if$ + nameptr #1 + 'nameptr := + namesleft #1 - 'namesleft := + } + while$ +} + +FUNCTION {author.editor.key.full} +{ author empty$ + { editor empty$ + { key empty$ + { cite$ #1 #3 substring$ } + 'key + if$ + } + { editor format.full.names } + if$ + } + { author format.full.names } + if$ +} + +FUNCTION {author.key.full} +{ author empty$ + { key empty$ + { cite$ #1 #3 substring$ } + 'key + if$ + } + { author format.full.names } + if$ +} + +FUNCTION {editor.key.full} +{ editor empty$ + { key empty$ + { cite$ #1 #3 substring$ } + 'key + if$ + } + { editor format.full.names } + if$ +} + +FUNCTION {make.full.names} +{ type$ "book" = + type$ "inbook" = + or + 'author.editor.key.full + { type$ "proceedings" = + 'editor.key.full + 'author.key.full + if$ + } + if$ +} + +FUNCTION {output.bibitem} +{ newline$ + "\bibitem[{" write$ + label write$ + ")" make.full.names duplicate$ short.list = + { pop$ } + { * } + if$ + "}]{" * write$ + cite$ write$ + "}" write$ + newline$ + "" + before.all 'output.state := +} + +FUNCTION {n.dashify} +{ + 't := + "" + { t empty$ not } + { t #1 #1 substring$ "-" = + { t #1 #2 substring$ "--" = not + { "--" * + t #2 global.max$ substring$ 't := + } + { { t #1 #1 substring$ "-" = } + { "-" * + t #2 global.max$ substring$ 't := + } + while$ + } + if$ + } + { t #1 #1 substring$ * + t #2 global.max$ substring$ 't := + } + if$ + } + while$ +} + +FUNCTION {word.in} +{ bbl.in + " " * } + +FUNCTION {format.date} +{ year "year" bibinfo.check duplicate$ empty$ + { + "empty year in " cite$ * "; set to ????" * warning$ + pop$ "????" + } + 'skip$ + if$ + extra.label * + before.all 'output.state := + " (" swap$ * ")" * +} +FUNCTION {format.btitle} +{ title "title" bibinfo.check + duplicate$ empty$ 'skip$ + { + emphasize + } + if$ +} +FUNCTION {either.or.check} +{ empty$ + 'pop$ + { "can't use both " swap$ * " fields in " * cite$ * warning$ } + if$ +} +FUNCTION {format.bvolume} +{ volume empty$ + { "" } + { bbl.volume volume tie.or.space.prefix + "volume" bibinfo.check * * + series "series" bibinfo.check + duplicate$ empty$ 'pop$ + { emphasize ", " * swap$ * } + if$ + "volume and number" number either.or.check + } + if$ +} +FUNCTION {format.number.series} +{ volume empty$ + { number empty$ + { series field.or.null } + { series empty$ + { number "number" bibinfo.check } + { output.state mid.sentence = + { bbl.number } + { bbl.number capitalize } + if$ + number tie.or.space.prefix "number" bibinfo.check * * + bbl.in space.word * + series "series" bibinfo.check * + } + if$ + } + if$ + } + { "" } + if$ +} + +FUNCTION {format.edition} +{ edition duplicate$ empty$ 'skip$ + { + output.state mid.sentence = + { "l" } + { "t" } + if$ change.case$ + "edition" bibinfo.check + " " * bbl.edition * + } + if$ +} +INTEGERS { multiresult } +FUNCTION {multi.page.check} +{ 't := + #0 'multiresult := + { multiresult not + t empty$ not + and + } + { t #1 #1 substring$ + duplicate$ "-" = + swap$ duplicate$ "," = + swap$ "+" = + or or + { #1 'multiresult := } + { t #2 global.max$ substring$ 't := } + if$ + } + while$ + multiresult +} +FUNCTION {format.pages} +{ pages duplicate$ empty$ 'skip$ + { duplicate$ multi.page.check + { + bbl.pages swap$ + n.dashify + } + { + bbl.page swap$ + } + if$ + tie.or.space.prefix + "pages" bibinfo.check + * * + } + if$ +} +FUNCTION {format.journal.pages} +{ pages duplicate$ empty$ 'pop$ + { swap$ duplicate$ empty$ + { pop$ pop$ format.pages } + { + ", " * + swap$ + n.dashify + "pages" bibinfo.check + * + } + if$ + } + if$ +} +FUNCTION {format.journal.eid} +{ eid "eid" bibinfo.check + duplicate$ empty$ 'pop$ + { swap$ duplicate$ empty$ 'skip$ + { + ", " * + } + if$ + swap$ * + } + if$ +} +FUNCTION {format.vol.num.pages} +{ volume field.or.null + duplicate$ empty$ 'skip$ + { + "volume" bibinfo.check + } + if$ + bolden + number "number" bibinfo.check duplicate$ empty$ 'skip$ + { + swap$ duplicate$ empty$ + { "there's a number but no volume in " cite$ * warning$ } + 'skip$ + if$ + swap$ + "(" swap$ * ")" * + } + if$ * + eid empty$ + { format.journal.pages } + { format.journal.eid } + if$ +} + +FUNCTION {format.chapter.pages} +{ chapter empty$ + 'format.pages + { type empty$ + { bbl.chapter } + { type "l" change.case$ + "type" bibinfo.check + } + if$ + chapter tie.or.space.prefix + "chapter" bibinfo.check + * * + pages empty$ + 'skip$ + { ", " * format.pages * } + if$ + } + if$ +} + +FUNCTION {format.booktitle} +{ + booktitle "booktitle" bibinfo.check + emphasize +} +FUNCTION {format.in.ed.booktitle} +{ format.booktitle duplicate$ empty$ 'skip$ + { + editor "editor" format.names.ed duplicate$ empty$ 'pop$ + { + " " * + get.bbl.editor + capitalize + "(" swap$ * ") " * + * swap$ + * } + if$ + word.in swap$ * + } + if$ +} +FUNCTION {format.thesis.type} +{ type duplicate$ empty$ + 'pop$ + { swap$ pop$ + "t" change.case$ "type" bibinfo.check + } + if$ +} +FUNCTION {format.tr.number} +{ number "number" bibinfo.check + type duplicate$ empty$ + { pop$ bbl.techrep } + 'skip$ + if$ + "type" bibinfo.check + swap$ duplicate$ empty$ + { pop$ "t" change.case$ } + { tie.or.space.prefix * * } + if$ +} +FUNCTION {format.article.crossref} +{ + word.in + " \cite{" * crossref * "}" * +} +FUNCTION {format.book.crossref} +{ volume duplicate$ empty$ + { "empty volume in " cite$ * "'s crossref of " * crossref * warning$ + pop$ word.in + } + { bbl.volume + swap$ tie.or.space.prefix "volume" bibinfo.check * * bbl.of space.word * + } + if$ + " \cite{" * crossref * "}" * +} +FUNCTION {format.incoll.inproc.crossref} +{ + word.in + " \cite{" * crossref * "}" * +} +FUNCTION {format.org.or.pub} +{ 't := + "" + address empty$ t empty$ and + 'skip$ + { + t empty$ + { address "address" bibinfo.check * + } + { t * + address empty$ + 'skip$ + { ", " * address "address" bibinfo.check * } + if$ + } + if$ + } + if$ +} +FUNCTION {format.publisher.address} +{ publisher "publisher" bibinfo.warn format.org.or.pub +} + +FUNCTION {format.organization.address} +{ organization "organization" bibinfo.check format.org.or.pub +} + +FUNCTION {article} +{ output.bibitem + format.authors "author" output.check + author format.key output + format.date "year" output.check + date.block + format.title "title" output.check + crossref missing$ + { + journal + "journal" bibinfo.check + emphasize + "journal" output.check + add.blank + format.vol.num.pages output + } + { format.article.crossref output.nonnull + format.pages output + } + if$ + format.note output + fin.entry +} +FUNCTION {book} +{ output.bibitem + author empty$ + { format.editors "author and editor" output.check + editor format.key output + add.blank + } + { format.authors output.nonnull + crossref missing$ + { "author and editor" editor either.or.check } + 'skip$ + if$ + } + if$ + format.date "year" output.check + date.block + format.btitle "title" output.check + crossref missing$ + { format.bvolume output + format.number.series output + format.publisher.address output + } + { + format.book.crossref output.nonnull + } + if$ + format.edition output + format.note output + fin.entry +} +FUNCTION {booklet} +{ output.bibitem + format.authors output + author format.key output + format.date "year" output.check + date.block + format.title "title" output.check + howpublished "howpublished" bibinfo.check output + address "address" bibinfo.check output + format.note output + fin.entry +} + +FUNCTION {inbook} +{ output.bibitem + author empty$ + { format.editors "author and editor" output.check + editor format.key output + } + { format.authors output.nonnull + crossref missing$ + { "author and editor" editor either.or.check } + 'skip$ + if$ + } + if$ + format.date "year" output.check + date.block + format.btitle "title" output.check + crossref missing$ + { + format.bvolume output + format.chapter.pages "chapter and pages" output.check + format.number.series output + format.publisher.address output + } + { + format.chapter.pages "chapter and pages" output.check + format.book.crossref output.nonnull + } + if$ + format.edition output + format.note output + fin.entry +} + +FUNCTION {incollection} +{ output.bibitem + format.authors "author" output.check + author format.key output + format.date "year" output.check + date.block + format.title "title" output.check + crossref missing$ + { format.in.ed.booktitle "booktitle" output.check + format.bvolume output + format.number.series output + format.chapter.pages output + format.publisher.address output + format.edition output + } + { format.incoll.inproc.crossref output.nonnull + format.chapter.pages output + } + if$ + format.note output + fin.entry +} +FUNCTION {inproceedings} +{ output.bibitem + format.authors "author" output.check + author format.key output + format.date "year" output.check + date.block + format.title "title" output.check + crossref missing$ + { format.in.ed.booktitle "booktitle" output.check + format.bvolume output + format.number.series output + format.pages output + publisher empty$ + { format.organization.address output } + { organization "organization" bibinfo.check output + format.publisher.address output + } + if$ + } + { format.incoll.inproc.crossref output.nonnull + format.pages output + } + if$ + format.note output + fin.entry +} +FUNCTION {conference} { inproceedings } +FUNCTION {manual} +{ output.bibitem + format.authors output + author format.key output + format.date "year" output.check + date.block + format.btitle "title" output.check + organization "organization" bibinfo.check output + address "address" bibinfo.check output + format.edition output + format.note output + fin.entry +} + +FUNCTION {mastersthesis} +{ output.bibitem + format.authors "author" output.check + author format.key output + format.date "year" output.check + date.block + format.title + "title" output.check + bbl.mthesis format.thesis.type output.nonnull + school "school" bibinfo.warn output + address "address" bibinfo.check output + format.note output + fin.entry +} + +FUNCTION {misc} +{ output.bibitem + format.authors output + author format.key output + format.date "year" output.check + date.block + format.title output + howpublished "howpublished" bibinfo.check output + format.note output + fin.entry +} +FUNCTION {phdthesis} +{ output.bibitem + format.authors "author" output.check + author format.key output + format.date "year" output.check + date.block + format.title + "title" output.check + bbl.phdthesis format.thesis.type output.nonnull + school "school" bibinfo.warn output + address "address" bibinfo.check output + format.note output + fin.entry +} + +FUNCTION {proceedings} +{ output.bibitem + format.editors output + editor format.key output + format.date "year" output.check + date.block + format.btitle "title" output.check + format.bvolume output + format.number.series output + publisher empty$ + { format.organization.address output } + { organization "organization" bibinfo.check output + format.publisher.address output + } + if$ + format.note output + fin.entry +} + +FUNCTION {techreport} +{ output.bibitem + format.authors "author" output.check + author format.key output + format.date "year" output.check + date.block + format.title + "title" output.check + format.tr.number output.nonnull + institution "institution" bibinfo.warn output + address "address" bibinfo.check output + format.note output + fin.entry +} + +FUNCTION {unpublished} +{ output.bibitem + format.authors "author" output.check + author format.key output + format.date "year" output.check + date.block + format.title "title" output.check + format.note "note" output.check + fin.entry +} + +FUNCTION {default.type} { misc } +READ +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 {format.lab.names} +{ 's := + "" 't := + s #1 "{vv~}{ll}" format.name$ + cite.name.font + s num.names$ duplicate$ + #2 > + { pop$ + " " * bbl.etal emphasize * + } + { #2 < + 'skip$ + { s #2 "{ff }{vv }{ll}{ jj}" format.name$ "others" = + { + " " * bbl.etal emphasize * + } + { bbl.and space.word * s #2 "{vv~}{ll}" format.name$ + cite.name.font + * } + if$ + } + if$ + } + if$ +} + +FUNCTION {author.key.label} +{ author empty$ + { key empty$ + { cite$ #1 #3 substring$ } + 'key + if$ + } + { author format.lab.names } + if$ +} + +FUNCTION {author.editor.key.label} +{ author empty$ + { editor empty$ + { key empty$ + { cite$ #1 #3 substring$ } + 'key + if$ + } + { editor format.lab.names } + if$ + } + { author format.lab.names } + if$ +} + +FUNCTION {editor.key.label} +{ editor empty$ + { key empty$ + { cite$ #1 #3 substring$ } + 'key + if$ + } + { editor format.lab.names } + if$ +} + +FUNCTION {calc.short.authors} +{ type$ "book" = + type$ "inbook" = + or + 'author.editor.key.label + { type$ "proceedings" = + 'editor.key.label + 'author.key.label + if$ + } + if$ + 'short.list := +} + +FUNCTION {calc.label} +{ calc.short.authors + short.list + "(" + * + year duplicate$ empty$ + short.list key field.or.null = or + { pop$ "" } + 'skip$ + if$ + * + 'label := +} + +FUNCTION {sort.format.names} +{ 's := + #1 'nameptr := + "" + s num.names$ 'numnames := + numnames 'namesleft := + { namesleft #0 > } + { s nameptr + "{vv{ } }{ll{ }}{ f{ }}{ jj{ }}" + format.name$ 't := + nameptr #1 > + { + " " * + namesleft #1 = t "others" = and + { "zzzzz" * } + { t sortify * } + if$ + } + { 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 sort.format.names } + if$ +} +FUNCTION {author.editor.sort} +{ author empty$ + { editor empty$ + { key empty$ + { "to sort, need author, editor, or key in " cite$ * warning$ + "" + } + { key sortify } + if$ + } + { editor sort.format.names } + if$ + } + { author sort.format.names } + if$ +} +FUNCTION {editor.sort} +{ editor empty$ + { key empty$ + { "to sort, need editor or key in " cite$ * warning$ + "" + } + { key sortify } + if$ + } + { editor sort.format.names } + if$ +} +FUNCTION {presort} +{ calc.label + label sortify + " " + * + type$ "book" = + type$ "inbook" = + or + 'author.editor.sort + { type$ "proceedings" = + 'editor.sort + 'author.sort + if$ + } + if$ + #1 entry.max$ substring$ + 'sort.label := + sort.label + * + " " + * + title field.or.null + sort.format.title + * + #1 entry.max$ substring$ + 'sort.key$ := +} + +ITERATE {presort} +SORT +STRINGS { last.label next.extra } +INTEGERS { last.extra.num number.label } +FUNCTION {initialize.extra.label.stuff} +{ #0 int.to.chr$ 'last.label := + "" 'next.extra := + #0 'last.extra.num := + #0 'number.label := +} +FUNCTION {forward.pass} +{ last.label label = + { last.extra.num #1 + 'last.extra.num := + last.extra.num int.to.chr$ 'extra.label := + } + { "a" chr.to.int$ 'last.extra.num := + "" 'extra.label := + label 'last.label := + } + if$ + number.label #1 + 'number.label := +} +FUNCTION {reverse.pass} +{ next.extra "b" = + { "a" 'extra.label := } + 'skip$ + if$ + extra.label 'next.extra := + extra.label + duplicate$ empty$ + 'skip$ + { "{\natexlab{" swap$ * "}}" * } + if$ + 'extra.label := + label extra.label * 'label := +} +EXECUTE {initialize.extra.label.stuff} +ITERATE {forward.pass} +REVERSE {reverse.pass} +FUNCTION {bib.sort.order} +{ sort.label + " " + * + year field.or.null sortify + * + " " + * + title field.or.null + sort.format.title + * + #1 entry.max$ substring$ + 'sort.key$ := +} +ITERATE {bib.sort.order} +SORT +FUNCTION {begin.bib} +{ preamble$ empty$ + 'skip$ + { preamble$ write$ newline$ } + if$ + "\begin{thebibliography}{" number.label int.to.str$ * "}" * + write$ newline$ + "\providecommand{\natexlab}[1]{#1}" + write$ newline$ +} +EXECUTE {begin.bib} +EXECUTE {init.state.consts} +ITERATE {call.type$} +FUNCTION {end.bib} +{ newline$ + "\end{thebibliography}" write$ newline$ +} +EXECUTE {end.bib} +%% End of customized bst file +%% +%% End of file `regstud.bst'. diff --git a/Master/texmf-dist/bibtex/bst/economic/tandfx.bst b/Master/texmf-dist/bibtex/bst/economic/tandfx.bst new file mode 100644 index 00000000000..977bdf09d37 --- /dev/null +++ b/Master/texmf-dist/bibtex/bst/economic/tandfx.bst @@ -0,0 +1,1557 @@ +%% +%% This is file `tandfx.bst', +%% generated with the docstrip utility. +%% +%% The original source files were: +%% +%% merlin.mbs (with options: `ay,nat,lang,nm-rev,jnrlst,keyxyr,blkyear,dt-beg,yr-com,yrp-per,note-yr,vnum-sp,volp-com,num-xser,ser-vol,bkpg-x,add-pub,pre-pub,blk-com,in-col,in-it,ppx,ed,abr,ednx,ord,etal-it,em-it,nfss,') +%% ---------------------------------------- +%% *** Taylor and Francis Reference Style X *** +%% +%% Copyright 1994-2005 Patrick W Daly + % =============================================================== + % IMPORTANT NOTICE: + % This bibliographic style (bst) file has been generated from one or + % more master bibliographic style (mbs) files, listed above. + % + % This generated file can be redistributed and/or modified under the terms + % of the LaTeX Project Public License Distributed from CTAN + % archives in directory macros/latex/base/lppl.txt; either + % version 1 of the License, or any later version. + % =============================================================== + % Name and version information of the main mbs file: + % \ProvidesFile{merlin.mbs}[2005/10/17 4.14 (PWD, AO, DPC)] + % For use with BibTeX version 0.99a or later + %------------------------------------------------------------------- + % This bibliography style file is intended for texts in ENGLISH + % This is an author-year citation style bibliography. As such, it is + % non-standard LaTeX, and requires a special package file to function properly. + % Such a package is natbib.sty by Patrick W. Daly + % The form of the \bibitem entries is + % \bibitem[Jones et al.(1990)]{key}... + % \bibitem[Jones et al.(1990)Jones, Baker, and Smith]{key}... + % The essential feature is that the label (the part in brackets) consists + % of the author names, as they should appear in the citation, with the year + % in parentheses following. There must be no space before the opening + % parenthesis! + % With natbib v5.3, a full list of authors may also follow the year. + % In natbib.sty, it is possible to define the type of enclosures that is + % really wanted (brackets or parentheses), but in either case, there must + % be parentheses in the label. + % The \cite command functions as follows: + % \citet{key} ==>> Jones et al. (1990) + % \citet*{key} ==>> Jones, Baker, and Smith (1990) + % \citep{key} ==>> (Jones et al., 1990) + % \citep*{key} ==>> (Jones, Baker, and Smith, 1990) + % \citep[chap. 2]{key} ==>> (Jones et al., 1990, chap. 2) + % \citep[e.g.][]{key} ==>> (e.g. Jones et al., 1990) + % \citep[e.g.][p. 32]{key} ==>> (e.g. Jones et al., p. 32) + % \citeauthor{key} ==>> Jones et al. + % \citeauthor*{key} ==>> Jones, Baker, and Smith + % \citeyear{key} ==>> 1990 + %--------------------------------------------------------------------- + +ENTRY + { address + author + booktitle + chapter + edition + editor + eid + howpublished + institution + journal + key + language + month + note + number + organization + pages + publisher + school + series + title + type + volume + year + } + {} + { label extra.label sort.label short.list } +INTEGERS { output.state before.all mid.sentence after.sentence after.block } +FUNCTION {init.state.consts} +{ #0 'before.all := + #1 'mid.sentence := + #2 'after.sentence := + #3 'after.block := +} +STRINGS { s t} +FUNCTION {output.nonnull} +{ 's := + output.state mid.sentence = + { ", " * write$ } + { output.state after.block = + { add.period$ write$ + newline$ + "\newblock " write$ + } + { output.state before.all = + 'write$ + { add.period$ " " * write$ } + if$ + } + if$ + mid.sentence 'output.state := + } + if$ + s +} +FUNCTION {output} +{ duplicate$ empty$ + 'pop$ + 'output.nonnull + if$ +} +FUNCTION {output.check} +{ 't := + duplicate$ empty$ + { pop$ "empty " t * " in " * cite$ * warning$ } + 'output.nonnull + if$ +} +FUNCTION {fin.entry} +{ add.period$ + write$ + newline$ +} + +FUNCTION {new.block} +{ output.state before.all = + 'skip$ + { after.block 'output.state := } + if$ +} +FUNCTION {new.sentence} +{ output.state after.block = + 'skip$ + { output.state before.all = + 'skip$ + { after.sentence 'output.state := } + if$ + } + if$ +} +FUNCTION {add.blank} +{ " " * before.all 'output.state := +} + +FUNCTION {date.block} +{ + new.sentence +} + +FUNCTION {not} +{ { #0 } + { #1 } + if$ +} +FUNCTION {and} +{ 'skip$ + { pop$ #0 } + if$ +} +FUNCTION {or} +{ { pop$ #1 } + 'skip$ + if$ +} +FUNCTION {new.block.checkb} +{ empty$ + swap$ empty$ + and + 'skip$ + 'new.block + if$ +} +FUNCTION {field.or.null} +{ duplicate$ empty$ + { pop$ "" } + 'skip$ + if$ +} +FUNCTION {emphasize} +{ duplicate$ empty$ + { pop$ "" } + { "\textit{" swap$ * "}" * } + if$ +} +FUNCTION {tie.or.space.prefix} +{ duplicate$ text.length$ #3 < + { "~" } + { " " } + if$ + swap$ +} + +FUNCTION {capitalize} +{ "u" change.case$ "t" change.case$ } + +FUNCTION {space.word} +{ " " swap$ * " " * } + % Here are the language-specific definitions for explicit words. + % Each function has a name bbl.xxx where xxx is the English word. + % The language selected here is ENGLISH +FUNCTION {bbl.and} +{ "and"} + +FUNCTION {bbl.etal} +{ "et~al." } + +FUNCTION {bbl.editors} +{ "eds." } + +FUNCTION {bbl.editor} +{ "ed." } + +FUNCTION {bbl.edby} +{ "edited by" } + +FUNCTION {bbl.edition} +{ "ed." } + +FUNCTION {bbl.volume} +{ "vol." } + +FUNCTION {bbl.of} +{ "of" } + +FUNCTION {bbl.number} +{ "no." } + +FUNCTION {bbl.nr} +{ "no." } + +FUNCTION {bbl.in} +{ "in" } + +FUNCTION {bbl.pages} +{ "" } + +FUNCTION {bbl.page} +{ "" } + +FUNCTION {bbl.chapter} +{ "chap." } + +FUNCTION {bbl.techrep} +{ "Tech. Rep." } + +FUNCTION {bbl.mthesis} +{ "Master's thesis" } + +FUNCTION {bbl.phdthesis} +{ "Ph.D. thesis" } + +FUNCTION {bbl.first} +{ "1st" } + +FUNCTION {bbl.second} +{ "2nd" } + +FUNCTION {bbl.third} +{ "3rd" } + +FUNCTION {bbl.fourth} +{ "4th" } + +FUNCTION {bbl.fifth} +{ "5th" } + +FUNCTION {bbl.st} +{ "st" } + +FUNCTION {bbl.nd} +{ "nd" } + +FUNCTION {bbl.rd} +{ "rd" } + +FUNCTION {bbl.th} +{ "th" } + +MACRO {jan} {"Jan."} + +MACRO {feb} {"Feb."} + +MACRO {mar} {"Mar."} + +MACRO {apr} {"Apr."} + +MACRO {may} {"May"} + +MACRO {jun} {"Jun."} + +MACRO {jul} {"Jul."} + +MACRO {aug} {"Aug."} + +MACRO {sep} {"Sep."} + +MACRO {oct} {"Oct."} + +MACRO {nov} {"Nov."} + +MACRO {dec} {"Dec."} + +FUNCTION {eng.ord} +{ duplicate$ "1" swap$ * + #-2 #1 substring$ "1" = + { bbl.th * } + { duplicate$ #-1 #1 substring$ + duplicate$ "1" = + { pop$ bbl.st * } + { duplicate$ "2" = + { pop$ bbl.nd * } + { "3" = + { bbl.rd * } + { bbl.th * } + if$ + } + if$ + } + if$ + } + if$ +} + +MACRO {acmcs} {"ACM Computing Surveys"} + +MACRO {acta} {"Acta Informatica"} + +MACRO {cacm} {"Communications of the ACM"} + +MACRO {ibmjrd} {"IBM Journal of Research and Development"} + +MACRO {ibmsj} {"IBM Systems Journal"} + +MACRO {ieeese} {"IEEE Transactions on Software Engineering"} + +MACRO {ieeetc} {"IEEE Transactions on Computers"} + +MACRO {ieeetcad} + {"IEEE Transactions on Computer-Aided Design of Integrated Circuits"} + +MACRO {ipl} {"Information Processing Letters"} + +MACRO {jacm} {"Journal of the ACM"} + +MACRO {jcss} {"Journal of Computer and System Sciences"} + +MACRO {scp} {"Science of Computer Programming"} + +MACRO {sicomp} {"SIAM Journal on Computing"} + +MACRO {tocs} {"ACM Transactions on Computer Systems"} + +MACRO {tods} {"ACM Transactions on Database Systems"} + +MACRO {tog} {"ACM Transactions on Graphics"} + +MACRO {toms} {"ACM Transactions on Mathematical Software"} + +MACRO {toois} {"ACM Transactions on Office Information Systems"} + +MACRO {toplas} {"ACM Transactions on Programming Languages and Systems"} + +MACRO {tcs} {"Theoretical Computer Science"} +FUNCTION {bibinfo.check} +{ swap$ + duplicate$ missing$ + { + pop$ pop$ + "" + } + { duplicate$ empty$ + { + swap$ pop$ + } + { swap$ + pop$ + } + if$ + } + if$ +} +FUNCTION {bibinfo.warn} +{ swap$ + duplicate$ missing$ + { + swap$ "missing " swap$ * " in " * cite$ * warning$ pop$ + "" + } + { duplicate$ empty$ + { + swap$ "empty " swap$ * " in " * cite$ * warning$ + } + { swap$ + pop$ + } + if$ + } + if$ +} +STRINGS { bibinfo} +INTEGERS { nameptr namesleft numnames } + +FUNCTION {format.names} +{ 'bibinfo := + duplicate$ empty$ 'skip$ { + 's := + "" 't := + #1 'nameptr := + s num.names$ 'numnames := + numnames 'namesleft := + { namesleft #0 > } + { s nameptr + "{vv~}{ll}{, f{.}.}{, jj}" + format.name$ + bibinfo bibinfo.check + 't := + nameptr #1 > + { + namesleft #1 > + { ", " * t * } + { + s nameptr "{ll}" format.name$ duplicate$ "others" = + { 't := } + { pop$ } + if$ + numnames #2 > + { "," * } + 'skip$ + if$ + t "others" = + { + " " * bbl.etal emphasize * + } + { + bbl.and + space.word * t * + } + if$ + } + if$ + } + 't + if$ + nameptr #1 + 'nameptr := + namesleft #1 - 'namesleft := + } + while$ + } if$ +} +FUNCTION {format.names.ed} +{ + 'bibinfo := + duplicate$ empty$ 'skip$ { + 's := + "" 't := + #1 'nameptr := + s num.names$ 'numnames := + numnames 'namesleft := + { namesleft #0 > } + { s nameptr + "{f{.}.~}{vv~}{ll}{, jj}" + format.name$ + bibinfo bibinfo.check + 't := + nameptr #1 > + { + namesleft #1 > + { ", " * t * } + { + s nameptr "{ll}" format.name$ duplicate$ "others" = + { 't := } + { pop$ } + if$ + numnames #2 > + { "," * } + 'skip$ + if$ + t "others" = + { + + " " * bbl.etal emphasize * + } + { + bbl.and + space.word * t * + } + if$ + } + if$ + } + 't + if$ + nameptr #1 + 'nameptr := + namesleft #1 - 'namesleft := + } + while$ + } if$ +} +FUNCTION {format.key} +{ empty$ + { key field.or.null } + { "" } + if$ +} + +FUNCTION {format.authors} +{ author "author" format.names +} +FUNCTION {get.bbl.editor} +{ editor num.names$ #1 > 'bbl.editors 'bbl.editor if$ } + +FUNCTION {format.editors} +{ editor "editor" format.names duplicate$ empty$ 'skip$ + { + "," * + " " * + get.bbl.editor + * + } + if$ +} +FUNCTION {select.language} +{ duplicate$ empty$ + 'pop$ + { language empty$ + 'skip$ + { "{\selectlanguage{" language * "}" * swap$ * "}" * } + if$ + } + if$ +} + +FUNCTION {format.note} +{ + note empty$ + { "" } + { note #1 #1 substring$ + duplicate$ "{" = + 'skip$ + { output.state mid.sentence = + { "l" } + { "u" } + if$ + change.case$ + } + if$ + note #2 global.max$ substring$ * "note" bibinfo.check + } + if$ +} + +FUNCTION {format.title} +{ title + duplicate$ empty$ 'skip$ + { "t" change.case$ } + if$ + "title" bibinfo.check + duplicate$ empty$ 'skip$ + { + select.language + } + if$ +} +FUNCTION {format.full.names} +{'s := + "" 't := + #1 'nameptr := + s num.names$ 'numnames := + numnames 'namesleft := + { namesleft #0 > } + { s nameptr + "{vv~}{ll}" format.name$ + 't := + nameptr #1 > + { + namesleft #1 > + { ", " * t * } + { + s nameptr "{ll}" format.name$ duplicate$ "others" = + { 't := } + { pop$ } + if$ + t "others" = + { + " " * bbl.etal emphasize * + } + { + numnames #2 > + { "," * } + 'skip$ + if$ + bbl.and + space.word * t * + } + if$ + } + if$ + } + 't + if$ + nameptr #1 + 'nameptr := + namesleft #1 - 'namesleft := + } + while$ +} + +FUNCTION {author.editor.key.full} +{ author empty$ + { editor empty$ + { key empty$ + { cite$ #1 #3 substring$ } + 'key + if$ + } + { editor format.full.names } + if$ + } + { author format.full.names } + if$ +} + +FUNCTION {author.key.full} +{ author empty$ + { key empty$ + { cite$ #1 #3 substring$ } + 'key + if$ + } + { author format.full.names } + if$ +} + +FUNCTION {editor.key.full} +{ editor empty$ + { key empty$ + { cite$ #1 #3 substring$ } + 'key + if$ + } + { editor format.full.names } + if$ +} + +FUNCTION {make.full.names} +{ type$ "book" = + type$ "inbook" = + or + 'author.editor.key.full + { type$ "proceedings" = + 'editor.key.full + 'author.key.full + if$ + } + if$ +} + +FUNCTION {output.bibitem} +{ newline$ + "\bibitem[{" write$ + label write$ + ")" make.full.names duplicate$ short.list = + { pop$ } + { * } + if$ + "}]{" * write$ + cite$ write$ + "}" write$ + newline$ + "" + before.all 'output.state := +} + +FUNCTION {n.dashify} +{ + 't := + "" + { t empty$ not } + { t #1 #1 substring$ "-" = + { t #1 #2 substring$ "--" = not + { "--" * + t #2 global.max$ substring$ 't := + } + { { t #1 #1 substring$ "-" = } + { "-" * + t #2 global.max$ substring$ 't := + } + while$ + } + if$ + } + { t #1 #1 substring$ * + t #2 global.max$ substring$ 't := + } + if$ + } + while$ +} + +FUNCTION {word.in} +{ bbl.in + ":" * + emphasize + " " * } + +FUNCTION {format.date} +{ year "year" bibinfo.check duplicate$ empty$ + { + } + 'skip$ + if$ + extra.label * + before.all 'output.state := + ", " swap$ * +} +FUNCTION {format.btitle} +{ title "title" bibinfo.check + duplicate$ empty$ 'skip$ + { + emphasize + select.language + } + if$ +} +FUNCTION {either.or.check} +{ empty$ + 'pop$ + { "can't use both " swap$ * " fields in " * cite$ * warning$ } + if$ +} +FUNCTION {format.bvolume} +{ volume empty$ + { "" } + { bbl.volume volume tie.or.space.prefix + "volume" bibinfo.check * * + series "series" bibinfo.check + duplicate$ empty$ 'pop$ + { emphasize ", " * swap$ * } + if$ + "volume and number" number either.or.check + } + if$ +} +FUNCTION {format.number.series} +{ volume empty$ + { number empty$ + { series field.or.null } + { series empty$ + { number "number" bibinfo.check } + { output.state mid.sentence = + { bbl.number } + { bbl.number capitalize } + if$ + number tie.or.space.prefix "number" bibinfo.check * * + bbl.in space.word * + series "series" bibinfo.check * + } + if$ + } + if$ + } + { "" } + if$ +} +FUNCTION {is.num} +{ chr.to.int$ + duplicate$ "0" chr.to.int$ < not + swap$ "9" chr.to.int$ > not and +} + +FUNCTION {extract.num} +{ duplicate$ 't := + "" 's := + { t empty$ not } + { t #1 #1 substring$ + t #2 global.max$ substring$ 't := + duplicate$ is.num + { s swap$ * 's := } + { pop$ "" 't := } + if$ + } + while$ + s empty$ + 'skip$ + { pop$ s } + if$ +} + +FUNCTION {convert.edition} +{ extract.num "l" change.case$ 's := + s "first" = s "1" = or + { bbl.first 't := } + { s "second" = s "2" = or + { bbl.second 't := } + { s "third" = s "3" = or + { bbl.third 't := } + { s "fourth" = s "4" = or + { bbl.fourth 't := } + { s "fifth" = s "5" = or + { bbl.fifth 't := } + { s #1 #1 substring$ is.num + { s eng.ord 't := } + { edition 't := } + if$ + } + if$ + } + if$ + } + if$ + } + if$ + } + if$ + t +} + +FUNCTION {format.edition} +{ edition duplicate$ empty$ 'skip$ + { + convert.edition + output.state mid.sentence = + { "l" } + { "t" } + if$ change.case$ + "edition" bibinfo.check + " " * bbl.edition * + } + if$ +} +INTEGERS { multiresult } +FUNCTION {multi.page.check} +{ 't := + #0 'multiresult := + { multiresult not + t empty$ not + and + } + { t #1 #1 substring$ + duplicate$ "-" = + swap$ duplicate$ "," = + swap$ "+" = + or or + { #1 'multiresult := } + { t #2 global.max$ substring$ 't := } + if$ + } + while$ + multiresult +} +FUNCTION {format.pages} +{ pages duplicate$ empty$ 'skip$ + { duplicate$ multi.page.check + { + n.dashify + } + { + } + if$ + "pages" bibinfo.check + } + if$ +} +FUNCTION {format.journal.pages} +{ pages duplicate$ empty$ 'pop$ + { swap$ duplicate$ empty$ + { pop$ pop$ format.pages } + { + ", " * + swap$ + n.dashify + "pages" bibinfo.check + * + } + if$ + } + if$ +} +FUNCTION {format.journal.eid} +{ eid "eid" bibinfo.check + duplicate$ empty$ 'pop$ + { swap$ duplicate$ empty$ 'skip$ + { + ", " * + } + if$ + swap$ * + } + if$ +} +FUNCTION {format.vol.num.pages} +{ volume field.or.null + duplicate$ empty$ 'skip$ + { + "volume" bibinfo.check + } + if$ + number "number" bibinfo.check duplicate$ empty$ 'skip$ + { + swap$ duplicate$ empty$ + { "there's a number but no volume in " cite$ * warning$ } + 'skip$ + if$ + swap$ + "~(" swap$ * ")" * + } + if$ * + eid empty$ + { format.journal.pages } + { format.journal.eid } + if$ +} + +FUNCTION {format.chapter.pages} +{ chapter empty$ + 'format.pages + { type empty$ + { bbl.chapter } + { type "l" change.case$ + "type" bibinfo.check + } + if$ + chapter tie.or.space.prefix + "chapter" bibinfo.check + * * + pages empty$ + 'skip$ + { ", " * format.pages * } + if$ + } + if$ +} + +FUNCTION {format.booktitle} +{ + booktitle "booktitle" bibinfo.check + emphasize +} +FUNCTION {format.in.ed.booktitle} +{ format.booktitle duplicate$ empty$ 'skip$ + { + editor "editor" format.names.ed duplicate$ empty$ 'pop$ + { + "," * + " " * + get.bbl.editor + ", " * + * swap$ + * } + if$ + word.in swap$ * + } + if$ +} +FUNCTION {format.thesis.type} +{ type duplicate$ empty$ + 'pop$ + { swap$ pop$ + "t" change.case$ "type" bibinfo.check + } + if$ +} +FUNCTION {format.tr.number} +{ number "number" bibinfo.check + type duplicate$ empty$ + { pop$ bbl.techrep } + 'skip$ + if$ + "type" bibinfo.check + swap$ duplicate$ empty$ + { pop$ "t" change.case$ } + { tie.or.space.prefix * * } + if$ +} +FUNCTION {format.article.crossref} +{ + word.in + " \cite{" * crossref * "}" * +} +FUNCTION {format.book.crossref} +{ volume duplicate$ empty$ + { "empty volume in " cite$ * "'s crossref of " * crossref * warning$ + pop$ word.in + } + { bbl.volume + swap$ tie.or.space.prefix "volume" bibinfo.check * * bbl.of space.word * + } + if$ + " \cite{" * crossref * "}" * +} +FUNCTION {format.incoll.inproc.crossref} +{ + word.in + " \cite{" * crossref * "}" * +} +FUNCTION {format.org.or.pub} +{ 't := + "" + address empty$ t empty$ and + 'skip$ + { + address "address" bibinfo.check * + t empty$ + 'skip$ + { address empty$ + 'skip$ + { ": " * } + if$ + t * + } + if$ + } + if$ +} +FUNCTION {format.publisher.address} +{ publisher "publisher" bibinfo.warn format.org.or.pub +} + +FUNCTION {format.organization.address} +{ organization "organization" bibinfo.check format.org.or.pub +} + +FUNCTION {article} +{ output.bibitem + format.authors "author" output.check + author format.key output + format.date "year" output.check + date.block + format.title "title" output.check + crossref missing$ + { + journal + "journal" bibinfo.check + emphasize + "journal" output.check + format.vol.num.pages output + } + { format.article.crossref output.nonnull + format.pages output + } + if$ + format.note output + fin.entry +} +FUNCTION {book} +{ output.bibitem + author empty$ + { format.editors "author and editor" output.check + editor format.key output + } + { format.authors output.nonnull + crossref missing$ + { "author and editor" editor either.or.check } + 'skip$ + if$ + } + if$ + format.date "year" output.check + date.block + format.btitle "title" output.check + crossref missing$ + { format.bvolume output + format.number.series output + format.publisher.address output + } + { + format.book.crossref output.nonnull + } + if$ + format.edition output + format.note output + fin.entry +} +FUNCTION {booklet} +{ output.bibitem + format.authors output + author format.key output + format.date "year" output.check + date.block + format.title "title" output.check + howpublished "howpublished" bibinfo.check output + address "address" bibinfo.check output + format.note output + fin.entry +} + +FUNCTION {inbook} +{ output.bibitem + author empty$ + { format.editors "author and editor" output.check + editor format.key output + } + { format.authors output.nonnull + crossref missing$ + { "author and editor" editor either.or.check } + 'skip$ + if$ + } + if$ + format.date "year" output.check + date.block + format.btitle "title" output.check + crossref missing$ + { + format.publisher.address output + format.bvolume output + format.chapter.pages "chapter and pages" output.check + format.number.series output + } + { + format.chapter.pages "chapter and pages" output.check + format.book.crossref output.nonnull + } + if$ + format.edition output + format.note output + fin.entry +} + +FUNCTION {incollection} +{ output.bibitem + format.authors "author" output.check + author format.key output + format.date "year" output.check + date.block + format.title "title" output.check + crossref missing$ + { format.in.ed.booktitle "booktitle" output.check + format.publisher.address output + format.bvolume output + format.number.series output + format.chapter.pages output + format.edition output + } + { format.incoll.inproc.crossref output.nonnull + format.chapter.pages output + } + if$ + format.note output + fin.entry +} +FUNCTION {inproceedings} +{ output.bibitem + format.authors "author" output.check + author format.key output + format.date "year" output.check + date.block + format.title "title" output.check + crossref missing$ + { format.in.ed.booktitle "booktitle" output.check + publisher empty$ + { format.organization.address output } + { organization "organization" bibinfo.check output + format.publisher.address output + } + if$ + format.bvolume output + format.number.series output + format.pages output + } + { format.incoll.inproc.crossref output.nonnull + format.pages output + } + if$ + format.note output + fin.entry +} +FUNCTION {conference} { inproceedings } +FUNCTION {manual} +{ output.bibitem + format.authors output + author format.key output + format.date "year" output.check + date.block + format.btitle "title" output.check + organization "organization" bibinfo.check output + address "address" bibinfo.check output + format.edition output + format.note output + fin.entry +} + +FUNCTION {mastersthesis} +{ output.bibitem + format.authors "author" output.check + author format.key output + format.date "year" output.check + date.block + format.btitle + "title" output.check + bbl.mthesis format.thesis.type output.nonnull + school "school" bibinfo.warn output + address "address" bibinfo.check output + format.note output + fin.entry +} + +FUNCTION {misc} +{ output.bibitem + format.authors output + author format.key output + format.date "year" output.check + date.block + format.title output + howpublished "howpublished" bibinfo.check output + format.note output + fin.entry +} +FUNCTION {phdthesis} +{ output.bibitem + format.authors "author" output.check + author format.key output + format.date "year" output.check + date.block + format.btitle + "title" output.check + bbl.phdthesis format.thesis.type output.nonnull + school "school" bibinfo.warn output + address "address" bibinfo.check output + format.note output + fin.entry +} + +FUNCTION {proceedings} +{ output.bibitem + format.editors output + editor format.key output + format.date "year" output.check + date.block + format.btitle "title" output.check + format.bvolume output + format.number.series output + publisher empty$ + { format.organization.address output } + { organization "organization" bibinfo.check output + format.publisher.address output + } + if$ + format.note output + fin.entry +} + +FUNCTION {techreport} +{ output.bibitem + format.authors "author" output.check + author format.key output + format.date "year" output.check + date.block + format.title + "title" output.check + format.tr.number output.nonnull + institution "institution" bibinfo.warn output + address "address" bibinfo.check output + format.note output + fin.entry +} + +FUNCTION {unpublished} +{ output.bibitem + format.authors "author" output.check + author format.key output + format.date "year" output.check + date.block + format.title "title" output.check + format.note "note" output.check + fin.entry +} + +FUNCTION {default.type} { misc } +READ +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 {format.lab.names} +{ 's := + "" 't := + s #1 "{vv~}{ll}" format.name$ + s num.names$ duplicate$ + #2 > + { pop$ + " " * bbl.etal emphasize * + } + { #2 < + 'skip$ + { s #2 "{ff }{vv }{ll}{ jj}" format.name$ "others" = + { + " " * bbl.etal emphasize * + } + { bbl.and space.word * s #2 "{vv~}{ll}" format.name$ + * } + if$ + } + if$ + } + if$ +} + +FUNCTION {author.key.label} +{ author empty$ + { key empty$ + { cite$ #1 #3 substring$ } + 'key + if$ + } + { author format.lab.names } + if$ +} + +FUNCTION {author.editor.key.label} +{ author empty$ + { editor empty$ + { key empty$ + { cite$ #1 #3 substring$ } + 'key + if$ + } + { editor format.lab.names } + if$ + } + { author format.lab.names } + if$ +} + +FUNCTION {editor.key.label} +{ editor empty$ + { key empty$ + { cite$ #1 #3 substring$ } + 'key + if$ + } + { editor format.lab.names } + if$ +} + +FUNCTION {calc.short.authors} +{ type$ "book" = + type$ "inbook" = + or + 'author.editor.key.label + { type$ "proceedings" = + 'editor.key.label + 'author.key.label + if$ + } + if$ + 'short.list := +} + +FUNCTION {calc.label} +{ calc.short.authors + short.list + "(" + * + year duplicate$ empty$ + short.list key field.or.null = or + { pop$ "" } + 'skip$ + if$ + * + 'label := +} + +FUNCTION {sort.format.names} +{ 's := + #1 'nameptr := + "" + s num.names$ 'numnames := + numnames 'namesleft := + { namesleft #0 > } + { s nameptr + "{vv{ } }{ll{ }}{ f{ }}{ jj{ }}" + format.name$ 't := + nameptr #1 > + { + " " * + namesleft #1 = t "others" = and + { "zzzzz" * } + { t sortify * } + if$ + } + { 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 sort.format.names } + if$ +} +FUNCTION {author.editor.sort} +{ author empty$ + { editor empty$ + { key empty$ + { "to sort, need author, editor, or key in " cite$ * warning$ + "" + } + { key sortify } + if$ + } + { editor sort.format.names } + if$ + } + { author sort.format.names } + if$ +} +FUNCTION {editor.sort} +{ editor empty$ + { key empty$ + { "to sort, need editor or key in " cite$ * warning$ + "" + } + { key sortify } + if$ + } + { editor sort.format.names } + if$ +} +FUNCTION {presort} +{ calc.label + label sortify + " " + * + type$ "book" = + type$ "inbook" = + or + 'author.editor.sort + { type$ "proceedings" = + 'editor.sort + 'author.sort + if$ + } + if$ + #1 entry.max$ substring$ + 'sort.label := + sort.label + * + " " + * + title field.or.null + sort.format.title + * + #1 entry.max$ substring$ + 'sort.key$ := +} + +ITERATE {presort} +SORT +STRINGS { last.label next.extra } +INTEGERS { last.extra.num number.label } +FUNCTION {initialize.extra.label.stuff} +{ #0 int.to.chr$ 'last.label := + "" 'next.extra := + #0 'last.extra.num := + #0 'number.label := +} +FUNCTION {forward.pass} +{ last.label label = + { last.extra.num #1 + 'last.extra.num := + last.extra.num int.to.chr$ 'extra.label := + } + { "a" chr.to.int$ 'last.extra.num := + "" 'extra.label := + label 'last.label := + } + if$ + number.label #1 + 'number.label := +} +FUNCTION {reverse.pass} +{ next.extra "b" = + { "a" 'extra.label := } + 'skip$ + if$ + extra.label 'next.extra := + extra.label + duplicate$ empty$ + 'skip$ + { "{\natexlab{" swap$ * "}}" * } + if$ + 'extra.label := + label extra.label * 'label := +} +EXECUTE {initialize.extra.label.stuff} +ITERATE {forward.pass} +REVERSE {reverse.pass} +FUNCTION {bib.sort.order} +{ sort.label + " " + * + year field.or.null sortify + * + " " + * + title field.or.null + sort.format.title + * + #1 entry.max$ substring$ + 'sort.key$ := +} +ITERATE {bib.sort.order} +SORT +FUNCTION {begin.bib} +{ preamble$ empty$ + 'skip$ + { preamble$ write$ newline$ } + if$ + "\begin{thebibliography}{" number.label int.to.str$ * "}" * + write$ newline$ + "\providecommand{\natexlab}[1]{#1}" + write$ newline$ + "\providecommand{\selectlanguage}[1]{\relax}" + write$ newline$ +} +EXECUTE {begin.bib} +EXECUTE {init.state.consts} +ITERATE {call.type$} +FUNCTION {end.bib} +{ newline$ + "\end{thebibliography}" write$ newline$ +} +EXECUTE {end.bib} +%% End of customized bst file +%% +%% End of file `tandfx.bst'. diff --git a/Master/texmf-dist/bibtex/bst/economic/worlddev.bst b/Master/texmf-dist/bibtex/bst/economic/worlddev.bst new file mode 100644 index 00000000000..498c5a8a538 --- /dev/null +++ b/Master/texmf-dist/bibtex/bst/economic/worlddev.bst @@ -0,0 +1,1459 @@ +%% +%% This is file `worlddev.bst', +%% generated with the docstrip utility. +%% +%% The original source files were: +%% +%% merlin.mbs (with options: `ay,nat,nm-rev,jnrlst,keyxyr,dt-jnl,note-yr,volp-com,jdt-pc,num-xser,bkpg-par,add-pub,edpar,bkedcap,blk-com,au-col,pp,ed,abr,xedn,amper,and-com,and-com-ed,etal-it,nfss,') +%% ---------------------------------------- +%% *** World Development *** +%% +%% Copyright 1994-2004 Patrick W Daly + % =============================================================== + % IMPORTANT NOTICE: + % This bibliographic style (bst) file has been generated from one or + % more master bibliographic style (mbs) files, listed above. + % + % This generated file can be redistributed and/or modified under the terms + % of the LaTeX Project Public License Distributed from CTAN + % archives in directory macros/latex/base/lppl.txt; either + % version 1 of the License, or any later version. + % =============================================================== + % Name and version information of the main mbs file: + % \ProvidesFile{merlin.mbs}[2004/02/09 4.13 (PWD, AO, DPC)] + % For use with BibTeX version 0.99a or later + %------------------------------------------------------------------- + % This bibliography style file is intended for texts in ENGLISH + % This is an author-year citation style bibliography. As such, it is + % non-standard LaTeX, and requires a special package file to function properly. + % Such a package is natbib.sty by Patrick W. Daly + % The form of the \bibitem entries is + % \bibitem[Jones et al.(1990)]{key}... + % \bibitem[Jones et al.(1990)Jones, Baker, and Smith]{key}... + % The essential feature is that the label (the part in brackets) consists + % of the author names, as they should appear in the citation, with the year + % in parentheses following. There must be no space before the opening + % parenthesis! + % With natbib v5.3, a full list of authors may also follow the year. + % In natbib.sty, it is possible to define the type of enclosures that is + % really wanted (brackets or parentheses), but in either case, there must + % be parentheses in the label. + % The \cite command functions as follows: + % \citet{key} ==>> Jones et al. (1990) + % \citet*{key} ==>> Jones, Baker, and Smith (1990) + % \citep{key} ==>> (Jones et al., 1990) + % \citep*{key} ==>> (Jones, Baker, and Smith, 1990) + % \citep[chap. 2]{key} ==>> (Jones et al., 1990, chap. 2) + % \citep[e.g.][]{key} ==>> (e.g. Jones et al., 1990) + % \citep[e.g.][p. 32]{key} ==>> (e.g. Jones et al., p. 32) + % \citeauthor{key} ==>> Jones et al. + % \citeauthor*{key} ==>> Jones, Baker, and Smith + % \citeyear{key} ==>> 1990 + %--------------------------------------------------------------------- + +ENTRY + { address + author + booktitle + chapter + edition + editor + eid + howpublished + institution + journal + key + month + note + number + organization + pages + publisher + school + series + title + type + volume + year + } + {} + { label extra.label sort.label short.list } +INTEGERS { output.state before.all mid.sentence after.sentence after.block } +FUNCTION {init.state.consts} +{ #0 'before.all := + #1 'mid.sentence := + #2 'after.sentence := + #3 'after.block := +} +STRINGS { s t} +FUNCTION {output.nonnull} +{ 's := + output.state mid.sentence = + { ", " * write$ } + { output.state after.block = + { add.period$ write$ + newline$ + "\newblock " write$ + } + { output.state before.all = + 'write$ + { add.period$ " " * write$ } + if$ + } + if$ + mid.sentence 'output.state := + } + if$ + s +} +FUNCTION {output} +{ duplicate$ empty$ + 'pop$ + 'output.nonnull + if$ +} +FUNCTION {output.check} +{ 't := + duplicate$ empty$ + { pop$ "empty " t * " in " * cite$ * warning$ } + 'output.nonnull + if$ +} +FUNCTION {fin.entry} +{ add.period$ + write$ + newline$ +} + +FUNCTION {new.block} +{ output.state before.all = + 'skip$ + { after.block 'output.state := } + if$ +} +FUNCTION {new.sentence} +{ output.state after.block = + 'skip$ + { output.state before.all = + 'skip$ + { after.sentence 'output.state := } + if$ + } + if$ +} +FUNCTION {add.blank} +{ " " * before.all 'output.state := +} + +FUNCTION {add.colon} +{ duplicate$ empty$ + 'skip$ + { ":" * add.blank } + if$ +} + +FUNCTION {date.block} +{ + skip$ +} + +FUNCTION {not} +{ { #0 } + { #1 } + if$ +} +FUNCTION {and} +{ 'skip$ + { pop$ #0 } + if$ +} +FUNCTION {or} +{ { pop$ #1 } + 'skip$ + if$ +} +FUNCTION {new.block.checkb} +{ empty$ + swap$ empty$ + and + 'skip$ + 'new.block + if$ +} +FUNCTION {field.or.null} +{ duplicate$ empty$ + { pop$ "" } + 'skip$ + if$ +} +FUNCTION {emphasize} +{ duplicate$ empty$ + { pop$ "" } + { "\emph{" swap$ * "}" * } + if$ +} +FUNCTION {tie.or.space.prefix} +{ duplicate$ text.length$ #3 < + { "~" } + { " " } + if$ + swap$ +} + +FUNCTION {capitalize} +{ "u" change.case$ "t" change.case$ } + +FUNCTION {space.word} +{ " " swap$ * " " * } + % Here are the language-specific definitions for explicit words. + % Each function has a name bbl.xxx where xxx is the English word. + % The language selected here is ENGLISH +FUNCTION {bbl.and} +{ "and"} + +FUNCTION {bbl.etal} +{ "et~al." } + +FUNCTION {bbl.editors} +{ "eds." } + +FUNCTION {bbl.editor} +{ "ed." } + +FUNCTION {bbl.edby} +{ "edited by" } + +FUNCTION {bbl.edition} +{ "edn." } + +FUNCTION {bbl.volume} +{ "vol." } + +FUNCTION {bbl.of} +{ "of" } + +FUNCTION {bbl.number} +{ "no." } + +FUNCTION {bbl.nr} +{ "no." } + +FUNCTION {bbl.in} +{ "in" } + +FUNCTION {bbl.pages} +{ "pp." } + +FUNCTION {bbl.page} +{ "p." } + +FUNCTION {bbl.chapter} +{ "chap." } + +FUNCTION {bbl.techrep} +{ "Tech. Rep." } + +FUNCTION {bbl.mthesis} +{ "Master's thesis" } + +FUNCTION {bbl.phdthesis} +{ "Ph.D. thesis" } + +MACRO {jan} {"Jan."} + +MACRO {feb} {"Feb."} + +MACRO {mar} {"Mar."} + +MACRO {apr} {"Apr."} + +MACRO {may} {"May"} + +MACRO {jun} {"Jun."} + +MACRO {jul} {"Jul."} + +MACRO {aug} {"Aug."} + +MACRO {sep} {"Sep."} + +MACRO {oct} {"Oct."} + +MACRO {nov} {"Nov."} + +MACRO {dec} {"Dec."} + +MACRO {acmcs} {"ACM Computing Surveys"} + +MACRO {acta} {"Acta Informatica"} + +MACRO {cacm} {"Communications of the ACM"} + +MACRO {ibmjrd} {"IBM Journal of Research and Development"} + +MACRO {ibmsj} {"IBM Systems Journal"} + +MACRO {ieeese} {"IEEE Transactions on Software Engineering"} + +MACRO {ieeetc} {"IEEE Transactions on Computers"} + +MACRO {ieeetcad} + {"IEEE Transactions on Computer-Aided Design of Integrated Circuits"} + +MACRO {ipl} {"Information Processing Letters"} + +MACRO {jacm} {"Journal of the ACM"} + +MACRO {jcss} {"Journal of Computer and System Sciences"} + +MACRO {scp} {"Science of Computer Programming"} + +MACRO {sicomp} {"SIAM Journal on Computing"} + +MACRO {tocs} {"ACM Transactions on Computer Systems"} + +MACRO {tods} {"ACM Transactions on Database Systems"} + +MACRO {tog} {"ACM Transactions on Graphics"} + +MACRO {toms} {"ACM Transactions on Mathematical Software"} + +MACRO {toois} {"ACM Transactions on Office Information Systems"} + +MACRO {toplas} {"ACM Transactions on Programming Languages and Systems"} + +MACRO {tcs} {"Theoretical Computer Science"} +FUNCTION {bibinfo.check} +{ swap$ + duplicate$ missing$ + { + pop$ pop$ + "" + } + { duplicate$ empty$ + { + swap$ pop$ + } + { swap$ + pop$ + } + if$ + } + if$ +} +FUNCTION {bibinfo.warn} +{ swap$ + duplicate$ missing$ + { + swap$ "missing " swap$ * " in " * cite$ * warning$ pop$ + "" + } + { duplicate$ empty$ + { + swap$ "empty " swap$ * " in " * cite$ * warning$ + } + { swap$ + pop$ + } + if$ + } + if$ +} +STRINGS { bibinfo} +INTEGERS { nameptr namesleft numnames } + +FUNCTION {format.names} +{ 'bibinfo := + duplicate$ empty$ 'skip$ { + 's := + "" 't := + #1 'nameptr := + s num.names$ 'numnames := + numnames 'namesleft := + { namesleft #0 > } + { s nameptr + "{vv~}{ll}{, f.}{, jj}" + format.name$ + bibinfo bibinfo.check + 't := + nameptr #1 > + { + namesleft #1 > + { ", " * t * } + { + "," * + s nameptr "{ll}" format.name$ duplicate$ "others" = + { 't := } + { pop$ } + if$ + t "others" = + { + " " * bbl.etal emphasize * + } + { + "\&" + space.word * t * + } + if$ + } + if$ + } + 't + if$ + nameptr #1 + 'nameptr := + namesleft #1 - 'namesleft := + } + while$ + } if$ +} +FUNCTION {format.names.ed} +{ + 'bibinfo := + duplicate$ empty$ 'skip$ { + 's := + "" 't := + #1 'nameptr := + s num.names$ 'numnames := + numnames 'namesleft := + { namesleft #0 > } + { s nameptr + "{f.~}{vv~}{ll}{, jj}" + format.name$ + bibinfo bibinfo.check + 't := + nameptr #1 > + { + namesleft #1 > + { ", " * t * } + { + "," * + s nameptr "{ll}" format.name$ duplicate$ "others" = + { 't := } + { pop$ } + if$ + t "others" = + { + + " " * bbl.etal emphasize * + } + { + "\&" + space.word * t * + } + if$ + } + if$ + } + 't + if$ + nameptr #1 + 'nameptr := + namesleft #1 - 'namesleft := + } + while$ + } if$ +} +FUNCTION {format.key} +{ empty$ + { key field.or.null } + { "" } + if$ +} + +FUNCTION {format.authors} +{ author "author" format.names +} +FUNCTION {get.bbl.editor} +{ editor num.names$ #1 > 'bbl.editors 'bbl.editor if$ } + +FUNCTION {format.editors} +{ editor "editor" format.names duplicate$ empty$ 'skip$ + { + " " * + get.bbl.editor + capitalize + "(" swap$ * ")" * + * + } + if$ +} +FUNCTION {format.note} +{ + note empty$ + { "" } + { note #1 #1 substring$ + duplicate$ "{" = + 'skip$ + { output.state mid.sentence = + { "l" } + { "u" } + if$ + change.case$ + } + if$ + note #2 global.max$ substring$ * "note" bibinfo.check + } + if$ +} + +FUNCTION {format.title} +{ title + duplicate$ empty$ 'skip$ + { "t" change.case$ } + if$ + "title" bibinfo.check +} +FUNCTION {format.full.names} +{'s := + "" 't := + #1 'nameptr := + s num.names$ 'numnames := + numnames 'namesleft := + { namesleft #0 > } + { s nameptr + "{vv~}{ll}" format.name$ + 't := + nameptr #1 > + { + namesleft #1 > + { ", " * t * } + { + s nameptr "{ll}" format.name$ duplicate$ "others" = + { 't := } + { pop$ } + if$ + t "others" = + { + " " * bbl.etal emphasize * + } + { + numnames #2 > + { "," * } + 'skip$ + if$ + "\&" + space.word * t * + } + if$ + } + if$ + } + 't + if$ + nameptr #1 + 'nameptr := + namesleft #1 - 'namesleft := + } + while$ +} + +FUNCTION {author.editor.key.full} +{ author empty$ + { editor empty$ + { key empty$ + { cite$ #1 #3 substring$ } + 'key + if$ + } + { editor format.full.names } + if$ + } + { author format.full.names } + if$ +} + +FUNCTION {author.key.full} +{ author empty$ + { key empty$ + { cite$ #1 #3 substring$ } + 'key + if$ + } + { author format.full.names } + if$ +} + +FUNCTION {editor.key.full} +{ editor empty$ + { key empty$ + { cite$ #1 #3 substring$ } + 'key + if$ + } + { editor format.full.names } + if$ +} + +FUNCTION {make.full.names} +{ type$ "book" = + type$ "inbook" = + or + 'author.editor.key.full + { type$ "proceedings" = + 'editor.key.full + 'author.key.full + if$ + } + if$ +} + +FUNCTION {output.bibitem} +{ newline$ + "\bibitem[{" write$ + label write$ + ")" make.full.names duplicate$ short.list = + { pop$ } + { * } + if$ + "}]{" * write$ + cite$ write$ + "}" write$ + newline$ + "" + before.all 'output.state := +} + +FUNCTION {n.dashify} +{ + 't := + "" + { t empty$ not } + { t #1 #1 substring$ "-" = + { t #1 #2 substring$ "--" = not + { "--" * + t #2 global.max$ substring$ 't := + } + { { t #1 #1 substring$ "-" = } + { "-" * + t #2 global.max$ substring$ 't := + } + while$ + } + if$ + } + { t #1 #1 substring$ * + t #2 global.max$ substring$ 't := + } + if$ + } + while$ +} + +FUNCTION {word.in} +{ bbl.in + " " * } + +FUNCTION {format.date} +{ year "year" bibinfo.check duplicate$ empty$ + { + "empty year in " cite$ * "; set to ????" * warning$ + pop$ "????" + } + 'skip$ + if$ + extra.label * +} +FUNCTION{format.year} +{ year "year" bibinfo.check duplicate$ empty$ + { "empty year in " cite$ * + "; set to ????" * + warning$ + pop$ "????" + } + { + } + if$ + extra.label * + "(" swap$ * ")" * +} +FUNCTION {format.btitle} +{ title "title" bibinfo.check + duplicate$ empty$ 'skip$ + { + emphasize + } + if$ +} +FUNCTION {either.or.check} +{ empty$ + 'pop$ + { "can't use both " swap$ * " fields in " * cite$ * warning$ } + if$ +} +FUNCTION {format.bvolume} +{ volume empty$ + { "" } + { bbl.volume volume tie.or.space.prefix + "volume" bibinfo.check * * + series "series" bibinfo.check + duplicate$ empty$ 'pop$ + { swap$ bbl.of space.word * swap$ + emphasize * } + if$ + "volume and number" number either.or.check + } + if$ +} +FUNCTION {format.number.series} +{ volume empty$ + { number empty$ + { series field.or.null } + { series empty$ + { number "number" bibinfo.check } + { output.state mid.sentence = + { bbl.number } + { bbl.number capitalize } + if$ + number tie.or.space.prefix "number" bibinfo.check * * + bbl.in space.word * + series "series" bibinfo.check * + } + if$ + } + if$ + } + { "" } + if$ +} + +FUNCTION {format.edition} +{ edition duplicate$ empty$ 'skip$ + { + output.state mid.sentence = + { "l" } + { "t" } + if$ change.case$ + "edition" bibinfo.check + " " * bbl.edition * + } + if$ +} +INTEGERS { multiresult } +FUNCTION {multi.page.check} +{ 't := + #0 'multiresult := + { multiresult not + t empty$ not + and + } + { t #1 #1 substring$ + duplicate$ "-" = + swap$ duplicate$ "," = + swap$ "+" = + or or + { #1 'multiresult := } + { t #2 global.max$ substring$ 't := } + if$ + } + while$ + multiresult +} +FUNCTION {format.pages} +{ pages duplicate$ empty$ 'skip$ + { duplicate$ multi.page.check + { + bbl.pages swap$ + n.dashify + } + { + bbl.page swap$ + } + if$ + tie.or.space.prefix + "pages" bibinfo.check + * * + "(" swap$ * ")" * + } + if$ +} +FUNCTION {format.journal.pages} +{ pages duplicate$ empty$ 'pop$ + { swap$ duplicate$ empty$ + { pop$ pop$ format.pages } + { + ", " * + format.year * ", " * + swap$ + n.dashify + "pages" bibinfo.check + * + } + if$ + } + if$ +} +FUNCTION {format.journal.eid} +{ eid "eid" bibinfo.check + duplicate$ empty$ 'pop$ + { swap$ duplicate$ empty$ 'skip$ + { + ", " * + } + if$ + swap$ * + } + if$ +} +FUNCTION {format.vol.num.pages} +{ volume field.or.null + duplicate$ empty$ 'skip$ + { + "volume" bibinfo.check + } + if$ + number "number" bibinfo.check duplicate$ empty$ 'skip$ + { + swap$ duplicate$ empty$ + { "there's a number but no volume in " cite$ * warning$ } + 'skip$ + if$ + swap$ + "(" swap$ * ")" * + } + if$ * + eid empty$ + { format.journal.pages } + { format.journal.eid } + if$ +} + +FUNCTION {format.chapter.pages} +{ chapter empty$ + 'format.pages + { type empty$ + { bbl.chapter } + { type "l" change.case$ + "type" bibinfo.check + } + if$ + chapter tie.or.space.prefix + "chapter" bibinfo.check + * * + pages empty$ + 'skip$ + { ", " * format.pages * } + if$ + } + if$ +} + +FUNCTION {format.booktitle} +{ + booktitle "booktitle" bibinfo.check + emphasize +} +FUNCTION {format.in.ed.booktitle} +{ format.booktitle duplicate$ empty$ 'skip$ + { + editor "editor" format.names.ed duplicate$ empty$ 'pop$ + { + " " * + get.bbl.editor + capitalize + "(" swap$ * "), " * + * swap$ + * } + if$ + word.in swap$ * + } + if$ +} +FUNCTION {format.thesis.type} +{ type duplicate$ empty$ + 'pop$ + { swap$ pop$ + "t" change.case$ "type" bibinfo.check + } + if$ +} +FUNCTION {format.tr.number} +{ number "number" bibinfo.check + type duplicate$ empty$ + { pop$ bbl.techrep } + 'skip$ + if$ + "type" bibinfo.check + swap$ duplicate$ empty$ + { pop$ "t" change.case$ } + { tie.or.space.prefix * * } + if$ +} +FUNCTION {format.article.crossref} +{ + word.in + " \cite{" * crossref * "}" * +} +FUNCTION {format.book.crossref} +{ volume duplicate$ empty$ + { "empty volume in " cite$ * "'s crossref of " * crossref * warning$ + pop$ word.in + } + { bbl.volume + swap$ tie.or.space.prefix "volume" bibinfo.check * * bbl.of space.word * + } + if$ + " \cite{" * crossref * "}" * +} +FUNCTION {format.incoll.inproc.crossref} +{ + word.in + " \cite{" * crossref * "}" * +} +FUNCTION {format.org.or.pub} +{ 't := + "" + address empty$ t empty$ and + 'skip$ + { + address "address" bibinfo.check * + t empty$ + 'skip$ + { address empty$ + 'skip$ + { ": " * } + if$ + t * + } + if$ + } + if$ +} +FUNCTION {format.publisher.address} +{ publisher "publisher" bibinfo.warn format.org.or.pub +} + +FUNCTION {format.organization.address} +{ organization "organization" bibinfo.check format.org.or.pub +} + +FUNCTION {article} +{ output.bibitem + format.authors "author" output.check + author format.key output + add.colon + format.title "title" output.check + crossref missing$ + { + journal + "journal" bibinfo.check + emphasize + "journal" output.check + format.vol.num.pages output + } + { format.article.crossref output.nonnull + format.pages output + } + if$ + format.note output + fin.entry +} +FUNCTION {book} +{ output.bibitem + author empty$ + { format.editors "author and editor" output.check + editor format.key output + add.colon + } + { format.authors output.nonnull + add.colon + crossref missing$ + { "author and editor" editor either.or.check } + 'skip$ + if$ + } + if$ + format.btitle "title" output.check + crossref missing$ + { format.bvolume output + format.number.series output + format.publisher.address output + } + { + format.book.crossref output.nonnull + } + if$ + format.edition output + format.date "year" output.check + format.note output + fin.entry +} +FUNCTION {booklet} +{ output.bibitem + format.authors output + author format.key output + add.colon + format.title "title" output.check + howpublished "howpublished" bibinfo.check output + address "address" bibinfo.check output + format.date "year" output.check + format.note output + fin.entry +} + +FUNCTION {inbook} +{ output.bibitem + author empty$ + { format.editors "author and editor" output.check + editor format.key output + add.colon + } + { format.authors output.nonnull + add.colon + crossref missing$ + { "author and editor" editor either.or.check } + 'skip$ + if$ + } + if$ + format.btitle "title" output.check + crossref missing$ + { + format.bvolume output + format.chapter.pages "chapter and pages" output.check + format.number.series output + format.publisher.address output + } + { + format.chapter.pages "chapter and pages" output.check + format.book.crossref output.nonnull + } + if$ + format.edition output + format.date "year" output.check + date.block + format.note output + fin.entry +} + +FUNCTION {incollection} +{ output.bibitem + format.authors "author" output.check + author format.key output + add.colon + format.title "title" output.check + crossref missing$ + { format.in.ed.booktitle "booktitle" output.check + format.bvolume output + format.number.series output + format.chapter.pages output + format.publisher.address output + format.edition output + } + { format.incoll.inproc.crossref output.nonnull + format.chapter.pages output + } + if$ + format.date "year" output.check + date.block + format.note output + fin.entry +} +FUNCTION {inproceedings} +{ output.bibitem + format.authors "author" output.check + author format.key output + add.colon + format.title "title" output.check + crossref missing$ + { format.in.ed.booktitle "booktitle" output.check + format.bvolume output + format.number.series output + publisher empty$ + { format.organization.address output } + { organization "organization" bibinfo.check output + format.publisher.address output + } + if$ + } + { format.incoll.inproc.crossref output.nonnull + } + if$ + format.date "year" output.check + date.block + format.pages "pages" output.check + format.note output + fin.entry +} +FUNCTION {conference} { inproceedings } +FUNCTION {manual} +{ output.bibitem + format.authors output + author format.key output + add.colon + format.btitle "title" output.check + organization "organization" bibinfo.check output + address "address" bibinfo.check output + format.edition output + format.date "year" output.check + format.note output + fin.entry +} + +FUNCTION {mastersthesis} +{ output.bibitem + format.authors "author" output.check + author format.key output + add.colon + format.btitle + "title" output.check + bbl.mthesis format.thesis.type output.nonnull + school "school" bibinfo.warn output + address "address" bibinfo.check output + format.date "year" output.check + format.note output + fin.entry +} + +FUNCTION {misc} +{ output.bibitem + format.authors output + author format.key output + add.colon + format.title output + howpublished "howpublished" bibinfo.check output + format.date "year" output.check + format.note output + fin.entry +} +FUNCTION {phdthesis} +{ output.bibitem + format.authors "author" output.check + author format.key output + add.colon + format.btitle + "title" output.check + bbl.phdthesis format.thesis.type output.nonnull + school "school" bibinfo.warn output + address "address" bibinfo.check output + format.date "year" output.check + format.note output + fin.entry +} + +FUNCTION {proceedings} +{ output.bibitem + format.editors output + editor format.key output + add.colon + format.btitle "title" output.check + format.bvolume output + format.number.series output + publisher empty$ + { format.organization.address output } + { organization "organization" bibinfo.check output + format.publisher.address output + } + if$ + format.date "year" output.check + format.note output + fin.entry +} + +FUNCTION {techreport} +{ output.bibitem + format.authors "author" output.check + author format.key output + add.colon + format.title + "title" output.check + format.tr.number output.nonnull + institution "institution" bibinfo.warn output + address "address" bibinfo.check output + format.date "year" output.check + format.note output + fin.entry +} + +FUNCTION {unpublished} +{ output.bibitem + format.authors "author" output.check + author format.key output + add.colon + format.title "title" output.check + format.date "year" output.check + format.note "note" output.check + fin.entry +} + +FUNCTION {default.type} { misc } +READ +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 {format.lab.names} +{ 's := + "" 't := + s #1 "{vv~}{ll}" format.name$ + s num.names$ duplicate$ + #2 > + { pop$ + " " * bbl.etal emphasize * + } + { #2 < + 'skip$ + { s #2 "{ff }{vv }{ll}{ jj}" format.name$ "others" = + { + " " * bbl.etal emphasize * + } + { " \& " * s #2 "{vv~}{ll}" format.name$ + * } + if$ + } + if$ + } + if$ +} + +FUNCTION {author.key.label} +{ author empty$ + { key empty$ + { cite$ #1 #3 substring$ } + 'key + if$ + } + { author format.lab.names } + if$ +} + +FUNCTION {author.editor.key.label} +{ author empty$ + { editor empty$ + { key empty$ + { cite$ #1 #3 substring$ } + 'key + if$ + } + { editor format.lab.names } + if$ + } + { author format.lab.names } + if$ +} + +FUNCTION {editor.key.label} +{ editor empty$ + { key empty$ + { cite$ #1 #3 substring$ } + 'key + if$ + } + { editor format.lab.names } + if$ +} + +FUNCTION {calc.short.authors} +{ type$ "book" = + type$ "inbook" = + or + 'author.editor.key.label + { type$ "proceedings" = + 'editor.key.label + 'author.key.label + if$ + } + if$ + 'short.list := +} + +FUNCTION {calc.label} +{ calc.short.authors + short.list + "(" + * + year duplicate$ empty$ + short.list key field.or.null = or + { pop$ "" } + 'skip$ + if$ + * + 'label := +} + +FUNCTION {sort.format.names} +{ 's := + #1 'nameptr := + "" + s num.names$ 'numnames := + numnames 'namesleft := + { namesleft #0 > } + { s nameptr + "{vv{ } }{ll{ }}{ f{ }}{ jj{ }}" + format.name$ 't := + nameptr #1 > + { + " " * + namesleft #1 = t "others" = and + { "zzzzz" * } + { t sortify * } + if$ + } + { 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 sort.format.names } + if$ +} +FUNCTION {author.editor.sort} +{ author empty$ + { editor empty$ + { key empty$ + { "to sort, need author, editor, or key in " cite$ * warning$ + "" + } + { key sortify } + if$ + } + { editor sort.format.names } + if$ + } + { author sort.format.names } + if$ +} +FUNCTION {editor.sort} +{ editor empty$ + { key empty$ + { "to sort, need editor or key in " cite$ * warning$ + "" + } + { key sortify } + if$ + } + { editor sort.format.names } + if$ +} +FUNCTION {presort} +{ calc.label + label sortify + " " + * + type$ "book" = + type$ "inbook" = + or + 'author.editor.sort + { type$ "proceedings" = + 'editor.sort + 'author.sort + if$ + } + if$ + #1 entry.max$ substring$ + 'sort.label := + sort.label + * + " " + * + title field.or.null + sort.format.title + * + #1 entry.max$ substring$ + 'sort.key$ := +} + +ITERATE {presort} +SORT +STRINGS { last.label next.extra } +INTEGERS { last.extra.num number.label } +FUNCTION {initialize.extra.label.stuff} +{ #0 int.to.chr$ 'last.label := + "" 'next.extra := + #0 'last.extra.num := + #0 'number.label := +} +FUNCTION {forward.pass} +{ last.label label = + { last.extra.num #1 + 'last.extra.num := + last.extra.num int.to.chr$ 'extra.label := + } + { "a" chr.to.int$ 'last.extra.num := + "" 'extra.label := + label 'last.label := + } + if$ + number.label #1 + 'number.label := +} +FUNCTION {reverse.pass} +{ next.extra "b" = + { "a" 'extra.label := } + 'skip$ + if$ + extra.label 'next.extra := + extra.label + duplicate$ empty$ + 'skip$ + { "{\natexlab{" swap$ * "}}" * } + if$ + 'extra.label := + label extra.label * 'label := +} +EXECUTE {initialize.extra.label.stuff} +ITERATE {forward.pass} +REVERSE {reverse.pass} +FUNCTION {bib.sort.order} +{ sort.label + " " + * + year field.or.null sortify + * + " " + * + title field.or.null + sort.format.title + * + #1 entry.max$ substring$ + 'sort.key$ := +} +ITERATE {bib.sort.order} +SORT +FUNCTION {begin.bib} +{ preamble$ empty$ + 'skip$ + { preamble$ write$ newline$ } + if$ + "\begin{thebibliography}{" number.label int.to.str$ * "}" * + write$ newline$ + "\providecommand{\natexlab}[1]{#1}" + write$ newline$ +} +EXECUTE {begin.bib} +EXECUTE {init.state.consts} +ITERATE {call.type$} +FUNCTION {end.bib} +{ newline$ + "\end{thebibliography}" write$ newline$ +} +EXECUTE {end.bib} +%% End of customized bst file +%% +%% End of file `worlddev.bst'. diff --git a/Master/texmf-dist/doc/bibtex/economic/CHANGELOG b/Master/texmf-dist/doc/bibtex/economic/CHANGELOG new file mode 100644 index 00000000000..ac65e802e69 --- /dev/null +++ b/Master/texmf-dist/doc/bibtex/economic/CHANGELOG @@ -0,0 +1,13 @@ +2008-12-29 +- added support for Agricultural Economics (AgEcon) +- added support for Applied Economics (ApEcon) +- added BibTeX style for the Journal of Political Economy (JPE) +- added support for the Journal of Rural Studies (JRurStud) +- added support for Post-Communist Economies (PoCoEc) +- added support for Regional Studies (RegStud) +- added support for the Tagungsband of the Austrian Association of Agricultural + Economists (Oesterreichische Gesellschaft für Agraroekonomie, OeGA) +- added BibTeX style for "Reference Style X" of Taylor and Francis +- added support for World Development (WorldDev) +- this bundle is developed on Sourceforge.net now: + http://sourceforge.net/projects/economtex/ diff --git a/Master/texmf-dist/doc/bibtex/economic/README b/Master/texmf-dist/doc/bibtex/economic/README index 2b356497ca0..e7c581f3a69 100644 --- a/Master/texmf-dist/doc/bibtex/economic/README +++ b/Master/texmf-dist/doc/bibtex/economic/README @@ -1,46 +1,11 @@ LaTeX and BibTeX Support for Submissions to Economics Journals -INTRODUCTION -This file accompanies .CLS, .STY, and .BST files for economics. +CONTENTS -As of today, following styles are available: +As of today, following classes and styles are available: -1) American Journal of Agricultural Economics -ajae.bst: BibTeX style -ajae.cls: LaTeX class -ajae-test.tex, ajae-test.bib: LaTeX and BibTeX file for testing -authors: Arne Henningsen <ahenningsen (at) email.uni-kiel.de> and Karsten Heymann -license: LPPL - -2) European Review of Agricultural Economics -erae.bst: BibTeX style -erae.cls: LaTeX class -erae-test.tex, erae-test.bib: LaTeX and BibTeX file for testing -author: Arne Henningsen <ahenningsen (at) email.uni-kiel.de> -license: LPPL - -3) Economica -ecca.bst: BibTeX style -ecca.cls: LaTeX class -ecca-test.tex, ecca-test.bib: LaTeX and BibTeX file for testing -author: Arne Henningsen <ahenningsen (at) email.uni-kiel.de> -license: LPPL - -4) International Tax and Public Finance -itaxpf.cls: LaTeX class -itaxpf.bst: BibTeX style -itaxpf-test.tex, itaxpf-test.bib, itaxpf-title.tex: LaTeX and BibTeX files - for testing -author: Arne Henningsen <ahenningsen (at) email.uni-kiel.de> -license: LPPL - -5) International Economic Review -ier.bst: BibTeX style -author: Doug McKee <dmckee (at) ucla.edu> -license: LPPL - -6) American Economic Review +1) American Economic Review aer.bst: BibTeX style. It requires the style files aer.sty (in this bundle) and harvard.sty (CTAN:macros/latex/contrib/harvard/) aertt.bst: This reproduces the incredibly crazy way the @@ -51,16 +16,47 @@ aertt.bst: This reproduces the incredibly crazy way the aer.sty: LaTeX style for the AER aertt.sty: LaTeX style for ``final'' manuscripts submitted to the AER author: Peter Williams <peterw (at) archsci.arch.su.oz.au> -aer-natbib.tex: LaTeX file for testing aer.bst with the natbib package -author: Arne Henningsen <ahenningsen (at) email.uni-kiel.de> +aer-cje-ex.tex: example LaTeX file +aer-cje-ex.bib: bibliography of the example file +authors of aer-cje-ex.*: Randall M. Wigle <rwigle (at) wlu.ca>, + Nelson H. F. Beebe <beebe (at) alfred.math.utah.edu>, and + Arne Henningsen <arne (dot) henningsen (at) gmail (dot) com> +aer-natbib-ex.tex: LaTeX file for testing aer.bst with the natbib package +author of aer-natbib-ex.tex: Arne Henningsen <arne (dot) henningsen (at) gmail (dot) com> + +2) Agricultural Economics (AgEcon) +agecon.cls: LaTeX class +agecon.bst: BibTeX style +author: Arne Henningsen <arne (dot) henningsen (at) gmail (dot) com> +license: LPPL + +3) American Journal of Agricultural Economics +ajae.bst: BibTeX style +ajae.cls: LaTeX class +ajae-ex.tex: example LaTeX file +ajae-ex.bib: bibliography of the example file +authors: Arne Henningsen <arne (dot) henningsen (at) gmail (dot) com> + and Karsten Heymann +license: LPPL -7) Canadian Journal of Economics +4) Applied Economics (ApEcon) +apecon.cls: LaTeX class +apecon.bst: BibTeX style +author: Arne Henningsen <arne (dot) henningsen (at) gmail (dot) com> +license: LPPL + +5) Canadian Journal of Economics cje.bst: BibTeX style. It requires the style files cje.sty (in this bundle) and harvard.sty (CTAN:macros/latex/contrib/harvard/) cje.sty: LaTeX style for the CJE author: Peter Williams <peterw (at) archsci.arch.su.oz.au> +aer-cje-ex.tex: example LaTeX file +aer-cje-ex.bib: bibliography of the example file +authors of aer-cje-e.*: Randall M. Wigle <rwigle (at) wlu.ca>, + Nelson H. F. Beebe <beebe (at) alfred.math.utah.edu>, and + Arne Henningsen <arne (dot) henningsen (at) gmail (dot) com> -8) Econometrica +6) Econometrica ecta.bst: BibTeX style. It requires the LaTeX style ``natbib'' (or ``chicago'') author: Sebastian Perez-Duarte <perez (at) ensae.fr> OR @@ -72,25 +68,92 @@ econometrica-fr.bst: BibTeX style. It requires the style file harvard.sty (CTAN:macros/latex/contrib/harvard/) author: Guillaume Horny <horny (at) cournot.u-strasbg.fr> -9) Testing aer, aertt, and cje -wigle.tex, wigle.bib: LaTeX and BibTeX file for testing the style files - aer.bst, aer.sty, aertt.bst, aertt.sty, cje.bst, and cje.sty -authors: Randall M. Wigle <rwigle (at) wlu.ca>, - Nelson H. F. Beebe <beebe (at) alfred.math.utah.edu>, and - Arne Henningsen <ahenningsen (at) email.uni-kiel.de> +7) Economica +ecca.bst: BibTeX style +ecca.cls: LaTeX class +ecca-ex.tex: example LaTeX file +ecca-ex.bib: bibliography of the example file +author: Arne Henningsen <arne (dot) henningsen (at) gmail (dot) com> +license: LPPL + +8) European Review of Agricultural Economics +erae.bst: BibTeX style +erae.cls: LaTeX class +erae-ex.tex: example LaTeX file +erae-ex.bib: bibliography of the example file +author: Arne Henningsen <arne (dot) henningsen (at) gmail (dot) com> +license: LPPL + +9) International Economic Review +ier.bst: BibTeX style +author: Doug McKee <dmckee (at) ucla.edu> +license: LPPL + +10) International Tax and Public Finance +itaxpf.cls: LaTeX class +itaxpf.bst: BibTeX style +itaxpf-ex.tex: example LaTeX file +itaxpf-ex.bib: bibliography of the example file +itaxpf-ex-title.tex: example LaTeX file for a title page +author: Arne Henningsen <arne (dot) henningsen (at) gmail (dot) com> +license: LPPL + +11) Journal of Political Economy (JPE) +jpe.bst: BibTeX style +author: Adam Seth Litwin <aslitwin (at) jhu (dot) edu> +license: LPPL + +12) Journal of Rural Studies (JRurStud) +jrurstud.cls: LaTeX class + (BibTeX style: "elsart-harv.bst", available at + http://www.elsevier.com/wps/find/authorsview.authors/elsart) +author: Arne Henningsen <arne (dot) henningsen (at) gmail (dot) com> +license: LPPL + +13) Oesterreichische Gesellschaft für Agraroekonomie (OeGA) + (Austrian Association of Agricultural Economists) +oegatb.cls: LaTeX class for short papers for publication in the "Tagungsband" +oega.bst: BibTeX style +oegatb-ex.tex: example file +oegatb-ex.bib: bibliography of the example file +oegatb-ex.png: figure included in the example file +author: Arne Henningsen <arne (dot) henningsen (at) gmail (dot) com> +license: LPPL + +14) Post-Communist Economies +pocoec.cls: LaTeX class + (BibTeX style: tandfx.bst, in this package) +author: Arne Henningsen <arne (dot) henningsen (at) gmail (dot) com> +license: LPPL + +15) Regional Studies +regstud.cls: LaTeX class +regstud.bst: BibTeX style +author: Arne Henningsen <arne (dot) henningsen (at) gmail (dot) com> +license: LPPL + +16) Taylor and Francis Reference Style X +tandfx.bst: BibTeX style for "Reference Style X" of Taylor and Francis + +17) World Development +worlddev.cls: LaTeX class +worlddev.bst: BibTeX style +author: Arne Henningsen <arne (dot) henningsen (at) gmail (dot) com> +license: LPPL + + USAGE -The usage of ajae.bst, ajae.cls, erae.bst, erae.cls, -ecca.bst, ecca.cls, itaxpf.bst, and itaxpf.cls -is explained inside these files -as well as in their example files -(ajae-test.tex, erae-test.tex, ecca-test.tex, itaxpf-test.tex, -and itaxpf-title.tex). -They use the natbib package +The usage of most classes and styles is explained inside these files. +Example files are provided for a few classes and styles: +aer-cje-ex.tex, aer-natbib-ex.tex, ajae-ex.tex, erae-ex.tex, ecca-ex.tex, +itaxpf-ex.tex, itaxpf-ex-title.tex, oegatb-ex.tex. + +Most classes load the natbib package (see CTAN:macros/latex/contrib/natbib/) -Most other styles permit four forms of citation, which are illustrated +Other styles generally permit four forms of citation, which are illustrated below: Citation Form Result \cite{wealth} (Smith 1776) @@ -98,22 +161,19 @@ below: \citeyear{wealth} (1776) \citeasnoun{wealth} Smith (1776) +Further information might be available at + http://economtex.wiki.sourceforge.net/ -CONTRIBUTIONS -Some of these files have been assembled via cash contributions from interested -economists, since we have yet to run into an economist who is both a -good bib hacker, and not so busy as to have time to take on the -project. -If you want to contribute please contact Arne Henningsen -<ahenningsen (at) email.uni-kiel.de>. +BUG REPORTS +Please report any bugs and problems at + http://sourceforge.net/projects/economtex/ -BUG REPORTS -Bug reports should be sent to the author and to - <ahenningsen (at) agric-econ.uni-kiel.de> + +MAINTAINER Arne Henningsen Department of Agricultural Economics @@ -122,7 +182,8 @@ Olshausenstr. 40 D-24098 Kiel (Germany) Tel: +49-431-880 4445 Fax: +49-431-880 1397 -http://www.uni-kiel.de/agrarpol/ahenningsen/ +http://www.arne-henningsen.name/ + ACKNOWLEDGEMENT @@ -131,8 +192,10 @@ I would like to thank Randall M. Wigle for maintaining these files from 1993 to 2006 and all authors for preparing and publishing these files. + AVAILABILITY These files are currently available from -CTAN:biblio/bibtex/contrib/economic/ - + CTAN:biblio/bibtex/contrib/economic/ +and + http://sourceforge.net/projects/economtex/ diff --git a/Master/texmf-dist/doc/bibtex/economic/wigle.bib b/Master/texmf-dist/doc/bibtex/economic/aer-cje-ex.bib index cec7e6d2cc3..cec7e6d2cc3 100644 --- a/Master/texmf-dist/doc/bibtex/economic/wigle.bib +++ b/Master/texmf-dist/doc/bibtex/economic/aer-cje-ex.bib diff --git a/Master/texmf-dist/doc/bibtex/economic/wigle.tex b/Master/texmf-dist/doc/bibtex/economic/aer-cje-ex.tex index 73dd45ad6c0..87c8f629018 100644 --- a/Master/texmf-dist/doc/bibtex/economic/wigle.tex +++ b/Master/texmf-dist/doc/bibtex/economic/aer-cje-ex.tex @@ -40,6 +40,6 @@ The old \verb|\cite| gives \cite{ww} and \cite{ww,waters} \nocite{*} - \bibliography{wigle} + \bibliography{aer-cje-ex} \end{document} diff --git a/Master/texmf-dist/doc/bibtex/economic/aer-natbib.tex b/Master/texmf-dist/doc/bibtex/economic/aer-natbib-ex.tex index 48a0171fa53..ab4cdef1d5b 100644 --- a/Master/texmf-dist/doc/bibtex/economic/aer-natbib.tex +++ b/Master/texmf-dist/doc/bibtex/economic/aer-natbib-ex.tex @@ -40,6 +40,6 @@ Hence, A, B, C, D, E, F, and G are all equal \nocite{*} \bibliographystyle{aer} -\bibliography{ajae-test} +\bibliography{ajae-ex} \end{document} diff --git a/Master/texmf-dist/doc/bibtex/economic/ajae-test.bib b/Master/texmf-dist/doc/bibtex/economic/ajae-ex.bib index fad9c86b06c..fad9c86b06c 100644 --- a/Master/texmf-dist/doc/bibtex/economic/ajae-test.bib +++ b/Master/texmf-dist/doc/bibtex/economic/ajae-ex.bib diff --git a/Master/texmf-dist/doc/bibtex/economic/ajae-test.tex b/Master/texmf-dist/doc/bibtex/economic/ajae-ex.tex index fe82e8d62aa..25425d24b9e 100644 --- a/Master/texmf-dist/doc/bibtex/economic/ajae-test.tex +++ b/Master/texmf-dist/doc/bibtex/economic/ajae-ex.tex @@ -138,6 +138,6 @@ and $\matgreek{ \Psi }$ is a matrix. \nocite{*} \bibliographystyle{ajae} -\bibliography{ajae-test} +\bibliography{ajae-ex} \end{document} diff --git a/Master/texmf-dist/doc/bibtex/economic/ecca-test.bib b/Master/texmf-dist/doc/bibtex/economic/ecca-ex.bib index c1cb4b09b9b..c1cb4b09b9b 100644 --- a/Master/texmf-dist/doc/bibtex/economic/ecca-test.bib +++ b/Master/texmf-dist/doc/bibtex/economic/ecca-ex.bib diff --git a/Master/texmf-dist/doc/bibtex/economic/ecca-test.tex b/Master/texmf-dist/doc/bibtex/economic/ecca-ex.tex index 9d68f96dfa7..92feb0dc8a0 100644 --- a/Master/texmf-dist/doc/bibtex/economic/ecca-test.tex +++ b/Master/texmf-dist/doc/bibtex/economic/ecca-ex.tex @@ -164,6 +164,6 @@ Joseph A.\ Wright (\url{joseph.wright@morningstar2.co.uk}). \nocite{*} \bibliographystyle{ecca} -\bibliography{ecca-test} +\bibliography{ecca-ex} \end{document} diff --git a/Master/texmf-dist/doc/bibtex/economic/erae-test.bib b/Master/texmf-dist/doc/bibtex/economic/erae-ex.bib index 5ac2aec695c..5ac2aec695c 100644 --- a/Master/texmf-dist/doc/bibtex/economic/erae-test.bib +++ b/Master/texmf-dist/doc/bibtex/economic/erae-ex.bib diff --git a/Master/texmf-dist/doc/bibtex/economic/erae-test.tex b/Master/texmf-dist/doc/bibtex/economic/erae-ex.tex index 08ca439b8c0..ffe1b71dc57 100644 --- a/Master/texmf-dist/doc/bibtex/economic/erae-test.tex +++ b/Master/texmf-dist/doc/bibtex/economic/erae-ex.tex @@ -134,6 +134,6 @@ and $\Psi$ is a matrix. \nocite{*} \bibliographystyle{erae} -\bibliography{erae-test} +\bibliography{erae-ex} \end{document} diff --git a/Master/texmf-dist/doc/bibtex/economic/itaxpf-title.tex b/Master/texmf-dist/doc/bibtex/economic/itaxpf-ex-title.tex index d701a09365d..d701a09365d 100644 --- a/Master/texmf-dist/doc/bibtex/economic/itaxpf-title.tex +++ b/Master/texmf-dist/doc/bibtex/economic/itaxpf-ex-title.tex diff --git a/Master/texmf-dist/doc/bibtex/economic/itaxpf-test.bib b/Master/texmf-dist/doc/bibtex/economic/itaxpf-ex.bib index 90da9b992ed..90da9b992ed 100644 --- a/Master/texmf-dist/doc/bibtex/economic/itaxpf-test.bib +++ b/Master/texmf-dist/doc/bibtex/economic/itaxpf-ex.bib diff --git a/Master/texmf-dist/doc/bibtex/economic/itaxpf-test.tex b/Master/texmf-dist/doc/bibtex/economic/itaxpf-ex.tex index b1bf55682ec..dca73a76c97 100644 --- a/Master/texmf-dist/doc/bibtex/economic/itaxpf-test.tex +++ b/Master/texmf-dist/doc/bibtex/economic/itaxpf-ex.tex @@ -94,6 +94,6 @@ but follows the lists of references in published articles \nocite{*} \bibliographystyle{itaxpf} -\bibliography{itaxpf-test} +\bibliography{itaxpf-ex} \end{document} diff --git a/Master/texmf-dist/doc/bibtex/economic/oegatb-ex.bib b/Master/texmf-dist/doc/bibtex/economic/oegatb-ex.bib new file mode 100644 index 00000000000..a88bec90112 --- /dev/null +++ b/Master/texmf-dist/doc/bibtex/economic/oegatb-ex.bib @@ -0,0 +1,36 @@ +@ARTICLE{hansen04, + author = {Hansen, A. L. and Jacobsen, K. K. and Jensen, B.}, + year = {2004}, + title = {Title of Paper}, + journal = {Journal of Animal Physiology and Animal Nutrition}, + volume = {68}, + number = {3}, + pages = {123-135} +} + +@BOOK{hansen95, + author = {Hansen, A.}, + year = {1995}, + title = {A Guide to Good Writing for Scientists}, + edition = {2}, + address = {Viborg}, + publisher = {Low Budget Publishing} +} + +@INCOLLECTION{jones95, + author = {Jones, A. R. and Walter, H.}, + year = {1995}, + title = {Title of Chapter}, + editor = {Mohr, A. and Wings, P.}, + booktitle = {New Soil Analysis}, + pages = {42-51}, + address = {Copenhagen}, + publisher = {Danish Soil Association} +} + +@PHDTHESIS{schulze94, + author = {Schulze, H.}, + year = {1994}, + title = {Endogenous ileal nitrogen losses in pigs: Dietary factors}, + school = {Wageningen Agricultural University} +} diff --git a/Master/texmf-dist/doc/bibtex/economic/oegatb-ex.png b/Master/texmf-dist/doc/bibtex/economic/oegatb-ex.png Binary files differnew file mode 100644 index 00000000000..034c44de978 --- /dev/null +++ b/Master/texmf-dist/doc/bibtex/economic/oegatb-ex.png diff --git a/Master/texmf-dist/doc/bibtex/economic/oegatb-ex.tex b/Master/texmf-dist/doc/bibtex/economic/oegatb-ex.tex new file mode 100644 index 00000000000..faa5b4a2b57 --- /dev/null +++ b/Master/texmf-dist/doc/bibtex/economic/oegatb-ex.tex @@ -0,0 +1,253 @@ +\documentclass[english]{oegatb} +\usepackage[utf8]{inputenc} +\usepackage[T1]{fontenc} +\usepackage{eurosym} +\usepackage{tabularx} +\usepackage{graphicx} +\usepackage{float} + +\title{Titel} + +\author{Erste Autorin, Zweiter B. Autor, und Dritte C. Autorin} + +\affiliation{% +Erste A. Autorin ist am Institut für Agrar- und Forstökonomie +der Universität für Bodenkultur tätig (erste.autorin@boku.ac.at). + +Zweiter B. Autor arbeitet bei der Aarhus University, +Department of Biology, DK-8000, Aarhus, Dänemark. +Er ist nun bei der Danish Research Centre of Organic Food and Farming, +DK-8830 Tjele, Dänemark tätig (secondb.author@agrsci.dk). + +Dritte C. Autorin ist an der University of Copenhagen, +Department of Zoology, Denmark (thirdc.author@agrsci.dk).} + + +\begin{document} +\maketitle + +\begin{abstract} +These instructions give you guidelines for preparing camera-ready short papers +for the ÖGA 2006 conference proceedings. +The short papers can be written in German or in English. +The length of the short paper is maximally two pages. +There will be no key words. +Use this document as a template if you are using Microsoft Word 6.0 or later. +Otherwise, use this document as an instruction set. Define all symbols +used in the paper. +Do not cite references in the abstract. +The abstract should not exceed ca.\ 200 words, which corresponds +to the double length of this example. +The footnote symbol following this abstract should not be deleted. +\end{abstract} + + +\section{Introduction to using the template} + +This document is a template for Microsoft Word versions 6.0 or later. +If you are reading a paper version of this document, +please download the electronic file, template.doc, +from the website \url{http://www.boku.ac.at/oega} so you can use it +to prepare your manuscript. + +When you open the template, select ‘Page Layout’ from the ‘View’ menu +in the menu bar (View | Page Layout), +which allows you to see the footnotes. +Then type over the sections or cut and paste from another document +and then use markup styles. +The pull-down style menu is at the left of the Formatting Toolbar +at the top of your Word window. +For example, the style at this point in the document is ‘Normal text’. +Highlight a section that you want to designate with a certain style, +and then select the appropriate name on the style menu. +The style will adjust your fonts and line spacing. +Styles used are: title, author, abstract, normal text, heading 1 +(as in ‘introduction above) and footnote. +Subheadings (as ‘Figures and tables’ in next column are italicized normal text. +Do not change the font sizes or line spacing to squeeze more text +into a limited number of pages. +Use italics for emphasis; do not underline. +Please note that there is a tab at the beginning of each paragraph, +except for the first paragraph in a section. + + +\section{Procedure for paper submission} + +Papers must be submitted by 31st August 2006 per email to +\url{michaela.groetzer@boku.ac.at}. +Papers received after this deadline cannot be included in the proceedings. +Paper exceeding 2 pages can also not be included in the proceedings. +The submitted paper must be in camera-ready format and in a word file. +It will be placed into the conference proceedings as received +and without substantial editing or reviewing. +Therefore, we recommend that you get one or two colleagues +to proofread the paper. + + +\section{Structure of the short paper} + +The short paper should be structured as any other scientific publication. +You should start with an introduction which includes background information +(why is the topic of your research relevant? +What have other authors found out about the topic?) +and the specific question you tried to answer in your study +(what is your aim and/or hypothesis?). + +The second section should explain the methods you used, +so that the readers have clear information on how (and where) +the data was collected and what methods were used to analyse the data. + +The third section should present the results of your research, +i.e.\ describe your major findings. +Please try to be as succinct as possible, +presenting only the most relevant data in condensed form. + +In the fourth section you should explain how you interpret your results +(do not leave the reader thinking "So what?"). +Continually refer to your results (but do not repeat them). +Do not extend your conclusions beyond those +which are directly supported by your results. +Speculation has its place, but should not form the bulk of the discussion. +Be sure to address the objectives of the study +(which you stated in the introduction). +Discuss the significance of your results in light of other published work. +End the discussion with a short summary or conclusion +regarding the significance of the work. + + +\section{Helpful hints on formatting} + +\subsection{Figures and tables} +As there will be no final formatting of your paper, +you need to place figures and tables in the paper accordingly, +usually at the top or bottom of column. +Large figures and tables may span both columns, +but it is easier to include a one-column figure or table. +Place figure captions below the figures; place table titles above the tables. + +\begin{table}[H] +\caption{Soil properties for the two studied soils +(Style used is Normal text, but font size 7).} +\scriptsize +\renewcommand{\arraystretch}{1.1} +\begin{tabularx}{\columnwidth}{Xcc} +\hline +Soil property & Soil A & Soil B\\ +\hline +Temperature (C) & 15 & 12\\ +pH & 7.4 & 6.2\\ +Organic C (mg/kg) & 1.2 & 2.4\\ +\hline +\end{tabularx}\\ +\textsuperscript{a} Water content is given on a soil dry weight basis. +\end{table} + +Please verify that the figures and tables you mention in the text +actually exist. Please do not include captions as part of the figures. +Do not put captions in text boxes linked to the figures. +Do not put borders around the outside of your figures. +Use the abbreviation ``Fig.'' except at the beginning of a sentence, +where ``Figure'' should be used. +Do not abbreviate ``Table.'' +Tables are numbered with Roman numerals. +Insert tables by use of the Table lay-out, not just as tabulated text and data. + +Figure axis labels are often a source of confusion. +Use words rather than symbols. +As an example, write the quantity ``Transport cost in \euro'', not just ``\euro''. +Put units in parentheses. +Do not label axes only with units. + +Figure labels should be legible, approximately 8 point type. +Color printing of figures is not available. + +\subsection{Numbers} +Figures are used for all units and quantities (e.g., 8 mm, 3 years, 6 kg) +with a space between the figure and the measurement description. +In descriptive text, numbers from one to nine are spelled out +and figures are used for 10 and over (e.g., six pigs, 27 sows) +except where the number begins a sentence, +thus: ``Three years ago ....''. +If you use percentages, please do not include a space between the number +and the percentage sign (e.g. 20\% of farmers). + +\subsection{Abbreviations and Acronyms} +Define abbreviations and acronyms the first time they are used in the text. +Do not use abbreviations in the title unless they are unavoidable. + +\subsection{Data and units} +Indicate which measure is being used when data are presented; +e.g., 53.8 $\pm$ 1.5 g/L (mean $\pm$ SE). +For tests of significance, use the form, e.g., ``P<0.001''. + +Use of SI units is strongly encouraged. +Use the center dot to separate compound units (A$\cdot$m2). + +\subsection{Tense} +If you wish, you may write in the first person singular +or plural and use the active voice +(``We observed that...'' instead of ``It was observed that ...'' or +``The authors observed that...''). +Remember to check spelling. +If your native language is not English or German +(depending on the language you write in), +please get a native speaker to proofread your paper. + + +\section{Guidelines for references} + +\subsection{In text} + +In the body of the text, +references should be cited according to the following rules.\\ +- Where a paper is by three or more authors, + the name of the first author should be followed by et al.\ + [\citet{hansen04} demonstrated\ldots] or + [as previously demonstrated \citep{hansen04}].\\ +- Please place a comma between the author's name and the year + \citep{schulze94,hansen95}. + - The earliest work is reported first.\\ +- Letters following the year are used to differentiate between + two or more papers with the same authors and the same year + (Smith, 1964a, 1964b).\\ +- A semi-colon separates reference to different authors + \citep{schulze94,hansen04}. + +\begin{figure}[H] +\includegraphics[width=0.9\columnwidth]{oegatb-ex.png} +\caption{Air temperature during the summer in Denmark +(Style as normal text, but in italic and font size 7).} +\end{figure} + + +\subsection{Reference list} +A complete list of the references cited in the text must be arranged +alphabetically at the end of your paper under the heading References. + +For papers published in journals: Authors' names, year of publication, +title of paper, name of journal (in full and italics), volume number (issue), +and the first and last page numbers should be given, in that order. + +For books: Authors' names, year of publication, title of book (in italics), +volume or edition number, place of publication and name of publisher +should be given in that order. + +For chapters in a book: Authors' names, year of publication, title of chapter. +In: editors. Title of Book (in italics), first and last page, +place of publication and name of publisher. + +For a thesis: The author's name, year of publication, title of the thesis, +degree and University should be given, in that order. + +There is a 4 pt space between references (4pt before each paragraph). + + +\section{Acknowledgement} + +I would like to thank the Joint Organic Congress for providing +this template and most of the detailed instructions included in it. + +\nocite{*} +\bibliography{oegatb-ex} + +\end{document} diff --git a/Master/texmf-dist/tex/latex/economic/agecon.cls b/Master/texmf-dist/tex/latex/economic/agecon.cls new file mode 100644 index 00000000000..2b42e01e77e --- /dev/null +++ b/Master/texmf-dist/tex/latex/economic/agecon.cls @@ -0,0 +1,209 @@ +%%% LaTeX class for manuscripts submitted to the +%%% journal 'Agricultural Economics' (AgEcon) +%%% +%%% author: Arne Henningsen +%%% version: 1.0 (4 January 2008) +%%% license: LaTeX Project Public License +%%% +%%% Note: This is an unofficial style file that may not fully comply +%%% with the AgEcon Formatting Instructions in every detail. +%%% Please report any problems to <ahenningsen@email.uni-kiel.de>. +%%% Further information is available at +%%% http://www.uni-kiel.de/agrarpol/ahenningsen/latex-bibtex.html +%%% +%%% This document class is based on the "scrartcl" class +%%% from the KOMA script bundle. +%%% Following additional packages are required: +%%% amsmath, babel, caption, endfloat, geometry, +%%% lmodern, natbib, setspace, titlesec, url +%%% +%%% The class provides following options: +%%% noendfloat - do not move floats to the end of the paper +%%% author - show name(s) of authors(s) +%%% date - show date +%%% letterpaper - use US letter paper format instead of A4 +%%% +%%% The corresponding BibTeX style file "agecon.bst" should be used +%%% for the bibliography: \bibliographystyle{agecon} +%%% +%%% This document class provides 3 new commands: +%%% \keywords can be use to show keywors below the abstract +%%% \jelclass can be use to show JEL classifications below the abstract +%%% \affiliation can be used to add affiliation information +%%% + + +\NeedsTeXFormat{LaTeX2e} +\ProvidesClass{agecon}[2008/01/04 LaTeX class for the journal 'Agricultural Economics'] + +\RequirePackage{ifthen} + +% option to NOT place floats at the end +\newcounter{UseEndfloat} +\setcounter{UseEndfloat}{1} +\DeclareOption{noendfloat}{\setcounter{UseEndfloat}{0}} + +% option to show the authors' names +\newcounter{ShowAuthor} +\setcounter{ShowAuthor}{0} +\DeclareOption{author}{\setcounter{ShowAuthor}{1}} + +% option to print the date +\newcounter{ShowDate} +\setcounter{ShowDate}{0} +\DeclareOption{date}{\setcounter{ShowDate}{1}} + +% option use US letter format (instead of A4) +\newcounter{UseLetterPaper} +\setcounter{UseLetterPaper}{0} +\DeclareOption{letterpaper}{\setcounter{UseLetterPaper}{1}} + +% pass any options on to the scrartcl class and load this class with some options +\DeclareOption*{\PassOptionsToClass{\CurrentOption}{scrartcl}} +\ProcessOptions\relax +\LoadClass[12pt,english,pointednumbers,tablecaptionabove]{scrartcl} +% pointednumbers = add final dot after ordinary section numbers +% tablecaptionabove = use \captionabove for tables + +% fontencoding + inputencoding +\usepackage[T1]{fontenc} +\usepackage[latin1]{inputenc} + +% use babel package and set language to english +\RequirePackage[english]{babel} + +% page format, margins +\RequirePackage{geometry} +\ifthenelse{\equal{\theUseLetterPaper}{0}}{ + \geometry{a4paper, tmargin=2.5cm, bmargin=2.8cm, lmargin=2.5cm, + rmargin=2.5cm, headheight=0cm, headsep=0cm, footskip=1.2cm } +}{ + \geometry{letterpaper, tmargin=2.5cm, bmargin=2.8cm, lmargin=2.5cm, + rmargin=2.5cm, headheight=0cm, headsep=0cm, footskip=1.2cm } +} + +% double spacing +\RequirePackage{setspace} +\doublespacing + +% font of (subsub)section headers +\setkomafont{section}{\bfseries} +\setkomafont{subsection}{\normalfont\itshape} +\setkomafont{subsubsection}{\normalfont\itshape} + +% spacing around (sub)section headers +\RequirePackage{titlesec} +\titlespacing*{\section}{0pt}{1em}{0.25em} +\titlespacing*{\subsection}{0pt}{0.85em}{0.15em} + +% spacing around formulas +\AtBeginDocument{ +\setlength{\abovedisplayshortskip}{6pt} +\setlength{\belowdisplayshortskip}{6pt} +\setlength{\abovedisplayskip}{6pt} +\setlength{\belowdisplayskip}{6pt} +\allowdisplaybreaks +} + +% spacing around captions and floats +\setlength{\abovecaptionskip}{6pt} +\setlength{\belowcaptionskip}{3pt} +\setlength{\floatsep}{0pt} +\setlength{\textfloatsep}{20pt} +\setlength{\intextsep}{5pt} + +% font: latin modern +\RequirePackage{lmodern} + +% amsmath +\RequirePackage[fleqn]{amsmath} +% for compatibility with ajae.cls +\newcommand{\veclatin}[1]{#1} +\newcommand{\matlatin}[1]{#1} +\newcommand{\vecgreek}[1]{#1} +\newcommand{\matgreek}[1]{#1} + +% font for URLs +\RequirePackage{url} +\def\UrlFont{\rmfamily} + +% citations and bibliography +\RequirePackage[authoryear]{natbib} +\setlength{\bibsep}{0pt} + +% captions of figures and tables +\usepackage{caption} +\captionsetup{justification=raggedright,singlelinecheck=false, + labelfont=rm,textfont=rm} +\captionsetup[table]{labelsep=newline} +\captionsetup[figure]{labelsep=period} +\addto\captionsenglish{% + \renewcommand{\figurename}{Fig.}% +} + +% titlepage without author and date +\newcommand{\affiliation}[1]{\newcommand{\@affiliation}{#1}} +\renewcommand{\maketitle}{ + \begin{center} + \begin{spacing}{1.5} + \LARGE{\textbf{\@title}}% + \end{spacing} + \ifthenelse{\equal{\theShowAuthor}{1}}{ + \begin{large} + \textbf{\@author}\\ + \end{large} + \ifthenelse{ \isundefined\@affiliation }{}{ + \vspace*{3mm} + \begin{small} + \@affiliation\\ + \end{small} + } + \vspace*{5mm} + }{} + \ifthenelse{\equal{\theShowDate}{1}}{ + \@date\\ + \vspace*{5mm} + }{} + \end{center} +} + +% abstract, keywords, JEL classification +\newcommand{\keywords}[1]{\newcommand{\@keywords}{#1}} +\newcommand{\jelclass}[1]{\newcommand{\@jelclass}{#1}} +\renewenvironment{abstract}{% +\hrule +\section*{Abstract} +}{% +\ifthenelse{ \isundefined\@jelclass }{}{ +\smallskip\\ \noindent +\textit{JEL classification:} \@jelclass +} +\ifthenelse{ \isundefined\@keywords }{}{ +\smallskip\\ \noindent +\textit{Key words:} \@keywords +} +\bigskip +\hrule +\clearpage +} + +% avoid clubs and widows +\clubpenalty=10000 +\widowpenalty=10000 +% \displaywidowpenalty=10000 + +% increase stretchability of the spaces (avoid overful hboxes) +\setlength{\emergencystretch}{3em} + +% move floats to the end of the paper +\ifthenelse{\equal{\theUseEndfloat}{1}}{ +\RequirePackage[heads,tablesfirst,nomarkers,nolists]{endfloat} +}{} + +% use double quotes +\RequirePackage{csquotes} +\MakeOuterQuote{°} + +% for compatibility with erae.cls +\newcommand{\citetPage}[2]{\citeauthor{#2} (\citeyear{#2}, p.~#1)} +\newcommand{\citepPage}[2]{\citetext{\citealp{#2}, p.~#1}} diff --git a/Master/texmf-dist/tex/latex/economic/ajae.cls b/Master/texmf-dist/tex/latex/economic/ajae.cls index 77df3d104c6..8dedd39d56f 100644 --- a/Master/texmf-dist/tex/latex/economic/ajae.cls +++ b/Master/texmf-dist/tex/latex/economic/ajae.cls @@ -2,7 +2,7 @@ %%% American Journal of Agricultural Economics (AJAE) %%% %%% author: Arne Henningsen -%%% version: 1.2 (13 May 2007) +%%% version: 1.4 (3 September 2007) %%% license: LaTeX Project Public License %%% %%% Note: This is an unofficial style file that may not fully comply @@ -23,6 +23,7 @@ %%% author - show name(s) of authors(s) %%% date - show date %%% preprint - print the 'preprint notice' +%%% published - print a notice that the paper has been published %%% %%% %%% The corresponding BibTeX style file "ajae.bst" should be used @@ -37,6 +38,9 @@ %%% \matlatin should be used for latin symbols that denote matrices %%% \vecgreek should be used for greek symbols that denote vectors %%% \matgreek should be used for greek symbols that denote matrices +%%% \ajaeyear, \ajaeissue, \ajaenumber, and \ajaepages should be used +%%% after the publication to specify the year, issue, number, +%%% and pages, respectively. %%% %%% If you use footnotes, add following lines before the reference section: %%% \clearpage @@ -44,34 +48,39 @@ \NeedsTeXFormat{LaTeX2e} -\ProvidesClass{ajae}[2006/08/22 LaTeX class for the American Journal of Agricultural Economics] +\ProvidesClass{ajae}[2007/09/03 LaTeX class for the American Journal of Agricultural Economics] \RequirePackage{ifthen} % option to use footnotes in place of endnotes -\newcounter{UseEndnotes} -\setcounter{UseEndnotes}{1} -\DeclareOption{noendnotes}{\setcounter{UseEndnotes}{0}} +\newif\if@UseEndnotes +\@UseEndnotestrue +\DeclareOption{noendnotes}{\@UseEndnotesfalse} % option to NOT place floats at the end -\newcounter{UseEndfloat} -\setcounter{UseEndfloat}{1} -\DeclareOption{noendfloat}{\setcounter{UseEndfloat}{0}} +\newif\if@UseEndfloat +\@UseEndfloattrue +\DeclareOption{noendfloat}{\@UseEndfloatfalse} % option to show the authors' names -\newcounter{ShowAuthor} -\setcounter{ShowAuthor}{0} -\DeclareOption{author}{\setcounter{ShowAuthor}{1}} +\newif\if@ShowAuthor +\@ShowAuthorfalse +\DeclareOption{author}{\@ShowAuthortrue} % option to print the date -\newcounter{ShowDate} -\setcounter{ShowDate}{0} -\DeclareOption{date}{\setcounter{ShowDate}{1}} +\newif\if@ShowDate +\@ShowDatefalse +\DeclareOption{date}{\@ShowDatetrue} % option to print the 'preprint notice' -\newcounter{ShowPreprintNote} -\setcounter{ShowPreprintNote}{0} -\DeclareOption{preprint}{\setcounter{ShowPreprintNote}{1}} +\newif\if@ShowPreprintNote +\@ShowPreprintNotefalse +\DeclareOption{preprint}{\@ShowPreprintNotetrue} + +% option to print the 'published notice' +\newif\if@ShowPublishedNote +\@ShowPublishedNotefalse +\DeclareOption{published}{\@ShowPublishedNotetrue} % pass any options on to the scrartcl class and load this class with some options \DeclareOption*{\PassOptionsToClass{\CurrentOption}{scrartcl}} @@ -157,10 +166,15 @@ \setcounter{secnumdepth}{0} % leading unnumbered footnote -\def\leadingfootnote{\xdef\@thefnmark{}\@footnotetext} +\long\def\leadingfootnote#1{\begingroup% + \def\thefootnote{\fnsymbol{footnote}}\footnote[0]{#1}\endgroup} % titlepage without author and date \newcommand{\affiliation}[1]{\newcommand{\@affiliation}{#1}} +\newcommand{\ajaeissue}[1]{\newcommand{\@ajaeissue}{#1}} +\newcommand{\ajaenumber}[1]{\newcommand{\@ajaenumber}{#1}} +\newcommand{\ajaeyear}[1]{\newcommand{\@ajaeyear}{#1}} +\newcommand{\ajaepages}[1]{\newcommand{\@ajaepages}{#1}} \renewcommand{\maketitle}{ \begin{center} \begin{LARGE} @@ -169,7 +183,7 @@ \end{spacing} \end{LARGE} \vspace*{10mm} - \ifthenelse{\equal{\theShowAuthor}{1}}{ + \if@ShowAuthor \begin{large} \textbf{\@author}\\ \end{large} @@ -180,20 +194,47 @@ \end{small} } \vspace*{5mm} - }{} - \ifthenelse{\equal{\theShowDate}{1}}{ + \fi + \if@ShowDate \@date\\ \vspace*{5mm} - }{} - \ifthenelse{\equal{\theShowPreprintNote}{1}}{ + \fi + \if@ShowPreprintNote \begin{small} This is a preprint of an Article accepted for publication in - American Journal of Agricultural Economics. + \textit{American Journal of Agricultural Economics}. \copyright{} \the\year , American Agricultural Economics Association \end{small} \vspace*{5mm} - }{} + \fi + \if@ShowPublishedNote + \begin{small} + This is an electronic version of an Article published in\\ + \textit{American Journal of Agricultural Economics}% + \ifthenelse{ \isundefined\@ajaeissue }{% + \ClassWarningNoLine{ajae}{No issue of the AJAE publication specified. + Please use the command \protect\ajaeissue}% + }{, \@ajaeissue{}}% + \ifthenelse{ \isundefined\@ajaenumber }{% + \ClassWarningNoLine{ajae}{No number of the AJAE publication specified. + Please use the command \protect\ajaenumber}% + }{(\@ajaenumber{})}% + \ifthenelse{ \isundefined\@ajaepages }{% + \ClassWarningNoLine{ajae}{No pages of the AJAE publication specified. + Please use the command \protect\ajaepages}% + }{, p.~\@ajaepages{}}.\\ + \copyright{}% + \ifthenelse{ \isundefined\@ajaeyear }{% + \ClassWarningNoLine{ajae}{No year of the AJAE publication specified. + Please use the command \protect\ajaeyear}% + }{\@ajaeyear{}} + American Agricultural Economics Association.\\ + The final version is available on + \url{http://www.blackwell-synergy.com/loi/AJAE} + \end{small} + \vspace*{5mm} + \fi \end{center} } @@ -249,7 +290,7 @@ JEL classification: \@jelclass \setlength{\emergencystretch}{3em} % use endnotes in place of footnotes -\ifthenelse{\equal{\theUseEndnotes}{1}}{ +\if@UseEndnotes \RequirePackage{endnotes} \let\footnote=\endnote \newcommand{\listofendnotes}{ @@ -260,12 +301,12 @@ JEL classification: \@jelclass \theendnotes \endgroup } -}{} +\fi % move floats to the end of the paper -\ifthenelse{\equal{\theUseEndfloat}{1}}{ +\if@UseEndfloat \RequirePackage[tabhead,fighead,nomarkers,nolists]{endfloat} -}{} +\fi % for compatibility with erae.cls \newcommand{\citetPage}[2]{\citeauthor{#2} (\citeyear{#2}, p.~#1)} diff --git a/Master/texmf-dist/tex/latex/economic/apecon.cls b/Master/texmf-dist/tex/latex/economic/apecon.cls new file mode 100644 index 00000000000..eede3c23369 --- /dev/null +++ b/Master/texmf-dist/tex/latex/economic/apecon.cls @@ -0,0 +1,204 @@ +%%% LaTeX class for manuscripts submitted to the +%%% journal 'Applied Economics' +%%% +%%% author: Arne Henningsen +%%% version: 1.0 (14 April 2008) +%%% license: LaTeX Project Public License +%%% +%%% Note: This is an unofficial style file that may not fully comply +%%% with the formatting instructions of 'Applied Economics' in every detail. +%%% Please report any problems to <ahenningsen<at>email<dot>uni-kiel<dot>de>. +%%% Further information is available at +%%% http://www.uni-kiel.de/agrarpol/ahenningsen/latex-bibtex.html +%%% +%%% This document class is based on the "scrartcl" class +%%% from the KOMA script bundle. +%%% Following additional packages are required: +%%% amsmath, babel, csquotes, endfloat, fontenc, geometry, ifthen +%%% inputenc, lmodern, natbib, setspace, textcomp, url +%%% +%%% The class provides following option: +%%% noendfloat - don't move floats to the end of the paper +%%% +%%% By default, the corresponding BibTeX style "apecon.bst" is used. +%%% +%%% This document class provides 4 new commands: +%%% \affiliation specify affiliation(s) of the authors +%%% \address specify address(es) of the affiliation(s) +%%% \rtitle specify running title (max. 75 letters and spaces) +%%% \cauthor specify corresponding author including contact details +%%% + + +\NeedsTeXFormat{LaTeX2e} +\ProvidesClass{apecon}[2008/04/14 LaTeX class for the journal 'Applied Economics'] + +% package for convenient if-then-else statements +\RequirePackage{ifthen} + +% option to NOT place floats at the end +\newif\if@useendfloat +\@useendfloattrue +\DeclareOption{noendfloat}{\@useendfloatfalse} + +% pass any options on to the scrartcl class and load this class with some options +\DeclareOption*{\PassOptionsToClass{\CurrentOption}{scrartcl}} +\ProcessOptions\relax +\LoadClass[12pt,english,pointednumbers,tablecaptionabove]{scrartcl} +% pointednumbers = add final dot after ordinary section numbers +% tablecaptionabove = use \captionabove for tables + +% fontencoding + inputencoding +\RequirePackage[T1]{fontenc} +\RequirePackage[utf8]{inputenc} +\RequirePackage{textcomp} + +% page format, margins +\RequirePackage{geometry} +\geometry{a4paper, tmargin=2.5cm, bmargin=2.8cm, lmargin=4cm, + rmargin=2cm, headheight=0cm, headsep=0cm, footskip=1.2cm } + +% one half spacing +\RequirePackage{setspace} +\doublespacing + +% spacing around formulas +\AtBeginDocument{ +\setlength{\abovedisplayshortskip}{6pt} +\setlength{\belowdisplayshortskip}{6pt} +\setlength{\abovedisplayskip}{6pt} +\setlength{\belowdisplayskip}{6pt} +\allowdisplaybreaks +} + +% spacing around captions and floats +\setlength{\abovecaptionskip}{6pt} +\setlength{\belowcaptionskip}{3pt} +\setlength{\floatsep}{0pt} +\setlength{\textfloatsep}{20pt} +\setlength{\intextsep}{5pt} + +% font family: latin modern +\RequirePackage{lmodern} + +% section headers +\setkomafont{section}{\sffamily\bfseries} +\setkomafont{subsection}{\normalfont\sffamily\itshape} +\setkomafont{subsubsection}{\normalfont\sffamily} +\renewcommand{\thesection}{\Roman{section}} +\setcounter{secnumdepth}{1} + +% amsmath +\RequirePackage{amsmath} +% for compatibility with ajae.cls +\newcommand{\veclatin}[1]{#1} +\newcommand{\matlatin}[1]{#1} +\newcommand{\vecgreek}[1]{#1} +\newcommand{\matgreek}[1]{#1} + +% font for URLs +\RequirePackage{url} +\def\UrlFont{\rmfamily} + +% citations and bibliography +\RequirePackage[authoryear]{natbib} +\setlength{\bibsep}{0pt} +\bibliographystyle{apecon} + +% captions of figures and tables +\setcapwidth[l]{\textwidth} +\setcapindent{0pt} +\setkomafont{captionlabel}{\normalsize\normalfont\bfseries} +\setkomafont{caption}{\normalsize\normalfont\bfseries} +\renewcommand{\captionformat}{.\ } + +% titlepage without author and date +\newcommand{\affiliation}[1]{\newcommand{\@affiliation}{#1}} +\newcommand{\address}[1]{\newcommand{\@address}{#1}} +\newcommand{\rtitle}[1]{\newcommand{\@rtitle}{#1}} +\newcommand{\cauthor}[1]{\newcommand{\@cauthor}{#1}} +\renewcommand{\maketitle}{ + \begin{center} + \begin{spacing}{1.5} + \LARGE{\textbf{\@title}}% + \end{spacing} + \ifthenelse{ \isundefined\@author }{ + \ClassWarning{apecon}{No author(s) specified. + Please specify with command \protect\author} + }{ + \begin{large} + \textbf{\@author}\\ + \end{large} + \vspace*{3mm} + } + \begin{spacing}{1.1} + \ifthenelse{ \isundefined\@affiliation }{ + \ClassWarning{apecon}{No affiliation(s) specified. + Please specify with command \protect\affiliation} + }{ + \textit{\@affiliation}\\ + } + \ifthenelse{ \isundefined\@address }{ + \ClassWarningNoLine{apecon}{No addresses of the authors are specified. + Please specify with command \protect\address} + }{ + \textit{\@address}\\ + } + \end{spacing} + \vspace*{5mm} + \end{center} + \ifthenelse{ \isundefined\@rtitle }{ + \ClassWarningNoLine{apecon}{No running title is specified. + Please specify with command \protect\rtitle\space (max. 75 letters)} + }{ + \textbf{Running title:}\\ + \@rtitle\\ + } +} + +% abstract, keywords, JEL classification +\renewenvironment{abstract}{% + \begin{spacing}{1.5} + \noindent + \textbf{Abstract}\\ +}{% + \smallskip\\ \noindent + \end{spacing} + \begin{spacing}{1.1} + \noindent + \textbf{Corresponding author:} + \ifthenelse{ \isundefined\@cauthor }{ + ??? + \ClassWarningNoLine{apecon}{No corresponding author + (including contact details) is specified. + Please specify with command \protect\cauthor} + }{ + \\\@cauthor\\ + } + \clearpage + \end{spacing} +} + +% use babel package and set language to english +\RequirePackage[english]{babel} + +% avoid clubs and widows +\clubpenalty=10000 +\widowpenalty=10000 +% \displaywidowpenalty=10000 + +% increase stretchability of the spaces (avoid overful hboxes) +\setlength{\emergencystretch}{3em} + +% move floats to the end of the paper +\if@useendfloat + \RequirePackage[noheads,nomarkers,tablesfirst,nolists]{endfloat} +\fi + +% use single quotes +\RequirePackage{csquotes} +\MakeInnerQuote{°} + +% for compatibility with erae.cls +\newcommand{\citetPage}[2]{\citeauthor{#2} (\citeyear{#2}, p.~#1)} +\newcommand{\citepPage}[2]{\citetext{\citealp{#2}, p.~#1}} diff --git a/Master/texmf-dist/tex/latex/economic/erae.cls b/Master/texmf-dist/tex/latex/economic/erae.cls index 16446cd51e2..9bdf1aba9f1 100644 --- a/Master/texmf-dist/tex/latex/economic/erae.cls +++ b/Master/texmf-dist/tex/latex/economic/erae.cls @@ -2,7 +2,7 @@ %%% European Review of Agricultural Economics (ERAE) %%% %%% author: Arne Henningsen -%%% version: 1.0.1 (28 August 2006) +%%% version: 1.1 (10 November 2007) %%% license: LaTeX Project Public License %%% %%% Note: This is an unofficial style file that may not fully comply @@ -17,19 +17,42 @@ %%% amsmath, babel, courier, endfloat, geometry, %%% helvet, mathptmx, natbib, setspace, titlesec, url %%% +%%% The class provides following options: +%%% noendfloat - don't move floats to the end of the paper +%%% author - show name(s) of authors(s) +%%% date - show date +%%% %%% The corresponding BibTeX style file "erae.bst" should be used %%% for the bibliography: \bibliographystyle{erae} %%% %%% This document class provides 4 new commands: %%% \keywords can be use to show keywors below the abstract %%% \jelclass can be use to show JEL classifications below the abstract +%%% \affiliation can be used to add affiliation information %%% \citetPage{page}{key} for citations like Author (Year: page) %%% \citepPage{page}{key} for citations like (Author, year: page) %%% \NeedsTeXFormat{LaTeX2e} -\ProvidesClass{erae}[2006/08/22 LaTeX class for the European Review of Agricultural Economics] +\ProvidesClass{erae}[2007/11/10 LaTeX class for the European Review of Agricultural Economics] + +\RequirePackage{ifthen} + +% option to NOT place floats at the end +\newcounter{UseEndfloat} +\setcounter{UseEndfloat}{1} +\DeclareOption{noendfloat}{\setcounter{UseEndfloat}{0}} + +% option to show the authors' names +\newcounter{ShowAuthor} +\setcounter{ShowAuthor}{0} +\DeclareOption{author}{\setcounter{ShowAuthor}{1}} + +% option to print the date +\newcounter{ShowDate} +\setcounter{ShowDate}{0} +\DeclareOption{date}{\setcounter{ShowDate}{1}} % pass any options on to the scrartcl class and load this class with some options \DeclareOption*{\PassOptionsToClass{\CurrentOption}{scrartcl}} @@ -38,6 +61,10 @@ % pointednumbers = add final dot after ordinary section numbers % tablecaptionabove = use \captionabove for tables +% fontencoding + inputencoding +\usepackage[T1]{fontenc} +\usepackage[latin1]{inputenc} + % page format, margins \RequirePackage{geometry} \geometry{a4paper, tmargin=2.5cm, bmargin=2.8cm, lmargin=2.5cm, @@ -96,11 +123,29 @@ \renewcommand{\captionformat}{.\ } % titlepage without author and date +\newcommand{\affiliation}[1]{\newcommand{\@affiliation}{#1}} \renewcommand{\maketitle}{ + \begin{center} \begin{spacing}{1.5} - \centering \LARGE{\textbf{\@title}}% \end{spacing} + \ifthenelse{\equal{\theShowAuthor}{1}}{ + \begin{large} + \textbf{\@author}\\ + \end{large} + \ifthenelse{ \isundefined\@affiliation }{}{ + \vspace*{3mm} + \begin{small} + \@affiliation\\ + \end{small} + } + \vspace*{5mm} + }{} + \ifthenelse{\equal{\theShowDate}{1}}{ + \@date\\ + \vspace*{5mm} + }{} + \end{center} } % abstract, keywords, JEL classification @@ -114,10 +159,20 @@ \textbf{Abstract} \end{center} }{% +\ifthenelse{ \isundefined\@keywords }{ +\ClassWarningNoLine{erae}{No keywords specified. + Please use the command \protect\keywords} +}{ \smallskip\\ \noindent Key words: \@keywords +} +\ifthenelse{ \isundefined\@jelclass }{ +\ClassWarningNoLine{erae}{No JEL classification specified. + Please use the command \protect\jelclass} +}{ \smallskip\\ \noindent JEL classification: \@jelclass +} \end{minipage} \end{center}% \noindent% @@ -135,7 +190,9 @@ JEL classification: \@jelclass \setlength{\emergencystretch}{3em} % move floats to the end of the paper +\ifthenelse{\equal{\theUseEndfloat}{1}}{ \RequirePackage[heads,tablesfirst,nolists]{endfloat} +}{} % use single quotes \RequirePackage{csquotes} diff --git a/Master/texmf-dist/tex/latex/economic/jrurstud.cls b/Master/texmf-dist/tex/latex/economic/jrurstud.cls new file mode 100644 index 00000000000..4da91fc352f --- /dev/null +++ b/Master/texmf-dist/tex/latex/economic/jrurstud.cls @@ -0,0 +1,281 @@ +%%% LaTeX class for manuscripts submitted to the +%%% Journal of Rural Studies (JRurStud) +%%% +%%% author: Arne Henningsen +%%% version: 1.0 (16 April 2008) +%%% license: LaTeX Project Public License +%%% +%%% Note: This is an unofficial style file that may not fully comply +%%% with the JRurStud formatting instructions in every detail. +%%% Please report any problems to <ahenningsen<at>email<dot>uni-kiel<dot>de>. +%%% Further information is available at +%%% http://www.uni-kiel.de/agrarpol/ahenningsen/latex-bibtex.html +%%% +%%% This document class is based on the "scrartcl" class +%%% from the KOMA script bundle. +%%% Following additional packages are required: +%%% amsmath, babel, csquotes, endfloat, endnotes fontenc, geometry +%%% ifthen, inputenc, lmodern, natbib, setspace, stringstrings, textcomp, url +%%% +%%% The class provides the following options: +%%% noendfloat - don't move floats to the end of the paper +%%% noendnotes - don't use endnotes (use footnotes) +%%% titlepage - create "first" title page with title, authors' names, +%%% affiliations, and address of corresponding author +%%% nosecondtitle - do not create "second" title page with (repeated) title +%%% +%%% This class selects the BibTeX style "elsart-harv.bst". +%%% (see http://www.elsevier.com/wps/find/authorsview.authors/elsart) +%%% +%%% This class provides 5 new commands: +%%% \affiliation specify affiliation(s) of the authors +%%% \cauthormark mark the corresponding author (by an asterisk) +%%% \cauthoraddress specify address of the corresponding author +%%% \keywords specify some keywords (separated by semicolons) +%%% +%%% The manuscript submitted to JRurStud shouldn't include any figures. +%%% If your paper contains any figures and you haven't removed/disabled +%%% them in the LaTeX source, you can remove the pages showing these figures +%%% from the PDF file. If you want to remove, say, pages 18 and 19 with +%%% "pdftk" (PDF toolkit), you could execute +%%% pdftk original.pdf cat 1-17 20-end output manuscript.pdf +%%% While this needs some extra effort, it has the advantage (compared to +%%% removing the figures in the LaTeX source) that references to figures +%%% with \ref{} still work. +%%% +%%% Website of the "Journal of Rural Studies": +%%% http://www.elsevier.com/locate/jrurstud/ +%%% + +\NeedsTeXFormat{LaTeX2e} +\ProvidesClass{jrurstud}[2008/04/14 LaTeX class for the Journal of Rural Studies] + +% package for convenient if-then-else statements +\RequirePackage{ifthen} + +% option to NOT place floats at the end +\newif\if@useendfloat +\@useendfloattrue +\DeclareOption{noendfloat}{\@useendfloatfalse} + +% option to NOT use endnotes (but footnotes) +\newif\if@useendnotes +\@useendnotestrue +\DeclareOption{noendnotes}{\@useendnotesfalse} + +% option to create a "first" title page +\newif\if@maketitlepage +\@maketitlepagefalse +\DeclareOption{titlepage}{\@maketitlepagetrue} + +% option not to create a "second" title page +\newif\if@makesecondtitle +\@makesecondtitletrue +\DeclareOption{nosecondtitle}{\@makesecondtitlefalse} + +% pass any options on to the scrartcl class and load this class with some options +\DeclareOption*{\PassOptionsToClass{\CurrentOption}{scrartcl}} +\ProcessOptions\relax +\LoadClass[12pt,english,pointednumbers,tablecaptionabove]{scrartcl} +% pointednumbers = add final dot after ordinary section numbers +% tablecaptionabove = use \captionabove for tables + +% fontencoding + inputencoding +\RequirePackage[T1]{fontenc} +\RequirePackage[utf8]{inputenc} +\RequirePackage{textcomp} + +% page format, margins +\RequirePackage{geometry} +\geometry{a4paper, tmargin=2.5cm, bmargin=2.8cm, lmargin=2.8cm, + rmargin=2.8cm, headheight=0cm, headsep=0cm, footskip=1.2cm } + +% double spacing +\RequirePackage{setspace} +\doublespacing + +% spacing around formulas +\AtBeginDocument{ +\setlength{\abovedisplayshortskip}{6pt} +\setlength{\belowdisplayshortskip}{6pt} +\setlength{\abovedisplayskip}{6pt} +\setlength{\belowdisplayskip}{6pt} +\allowdisplaybreaks +} + +% spacing around captions and floats +\setlength{\abovecaptionskip}{6pt} +\setlength{\belowcaptionskip}{3pt} +\setlength{\floatsep}{0pt} +\setlength{\textfloatsep}{20pt} +\setlength{\intextsep}{5pt} + +% font family: latin modern +\RequirePackage{lmodern} + +% section headers +\setkomafont{section}{\bfseries} +\setkomafont{subsection}{\normalfont\itshape} +\setkomafont{subsubsection}{\normalfont} + +% amsmath +\RequirePackage{amsmath} +% for compatibility with ajae.cls +\newcommand{\veclatin}[1]{#1} +\newcommand{\matlatin}[1]{#1} +\newcommand{\vecgreek}[1]{#1} +\newcommand{\matgreek}[1]{#1} + +% font for URLs +\RequirePackage{url} +\def\UrlFont{\rmfamily} + +% citations and bibliography +\RequirePackage[authoryear]{natbib} +\setlength{\bibsep}{0pt} +\bibliographystyle{elsart-harv} + +% captions of figures and tables +\setcapwidth[l]{\textwidth} +\setcapindent{0pt} +\setkomafont{captionlabel}{\normalsize\normalfont\bfseries} +\setkomafont{caption}{\normalsize\normalfont\bfseries} +\renewcommand{\captionformat}{.\ } + +% titlepage without author and date +\newcommand{\affiliation}[1]{\newcommand{\@affiliation}{#1}} +\newcommand{\cauthoraddress}[1]{\newcommand{\@cauthoraddress}{#1}} +\newcommand{\cauthormark}{\textsuperscript{*}} +\renewcommand{\maketitle}{ + \if@maketitlepage + \thispagestyle{empty} + \vspace*{12mm} + \begin{center} + \begin{spacing}{1.5} + \LARGE{\textbf{\@title}}% + \end{spacing} + \ifthenelse{ \isundefined\@author }{ + \ClassWarning{apecon}{No author(s) specified. + Please specify with command \protect\author} + }{ + \begin{large} + \textbf{\@author}\\ + \end{large} + \vspace*{3mm} + } + \begin{spacing}{1.1} + \ifthenelse{ \isundefined\@affiliation }{ + \ClassWarning{apecon}{No affiliation(s) specified. + Please specify with command \protect\affiliation} + }{ + \textit{\@affiliation}\\ + } + \vspace*{2cm} + \textbf{\cauthormark{}~Corresponding author}.\\ + \ifthenelse{ \isundefined\@cauthoraddress }{ + \ClassWarningNoLine{jrurstud}{No address of the corresponding authors + is specified. Please specify with command \protect\cauthoraddress} + }{ + \@cauthoraddress\\ + } + \end{spacing} + \vspace*{5mm} + \end{center} + \clearpage + \fi + \if@makesecondtitle + \begin{center} + \begin{spacing}{1.5} + \LARGE{\textbf{\@title}}% + \end{spacing} + \end{center} + \fi +} + +% abstract, keywords, JEL classification +\newcommand{\keywords}[1]{\newcommand{\@keywords}{#1}} +\newcommand{\jelclass}[1]{\newcommand{\@jelclass}{#1}} +\renewenvironment{abstract}{% + \hrule + \vspace*{5mm} + \begin{spacing}{1.5} + \noindent + \textbf{Abstract}\\ + \indent +}{% + \ifthenelse{ \isundefined\@keywords }{ + \ClassWarningNoLine{erae}{No keywords specified. + Please use the command \protect\keywords} + }{ + \vspace*{5mm}\\ \noindent + \textit{Keywords:} \@keywords% + } + \vspace*{5mm} + \end{spacing} + \hrule + \clearpage +} + +% use babel package and set language to english +\RequirePackage[english]{babel} + +% avoid clubs and widows +\clubpenalty=10000 +\widowpenalty=10000 +% \displaywidowpenalty=10000 + +% increase stretchability of the spaces (avoid overful hboxes) +\setlength{\emergencystretch}{3em} + +% move floats to the end of the paper +\if@useendfloat + \RequirePackage[noheads,tablesfirst]{endfloat} + \AtBeginDelayedFloats{% + \pagestyle{empty} + } + \RequirePackage{stringstrings} + \renewcommand{\@makecaption}[2]{% + \testmatchingchar{#1}{1}{T} + \ifmatchingchar + \hfill \thetable\\ + \vspace*{3cm} + \fi + } + \renewcommand*{\l@figure}[2]{% + \setlength\@tempdima{2.3em}% + \noindent\hspace*{1.5em}#1\hfil\newline + } + \let\l@table\l@figure +\fi + +%% use endnotes in place of footnotes +\if@useendnotes + \RequirePackage{endnotes} + \let\footnote=\endnote + \newcommand{\listofendnotes}{ + \begingroup + \parindent 0pt + \parskip 0ex + \def\enotesize{\normalsize} + \theendnotes + \endgroup + } + % use normalsize numbers (copied from endnote.sty and modified thereafter) + \def\enoteformat{\rightskip\z@ \leftskip\z@ \parindent=0em + \leavevmode\llap{\theenmark. }} + \AtEndDocument{% + \IfFileExists{\jobname.ent}{% + \clearpage + \pagestyle{empty} + \listofendnotes + }{} + } +\fi + +% use single quotes +\RequirePackage{csquotes} +\MakeInnerQuote{°} + +% for compatibility with erae.cls +\newcommand{\citetPage}[2]{\citeauthor{#2} (\citeyear{#2}, p.~#1)} +\newcommand{\citepPage}[2]{\citetext{\citealp{#2}, p.~#1}} diff --git a/Master/texmf-dist/tex/latex/economic/oegatb.cls b/Master/texmf-dist/tex/latex/economic/oegatb.cls new file mode 100644 index 00000000000..21460431827 --- /dev/null +++ b/Master/texmf-dist/tex/latex/economic/oegatb.cls @@ -0,0 +1,219 @@ +%%% LaTeX class for short papers for publication in the "Tagungsband" +%%% of the "Oesterreichische Gesellschaft für Agraroekonomie" (OeGA) +%%% +%%% author: Arne Henningsen +%%% version: 1.0 (19 August 2008) +%%% license: LaTeX Project Public License +%%% +%%% Note: This is an unofficial style file that may not fully comply +%%% with the OeGA Formatting Instructions in every detail. +%%% Please report any problems to <arne(dot)henningsen(at)gmail(dot)com>. +%%% Further information is available at +%%% http://www.uni-kiel.de/agrarpol/ahenningsen/latex-bibtex.html +%%% +%%% This document class is based on the "scrartcl" class +%%% from the KOMA script bundle. +%%% Following additional packages are required: +%%% amsmath, babel, fancyhdr, geometry, helvet, ifthen, +%%% natbib, setspace, titlesec, url +%%% +%%% The class provides following options: +%%% german - German language (default) +%%% english - English language +%%% nopagenumbers - suppress page numbers +%%% +%%% +%%% The corresponding BibTeX style file "oega.bst" is used +%%% for the bibliography: \bibliographystyle{oega} +%%% +%%% This document class provides following new commands: +%%% \affiliation should be used to add affiliation information + + +\NeedsTeXFormat{LaTeX2e} +\ProvidesClass{oegatb}[2008/08/19 LaTeX class for the OeGA Tagungsband] + +% option for English language +\newif\if@LanguageEnglish +\@LanguageEnglishfalse +\DeclareOption{english}{\@LanguageEnglishtrue} +\DeclareOption{german}{\@LanguageEnglishfalse} + +% option for no page numbers +\newif\if@PageNumbers +\@PageNumberstrue +\DeclareOption{nopagenumbers}{\@PageNumbersfalse} + +% pass any options on to the scrartcl class and load this class with some options +\DeclareOption*{\PassOptionsToClass{\CurrentOption}{scrartcl}} +\ProcessOptions\relax +\LoadClass[10pt,tablecaptionabove]{scrartcl} +% tablecaptionabove = use \captionabove for tables + +% load ifthen package +\RequirePackage{ifthen} + +% Verdana font +\RequirePackage[scaled=1.18]{helvet} +\renewcommand\familydefault{phv} + +% page format, margins +\RequirePackage{geometry} +\geometry{a4paper, tmargin=2.3cm, bmargin=2.5cm, lmargin=2.6cm, + rmargin=2.0cm, headheight=0in, headsep=0in, footskip=1.25cm} + +% language +\if@LanguageEnglish + \RequirePackage[english]{babel} +\else + \RequirePackage[ngerman]{babel} +\fi + +% space between columns +\setlength{\columnsep}{1.25cm} + +% spacing +\RequirePackage{setspace} + +% formatting of main text +\newcommand{\StartTextFormat}{% + \footnotesize% + \begin{spacing}{1.18}% +} +\newcommand{\EndTextFormat}{% + \end{spacing}% +} + +% spacing around (sub)section headers +\RequirePackage{titlesec} +\titlespacing*{\section}{0pt}{1em}{0.25em} +\titlespacing*{\subsection}{0pt}{0.85em}{0.15em} + +% spacing around formulas +\newcommand{\SetFormulaSpacings}{ +\setlength{\abovedisplayshortskip}{6pt} +\setlength{\belowdisplayshortskip}{6pt} +\setlength{\abovedisplayskip}{6pt} +\setlength{\belowdisplayskip}{6pt} +\allowdisplaybreaks +} + +% spacing around captions and floats +\setlength{\abovecaptionskip}{6pt} +\setlength{\belowcaptionskip}{3pt} +\setlength{\floatsep}{0pt} +\setlength{\textfloatsep}{20pt} +\setlength{\intextsep}{5pt} + +% section headers: centering and set font +\titleformat{\section}[block] + {\normalfont\filcenter} + {\arabic{section}. } + {0pt} + {\normalfont\small\scshape} + +% subsection headers: font +\setkomafont{subsection}{\normalfont\footnotesize\itshape} + +% footnote: font +\setkomafont{footnote}{\fontsize{6pt}{8pt}\selectfont} +% no rule between text and footnotes +\renewcommand{\footnoterule}{} + +% URLS: font +\RequirePackage{url} +\def\UrlFont{\sffamily} + +% math +\RequirePackage{amsmath} + +% citations and bibliography +\RequirePackage[authoryear]{natbib} +\setlength{\bibsep}{4pt} +\setlength{\bibhang}{0em} +\bibliographystyle{oega} + +% set footer +\RequirePackage{fancyhdr} +\renewcommand{\headrulewidth}{0pt} +\newcommand{\FormatFooters}{% +\fancyhead{} +\fancyfoot{} +% \fancyfoot[L]{\fontsize{6pt}{8pt}\selectfont{\"O}GA Tagungsband \the\year} +\if@PageNumbers + \fancyfoot[R]{\footnotesize\thepage} +\fi +\pagestyle{fancy} +} + +% captions of figures and tables +\setcapindent{0pt} +\setkomafont{captionlabel}{\normalfont\scriptsize} +\setkomafont{caption}{\normalfont\scriptsize} +\renewcommand{\captionformat}{.\ } + +% section and subsections are not numbered +\setcounter{secnumdepth}{0} + +% titlepage without author and date +\renewcommand{\maketitle}{ +\twocolumn[ + \begin{@twocolumnfalse} + \begin{center} + \vspace*{5mm} + \begin{huge} + \begin{spacing}{1.25} + \@title + \end{spacing} + \end{huge} + \vspace*{6mm} + \@author\\ + \vspace*{4.5mm} + \end{center} + \end{@twocolumnfalse} + ] +\StartTextFormat +} + +% abstract with affiliation +\newcommand{\affiliation}[1]{\newcommand{\@affiliation}{#1}} +\renewenvironment{abstract}{% +\noindent% +\scriptsize% +\bfseries% +\textit{Abstract} -- +}{% +\ifthenelse{ \isundefined\@affiliation }{ +\ClassWarning{oegatb}{no affiliation specified. + Please use command \protect\affiliation}% +}{% +\deffootnote[0pt]{0pt}{1.5em}{}% +\hspace{-1.0em}\footnote{\@affiliation}}% +\deffootnote[0.5em]{0.5em}{1.5em}{\textsuperscript{\thefootnotemark}}% +} + +% avoid clubs and widows +\clubpenalty=10000 +\widowpenalty=10000 +% \displaywidowpenalty=10000 + +% increase stretchability of the spaces (avoid overful hboxes) +\setlength{\emergencystretch}{3em} + +% commands that should be used at the beginning / end of the document +\AtBeginDocument{ +\sffamily +\SetFormulaSpacings +\FormatFooters +} +\AtEndDocument{ +\EndTextFormat +} + +% for compatibility with other classes +\newcommand{\keywords}[1]{\newcommand{\@keywords}{#1}} % ignored +\newcommand{\jelclass}[1]{\newcommand{\@jelclass}{#1}} % ignored + +% for compatibility with erae.cls +\newcommand{\citetPage}[2]{\citeauthor{#2} (\citeyear{#2}, p.~#1)} +\newcommand{\citepPage}[2]{\citetext{\citealp{#2}, p.~#1}} diff --git a/Master/texmf-dist/tex/latex/economic/pocoec.cls b/Master/texmf-dist/tex/latex/economic/pocoec.cls new file mode 100644 index 00000000000..31f392cf9fb --- /dev/null +++ b/Master/texmf-dist/tex/latex/economic/pocoec.cls @@ -0,0 +1,256 @@ +%%% LaTeX class for manuscripts submitted to the +%%% Journal 'Post-Communist Economies' (PoCoEc) +%%% +%%% author: Arne Henningsen +%%% version: 1.1 (16 September 2008) +%%% license: LaTeX Project Public License +%%% +%%% Note: This is an unofficial style file that may not fully comply +%%% with the PoCoEc formatting instructions in every detail. +%%% Please report any problems to <arne.henningsen<at>googlemail<dot>com>. +%%% Further information is available at +%%% http://www.uni-kiel.de/agrarpol/ahenningsen/latex-bibtex.html +%%% +%%% This document class is based on the "scrartcl" class +%%% from the KOMA script bundle. +%%% Following additional packages are required: +%%% amsmath, babel, csquotes, endfloat, endnotes fontenc, geometry +%%% ifthen, inputenc, lmodern, natbib, setspace, stringstrings, textcomp, url +%%% +%%% The class provides the following options: +%%% noendfloat - don't move floats to the end of the paper +%%% nofulltitlepage - suppress "full" title page with author names, +%%% affiliations, and address of corresponding author +%%% noshorttitlepage - suppress "short" title page without information +%%% about authors +%%% showauthor - show author name(s) on "short" title page +%%% (useful in combination with option "nofulltitlepage") +%%% +%%% This class selects the BibTeX style "tandfx.bst". +%%% (Taylor and Francis Reference Style X) +%%% +%%% This class provides 5 new commands: +%%% \affiliation specify affiliation(s) of the authors +%%% \cauthormark mark the corresponding author (by an asterisk) +%%% \cauthoraddress specify address of the corresponding author +%%% \keywords specify some keywords (separated by semicolons) +%%% +%%% +%%% Websites of the journal ``Post-Communist Economies": +%%% +%%% + +\NeedsTeXFormat{LaTeX2e} +\ProvidesClass{pocoec}[2008/09/16 LaTeX class for the journal 'Post-Communist Economies'] + +% package for convenient if-then-else statements +\RequirePackage{ifthen} + +% option to NOT place floats at the end +\newif\if@useendfloat +\@useendfloattrue +\DeclareOption{noendfloat}{\@useendfloatfalse} + +% option to suppress the full title page with author names +\newif\if@makefulltitlepage +\@makefulltitlepagetrue +\DeclareOption{nofulltitlepage}{\@makefulltitlepagefalse} + +% option to suppress the short title page without author names +\newif\if@makeshorttitlepage +\@makeshorttitlepagetrue +\DeclareOption{noshorttitlepage}{\@makeshorttitlepagefalse} + +% option to show author name(s) +\newif\if@showauthor +\@showauthorfalse +\DeclareOption{showauthor}{\@showauthortrue} + + +% pass any options on to the scrartcl class and load this class with some options +\DeclareOption*{\PassOptionsToClass{\CurrentOption}{scrartcl}} +\ProcessOptions\relax +\LoadClass[12pt,english,pointednumbers,tablecaptionabove]{scrartcl} +% pointednumbers = add final dot after ordinary section numbers +% tablecaptionabove = use \captionabove for tables + +% fontencoding + text companion fonts +\RequirePackage[T1]{fontenc} +\RequirePackage{textcomp} + +% page format, margins +\RequirePackage{geometry} +\geometry{a4paper, tmargin=2.5cm, bmargin=2.8cm, lmargin=2.8cm, + rmargin=2.8cm, headheight=0cm, headsep=0cm, footskip=1.2cm } + +% double spacing +\RequirePackage{setspace} +\doublespacing + +% spacing around formulas +\AtBeginDocument{ +\setlength{\abovedisplayshortskip}{6pt} +\setlength{\belowdisplayshortskip}{6pt} +\setlength{\abovedisplayskip}{6pt} +\setlength{\belowdisplayskip}{6pt} +\allowdisplaybreaks +} + +% spacing around captions and floats +\setlength{\abovecaptionskip}{6pt} +\setlength{\belowcaptionskip}{3pt} +\setlength{\floatsep}{0pt} +\setlength{\textfloatsep}{20pt} +\setlength{\intextsep}{6mm} + +% font families: times/helvetica/courier +\RequirePackage{mathptmx} +\RequirePackage[scaled=.90]{helvet} +\RequirePackage{courier} + +% section headers +\setkomafont{section}{\rmfamily\bfseries} +\setkomafont{subsection}{\rmfamily\bfseries\itshape} +\setkomafont{subsubsection}{\rmfamily\itshape} +\setkomafont{paragraph}{\rmfamily\itshape} +\setcounter{secnumdepth}{0} + +% amsmath +\RequirePackage{amsmath} +% for compatibility with ajae.cls +\newcommand{\veclatin}[1]{#1} +\newcommand{\matlatin}[1]{#1} +\newcommand{\vecgreek}[1]{#1} +\newcommand{\matgreek}[1]{#1} + +% font for URLs +\RequirePackage{url} +\def\UrlFont{\rmfamily} + +% citations and bibliography +\RequirePackage[authoryear]{natbib} +\setlength{\bibsep}{0pt} +\bibliographystyle{tandfx} + +% captions of figures and tables +\setcapwidth[l]{\textwidth} +\setcapindent{0pt} +\setkomafont{captionlabel}{\normalsize\normalfont\bfseries} +\setkomafont{caption}{\normalsize\normalfont\bfseries} +\renewcommand{\captionformat}{.\ } + +% titlepage(s) +\newcommand{\affiliation}[1]{\newcommand{\@affiliation}{#1}} +\newcommand{\affilmark}[1]{\textsuperscript{\normalfont{#1}}} +\newcommand{\email}[1]{\newcommand{\@email}{#1}} +\newif\if@cauthormarkused +\@cauthormarkusedfalse +\newcommand{\cauthormark}{\textsuperscript{*}\@cauthormarkusedtrue} +\RequirePackage{stringstrings} +\renewcommand{\maketitle}{ + \if@makefulltitlepage + \setcounter{page}{0} + \thispagestyle{empty} + \vspace*{12mm} + \begin{spacing}{1.5}\noindent + \large{\textbf{\@title}}% + \end{spacing} + \vspace*{6mm} + \ifthenelse{ \isundefined\@author }{ + \ClassWarning{pocoec}{No author(s) specified. + Please specify with command \protect\author} + }{ + } + \noindent + \@author\\ + \if@cauthormarkused + \else + \ClassWarningNoLine{pocoec}{No author has been indicated as + corresponding author. + Please specify with command \protect\cauthormark} + \fi + \vspace*{6mm} + \begin{spacing}{1.1} + \ifthenelse{ \isundefined\@affiliation }{ + \ClassWarning{pocoec}{No affiliation(s) specified. + Please specify with command \protect\affiliation} + }{ + \noindent + \textit{\@affiliation}\\ + } + \vfill + \ifthenelse{ \isundefined\@email }{ + \ClassWarningNoLine{pocoec}{No email address of the corresponding author + is specified. Please specify with command \protect\email} + }{ + \noindent + \rule{0.3\textwidth}{0.1mm}\\ + \vspace*{2mm}\noindent + \cauthormark% + \findwords[q]{\@author}{~and~}% + \ifthenelse{ \equal{\theresult}{0} }{}{% + Corresponding author. + }% + Email: \url{\@email}\\ + } + \end{spacing} + \vspace*{5mm} + \clearpage + \fi + \if@makeshorttitlepage + \begin{spacing}{1.5}\noindent + \large{\textbf{\@title}} + \if@showauthor + \renewcommand{\cauthormark}{} + \findwords[q]{\@author}{~and~}% + \ifthenelse{ \equal{\theresult}{0} }{% + \renewcommand{\affilmark}[1]{}}{}% + \vspace*{3mm}\\ + \@author + \vspace*{1mm}\\ + \textit{\small \@affiliation} + \fi + \end{spacing} + \vspace*{4mm} + \fi +} + +% abstract, keywords +\newcommand{\keywords}[1]{\newcommand{\@keywords}{#1}} +\newcommand{\jelclass}[1]{\newcommand{\@jelclass}{#1}} +\renewenvironment{abstract}{% + \vspace*{5mm} + \noindent + \textbf{Abstract}\\ + \noindent +}{% + \ifthenelse{ \isundefined\@keywords }{ + \ClassWarningNoLine{pocoec}{No keywords specified. + Please use the command \protect\keywords} + }{ + \vspace*{5mm}\\ \noindent + \textbf{Keywords:} \@keywords% + } + \vspace*{5mm} + \clearpage +} + +% use babel package and set language to british english +\RequirePackage[english,british]{babel} + +% avoid clubs and widows +\clubpenalty=10000 +\widowpenalty=10000 +% \displaywidowpenalty=10000 + +% increase stretchability of the spaces (avoid overful hboxes) +\setlength{\emergencystretch}{3em} + +% move floats to the end of the paper +\if@useendfloat + \RequirePackage[nolists,tablesfirst]{endfloat} +\fi + +% for compatibility with erae.cls +\newcommand{\citetPage}[2]{\citeauthor{#2} (\citeyear{#2}, p.~#1)} +\newcommand{\citepPage}[2]{\citetext{\citealp{#2}, p.~#1}} diff --git a/Master/texmf-dist/tex/latex/economic/regstud.cls b/Master/texmf-dist/tex/latex/economic/regstud.cls new file mode 100644 index 00000000000..b7e156796d0 --- /dev/null +++ b/Master/texmf-dist/tex/latex/economic/regstud.cls @@ -0,0 +1,276 @@ +%%% LaTeX class for manuscripts submitted to the +%%% Journal "Regional Studies" (regstud) +%%% +%%% author: Arne Henningsen +%%% version: 1.0 (14 January 2008) +%%% license: LaTeX Project Public License +%%% +%%% Note: This is an unofficial style file that may not fully comply +%%% with the Formatting Instructions of the "Regional Studies" in every detail. +%%% Please report any problems to +%%% ahenningsen <at> email <dot> uni-kiel <dot> de. +%%% Further information is available at +%%% http://www.uni-kiel.de/agrarpol/ahenningsen/latex-bibtex.html +%%% +%%% This document class is based on the "scrartcl" class +%%% from the KOMA script bundle. +%%% Following additional packages are required: +%%% amsmath, babel, csquotes, endfloat, endnotes, fontnec, geometry, +%%% ifthen, inputenc, natbib, setspace, soul, titlesec, url, verbatim +%%% +%%% The corresponding BibTeX style file "regstud.bst" should be used +%%% for the bibliography: \bibliographystyle{regstud} +%%% +%%% The document class provides following options: +%%% noendfloat - don't move floats to the end of the paper +%%% hidefloats - hide all floats (figures and tables) +%%% author - show name(s) of authors(s) +%%% date - show date +%%% +%%% This document class provides 3 new commands: +%%% \keywords can be used to show keywors below the abstract +%%% \jelclass can be used to show JEL classifications below the abstract +%%% \affiliation can be used spefify the affiliation(s) of the author(s) +%%% +%%% If you use footnotes, add following line before the reference section: +%%% \listofendnotes +%%% +%%% To prepare a manuscript without floats, you can use +%%% either option "hidefloats" to hide all floats +%%% or extract the pages that do not include the floats +%%% with "pdftk", e.g. "pdftk all.pdf cat 1-14 output main.pdf" +%%% The former has the drawback that references to the hidden floats +%%% with \ref{} are no longer possible. +%%% The figures and tables can be extracted as images, e.g. with kpdf. +%%% +%%% Website of the "Regional Studies": +%%% http://www.tandf.co.uk/journals/titles/00343404.asp + + +\NeedsTeXFormat{LaTeX2e} +\ProvidesClass{regstud}[2008/01/14 LaTeX class for the Journal 'Regional Studies'] + +% option to NOT place floats at the end +\newif\if@UseEndfloat +\@UseEndfloattrue +\DeclareOption{noendfloat}{\@UseEndfloatfalse} + +% option to hide floats +\newif\if@HideFloats +\@HideFloatsfalse +\DeclareOption{hidefloats}{\@HideFloatstrue \@UseEndfloatfalse} + +% option to show the authors' names +\newif\if@ShowAuthor +\@ShowAuthorfalse +\DeclareOption{author}{\@ShowAuthortrue} + +% option to print the date +\newif\if@ShowDate +\@ShowDatefalse +\DeclareOption{date}{\@ShowDatetrue} + +% pass any options on to the scrartcl class and load this class with some options +\DeclareOption*{\PassOptionsToClass{\CurrentOption}{scrartcl}} +\ProcessOptions\relax +\LoadClass[12pt,english,tablecaptionabove, + noonelinecaption]{scrartcl} +% pointlessnumbers = do not add final dot after ordinary section numbers +% tablecaptionabove = use \captionabove for tables +% noonelinecaption = do not treat one-line captions differently + +% for internal use +\RequirePackage{ifthen} + +% use "T1" TeX encoding scheme, which contains accented (European) letters, +% to make European hyphenations work +\RequirePackage[T1]{fontenc} + +% use the ISO 8859-1 (Latin-1) standard for the character encoding +\RequirePackage[latin1]{inputenc} + +% use babel package and set language to english +\RequirePackage[english]{babel} + +% page format, margins +\RequirePackage{geometry} +\geometry{a4paper, tmargin=2.5cm, bmargin=2.8cm, lmargin=2.5cm, + rmargin=2.5cm, headheight=0cm, headsep=0cm, footskip=1.2cm } + +% double spacing +\RequirePackage{setspace} +\doublespacing + +% spacing around formulas +\AtBeginDocument{ +\setlength{\abovedisplayshortskip}{6pt} +\setlength{\belowdisplayshortskip}{6pt} +\setlength{\abovedisplayskip}{6pt} +\setlength{\belowdisplayskip}{6pt} +\allowdisplaybreaks +} + +% spacing around captions and floats +\setlength{\abovecaptionskip}{6pt} +\setlength{\belowcaptionskip}{3pt} +\setlength{\floatsep}{0pt} +\setlength{\textfloatsep}{20pt} +\setlength{\intextsep}{15pt} + +% font: latin modern +\RequirePackage{lmodern} + +% amsmath +\RequirePackage{amsmath} +% for compatibility with ajae.cls +\newcommand{\veclatin}[1]{#1} +\newcommand{\matlatin}[1]{#1} +\newcommand{\vecgreek}[1]{#1} +\newcommand{\matgreek}[1]{#1} + +% font for URLs +\RequirePackage{url} +\def\UrlFont{\rmfamily} + +%% formatting section headers +\RequirePackage{titlesec} +% package for letterspacing +\RequirePackage{soul} +% format of section headers +\newcommand{\secformat}[1]{\MakeUppercase{\so{#1}}} +\titleformat{\section}[block] + {\normalfont\filcenter} + {} + {0pt} + {\secformat} +% spacing around section headers +\titlespacing*{\section}{0pt}{3ex}{0.3ex} +% format of subsection headers +\titleformat{\subsection}[block] + {\normalsize\itshape} + {} + {0pt} + {} +% spacing around subsection headers +\titlespacing*{\subsection}{0pt}{2ex}{0.15ex} + +%% warning if subsubsection headers are present +\renewcommand{\subsubsection}[1]{% +\ClassWarningNoLine{regstud}{subsubsections are ignored}% +} + +% citations and bibliography +\RequirePackage[authoryear]{natbib} +\AtBeginDocument{\renewcommand{\refname}{References}} +\setlength{\bibsep}{0pt} + +%% use endnotes in place of footnotes +\RequirePackage{endnotes} +\renewcommand{\notesname}{Notes} +\let\footnote=\endnote +\newcommand{\listofendnotes}{ + \begingroup + \parindent 0pt + \parskip 0ex + \def\enotesize{\normalsize} + \theendnotes + \endgroup +} +% use normalsize numbers (copied from endnote.sty and modified thereafter) +\def\enoteformat{\rightskip\z@ \leftskip\z@ \parindent=0em + \leavevmode\llap{\theenmark. }} + + +% captions of figures and tables +\setcapwidth[c]{\textwidth} +\setkomafont{captionlabel}{\centering \itshape} +\setkomafont{caption}{\centering \itshape} +\renewcommand{\captionformat}{.\, } +\addto\captionsenglish{% + \renewcommand{\figurename}{Fig.}% +} + +% move floats to the end of the paper +\if@UseEndfloat + \RequirePackage[noheads,nolists,tablesfirst,nomarkers]{endfloat} + \AtBeginDelayedFloats{\pagestyle{empty}} +\fi + +% hide floats +\if@HideFloats + \RequirePackage{verbatim} + \let\figure=\comment + \let\endfigure=\endcomment + \let\table=\comment + \let\endtable=\endcomment +\fi + +% titlepage with title, author, affiliation and date +\newcommand{\affiliation}[1]{\newcommand{\@affiliation}{#1}} +\renewcommand{\and}{{\normalfont and}} +\renewcommand{\maketitle}{ + \begin{center} + \begin{Large} + \begin{spacing}{1.25} + \textbf{\@title} + \end{spacing} + \end{Large} + \vspace*{5mm} + \if@ShowAuthor + \MakeUppercase{\so{\@author}}\\ + \ifthenelse{ \isundefined\@affiliation }{}{ + \textit{\@affiliation}\\ + } + \vspace*{3mm} + \fi + \if@ShowDate + \@date\\ + \vspace*{3mm} + \fi + \vspace*{2mm} + \end{center} +} + + +% abstract, keywords, JEL classification +\newcommand{\keywords}[1]{\newcommand{\@keywords}{#1}} +\newcommand{\jelclass}[1]{\newcommand{\@jelclass}{#1}} +\renewenvironment{abstract}{% +\vspace*{-\baselineskip} +\mbox{}\\\noindent% +}{% +\ifthenelse{ \isundefined\@keywords }{ +\ClassWarningNoLine{ajae}{No keywords specified. + Please use the command \protect\keywords} +}{ + +\medskip \noindent +Key words: \@keywords +} +\ifthenelse{ \isundefined\@jelclass }{ +\ClassWarningNoLine{ajae}{No JEL classification specified. + Please use the command \protect\jelclass} +}{ + +\medskip \noindent +JEL classification: \@jelclass +} + +\medskip +} + +% avoid clubs and widows +\clubpenalty=10000 +\widowpenalty=10000 +% \displaywidowpenalty=10000 + +% increase stretchability of the spaces (avoid overful hboxes) +\setlength{\emergencystretch}{3em} + +% use single quotes +\RequirePackage{csquotes} +\MakeInnerQuote{°} + +% for compatibility with erae.cls +\newcommand{\citetPage}[2]{\citeauthor{#2} (\citeyear{#2}, p.~#1)} +\newcommand{\citepPage}[2]{\citetext{\citealp{#2}, p.~#1}} diff --git a/Master/texmf-dist/tex/latex/economic/worlddev.cls b/Master/texmf-dist/tex/latex/economic/worlddev.cls new file mode 100644 index 00000000000..8bc7757fea5 --- /dev/null +++ b/Master/texmf-dist/tex/latex/economic/worlddev.cls @@ -0,0 +1,245 @@ +%%% LaTeX class for manuscripts submitted to the +%%% Journal "World Development" (worlddev) +%%% +%%% author: Arne Henningsen +%%% version: 1.0 (05 March 2008) +%%% license: LaTeX Project Public License +%%% +%%% Note: This is an unofficial style file that may not fully comply +%%% with the Formatting Instructions of the "World Development" in every detail. +%%% Please report any problems to +%%% ahenningsen <at> email <dot> uni-kiel <dot> de. +%%% Further information is available at +%%% http://www.uni-kiel.de/agrarpol/ahenningsen/latex-bibtex.html +%%% +%%% This document class is based on the "scrartcl" class +%%% from the KOMA script bundle. +%%% Following additional packages are required: +%%% amsmath, babel, csquotes, endfloat, endnotes, fontenc, geometry, +%%% ifthen, lmodern, natbib, setspace, textcomp, titlesec, url +%%% +%%% The class provides following options: +%%% noendnotes - don't use endnotes (use footnotes) +%%% noendfloat - don't move floats to the end of the paper +%%% author - show name(s) of authors(s) +%%% date - show date +%%% +%%% This document class provides 3 new commands: +%%% \keywords can be used to show keywors below the abstract +%%% \jelclass can be used to show JEL classifications below the abstract +%%% \affiliation can be used spefify the affiliation(s) of the author(s) +%%% +%%% If you use footnotes, add following line before the reference section: +%%% \listofendnotes +%%% +%%% Website of the journal "World Development": +%%% http://www.elsevier.com/wps/locate/worlddev/ + + +\NeedsTeXFormat{LaTeX2e} +\ProvidesClass{worlddev}[2007/05/08 LaTeX class for the Journal 'World Development'] + +\RequirePackage{ifthen} + +% use "T1" TeX encoding scheme +\RequirePackage[T1]{fontenc} + +% option NOT to place floats at the end +\newcounter{UseEndfloat} +\setcounter{UseEndfloat}{1} +\DeclareOption{noendfloat}{\setcounter{UseEndfloat}{0}} + +% option to use footnotes in place of endnotes +\newcounter{UseEndnotes} +\setcounter{UseEndnotes}{1} +\DeclareOption{noendnotes}{\setcounter{UseEndnotes}{0}} + +% option to show the authors' names +\newcounter{ShowAuthor} +\setcounter{ShowAuthor}{0} +\DeclareOption{author}{\setcounter{ShowAuthor}{1}} + +% option to print the date +\newcounter{ShowDate} +\setcounter{ShowDate}{0} +\DeclareOption{date}{\setcounter{ShowDate}{1}} + +% pass any options on to the scrartcl class and load this class with some options +\DeclareOption*{\PassOptionsToClass{\CurrentOption}{scrartcl}} +\ProcessOptions\relax +\LoadClass[12pt,english,pointlessnumbers,tablecaptionabove, + noonelinecaption]{scrartcl} +% pointlessnumbers = do not add final dot after ordinary section numbers +% tablecaptionabove = use \captionabove for tables +% noonelinecaption = do not treat one-line captions differently + +% use babel package and set language to english +\RequirePackage[english]{babel} + +% page format, margins +\RequirePackage{geometry} +\geometry{a4paper, tmargin=2.5cm, bmargin=2.8cm, lmargin=2.5cm, + rmargin=2.5cm, headheight=0cm, headsep=0cm, footskip=1.2cm } + +% double spacing +\RequirePackage{setspace} +\doublespacing + +% spacing around formulas +\AtBeginDocument{ +\setlength{\abovedisplayshortskip}{6pt} +\setlength{\belowdisplayshortskip}{6pt} +\setlength{\abovedisplayskip}{6pt} +\setlength{\belowdisplayskip}{6pt} +\allowdisplaybreaks +} + +% spacing around captions and floats +\setlength{\abovecaptionskip}{6pt} +\setlength{\belowcaptionskip}{3pt} +\setlength{\floatsep}{0pt} +\setlength{\textfloatsep}{20pt} +\setlength{\intextsep}{15pt} + +% font family: Latin Modern +\RequirePackage{textcomp} +\RequirePackage{lmodern} + +% amsmath +\RequirePackage[fleqn]{amsmath} +% for compatibility with ajae.cls +\newcommand{\veclatin}[1]{#1} +\newcommand{\matlatin}[1]{#1} +\newcommand{\vecgreek}[1]{#1} +\newcommand{\matgreek}[1]{#1} + +% font for URLs +\RequirePackage{url} +\def\UrlFont{\rmfamily} + +%% formatting section and subsection headers +\RequirePackage{titlesec} +% format of section headers +\newcommand{\secformat}[1]{\MakeUppercase{#1}} +\titleformat{\section}[block] + {\normalfont\filcenter} + {\arabic{section}. } + {0pt} + {\secformat} +% spacing around section headers +\titlespacing*{\section}{0pt}{3ex}{0.3ex} +% format of subsection headers +\titleformat{\subsection}[block] + {\normalsize\filcenter} + {(\alph{subsection}) } + {0pt} + {\textit} +% spacing around subsection headers +\titlespacing*{\subsection}{0pt}{2ex}{0.15ex} + +%% warning if subsubsection headers are present +\renewcommand{\subsubsection}[1]{% +\ClassWarning{worlddev}{subsubsections are ignored}% +} + +% citations and bibliography +\RequirePackage[authoryear]{natbib} +\setlength{\bibsep}{0pt} + +%% use endnotes in place of footnotes +\ifthenelse{\equal{\theUseEndnotes}{1}}{ + \RequirePackage{endnotes} + \let\footnote=\endnote + \newcommand{\listofendnotes}{ + \begingroup + \parindent 0pt + \parskip 0ex + \def\enotesize{\normalsize} + \theendnotes + \endgroup + } + % use normalsize numbers (copied from endnote.sty and modified thereafter) + \def\enoteformat{\rightskip\z@ \leftskip\z@ \parindent=0em + \leavevmode\llap{\theenmark. }} +}{} + +% captions of figures and tables +\setcapwidth[c]{\textwidth} +\setkomafont{caption}{\centering \itshape} +\renewcommand{\captionformat}{. } + +% move floats to the end of the paper +\ifthenelse{\equal{\theUseEndfloat}{1}}{ + \RequirePackage[nolists,tablesfirst]{endfloat} +}{} + +% titlepage with title, author, affiliation and date +\newcommand{\affiliation}[1]{\newcommand{\@affiliation}{#1}} +\renewcommand{\and}{{\normalfont and}} +\renewcommand{\maketitle}{ + \begin{center} + \begin{Large} + \begin{spacing}{1.25} + \textbf{\@title} + \end{spacing} + \end{Large} + \vspace*{5mm} + \ifthenelse{\equal{\theShowAuthor}{1}}{ + \MakeUppercase{\@author}\\ + \ifthenelse{ \isundefined\@affiliation }{}{ + \vspace*{3mm} + \textit{\@affiliation}\\ + } + }{} + \vspace*{3mm} + \ifthenelse{\equal{\theShowDate}{1}}{ + \@date\\ + }{} + \vspace*{3mm} + \end{center} +} + + +% abstract, keywords, JEL classification +\newcommand{\keywords}[1]{\newcommand{\@keywords}{#1}} +\newcommand{\jelclass}[1]{\newcommand{\@jelclass}{#1}} +\renewenvironment{abstract}{% +\begin{center} +\begin{minipage}{0.94 \textwidth} +\small +\textbf{Summary.}\;---% +}{% +\ifthenelse{ \isundefined\@keywords }{ +\ClassWarningNoLine{worlddev}{No keywords specified. + Please use the command \protect\keywords} +}{ + +\medskip \noindent +\textit{Key words} --- \@keywords +} +\ifthenelse{ \isundefined\@jelclass }{ +}{ + +\medskip \noindent +\textit{JEL classification} --- \@jelclass +} +\end{minipage} +\end{center}% +\noindent% +} + +% avoid clubs and widows +\clubpenalty=10000 +\widowpenalty=10000 +% \displaywidowpenalty=10000 + +% increase stretchability of the spaces (avoid overful hboxes) +\setlength{\emergencystretch}{3em} + +% use double quotes +\RequirePackage{csquotes} +\MakeOuterQuote{°} + +% for compatibility with erae.cls +\newcommand{\citetPage}[2]{\citeauthor{#2} (\citeyear{#2}, p.~#1)} +\newcommand{\citepPage}[2]{\citetext{\citealp{#2}, p.~#1}} |