diff options
author | Karl Berry <karl@freefriends.org> | 2007-01-21 23:27:31 +0000 |
---|---|---|
committer | Karl Berry <karl@freefriends.org> | 2007-01-21 23:27:31 +0000 |
commit | 078b76db0d6bf076c889286b57c225afbf7d9399 (patch) | |
tree | 0c53496091aeee46673ef82502df13926763cbf6 /Master/texmf-dist/bibtex/bst | |
parent | 9bd765c69eaf7e0e0f8448688a6b76aaace13371 (diff) |
remove economic, as harvard.sty conflicts
git-svn-id: svn://tug.org/texlive/trunk@3671 c570f23f-e606-0410-a88d-b1316a301751
Diffstat (limited to 'Master/texmf-dist/bibtex/bst')
-rw-r--r-- | Master/texmf-dist/bibtex/bst/economic/aer.bst | 1221 | ||||
-rw-r--r-- | Master/texmf-dist/bibtex/bst/economic/aertt.bst | 1221 | ||||
-rw-r--r-- | Master/texmf-dist/bibtex/bst/economic/agsm.bst | 1305 | ||||
-rw-r--r-- | Master/texmf-dist/bibtex/bst/economic/ajae.bst | 1662 | ||||
-rw-r--r-- | Master/texmf-dist/bibtex/bst/economic/cje.bst | 1192 | ||||
-rw-r--r-- | Master/texmf-dist/bibtex/bst/economic/econometrica-fr.bst | 1241 | ||||
-rw-r--r-- | Master/texmf-dist/bibtex/bst/economic/econometrica.bst | 1292 | ||||
-rw-r--r-- | Master/texmf-dist/bibtex/bst/economic/ecta.bst | 1503 | ||||
-rw-r--r-- | Master/texmf-dist/bibtex/bst/economic/erae.bst | 1488 | ||||
-rw-r--r-- | Master/texmf-dist/bibtex/bst/economic/ier.bst | 1497 |
10 files changed, 0 insertions, 13622 deletions
diff --git a/Master/texmf-dist/bibtex/bst/economic/aer.bst b/Master/texmf-dist/bibtex/bst/economic/aer.bst deleted file mode 100644 index c267db6d54f..00000000000 --- a/Master/texmf-dist/bibtex/bst/economic/aer.bst +++ /dev/null @@ -1,1221 +0,0 @@ -% BibTeX bibliography style `aer' (American Economic Review) -% this file is based on the `harvard' family of files - % version 0.99a for BibTeX versions 0.99a or later, LaTeX version 2.09. - % Copyright (C) 1991, all rights reserved. - % Copying of this file is authorized only if either - % (1) you make absolutely no changes to your copy, including name, or - % (2) if you do make changes, you name it something other than - % btxbst.doc, plain.bst, unsrt.bst, alpha.bst, abbrv.bst, agsm.bst, - % dcu.bst, cje.bst, aer.bst, or kluwer.bst. - % This restriction helps ensure that all standard styles are identical. - -% ACKNOWLEDGEMENT: -% This document is a modified version of alpha.bst to which it owes much of -% its functionality. - -% AUTHOR -% Peter Williams, Key Centre for Design Quality, Sydney University -% e-mail: peterw@archsci.arch.su.oz.au - -ENTRY - { address author booktitle chapter edition editor howpublished institution - journal key month note number organization pages publisher school - series title type volume year} - { field.used } - { label.touse extra.label sort.label list.year } - - -FUNCTION {not} -{ { #0 } - { #1 } - if$ -} - -FUNCTION {and} -{ {} - { pop$ #0 } - if$ -} - -FUNCTION {or} -{ { pop$ #1 } - {} - if$ -} - -INTEGERS {quoted italic bold plain attribute - space comma tiedcomma semicolon colon period block empty separator - prev.separator next.separator next.attribute} - -STRINGS { s temp f name.list first.name.format later.name.formats name.style} - -FUNCTION {init.state.consts} -{ - #100 'quoted := - #200 'italic := - #300 'bold := - #400 'plain := - - #7 'space := - #6 'comma := -% #5 'tiedcomma := -% #4 'semicolon := - #3 'colon := - #2 'period := - #1 'block := - #0 'empty := -} - -FUNCTION {output2} -{ -% Wrap the attribute. - attribute bold = {"{\bf " swap$ * "}" *} {} if$ - attribute italic = {"{\it " swap$ * "}" *} {} if$ - attribute quoted = {"``" swap$ * "''" *} {} if$ -% Append additional separators - separator comma = {"," * space 'separator :=} {} if$ -% separator tiedcomma = {",~" * empty 'separator :=} {} if$ - separator space = {" " *} {} if$ - write$ - separator block = {newline$ "\newblock " write$} {} if$ -% Update variables, and put the new string back on the stack - next.attribute 'attribute := - next.separator 'separator := - temp -} - -% <string> <separator> <string> <attribute> <final separator> output <string> -FUNCTION {output.nonnull} -{ 'next.separator := - 'next.attribute := - 'temp := - 'prev.separator := -% If the new separator is stronger than the previous one, use it. - prev.separator separator < {prev.separator 'separator :=} {} if$ -% Append most separators to the string. - separator block = {add.period$} {} if$ - separator period = {add.period$ space 'separator :=} {} if$ -% separator semicolon = {";" * space 'separator :=} {} if$ - separator colon = {":" * space 'separator :=} {} if$ - separator comma = attribute quoted = and - {"," * space 'separator :=} {} if$ - output2 -} - -FUNCTION {output} -{ 'next.separator := - 'next.attribute := - duplicate$ empty$ - {pop$ pop$} - {next.attribute next.separator output.nonnull} - if$ -} - -FUNCTION {output.check} -{ 's := - 'next.separator := - 'next.attribute := - duplicate$ empty$ - {pop$ pop$ "empty " s * " in " * cite$ * warning$ } - {next.attribute next.separator output.nonnull} - if$ -} - -FUNCTION {item.check} -{ 'temp := - empty$ - { "empty " temp * " in " * cite$ * warning$ } - {} - if$ -} - -FUNCTION {plain.space} { plain space } - -FUNCTION {plain.space.output} { plain.space output } - -FUNCTION {plain.comma} { plain comma } - -FUNCTION {fin.entry} -{ - block note plain.space.output - period "" plain empty output.nonnull pop$ - newline$ -} - -FUNCTION {field.or.null} -{ duplicate$ empty$ - { pop$ "" } - {} - if$ -} - -FUNCTION {emphasize} -{ duplicate$ empty$ - { pop$ "" } - { "{\em " swap$ * "}" * } - if$ -} - -FUNCTION {quote} -{ duplicate$ empty$ - { pop$ "" } - { add.period$ "`" swap$ * "'" * } - if$ -} - - -% <prev name list> <new name list> compare.names <modified name list> -INTEGERS {len1 len2 i} -FUNCTION {compare.names} -{ 's := - 'temp := - temp num.names$ 'len1 := - s num.names$ 'len2 := -% len1 := min(len1,len2) - len1 len2 > {len2 'len1 :=} {} if$ -% start with an empty string, then while the components are the same -% add "\bysame" - "" - #1 'i := - {i len1 > not} - { temp i "{ff }{vv }{ll}{ jj}" format.name$ -% duplicate$ i int.to.str$ * warning$ - s i "{ff }{vv }{ll}{ jj}" format.name$ -% duplicate$ i int.to.str$ * warning$ - = - { #1 i < {" and " *} {} if$ - "\bysame{}" * i #1 + 'i :=} - {#-1 'len1 :=} - if$ - } - while$ -% add the rest of the second string - {i len2 > not} - { #1 i < {" and " *} {} if$ - s i "{ff }{vv }{ll}{ jj}" format.name$ * - i #1 + 'i := - } - while$ -% duplicate$ warning$ -} - -INTEGERS { nameptr namesleft numnames } - -FUNCTION {format.names} -{ 'name.list := - 'name.style := - 'later.name.formats := - 's := % binary separator - 'first.name.format := - #1 'nameptr := - name.list num.names$ 'numnames := -% If we're to make this entry bold or something, prepend to the string of names - name.style "" = {} {"{" name.style *} if$ - numnames 'namesleft := - { namesleft #0 > } - { name.list nameptr nameptr #1 = {first.name.format} {later.name.formats} if$ - format.name$ 'temp := - nameptr #1 > - { namesleft #1 > - { ", " * temp * } - { temp "others" = - { " et~al." * } - {nameptr #2 = % handle ", and" vs " and " - {s * temp *} - {", and " * temp * } - if$ - } - if$ - } - if$ - } - 'temp - if$ - nameptr #1 + 'nameptr := - namesleft #1 - 'namesleft := - } - while$ -% If we're to make this entry bold or something, append to the string of names - name.style "" = {} {"}" * *} if$ -} - -FUNCTION {format.authors} -{ 'temp := - "{vv~}{ll}{, jj}{, ff}" " and " "{ff~}{vv~}{ll}{, jj}" "" temp - format.names -} - -FUNCTION {format.editors} -{ 'temp := - "{vv~}{ll}{, jj}{, ff}" " and " "{ff~}{vv~}{ll}{, jj}" "" - temp format.names - editor num.names$ #1 > - { ", eds" * } - { ", ed." * } - if$ -} - -FUNCTION {format.editors.notkey} -{ editor empty$ - { "" } - { "{ff~}{vv~}{ll}{, jj}" " and " "{ff~}{vv~}{ll}{, jj}" "" - editor format.names - editor num.names$ #1 > {", eds."} {", ed."} if$ - * - } - if$ -} - -FUNCTION {format.title} -{ space title quoted comma } - -FUNCTION {n.dashify} -{ 'temp := - "" - { temp empty$ not } - { temp #1 #1 substring$ "-" = - { temp #1 #2 substring$ "--" = not - { "--" * - temp #2 global.max$ substring$ 'temp := - } - { { temp #1 #1 substring$ "-" = } - { "-" * - temp #2 global.max$ substring$ 'temp := - } - while$ - } - if$ - } - { temp #1 #1 substring$ * - temp #2 global.max$ substring$ 'temp := - } - if$ - } - while$ -} - -FUNCTION {format.btitle} -{ title emphasize -} - -FUNCTION {tie.or.space.connect} -{ duplicate$ text.length$ #3 < - { "~" } - { " " } - if$ - swap$ * * -} - -FUNCTION {either.or.check} -{ empty$ - 'pop$ - { "can't use both " swap$ * " fields in " * cite$ * warning$ } - if$ -} - -FUNCTION {format.bvolume} -{ volume empty$ - { "" } - { "Vol." volume tie.or.space.connect - series empty$ - {} - { " of " * series emphasize * } - if$ - "volume and number" number either.or.check - } - if$ -} - -FUNCTION {format.bvolume.output} - {comma format.bvolume plain.space.output} - -FUNCTION {mid.sentence.q} -{ - separator empty = separator block = separator period = or or not -} - -FUNCTION {format.number.series} -{ volume empty$ - { number empty$ - {series field.or.null} - { mid.sentence.q - { "number" } - { "Number" } - if$ - number tie.or.space.connect - series empty$ - { "there's a number but no series in " cite$ * warning$ } - { add.period$ " In " * series quote * } - if$ - } - if$ - } - { "" } - if$ -} - -FUNCTION {format.edition.output} -{ edition empty$ - { } - { comma edition - mid.sentence.q { "l" } { "t" } if$ - change.case$ " ed." * - plain.space.output - } - if$ -} - -FUNCTION {format.publisher.address} -{ - address empty$ - {comma publisher plain.comma output} - {publisher empty$ - {} - {comma address plain colon output - colon publisher plain.comma output} - if$} - if$ -} - -INTEGERS { multiresult } - -FUNCTION {multi.page.check} -{ 'temp := - #0 'multiresult := - { multiresult not - temp empty$ not - and - } - { temp #1 #1 substring$ - duplicate$ "-" = - swap$ duplicate$ "," = - swap$ "+" = - or or - { #1 'multiresult := } - { temp #2 global.max$ substring$ 'temp := } - if$ - } - while$ - multiresult -} - -FUNCTION {format.pages} -{ pages empty$ - { "" } - { pages multi.page.check - { "pp.~" pages n.dashify * } - { "p.~" pages * } - if$ - } - if$ -} - -FUNCTION {output.month.year} - { - space month plain.space.output - space year plain.comma "year" output.check - } - -FUNCTION {output.vol.num.pages} -{ space volume italic space output - number empty$ - {} - { space "(" number * ")" * plain.comma output.nonnull - volume empty$ - { "there's a number but no volume in " cite$ * warning$ } - {} - if$ - } - if$ -% "*** a" warning$ - comma 'next.separator := % hack - pages empty$ - {} - { number empty$ volume empty$ and - { comma format.pages plain.space.output } - { comma pages n.dashify plain.space.output } - if$ - } - if$ -} - -FUNCTION {format.chapter.pages} -{ chapter empty$ - 'format.pages - { type empty$ - { "chapter" } - { type "l" change.case$ } - if$ - chapter tie.or.space.connect - pages empty$ - {} - { ", " * format.pages * } - if$ - } - if$ -} - -FUNCTION {output.in.ed.booktitle} -{ booktitle "booktitle" item.check - comma "in" plain.space output.nonnull - editor empty$ - { space booktitle quoted space output.nonnull} - { space format.editors.notkey plain.space output.nonnull - comma booktitle italic comma output.nonnull - } - if$ -} - -FUNCTION {empty.misc.check} -{ author empty$ title empty$ howpublished empty$ - month empty$ year empty$ note empty$ - and and and and and - key empty$ not and - { "all relevant fields are empty in " cite$ * warning$ } - {} - if$ -} - -FUNCTION {format.thesis.type} -{ type empty$ - {} - { pop$ - type "t" change.case$ - } - if$ -} - -FUNCTION {format.tr.number} -{ type empty$ - { "Technical Report" } - 'type - if$ - number empty$ - { } - { number tie.or.space.connect } - if$ -} - -FUNCTION {format.article.crossref} -{ key empty$ - { journal empty$ - { "need key or journal for " cite$ * " to crossref " * crossref * - warning$ - "" - } - { "in {\it " journal * "\/} \cite{" * crossref * "}" *} - if$ - } - { add.period$ "In \citeasnoun{" crossref * "}" * } - if$ - -} - -FUNCTION {format.book.crossref} -{ volume empty$ - { "empty volume in " cite$ * "'s crossref of " * crossref * warning$ - "in " - } - { "Vol." volume tie.or.space.connect - " of " * - } - if$ - editor empty$ - editor field.or.null author field.or.null = - or - { key empty$ - { series empty$ - { "need editor, key, or series for " cite$ * " to crossref " * - crossref * warning$ - "" * - } - { "{\it " * series * "\/} \cite{" * crossref * "}" *} - if$ - } - { " \citeasnoun{" * crossref * "}" * } - if$ - } - { " \citeasnoun{" * crossref * "}" * } - if$ -} - -FUNCTION {output.incoll.inproc.crossref} -{ editor empty$ - editor field.or.null author field.or.null = - or - { key empty$ - { booktitle empty$ - { "need editor, key, or booktitle for " cite$ * " to crossref " * - crossref * warning$ - } - { period "In {\it " booktitle * "\/}" * " \cite{" * crossref * "}" * plain.space output.nonnull} - if$ - } - { period "In \citeasnoun{" crossref * "}" * plain.space output.nonnull} - if$ - } - { period "In \citeasnoun{" crossref * "}" * plain.space output.nonnull} - if$ -} - -INTEGERS { len } - -FUNCTION {chop.word} -{ 's := - 'len := - s #1 len substring$ = - { s len #1 + global.max$ substring$ } - 's - if$ -} - -INTEGERS { author.field editor.field organization.field title.field key.field } - -FUNCTION {init.field.constants} -{ #0 'author.field := - #1 'editor.field := - #2 'organization.field := - #3 'title.field := - #4 'key.field := -} - -FUNCTION {format.lab.names.abbr} -{ 'name.list := - name.list num.names$ 'numnames := - numnames #1 > - { numnames #2 > - { name.list #1 "{vv~}{ll}" format.name$ " et al." * } - { name.list #2 "{ff }{vv }{ll}{ jj}" format.name$ "others" = - { name.list #1 "{vv~}{ll}" format.name$ " et al." * } - { name.list #1 "{vv~}{ll}" format.name$ " and " * - name.list #2 "{vv~}{ll}" format.name$ * - } - if$ - } - if$ - field.used editor.field = {", eds" *} {} if$ - } - { - name.list #1 "{vv~}{ll}" format.name$ - field.used editor.field = {", ed" *} {} if$ - } - if$ -} - -FUNCTION {format.lab.names.full} -{ 'name.list := - #1 'nameptr := - name.list num.names$ 'numnames := - numnames 'namesleft := - { namesleft #0 > } - { name.list nameptr "{vv~}{ll}" format.name$ 'temp := - nameptr #1 > - { namesleft #1 > - { ", " * temp * } - { temp "others" = - { " et~al." * } - { " and " * temp * } - if$ - } - if$ - } - 'temp - if$ - nameptr #1 + 'nameptr := - namesleft #1 - 'namesleft := - } - while$ - numnames #1 > field.used editor.field = and {", eds" *} {} if$ - numnames #1 = field.used editor.field = and {", ed" *} {} if$ -} - -STRINGS { prev.author } - -FUNCTION {make.list.label} -{author.field field.used = - { prev.author author compare.names format.authors - author 'prev.author :=} - { editor.field field.used = - { prev.author editor compare.names format.editors - editor 'prev.author := } - { organization.field field.used = - { "The " #4 organization chop.word - duplicate$ prev.author = {pop$ "\bysame{}"} - {duplicate$ 'prev.author :=} if$} - { "foo" 'prev.author := - title.field field.used = - { format.btitle } - { key.field field.used = - { key #3 text.prefix$ } - { "Internal error :001 on " cite$ * " label" * warning$ } - if$ - } - if$ - } - if$ - } - if$ - } - if$ -} - -FUNCTION {make.full.label} -{ author.field field.used = - { author format.lab.names.full } - { editor.field field.used = - { editor format.lab.names.full } - { organization.field field.used = - { "The " #4 organization chop.word #3 text.prefix$ } - { title.field field.used = - { format.btitle } - { key.field field.used = - { key #3 text.prefix$ } - { "Internal error :001 on " cite$ * " label" * warning$ } - if$ - } - if$ - } - if$ - } - if$ - } - if$ -} - -FUNCTION {make.abbr.label} -{ author.field field.used = - { author format.lab.names.abbr } - { editor.field field.used = - { editor format.lab.names.abbr } - { organization.field field.used = - { "The " #4 organization chop.word #3 text.prefix$ } - { title.field field.used = - { format.btitle } - { key.field field.used = - { key #3 text.prefix$ } - { "Internal error :001 on " cite$ * " label" * warning$ } - if$ - } - if$ - } - if$ - } - if$ - } - if$ -} - -FUNCTION {output.bibitem} -{ newline$ - "\harvarditem[" write$ - make.abbr.label write$ - "]{" write$ - make.full.label write$ - "}{" write$ - list.year write$ - "}{" write$ - cite$ write$ - "}" write$ - newline$ - "" - empty 'separator := - plain 'attribute := -% } -% -% FUNCTION {list.label.output} -% { - space make.list.label bold comma output.nonnull - } - -FUNCTION {author.item.check} {author "author" item.check} - -FUNCTION {format.title.if.not.sortkey.check} -{title.field field.used = - {} - { format.title "title" output.check } - if$} - -FUNCTION {article} -{ output.bibitem - author.item.check - format.title.if.not.sortkey.check - crossref missing$ - { space journal italic comma "journal" output.check - output.month.year - output.vol.num.pages - } - { space format.article.crossref plain.space output.nonnull - comma format.pages plain.space.output - } - if$ - fin.entry -} - -FUNCTION {book} -{ output.bibitem - author empty$ - { editor "author and editor" item.check } - { crossref missing$ - { "author and editor" editor either.or.check } - {} - if$ - } - if$ - title.field field.used = - {} - { space title italic space "title" output.check } - if$ - crossref missing$ - { - space format.number.series plain.space.output - format.edition.output - format.bvolume.output - format.publisher.address - output.month.year - } - { space format.book.crossref plain.space output.nonnull - format.edition.output - } - if$ - fin.entry -} - -FUNCTION {booklet} -{ output.bibitem - format.title.if.not.sortkey.check - space howpublished plain.space.output - space address plain.space.output - output.month.year - fin.entry -} - -FUNCTION {inbook} -{ output.bibitem - author empty$ - { editor "author and editor" item.check } - { crossref missing$ - { "author and editor" editor either.or.check } - {} - if$ - } - if$ - title.field field.used = - {} - { space title italic space "title" output.check } - if$ - crossref missing$ - { space format.number.series plain.space.output - format.edition.output - comma format.bvolume plain.comma output - format.publisher.address - output.month.year - } - { space format.book.crossref plain.space output.nonnull - format.edition.output - } - if$ - format.chapter.pages "chapter and pages" output.check - fin.entry -} - -FUNCTION {incollection} -{ output.bibitem - format.title.if.not.sortkey.check - author.item.check - crossref missing$ - { output.in.ed.booktitle - format.edition.output - format.bvolume.output - space format.number.series plain.space.output - format.publisher.address - output.month.year - } - { output.incoll.inproc.crossref } - if$ - space format.chapter.pages plain.space.output - fin.entry -} - -FUNCTION {inproceedings} -{ output.bibitem - format.title.if.not.sortkey.check - author.item.check - crossref missing$ - { output.in.ed.booktitle - format.bvolume.output - space format.number.series plain.space.output - address empty$ - { space organization plain.space.output - space publisher plain.space.output - } - { space organization plain.space.output - space publisher plain.space.output - space address plain.space output.nonnull - } - if$ - output.month.year - } - { output.incoll.inproc.crossref} - if$ - space format.pages plain.space.output - fin.entry -} - -FUNCTION {conference} { inproceedings } - -FUNCTION {manual} -{ output.bibitem - title.field field.used = - {} - {author empty$ {comma}{space} if$ title italic space "title" output.check } - if$ - organization.field field.used = organization empty$ or - {} {space organization plain.space output.nonnull} if$ - format.edition.output - format.publisher.address - output.month.year - fin.entry -} - -FUNCTION {mastersthesis} -{ output.bibitem - author.item.check - format.title.if.not.sortkey.check - space "Master's thesis" format.thesis.type plain.space output.nonnull - comma school plain.space "school" output.check - comma address plain.space.output - output.month.year - fin.entry -} - -FUNCTION {misc} -{ output.bibitem - format.title.if.not.sortkey.check - space howpublished plain.space.output - output.month.year - fin.entry - empty.misc.check -} - -FUNCTION {phdthesis} -{ output.bibitem - author.item.check - title.field field.used = - {} - { space title quoted period "title" output.check } - if$ - space "PhD dissertation" format.thesis.type plain.space output.nonnull - comma school plain.space "school" output.check - comma address plain.space.output - output.month.year - fin.entry -} - -FUNCTION {proceedings} -{ output.bibitem - title.field field.used = - {} - { space title italic space "title" output.check } - if$ - format.bvolume.output - space format.number.series plain.space.output - address empty$ - { editor empty$ - {} - { space organization plain.space.output - } - if$ - space publisher plain.space.output - } - { editor empty$ - {} - { space organization plain.space.output } - if$ - space publisher plain.space.output - space address plain.space output.nonnull - } - if$ - output.month.year - fin.entry -} - -FUNCTION {techreport} -{ output.bibitem - author.item.check - format.title.if.not.sortkey.check - space format.tr.number plain.space output.nonnull - institution empty$ - {} - { comma institution plain.space "institution" output.check } - if$ - comma address plain.space.output - output.month.year - fin.entry -} - -FUNCTION {unpublished} -{ output.bibitem - author.item.check - format.title.if.not.sortkey.check - output.month.year - note "note" item.check - fin.entry -} - -FUNCTION {default.type} { misc } - -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"} - -READ - -EXECUTE {init.field.constants} - -FUNCTION {sortify} -{ purify$ - "l" change.case$ -} - -FUNCTION {author.editor.key.label} -{ author empty$ - { editor empty$ - { title empty$ - { key.field 'field.used := } - { title.field 'field.used := } - if$ - } - { editor.field 'field.used := } - if$ - } - { author.field 'field.used := } - if$ -} - -FUNCTION {key.organization.label} - {organization empty$ - { title empty$ - { key.field 'field.used := } - { title.field 'field.used := } - if$ - } - { organization.field 'field.used := } - if$} - -FUNCTION {author.key.organization.label} -{ author empty$ - { key.organization.label} - { author.field 'field.used := } - if$ -} - -FUNCTION {editor.key.organization.label} -{ editor empty$ - { key.organization.label} - { editor.field 'field.used := } - if$ -} - -FUNCTION {sort.format.title} -{ 'temp := - "A " #2 - "An " #3 - "The " #4 temp chop.word - chop.word - chop.word - sortify - #1 global.max$ substring$ -} - -FUNCTION {calc.label} -{ type$ "book" = - type$ "inbook" = - or - 'author.editor.key.label - { type$ "proceedings" = - 'editor.key.organization.label - { type$ "manual" = - 'author.key.organization.label - 'author.editor.key.label % don't really use .editor. - if$ - } - if$ - } - if$ - make.abbr.label - title.field field.used = - { sort.format.title } - { sortify } - if$ - year field.or.null purify$ #-1 #4 substring$ sortify - * - 'sort.label := -} - -FUNCTION {first.presort} -{ "abcxyz" 'prev.author := - calc.label - sort.label - title.field field.used = - {} - { " " - * - make.list.label sortify - * - " " - * - title field.or.null - sort.format.title - * - } - if$ - #1 entry.max$ substring$ - 'sort.key$ := -} - - -ITERATE {first.presort} - -SORT - -STRINGS { last.sort.label next.extra } - -INTEGERS { last.extra.num } - -FUNCTION {initialize.last.extra.num} -{ #0 int.to.chr$ 'last.sort.label := - "" 'next.extra := - #0 'last.extra.num := -} - -FUNCTION {forward.pass} -{ last.sort.label sort.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 := - sort.label 'last.sort.label := - } - if$ -} - -FUNCTION {reverse.pass} -{ next.extra "b" = - { "a" 'extra.label := } - {} - if$ - year empty$ - { "n.d." extra.label * 'list.year := } - { year extra.label * 'list.year := } - if$ - extra.label 'next.extra := -} - -EXECUTE {initialize.last.extra.num} - -ITERATE {forward.pass} - -REVERSE {reverse.pass} - -FUNCTION {second.presort} -{ "abcxyz" 'prev.author := - make.list.label - title.field field.used = - { sort.format.title } - { sortify } - if$ - " " - * - list.year field.or.null sortify - * - " " - * - title.field field.used = - {} - { title field.or.null - sort.format.title - * - } - if$ - #1 entry.max$ substring$ - 'sort.key$ := -} - -ITERATE {second.presort} - -SORT - - -INTEGERS { number.label } - -FUNCTION {initialize.longest.label} -{ - #1 'number.label := - "abcxyz" 'prev.author := -} - -FUNCTION {longest.label.pass} -{ - "" 'extra.label := - author empty$ { editor empty$ {"foo"} {editor} if$} - {author} - if$ - 'f := -% remember this entry to compare to the next one - author empty$ { editor empty$ {"abcxyz"} {editor} if$} {author} if$ - 'prev.author := -} - -EXECUTE {initialize.longest.label} - -ITERATE {longest.label.pass} - -FUNCTION {begin.bib} -{ preamble$ empty$ - {} - { preamble$ write$ newline$ } - if$ - "\ifx\undefined\bysame" write$ newline$ - "\newcommand{\bysame}{\leavevmode\hbox to\leftmargin{\hrulefill\,\,}}" - write$ newline$ - "\fi" write$ newline$ - "\begin{thebibliography}{xx}" write$ newline$ -} - -EXECUTE {begin.bib} - -EXECUTE {init.state.consts} - -FUNCTION {init.call} - { "abcxyz" 'prev.author := } - -EXECUTE {init.call} - -ITERATE {call.type$} - -FUNCTION {end.bib} - {newline$ "\end{thebibliography}" write$ newline$ } - -EXECUTE {end.bib} - diff --git a/Master/texmf-dist/bibtex/bst/economic/aertt.bst b/Master/texmf-dist/bibtex/bst/economic/aertt.bst deleted file mode 100644 index d1207adc30d..00000000000 --- a/Master/texmf-dist/bibtex/bst/economic/aertt.bst +++ /dev/null @@ -1,1221 +0,0 @@ -% BibTeX bibliography style `aertt' -% this file is based on the `harvard' family of files - % version 0.99a for BibTeX versions 0.99a or later, LaTeX version 2.09. - % Copyright (C) 1991, all rights reserved. - % Copying of this file is authorized only if either - % (1) you make absolutely no changes to your copy, including name, or - % (2) if you do make changes, you name it something other than - % btxbst.doc, plain.bst, unsrt.bst, alpha.bst, abbrv.bst, agsm.bst, - % dcu.bst, cje.bst, aer.bst, or kluwer.bst. - % This restriction helps ensure that all standard styles are identical. - -% ACKNOWLEDGEMENT: -% This document is a modified version of alpha.bst to which it owes much of -% its functionality. - -% AUTHOR -% Peter Williams, Key Centre for Design Quality, Sydney University -% e-mail: peterw@archsci.arch.su.oz.au - -ENTRY - { address author booktitle chapter edition editor howpublished institution - journal key month note number organization pages publisher school - series title type volume year} - { field.used } - { label.touse extra.label sort.label list.year } - - -FUNCTION {not} -{ { #0 } - { #1 } - if$ -} - -FUNCTION {and} -{ {} - { pop$ #0 } - if$ -} - -FUNCTION {or} -{ { pop$ #1 } - {} - if$ -} - -INTEGERS {quoted italic bold plain attribute - space comma tiedcomma semicolon colon period block empty separator - prev.separator next.separator next.attribute} - -STRINGS { s temp f name.list first.name.format later.name.formats name.style} - -FUNCTION {init.state.consts} -{ - #100 'quoted := - #200 'italic := - #300 'bold := - #400 'plain := - - #7 'space := - #6 'comma := -% #5 'tiedcomma := -% #4 'semicolon := - #3 'colon := - #2 'period := - #1 'block := - #0 'empty := -} - -FUNCTION {output2} -{ -% Wrap the attribute. - attribute bold = {"{\bf " swap$ * "}" *} {} if$ - attribute italic = {"\uline{" swap$ * "}" *} {} if$ - attribute quoted = {"``" swap$ * "''" *} {} if$ -% Append additional separators - separator comma = {"," * space 'separator :=} {} if$ -% separator tiedcomma = {",~" * empty 'separator :=} {} if$ - separator space = {" " *} {} if$ - write$ - separator block = {newline$ "\newblock " write$} {} if$ -% Update variables, and put the new string back on the stack - next.attribute 'attribute := - next.separator 'separator := - temp -} - -% <string> <separator> <string> <attribute> <final separator> output <string> -FUNCTION {output.nonnull} -{ 'next.separator := - 'next.attribute := - 'temp := - 'prev.separator := -% If the new separator is stronger than the previous one, use it. - prev.separator separator < {prev.separator 'separator :=} {} if$ -% Append most separators to the string. - separator block = {add.period$} {} if$ - separator period = {add.period$ space 'separator :=} {} if$ -% separator semicolon = {";" * space 'separator :=} {} if$ - separator colon = {":" * space 'separator :=} {} if$ - separator comma = attribute quoted = and - {"," * space 'separator :=} {} if$ - output2 -} - -FUNCTION {output} -{ 'next.separator := - 'next.attribute := - duplicate$ empty$ - {pop$ pop$} - {next.attribute next.separator output.nonnull} - if$ -} - -FUNCTION {output.check} -{ 's := - 'next.separator := - 'next.attribute := - duplicate$ empty$ - {pop$ pop$ "empty " s * " in " * cite$ * warning$ } - {next.attribute next.separator output.nonnull} - if$ -} - -FUNCTION {item.check} -{ 'temp := - empty$ - { "empty " temp * " in " * cite$ * warning$ } - {} - if$ -} - -FUNCTION {plain.space} { plain space } - -FUNCTION {plain.space.output} { plain.space output } - -FUNCTION {plain.comma} { plain comma } - -FUNCTION {fin.entry} -{ - block note plain.space.output - period "" plain empty output.nonnull pop$ - newline$ -} - -FUNCTION {field.or.null} -{ duplicate$ empty$ - { pop$ "" } - {} - if$ -} - -FUNCTION {emphasize} -{ duplicate$ empty$ - { pop$ "" } - { "{\em " swap$ * "}" * } - if$ -} - -FUNCTION {quote} -{ duplicate$ empty$ - { pop$ "" } - { add.period$ "`" swap$ * "'" * } - if$ -} - - -% <prev name list> <new name list> compare.names <modified name list> -INTEGERS {len1 len2 i} -FUNCTION {compare.names} -{ 's := - 'temp := - temp num.names$ 'len1 := - s num.names$ 'len2 := -% len1 := min(len1,len2) - len1 len2 > {len2 'len1 :=} {} if$ -% start with an empty string, then while the components are the same -% add "\bysame" - "" - #1 'i := - {i len1 > not} - { temp i "{ff }{vv }{ll}{ jj}" format.name$ -% duplicate$ i int.to.str$ * warning$ - s i "{ff }{vv }{ll}{ jj}" format.name$ -% duplicate$ i int.to.str$ * warning$ - = - { #1 i < {" and " *} {} if$ - "\bysame{}" * i #1 + 'i :=} - {#-1 'len1 :=} - if$ - } - while$ -% add the rest of the second string - {i len2 > not} - { #1 i < {" and " *} {} if$ - s i "{ff }{vv }{ll}{ jj}" format.name$ * - i #1 + 'i := - } - while$ -% duplicate$ warning$ -} - -INTEGERS { nameptr namesleft numnames } - -FUNCTION {format.names} -{ 'name.list := - 'name.style := - 'later.name.formats := - 's := % binary separator - 'first.name.format := - #1 'nameptr := - name.list num.names$ 'numnames := -% If we're to make this entry bold or something, prepend to the string of names - name.style "" = {} {"{" name.style *} if$ - numnames 'namesleft := - { namesleft #0 > } - { name.list nameptr nameptr #1 = {first.name.format} {later.name.formats} if$ - format.name$ 'temp := - nameptr #1 > - { namesleft #1 > - { ", " * temp * } - { temp "others" = - { " et~al." * } - {nameptr #2 = % handle ", and" vs " and " - {s * temp *} - {", and " * temp * } - if$ - } - if$ - } - if$ - } - 'temp - if$ - nameptr #1 + 'nameptr := - namesleft #1 - 'namesleft := - } - while$ -% If we're to make this entry bold or something, append to the string of names - name.style "" = {} {"}" * *} if$ -} - -FUNCTION {format.authors} -{ 'temp := - "{vv~}{ll}{, jj}{, ff}" " and " "{ff~}{vv~}{ll}{, jj}" "" temp - format.names -} - -FUNCTION {format.editors} -{ 'temp := - "{vv~}{ll}{, jj}{, ff}" " and " "{ff~}{vv~}{ll}{, jj}" "" - temp format.names - editor num.names$ #1 > - { ", eds" * } - { ", ed." * } - if$ -} - -FUNCTION {format.editors.notkey} -{ editor empty$ - { "" } - { "{ff~}{vv~}{ll}{, jj}" " and " "{ff~}{vv~}{ll}{, jj}" "" - editor format.names - editor num.names$ #1 > {", eds."} {", ed."} if$ - * - } - if$ -} - -FUNCTION {format.title} -{ space title quoted comma } - -FUNCTION {n.dashify} -{ 'temp := - "" - { temp empty$ not } - { temp #1 #1 substring$ "-" = - { temp #1 #2 substring$ "--" = not - { "--" * - temp #2 global.max$ substring$ 'temp := - } - { { temp #1 #1 substring$ "-" = } - { "-" * - temp #2 global.max$ substring$ 'temp := - } - while$ - } - if$ - } - { temp #1 #1 substring$ * - temp #2 global.max$ substring$ 'temp := - } - if$ - } - while$ -} - -FUNCTION {format.btitle} -{ title emphasize -} - -FUNCTION {tie.or.space.connect} -{ duplicate$ text.length$ #3 < - { "~" } - { " " } - if$ - swap$ * * -} - -FUNCTION {either.or.check} -{ empty$ - 'pop$ - { "can't use both " swap$ * " fields in " * cite$ * warning$ } - if$ -} - -FUNCTION {format.bvolume} -{ volume empty$ - { "" } - { "Vol." volume tie.or.space.connect - series empty$ - {} - { " of " * series emphasize * } - if$ - "volume and number" number either.or.check - } - if$ -} - -FUNCTION {format.bvolume.output} - {comma format.bvolume plain.space.output} - -FUNCTION {mid.sentence.q} -{ - separator empty = separator block = separator period = or or not -} - -FUNCTION {format.number.series} -{ volume empty$ - { number empty$ - {series field.or.null} - { mid.sentence.q - { "number" } - { "Number" } - if$ - number tie.or.space.connect - series empty$ - { "there's a number but no series in " cite$ * warning$ } - { add.period$ " In " * series quote * } - if$ - } - if$ - } - { "" } - if$ -} - -FUNCTION {format.edition.output} -{ edition empty$ - { } - { comma edition - mid.sentence.q { "l" } { "t" } if$ - change.case$ " ed." * - plain.space.output - } - if$ -} - -FUNCTION {format.publisher.address} -{ - address empty$ - {comma publisher plain.comma output} - {publisher empty$ - {} - {comma address plain colon output - colon publisher plain.comma output} - if$} - if$ -} - -INTEGERS { multiresult } - -FUNCTION {multi.page.check} -{ 'temp := - #0 'multiresult := - { multiresult not - temp empty$ not - and - } - { temp #1 #1 substring$ - duplicate$ "-" = - swap$ duplicate$ "," = - swap$ "+" = - or or - { #1 'multiresult := } - { temp #2 global.max$ substring$ 'temp := } - if$ - } - while$ - multiresult -} - -FUNCTION {format.pages} -{ pages empty$ - { "" } - { pages multi.page.check - { "pp.~" pages n.dashify * } - { "p.~" pages * } - if$ - } - if$ -} - -FUNCTION {output.month.year} - { - space month plain.space.output - space year plain.comma "year" output.check - } - -FUNCTION {output.vol.num.pages} -{ space volume italic space output - number empty$ - {} - { space "(" number * ")" * plain.comma output.nonnull - volume empty$ - { "there's a number but no volume in " cite$ * warning$ } - {} - if$ - } - if$ -% "*** a" warning$ - comma 'next.separator := % hack - pages empty$ - {} - { number empty$ volume empty$ and - { comma format.pages plain.space.output } - { comma pages n.dashify plain.space.output } - if$ - } - if$ -} - -FUNCTION {format.chapter.pages} -{ chapter empty$ - 'format.pages - { type empty$ - { "chapter" } - { type "l" change.case$ } - if$ - chapter tie.or.space.connect - pages empty$ - {} - { ", " * format.pages * } - if$ - } - if$ -} - -FUNCTION {output.in.ed.booktitle} -{ booktitle "booktitle" item.check - comma "in" plain.space output.nonnull - editor empty$ - { space booktitle quoted space output.nonnull} - { space format.editors.notkey plain.space output.nonnull - comma booktitle italic comma output.nonnull - } - if$ -} - -FUNCTION {empty.misc.check} -{ author empty$ title empty$ howpublished empty$ - month empty$ year empty$ note empty$ - and and and and and - key empty$ not and - { "all relevant fields are empty in " cite$ * warning$ } - {} - if$ -} - -FUNCTION {format.thesis.type} -{ type empty$ - {} - { pop$ - type "t" change.case$ - } - if$ -} - -FUNCTION {format.tr.number} -{ type empty$ - { "Technical Report" } - 'type - if$ - number empty$ - { } - { number tie.or.space.connect } - if$ -} - -FUNCTION {format.article.crossref} -{ key empty$ - { journal empty$ - { "need key or journal for " cite$ * " to crossref " * crossref * - warning$ - "" - } - { "in {\it " journal * "\/} \cite{" * crossref * "}" *} - if$ - } - { add.period$ "In \citeasnoun{" crossref * "}" * } - if$ - -} - -FUNCTION {format.book.crossref} -{ volume empty$ - { "empty volume in " cite$ * "'s crossref of " * crossref * warning$ - "in " - } - { "Vol." volume tie.or.space.connect - " of " * - } - if$ - editor empty$ - editor field.or.null author field.or.null = - or - { key empty$ - { series empty$ - { "need editor, key, or series for " cite$ * " to crossref " * - crossref * warning$ - "" * - } - { "{\it " * series * "\/} \cite{" * crossref * "}" *} - if$ - } - { " \citeasnoun{" * crossref * "}" * } - if$ - } - { " \citeasnoun{" * crossref * "}" * } - if$ -} - -FUNCTION {output.incoll.inproc.crossref} -{ editor empty$ - editor field.or.null author field.or.null = - or - { key empty$ - { booktitle empty$ - { "need editor, key, or booktitle for " cite$ * " to crossref " * - crossref * warning$ - } - { period "In {\it " booktitle * "\/}" * " \cite{" * crossref * "}" * plain.space output.nonnull} - if$ - } - { period "In \citeasnoun{" crossref * "}" * plain.space output.nonnull} - if$ - } - { period "In \citeasnoun{" crossref * "}" * plain.space output.nonnull} - if$ -} - -INTEGERS { len } - -FUNCTION {chop.word} -{ 's := - 'len := - s #1 len substring$ = - { s len #1 + global.max$ substring$ } - 's - if$ -} - -INTEGERS { author.field editor.field organization.field title.field key.field } - -FUNCTION {init.field.constants} -{ #0 'author.field := - #1 'editor.field := - #2 'organization.field := - #3 'title.field := - #4 'key.field := -} - -FUNCTION {format.lab.names.abbr} -{ 'name.list := - name.list num.names$ 'numnames := - numnames #1 > - { numnames #2 > - { name.list #1 "{vv~}{ll}" format.name$ " et al." * } - { name.list #2 "{ff }{vv }{ll}{ jj}" format.name$ "others" = - { name.list #1 "{vv~}{ll}" format.name$ " et al." * } - { name.list #1 "{vv~}{ll}" format.name$ " and " * - name.list #2 "{vv~}{ll}" format.name$ * - } - if$ - } - if$ - field.used editor.field = {", eds" *} {} if$ - } - { - name.list #1 "{vv~}{ll}" format.name$ - field.used editor.field = {", ed" *} {} if$ - } - if$ -} - -FUNCTION {format.lab.names.full} -{ 'name.list := - #1 'nameptr := - name.list num.names$ 'numnames := - numnames 'namesleft := - { namesleft #0 > } - { name.list nameptr "{vv~}{ll}" format.name$ 'temp := - nameptr #1 > - { namesleft #1 > - { ", " * temp * } - { temp "others" = - { " et~al." * } - { " and " * temp * } - if$ - } - if$ - } - 'temp - if$ - nameptr #1 + 'nameptr := - namesleft #1 - 'namesleft := - } - while$ - numnames #1 > field.used editor.field = and {", eds" *} {} if$ - numnames #1 = field.used editor.field = and {", ed" *} {} if$ -} - -STRINGS { prev.author } - -FUNCTION {make.list.label} -{author.field field.used = - { prev.author author compare.names format.authors - author 'prev.author :=} - { editor.field field.used = - { prev.author editor compare.names format.editors - editor 'prev.author := } - { organization.field field.used = - { "The " #4 organization chop.word - duplicate$ prev.author = {pop$ "\bysame{}"} - {duplicate$ 'prev.author :=} if$} - { "foo" 'prev.author := - title.field field.used = - { format.btitle } - { key.field field.used = - { key #3 text.prefix$ } - { "Internal error :001 on " cite$ * " label" * warning$ } - if$ - } - if$ - } - if$ - } - if$ - } - if$ -} - -FUNCTION {make.full.label} -{ author.field field.used = - { author format.lab.names.full } - { editor.field field.used = - { editor format.lab.names.full } - { organization.field field.used = - { "The " #4 organization chop.word #3 text.prefix$ } - { title.field field.used = - { format.btitle } - { key.field field.used = - { key #3 text.prefix$ } - { "Internal error :001 on " cite$ * " label" * warning$ } - if$ - } - if$ - } - if$ - } - if$ - } - if$ -} - -FUNCTION {make.abbr.label} -{ author.field field.used = - { author format.lab.names.abbr } - { editor.field field.used = - { editor format.lab.names.abbr } - { organization.field field.used = - { "The " #4 organization chop.word #3 text.prefix$ } - { title.field field.used = - { format.btitle } - { key.field field.used = - { key #3 text.prefix$ } - { "Internal error :001 on " cite$ * " label" * warning$ } - if$ - } - if$ - } - if$ - } - if$ - } - if$ -} - -FUNCTION {output.bibitem} -{ newline$ - "\harvarditem[" write$ - make.abbr.label write$ - "]{" write$ - make.full.label write$ - "}{" write$ - list.year write$ - "}{" write$ - cite$ write$ - "}" write$ - newline$ - "" - empty 'separator := - plain 'attribute := -% } -% -% FUNCTION {list.label.output} -% { - space make.list.label plain comma output.nonnull - } - -FUNCTION {author.item.check} {author "author" item.check} - -FUNCTION {format.title.if.not.sortkey.check} -{title.field field.used = - {} - { format.title "title" output.check } - if$} - -FUNCTION {article} -{ output.bibitem - author.item.check - format.title.if.not.sortkey.check - crossref missing$ - { space journal italic comma "journal" output.check - output.month.year - output.vol.num.pages - } - { space format.article.crossref plain.space output.nonnull - comma format.pages plain.space.output - } - if$ - fin.entry -} - -FUNCTION {book} -{ output.bibitem - author empty$ - { editor "author and editor" item.check } - { crossref missing$ - { "author and editor" editor either.or.check } - {} - if$ - } - if$ - title.field field.used = - {} - { space title italic space "title" output.check } - if$ - crossref missing$ - { - space format.number.series plain.space.output - format.edition.output - format.bvolume.output - format.publisher.address - output.month.year - } - { space format.book.crossref plain.space output.nonnull - format.edition.output - } - if$ - fin.entry -} - -FUNCTION {booklet} -{ output.bibitem - format.title.if.not.sortkey.check - space howpublished plain.space.output - space address plain.space.output - output.month.year - fin.entry -} - -FUNCTION {inbook} -{ output.bibitem - author empty$ - { editor "author and editor" item.check } - { crossref missing$ - { "author and editor" editor either.or.check } - {} - if$ - } - if$ - title.field field.used = - {} - { space title italic space "title" output.check } - if$ - crossref missing$ - { space format.number.series plain.space.output - format.edition.output - comma format.bvolume plain.comma output - format.publisher.address - output.month.year - } - { space format.book.crossref plain.space output.nonnull - format.edition.output - } - if$ - format.chapter.pages "chapter and pages" output.check - fin.entry -} - -FUNCTION {incollection} -{ output.bibitem - format.title.if.not.sortkey.check - author.item.check - crossref missing$ - { output.in.ed.booktitle - format.edition.output - format.bvolume.output - space format.number.series plain.space.output - format.publisher.address - output.month.year - } - { output.incoll.inproc.crossref } - if$ - space format.chapter.pages plain.space.output - fin.entry -} - -FUNCTION {inproceedings} -{ output.bibitem - format.title.if.not.sortkey.check - author.item.check - crossref missing$ - { output.in.ed.booktitle - format.bvolume.output - space format.number.series plain.space.output - address empty$ - { space organization plain.space.output - space publisher plain.space.output - } - { space organization plain.space.output - space publisher plain.space.output - space address plain.space output.nonnull - } - if$ - output.month.year - } - { output.incoll.inproc.crossref} - if$ - space format.pages plain.space.output - fin.entry -} - -FUNCTION {conference} { inproceedings } - -FUNCTION {manual} -{ output.bibitem - title.field field.used = - {} - {author empty$ {comma}{space} if$ title italic space "title" output.check } - if$ - organization.field field.used = organization empty$ or - {} {space organization plain.space output.nonnull} if$ - format.edition.output - format.publisher.address - output.month.year - fin.entry -} - -FUNCTION {mastersthesis} -{ output.bibitem - author.item.check - format.title.if.not.sortkey.check - space "Master's thesis" format.thesis.type plain.space output.nonnull - comma school plain.space "school" output.check - comma address plain.space.output - output.month.year - fin.entry -} - -FUNCTION {misc} -{ output.bibitem - format.title.if.not.sortkey.check - space howpublished plain.space.output - output.month.year - fin.entry - empty.misc.check -} - -FUNCTION {phdthesis} -{ output.bibitem - author.item.check - title.field field.used = - {} - { space title quoted period "title" output.check } - if$ - space "PhD dissertation" format.thesis.type plain.space output.nonnull - comma school plain.space "school" output.check - comma address plain.space.output - output.month.year - fin.entry -} - -FUNCTION {proceedings} -{ output.bibitem - title.field field.used = - {} - { space title italic space "title" output.check } - if$ - format.bvolume.output - space format.number.series plain.space.output - address empty$ - { editor empty$ - {} - { space organization plain.space.output - } - if$ - space publisher plain.space.output - } - { editor empty$ - {} - { space organization plain.space.output } - if$ - space publisher plain.space.output - space address plain.space output.nonnull - } - if$ - output.month.year - fin.entry -} - -FUNCTION {techreport} -{ output.bibitem - author.item.check - format.title.if.not.sortkey.check - space format.tr.number plain.space output.nonnull - institution empty$ - {} - { comma institution plain.space "institution" output.check } - if$ - comma address plain.space.output - output.month.year - fin.entry -} - -FUNCTION {unpublished} -{ output.bibitem - author.item.check - format.title.if.not.sortkey.check - output.month.year - note "note" item.check - fin.entry -} - -FUNCTION {default.type} { misc } - -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"} - -READ - -EXECUTE {init.field.constants} - -FUNCTION {sortify} -{ purify$ - "l" change.case$ -} - -FUNCTION {author.editor.key.label} -{ author empty$ - { editor empty$ - { title empty$ - { key.field 'field.used := } - { title.field 'field.used := } - if$ - } - { editor.field 'field.used := } - if$ - } - { author.field 'field.used := } - if$ -} - -FUNCTION {key.organization.label} - {organization empty$ - { title empty$ - { key.field 'field.used := } - { title.field 'field.used := } - if$ - } - { organization.field 'field.used := } - if$} - -FUNCTION {author.key.organization.label} -{ author empty$ - { key.organization.label} - { author.field 'field.used := } - if$ -} - -FUNCTION {editor.key.organization.label} -{ editor empty$ - { key.organization.label} - { editor.field 'field.used := } - if$ -} - -FUNCTION {sort.format.title} -{ 'temp := - "A " #2 - "An " #3 - "The " #4 temp chop.word - chop.word - chop.word - sortify - #1 global.max$ substring$ -} - -FUNCTION {calc.label} -{ type$ "book" = - type$ "inbook" = - or - 'author.editor.key.label - { type$ "proceedings" = - 'editor.key.organization.label - { type$ "manual" = - 'author.key.organization.label - 'author.editor.key.label % don't really use .editor. - if$ - } - if$ - } - if$ - make.abbr.label - title.field field.used = - { sort.format.title } - { sortify } - if$ - year field.or.null purify$ #-1 #4 substring$ sortify - * - 'sort.label := -} - -FUNCTION {first.presort} -{ "abcxyz" 'prev.author := - calc.label - sort.label - title.field field.used = - {} - { " " - * - make.list.label sortify - * - " " - * - title field.or.null - sort.format.title - * - } - if$ - #1 entry.max$ substring$ - 'sort.key$ := -} - - -ITERATE {first.presort} - -SORT - -STRINGS { last.sort.label next.extra } - -INTEGERS { last.extra.num } - -FUNCTION {initialize.last.extra.num} -{ #0 int.to.chr$ 'last.sort.label := - "" 'next.extra := - #0 'last.extra.num := -} - -FUNCTION {forward.pass} -{ last.sort.label sort.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 := - sort.label 'last.sort.label := - } - if$ -} - -FUNCTION {reverse.pass} -{ next.extra "b" = - { "a" 'extra.label := } - {} - if$ - year empty$ - { "n.d." extra.label * 'list.year := } - { year extra.label * 'list.year := } - if$ - extra.label 'next.extra := -} - -EXECUTE {initialize.last.extra.num} - -ITERATE {forward.pass} - -REVERSE {reverse.pass} - -FUNCTION {second.presort} -{ "abcxyz" 'prev.author := - make.list.label - title.field field.used = - { sort.format.title } - { sortify } - if$ - " " - * - list.year field.or.null sortify - * - " " - * - title.field field.used = - {} - { title field.or.null - sort.format.title - * - } - if$ - #1 entry.max$ substring$ - 'sort.key$ := -} - -ITERATE {second.presort} - -SORT - - -INTEGERS { number.label } - -FUNCTION {initialize.longest.label} -{ - #1 'number.label := - "abcxyz" 'prev.author := -} - -FUNCTION {longest.label.pass} -{ - "" 'extra.label := - author empty$ { editor empty$ {"foo"} {editor} if$} - {author} - if$ - 'f := -% remember this entry to compare to the next one - author empty$ { editor empty$ {"abcxyz"} {editor} if$} {author} if$ - 'prev.author := -} - -EXECUTE {initialize.longest.label} - -ITERATE {longest.label.pass} - -FUNCTION {begin.bib} -{ preamble$ empty$ - {} - { preamble$ write$ newline$ } - if$ - "\ifx\undefined\bysame" write$ newline$ - "\newcommand{\bysame}{\leavevmode\hbox to\leftmargin{\hrulefill\,\,}}" - write$ newline$ - "\fi" write$ newline$ - "\begin{thebibliography}{xx}" write$ newline$ -} - -EXECUTE {begin.bib} - -EXECUTE {init.state.consts} - -FUNCTION {init.call} - { "abcxyz" 'prev.author := } - -EXECUTE {init.call} - -ITERATE {call.type$} - -FUNCTION {end.bib} - {newline$ "\end{thebibliography}" write$ newline$ } - -EXECUTE {end.bib} - diff --git a/Master/texmf-dist/bibtex/bst/economic/agsm.bst b/Master/texmf-dist/bibtex/bst/economic/agsm.bst deleted file mode 100644 index c3fd2c44294..00000000000 --- a/Master/texmf-dist/bibtex/bst/economic/agsm.bst +++ /dev/null @@ -1,1305 +0,0 @@ -% BibTeX standard bibliography style `agsm' (one of the harvard family) - % version 0.99a for BibTeX versions 0.99a or later, LaTeX version 2.09. - % Copyright (C) 1991, all rights reserved. - % Copying of this file is authorized only if either - % (1) you make absolutely no changes to your copy, including name, or - % (2) if you do make changes, you name it something other than - % btxbst.doc, plain.bst, unsrt.bst, alpha.bst, abbrv.bst, agsm.bst, - % dcu.bst or kluwer.bst. - % This restriction helps ensure that all standard styles are identical. - % The file harvard.tex has the documentation for this style. - -% ACKNOWLEDGEMENT: -% This document is a modified version of alpha.bst to which it owes much of -% its functionality. - -% AUTHOR -% Peter Williams, Key Centre for Design Quality, Sydney University -% e-mail: peterw@archsci.arch.su.oz.au - -ENTRY - { address - author - booktitle - chapter - edition - editor - howpublished - institution - journal - key - month - note - number - organization - pages - publisher - school - series - title - type - volume - year - } - { field.used etal.allowed etal.required} %%%XXX change - { extra.label sort.label list.year } - -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 f } - -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 {item.check} -{ 't := - empty$ - { "empty " t * " in " * cite$ * warning$ } - { skip$ } - if$ -} - -FUNCTION {fin.entry} -{ add.period$ - write$ - newline$ -} - -FUNCTION {new.block} -{ output.state before.all = - 'skip$ - { after.block 'output.state := } - if$ -} - -FUNCTION {not} -{ { #0 } - { #1 } - if$ -} - -FUNCTION {and} -{ 'skip$ - { pop$ #0 } - if$ -} - -FUNCTION {or} -{ { pop$ #1 } - 'skip$ - if$ -} - -FUNCTION {field.or.null} -{ duplicate$ empty$ - { pop$ "" } - 'skip$ - if$ -} - -FUNCTION {emphasize} -{ duplicate$ empty$ - { pop$ "" } - { "{\em " swap$ * "}" * } - if$ -} - -FUNCTION {embolden} -{ duplicate$ empty$ - { pop$ "" } - { "{\bf " swap$ * "}" * } - if$ -} - -FUNCTION {quote} -{ duplicate$ empty$ - { pop$ "" } - { "`" swap$ * "'" * } - if$ -} - -INTEGERS { nameptr namesleft numnames } - -FUNCTION {format.names} -{ 's := - 'f := - #1 'nameptr := - s num.names$ 'numnames := - numnames 'namesleft := - { namesleft #0 > } - { s nameptr f format.name$ 't := - nameptr #1 > - { namesleft #1 > - { ", " * t * } - { t "others" = - { " et~al." * } - { " \& " * t * } - if$ - } - if$ - } - 't - if$ - nameptr #1 + 'nameptr := - namesleft #1 - 'namesleft := - } - while$ -} - -FUNCTION {format.authors} -{ author empty$ - { "" } - { "{vv~}{ll}{, jj}{, f.}" author format.names } - if$ -} - -FUNCTION {format.editors} -{ editor empty$ - { "" } - { "{vv~}{ll}{, jj}{, f.}" editor format.names - editor num.names$ #1 > - { ", eds" * } - { ", ed." * } - if$ - } - if$ -} - -FUNCTION {format.editors.reverse} -{ editor empty$ - { "" } - { "{f.~}{vv~}{ll}{, jj}" editor format.names - editor num.names$ #1 > - { ", eds" * } - { ", ed." * } - if$ - } - if$ -} - -FUNCTION {format.title} -{ title empty$ - { "" } - { title "t" change.case$ } - if$ -} - -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 {format.btitle} -{ title emphasize -} - -FUNCTION {tie.or.space.connect} -{ duplicate$ text.length$ #3 < - { "~" } - { " " } - if$ - swap$ * * -} - -FUNCTION {either.or.check} -{ empty$ - 'pop$ - { "can't use both " swap$ * " fields in " * cite$ * warning$ } - if$ -} - -FUNCTION {format.bvolume} -{ volume empty$ - { "" } - { "Vol." volume tie.or.space.connect - series empty$ - 'skip$ - { " of " * series emphasize * } - if$ - "volume and number" number either.or.check - } - if$ -} - -FUNCTION {format.number.series} -{ volume empty$ - { number empty$ - { series field.or.null } - { output.state mid.sentence = - { "number" } - { "Number" } - if$ - number tie.or.space.connect - series empty$ - { "there's a number but no series in " cite$ * warning$ } - { " {\em in} " * series quote * } - if$ - } - if$ - } - { "" } - if$ -} - -FUNCTION {format.edition} -{ edition empty$ - { "" } - { output.state mid.sentence = - { edition "l" change.case$ " edn" * } - { edition "t" change.case$ " edn" * } - if$ - } - 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 empty$ - { "" } - { pages multi.page.check - { "pp.~" pages n.dashify * } - { "p.~" pages * } - if$ - } - if$ -} - -FUNCTION {format.vol.num.pages} -{ volume embolden field.or.null - number empty$ - 'skip$ - { "(" number * ")" * * - volume empty$ - { "there's a number but no volume in " cite$ * warning$ } - 'skip$ - if$ - } - if$ - pages empty$ - 'skip$ - { duplicate$ empty$ - { pop$ format.pages } - { ",~" * pages n.dashify * } - if$ - } - if$ -} - -FUNCTION {format.chapter.pages} -{ chapter empty$ - 'format.pages - { type empty$ - { "chapter" } - { type "l" change.case$ } - if$ - chapter tie.or.space.connect - pages empty$ - 'skip$ - { ", " * format.pages * } - if$ - } - if$ -} - -FUNCTION {format.in.ed.booktitle} -{ booktitle empty$ - { "" } - { editor empty$ - { "{\em in} " booktitle quote * } - { "{\em in} " format.editors.reverse * ", " * booktitle quote * } - if$ - } - if$ -} - -FUNCTION {empty.misc.check} -{ author empty$ title empty$ howpublished empty$ - month empty$ year empty$ note empty$ - and and and and and - key empty$ not and - { "all relevant fields are empty in " cite$ * warning$ } - 'skip$ - if$ -} - -FUNCTION {format.thesis.type} -{ type empty$ - 'skip$ - { pop$ - type "t" change.case$ - } - if$ -} - -FUNCTION {format.tr.number} -{ type empty$ - { "Technical Report" } - 'type - if$ - number empty$ - { "t" change.case$ } - { number tie.or.space.connect } - if$ -} - -FUNCTION {format.article.crossref} -{ key empty$ - { journal empty$ - { "need key or journal for " cite$ * " to crossref " * crossref * - warning$ - "" - } - { "in {\em " journal * "\/} \cite{" * crossref * "}" *} - if$ - } - { "{\em in} \citeasnoun{" crossref * "}" * } - if$ - -} - -FUNCTION {format.book.crossref} -{ volume empty$ - { "empty volume in " cite$ * "'s crossref of " * crossref * warning$ - "in " - } - { "Vol." volume tie.or.space.connect - " of " * - } - if$ - editor empty$ - editor field.or.null author field.or.null = - or - { key empty$ - { series empty$ - { "need editor, key, or series for " cite$ * " to crossref " * - crossref * warning$ - "" * - } - { "{\em " * series * "\/} \cite{" * crossref * "}" *} - if$ - } - { " \citeasnoun{" * crossref * "}" * } - if$ - } - { " \citeasnoun{" * crossref * "}" * } - if$ -} - -FUNCTION {format.incoll.inproc.crossref} -{ editor empty$ - editor field.or.null author field.or.null = - or - { key empty$ - { booktitle empty$ - { "need editor, key, or booktitle for " cite$ * " to crossref " * - crossref * warning$ - "" - } - { "in {\em " booktitle * "\/}" * " \cite{" * crossref * "}" *} - if$ - } - { "{\em in} \citeasnoun{" crossref * "}" * } - if$ - } - { "{\em in} \citeasnoun{" crossref * "}" * } - if$ - -} - -INTEGERS { len } - -FUNCTION {chop.word} -{ 's := - 'len := - s #1 len substring$ = - { s len #1 + global.max$ substring$ } - 's - if$ -} - -FUNCTION {format.lab.names.abbr} -{ 's := - s num.names$ 'numnames := - numnames #1 > - { numnames #2 > - { s #1 "{vv~}{ll}" format.name$ " et al." * } - { s #2 "{ff }{vv }{ll}{ jj}" format.name$ "others" = - { s #1 "{vv~}{ll}" format.name$ " et al." * } - { s #1 "{vv~}{ll}" format.name$ " \& " * - s #2 "{vv~}{ll}" format.name$ * - } - if$ - } - if$ - } - { s #1 "{vv~}{ll}" format.name$ } - if$ -} - -FUNCTION {format.lab.names.full} -{ 's := - #1 'nameptr := - s num.names$ 'numnames := - numnames 'namesleft := - { namesleft #0 > } - { s nameptr "{vv~}{ll}" format.name$ 't := - nameptr #1 > - { namesleft #1 > - { ", " * t * } - { t "others" = - { " et~al." * } - { " \& " * t * } - if$ - } - if$ - } - 't - if$ - nameptr #1 + 'nameptr := - namesleft #1 - 'namesleft := - } - while$ -} - -INTEGERS { author.field editor.field organization.field title.field key.field } - -FUNCTION {init.field.constants} -{ #0 'author.field := - #1 'editor.field := - #2 'organization.field := - #3 'title.field := - #4 'key.field := -} - -FUNCTION {make.list.label} -{ author.field field.used = - { format.authors } - { editor.field field.used = - { format.editors } - { organization.field field.used = - { "The " #4 organization chop.word #3 text.prefix$ } - { title.field field.used = - { format.btitle } - { key.field field.used = - { key #3 text.prefix$ } - { "Internal error :001 on " cite$ * " label" * warning$ } - if$ - } - if$ - } - if$ - } - if$ - } - if$ -} - -FUNCTION {make.full.label} -{ author.field field.used = - { author format.lab.names.full } - { editor.field field.used = - { editor format.lab.names.full } - { organization.field field.used = - { "The " #4 organization chop.word #3 text.prefix$ } - { title.field field.used = - { format.btitle } - { key.field field.used = - { key #3 text.prefix$ } - { "Internal error :001 on " cite$ * " label" * warning$ } - if$ - } - if$ - } - if$ - } - if$ - } - if$ -} - -FUNCTION {make.abbr.label} %%%XXX change -{ - etal.allowed - { author.field field.used = - { author format.lab.names.abbr } - { editor.field field.used = - { editor format.lab.names.abbr } - { organization.field field.used = - { "The " #4 organization chop.word #3 text.prefix$ } - { title.field field.used = - { format.btitle } - { key.field field.used = - { key #3 text.prefix$ } - {"Internal error :001 on " cite$ * " label" * warning$ } - if$ - } - if$ - } - if$ - } - if$ - } - if$ - } - { make.full.label } - if$ -} - -FUNCTION {output.bibitem} -{ newline$ - etal.allowed %%%XXX change - etal.required - and - { - "\harvarditem[" write$ - make.abbr.label write$ - "]{" write$ - } - { - "\harvarditem{" write$ - } - if$ - make.full.label write$ - "}{" write$ - list.year write$ - "}{" write$ - cite$ write$ - "}" write$ - newline$ - "" - before.all 'output.state := -} - -FUNCTION {list.label.output} -{ make.list.label " " * write$ -} - -FUNCTION {article} -{ output.bibitem - list.label.output - " (" list.year * ")" * output.nonnull - author "author" item.check - title.field field.used = - { skip$ } - { format.title quote "title" output.check } - if$ - crossref missing$ - { journal emphasize "journal" duplicate$ item.check - pages empty$ - { - output - } - { - " " * - format.vol.num.pages * output - } - if$ - } - { format.article.crossref output.nonnull - format.pages output - } - if$ - new.block - note output - fin.entry -} - -FUNCTION {book} -{ output.bibitem - list.label.output - " (" list.year * ")" * output.nonnull - author empty$ - { editor "author and editor" item.check } - { crossref missing$ - { "author and editor" editor either.or.check } - 'skip$ - if$ - } - if$ - title.field field.used = - { skip$ } - { format.btitle "title" output.check } - if$ - crossref missing$ - { format.bvolume output - format.number.series output - format.edition output - publisher "publisher" output.check - address output - } - { format.book.crossref output.nonnull - format.edition output - } - if$ - new.block - note output - fin.entry -} - -FUNCTION {booklet} -{ output.bibitem - list.label.output - " (" list.year * ")" * output.nonnull - title.field field.used = - { skip$ } - { format.title quote "title" output.check } - if$ - howpublished output - address output - new.block - note output - fin.entry -} - -FUNCTION {inbook} -{ output.bibitem - list.label.output - " (" list.year * ")" * output.nonnull - author empty$ - { editor "author and editor" item.check } - { crossref missing$ - { "author and editor" editor either.or.check } - 'skip$ - if$ - } - if$ - title.field field.used = - { skip$ } - { format.btitle "title" output.check } - if$ - crossref missing$ - { format.bvolume output - format.number.series output - format.edition output - publisher "publisher" output.check - address output - } - { format.book.crossref output.nonnull - format.edition output - } - if$ - format.chapter.pages "chapter and pages" output.check - new.block - note output - fin.entry -} - -FUNCTION {incollection} -{ output.bibitem - list.label.output - " (" list.year * ")" * output.nonnull - title.field field.used = - { skip$ } - { format.title "title" output.check } - if$ - author "author" item.check - crossref missing$ - { format.in.ed.booktitle "booktitle" output.check - format.edition output - format.bvolume output - format.number.series output - publisher "publisher" output.check - address output - } - { format.incoll.inproc.crossref output.nonnull - } - if$ - format.chapter.pages output - new.block - note output - fin.entry -} - -FUNCTION {inproceedings} -{ output.bibitem - list.label.output - " (" list.year * ")" * output.nonnull - title.field field.used = - { skip$ } - { format.title "title" output.check } - if$ - author "author" item.check - crossref missing$ - { format.in.ed.booktitle "booktitle" output.check - format.bvolume output - format.number.series output - address empty$ - { organization output - publisher output - } - { organization output - publisher output - address output.nonnull - } - if$ - } - { format.incoll.inproc.crossref output.nonnull - } - if$ - format.pages output - new.block - note output - fin.entry -} - -FUNCTION {conference} { inproceedings } - -FUNCTION {manual} -{ output.bibitem - list.label.output - " (" list.year * ")" * output.nonnull - title.field field.used = - { skip$ } - { format.btitle "title" output.check } - if$ - format.edition output - author empty$ - { organization empty$ - { address output } - 'skip$ - if$ - } - { organization output - address output - } - if$ - new.block - note output - fin.entry -} - -FUNCTION {mastersthesis} -{ output.bibitem - list.label.output - " (" list.year * ")" * output.nonnull - author "author" item.check - title.field field.used = - { skip$ } - { format.title "title" output.check } - if$ - "Master's thesis" format.thesis.type output.nonnull - school "school" output.check - address output - new.block - note output - fin.entry -} - -FUNCTION {misc} -{ output.bibitem - list.label.output - " (" list.year * ")" * output.nonnull - title.field field.used = - { skip$ } - { format.title quote output } - if$ - howpublished output - new.block - note output - fin.entry - empty.misc.check -} - -FUNCTION {phdthesis} -{ output.bibitem - list.label.output - " (" list.year * ")" * output.nonnull - author "author" item.check - title.field field.used = - { skip$ } - { title "title" output.check } - if$ - "PhD thesis" format.thesis.type output.nonnull - school "school" output.check - address output - new.block - note output - fin.entry -} - -FUNCTION {proceedings} -{ output.bibitem - list.label.output - " (" list.year * ")" * output.nonnull - title.field field.used = - { skip$ } - { format.btitle "title" output.check } - if$ - format.bvolume output - format.number.series output - address empty$ - { editor empty$ - { skip$ } - { organization output - } - if$ - publisher output - } - { editor empty$ - 'skip$ - { organization output } - if$ - publisher output - address output.nonnull - } - if$ - new.block - note output - fin.entry -} - -FUNCTION {techreport} -{ output.bibitem - list.label.output - " (" list.year * ")" * output.nonnull - author "author" item.check - title.field field.used = - { skip$ } - { format.title "title" output.check } - if$ - format.tr.number output.nonnull - institution "institution" output.check - address output - new.block - note output - fin.entry -} - -FUNCTION {unpublished} -{ output.bibitem - list.label.output - " (" list.year * ")" * output.nonnull - author "author" item.check - title.field field.used = - { skip$ } - { format.title "title" output.check } - if$ - note "note" output.check - fin.entry -} - -FUNCTION {default.type} { misc } - -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"} - -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"} - -READ - -EXECUTE {init.field.constants} - -FUNCTION {sortify} -{ purify$ - "l" change.case$ -} - -FUNCTION {author.key.label} -{ author empty$ - { key empty$ - { title.field 'field.used := } - { key.field 'field.used := } - if$ - } - { author.field 'field.used := } - if$ -} - -FUNCTION {author.editor.key.label} -{ author empty$ - { editor empty$ - { key empty$ - { title.field 'field.used := } - { key.field 'field.used := } - if$ - } - { editor.field 'field.used := } - if$ - } - { author.field 'field.used := } - if$ -} - -FUNCTION {author.key.organization.label} -{ author empty$ - { key empty$ - { organization empty$ - { title.field 'field.used := } - { organization.field 'field.used := } - if$ - } - { key.field 'field.used := } - if$ - } - { author.field 'field.used := } - if$ -} - -FUNCTION {editor.key.organization.label} -{ editor empty$ - { key empty$ - { organization empty$ - { title.field 'field.used := } - { organization.field 'field.used := } - if$ - } - { key.field 'field.used := } - if$ - } - { editor.field 'field.used := } - if$ -} - -FUNCTION {sort.format.title} -{ 't := - "A " #2 - "An " #3 - "The " #4 t chop.word - chop.word - chop.word - sortify - #1 global.max$ substring$ -} - -FUNCTION {calc.label} %%%XXX change -{ make.abbr.label - title.field field.used = - { sort.format.title } - { sortify } - if$ - year field.or.null purify$ #-1 #4 substring$ sortify - * - 'sort.label := -} - -FUNCTION {preliminaries} %%%XXX change -{ type$ "book" = - type$ "inbook" = - or - 'author.editor.key.label - { type$ "proceedings" = - 'editor.key.organization.label - { type$ "manual" = - 'author.key.organization.label - 'author.key.label - if$ - } - if$ - } - if$ - author.field field.used = %%%XXX change - { - author num.names$ #2 > - { #1 } - { #0 } - if$ - 'etal.required := - } - { - editor.field field.used = - { - editor num.names$ #2 > - { #1 } - { #0 } - if$ - } - { #0 } - if$ - 'etal.required := - } - if$ - #1 'etal.allowed := -} - -FUNCTION {first.presort} -{ calc.label - sort.label - title.field field.used = - { skip$ } - { " " - * - make.list.label sortify - * - " " - * - title field.or.null - sort.format.title - * - } - if$ - #1 entry.max$ substring$ - 'sort.key$ := -} - -ITERATE {preliminaries} - -ITERATE {first.presort} - -SORT - -STRINGS { last.sort.label next.extra last.full.label} - -INTEGERS { last.extra.num last.etal.allowed} - -FUNCTION {initialize.confusion} -{ #0 int.to.chr$ 'last.sort.label := - #0 int.to.chr$ 'last.full.label := - #1 'last.etal.allowed := -} - -FUNCTION {confusion.pass} -{ last.sort.label sort.label = - { last.etal.allowed - { last.full.label make.full.label sortify = - { skip$ } - { #0 'etal.allowed := - #0 'last.etal.allowed := - } - if$ - } - { #0 'etal.allowed := } - if$ - } - { sort.label 'last.sort.label := - make.full.label sortify 'last.full.label := - #1 'last.etal.allowed := - } - if$ -} - -EXECUTE {initialize.confusion} - -ITERATE {confusion.pass} - -EXECUTE {initialize.confusion} - -REVERSE {confusion.pass} - -FUNCTION {initialize.last.extra.num} -{ #0 int.to.chr$ 'last.sort.label := - "" 'next.extra := - #0 'last.extra.num := -} - -FUNCTION {forward.pass} -{ last.sort.label sort.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 := - sort.label 'last.sort.label := - } - if$ -} - -FUNCTION {reverse.pass} -{ next.extra "b" = - { "a" 'extra.label := } - 'skip$ - if$ - year empty$ - { "n.d." extra.label emphasize * 'list.year := } - { year extra.label emphasize * 'list.year := } - if$ - extra.label 'next.extra := -} - -ITERATE {first.presort} - -SORT - -EXECUTE {initialize.last.extra.num} - -ITERATE {forward.pass} - -REVERSE {reverse.pass} - -FUNCTION {second.presort} -{ make.list.label - title.field field.used = - { sort.format.title } - { sortify } - if$ - " " - * - list.year field.or.null sortify - * - " " - * - title.field field.used = - { skip$ } - { title field.or.null - sort.format.title - * - } - if$ - #1 entry.max$ substring$ - 'sort.key$ := -} - -ITERATE {second.presort} - -SORT - -FUNCTION {begin.bib} -{ preamble$ empty$ - 'skip$ - { preamble$ write$ newline$ } - if$ - "\begin{thebibliography}{xx}" write$ newline$ -} - -EXECUTE {begin.bib} - -EXECUTE {init.state.consts} - -ITERATE {call.type$} - -FUNCTION {end.bib} -{ newline$ - "\end{thebibliography}" write$ newline$ -} - -EXECUTE {end.bib} diff --git a/Master/texmf-dist/bibtex/bst/economic/ajae.bst b/Master/texmf-dist/bibtex/bst/economic/ajae.bst deleted file mode 100644 index f8dffc7db40..00000000000 --- a/Master/texmf-dist/bibtex/bst/economic/ajae.bst +++ /dev/null @@ -1,1662 +0,0 @@ -%%% American Journal of Agricultural Economics (AJAE) -%%% bibliography style for use with LaTeX2e -%%% version: 1.0 (20 August 2006) -%%% license: LaTeX Project Public License (see below) -%%% This file was created with makebst (see below) and modified -%%% by Arne Henningsen and Karsten Heymann. -%%% Note: This is an unofficial style file that may not fully comply -%%% with the AJAE Reference Guide 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 -%%% -%%% It is recommended to use the document class "ajae" -%%% or to add (at least) the following lines to the LaTeX preamble: -%%% \usepackage[authoryear]{natbib} -%%% \bibpunct{(}{)}{;}{a}{}{,} -%%% -%% -%% This is file `ajae.bst', -%% generated with the docstrip utility. -%% -%% The original source files were: -%% -%% merlin.mbs (with options: `ay,nat,nm-rev1,jnrlst,nmdash,keyxyr,dt-beg,yr-per,yrp-per,yrpp-xsp,note-yr,tit-qq,atit-u,thtit-a,vnum-x,pp-last,num-xser,jnm-x,add-pub,pre-pub,blk-tit,pp,ed,abr,ednx,ord,and-com') -%% ---------------------------------------- -%% *** AJAE *** -%% -%% Copyright 1994-2002 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}[2002/10/21 4.05 (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 - 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 {no.blank.or.punct} -{ "\hspace{0pt}" * 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 {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$ "" } - { "{\em " 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} -{ "Working paper" } - -FUNCTION {bbl.mthesis} -{ "MS thesis" } - -FUNCTION {bbl.phdthesis} -{ "PhD dissertation" } - -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 - duplicate$ #1 > - { "{f{.}.~}{vv~}{ll}{, jj}" } - { "{vv~}{ll}{, f{.}.}{, jj}" } - if$ - 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 * } - { - numnames #2 > - { "," * } - 'skip$ - if$ - 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 - * - } - if$ -} -FUNCTION {format.additional.editors} -{ editor "editor" format.names.ed duplicate$ empty$ 'skip$ - { - "," * - " " * - get.bbl.editor - * - } - if$ -} -FUNCTION {format.note} -{ - note empty$ - { "" } - { note #1 #1 substring$ - note #2 global.max$ substring$ * "note" bibinfo.check - } - if$ -} - -FUNCTION {format.title} -{ title - "title" bibinfo.check - duplicate$ empty$ 'skip$ - { - "\bibenquote{" 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$ - { 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 {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 } - { - volume empty$ - { - } - { ":" * - } - if$ - swap$ - n.dashify - "pages" bibinfo.check - * - } - if$ - } - if$ -} -FUNCTION {format.vol.num.pages} -{ volume field.or.null - duplicate$ empty$ 'skip$ - { - "volume" bibinfo.check - } - if$ - journal "Journal of Economic Perspectives" = - journal "American Economic Review: Papers and Proceedings" = + - journal "Journal of Environmental Economics and Management" = + - { number "number" bibinfo.check duplicate$ empty$ 'skip$ - { "(" swap$ * ")" * - } - if$ * - } - 'skip$ - 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$ - { - 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$ } - { " No." swap$ 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.sentence - crossref missing$ - { - journal - "journal" bibinfo.check - emphasize - "journal" output.check - volume empty$ - { ", " * - month empty$ - 'skip$ - { month * - ", " * - } - if$ - } - { add.blank - } - if$ - format.vol.num.pages output - } - { format.article.crossref output.nonnull - } - if$ - volume empty$ - { pages "in press" = - 'skip$ - { - "pp. " * - } - if$ - } - 'skip$ - if$ - format.journal.pages - 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 - format.edition output - author empty$ - { - } - { format.additional.editors "editor" output.check - } - if$ - crossref missing$ - { format.bvolume output - new.sentence - format.number.series output - format.publisher.address output - } - { - new.sentence - format.book.crossref output.nonnull - } - if$ - 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.sentence - howpublished "howpublished" bibinfo.check output - address "address" bibinfo.check output - format.note output - month 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.publisher.address output - format.bvolume output - format.chapter.pages "chapter and pages" output.check - new.sentence - format.number.series output - } - { - format.chapter.pages "chapter and pages" output.check - new.sentence - format.book.crossref output.nonnull - } - if$ - format.edition output - format.pages "pages" output.check - 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.sentence - crossref missing$ - { format.in.ed.booktitle "booktitle" output.check - new.sentence - 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.pages "pages" output.check - 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.sentence - crossref missing$ - { format.in.ed.booktitle "booktitle" output.check - new.sentence - publisher empty$ - { format.organization.address output } - { organization "organization" bibinfo.check output - format.publisher.address output - } - if$ - format.bvolume output - format.number.series output - } - { format.incoll.inproc.crossref output.nonnull - } - if$ - format.pages "pages" output.check - 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 - new.sentence - organization empty$ - { - format.edition output - format.note output - address "address" bibinfo.check output - } - { - address "address" bibinfo.check duplicate$ " " = - { skip$ } - { ": " * } - if$ - organization "organization" bibinfo.check * output - format.edition output - format.note output - } - if$ - month 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.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 - name.or.dash - 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 - name.or.dash - 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 - name.or.dash - 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 - name.or.dash - 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 - month 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 - " Unpublished" * - 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 := % s := Namensliste - "" 't := % t := "" - s #1 "{vv~}{ll}" format.name$ % formatiere 1. Namen - s num.names$ duplicate$ % bestimme # Namen - #3 > % mehr als 3 Namen? - { pop$ - " " * bbl.etal * % dann: Ausgabe von et.al - } - { duplicate$ #3 = % sonst: 3 Namen? - { pop$ - ", " * - s #2 "{vv~}{ll}" format.name$ * % gib 2. Namen aus - - s #3 "{ff }{vv }{ll}{ jj}" format.name$ "others" = % Wenn Name#3 = "others" - { " " * bbl.etal * % dann et.al. - } - { ", " * bbl.and * " " * s #3 "{vv~}{ll}" format.name$ % sonst "and Autor#3" - * } - if$ - } - { #2 < % sonst: Wenn weniger als 2 Namen - 'skip$ % dann nix, sonst: - { s #2 "{ff }{vv }{ll}{ jj}" format.name$ "others" = % Wenn Name#2 = "others" - { - " " * bbl.etal * % dann et.al. - } - { bbl.and space.word * s #2 "{vv~}{ll}" format.name$ % sonst "and Autor#2" - * } - if$ - } - 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 - " " - * - title field.or.null - sort.format.title - * - " " - * - year field.or.null sortify - * - #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{\bibenquote}[1]{``#1''}" - write$ newline$ - "\expandafter\ifx\csname natexlab\endcsname\relax\def\natexlab#1{#1}\fi" - 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 `ajae.bst'. diff --git a/Master/texmf-dist/bibtex/bst/economic/cje.bst b/Master/texmf-dist/bibtex/bst/economic/cje.bst deleted file mode 100644 index 632e4988d01..00000000000 --- a/Master/texmf-dist/bibtex/bst/economic/cje.bst +++ /dev/null @@ -1,1192 +0,0 @@ -% BibTeX bibliography style `cje' (Canadian Journal of Economics) -% this file is based on the `harvard' family of files - % version 0.99a for BibTeX versions 0.99a or later, LaTeX version 2.09. - % Copyright (C) 1991, all rights reserved. - % Copying of this file is authorized only if either - % (1) you make absolutely no changes to your copy, including name, or - % (2) if you do make changes, you name it something other than - % btxbst.doc, plain.bst, unsrt.bst, alpha.bst, abbrv.bst, agsm.bst, - % dcu.bst, cje.bst, aer.bst, or kluwer.bst. - % This restriction helps ensure that all standard styles are identical. - -% ACKNOWLEDGEMENT: -% This document is a modified version of alpha.bst to which it owes much of -% its functionality. - -% AUTHOR -% Peter Williams, Key Centre for Design Quality, Sydney University -% e-mail: peterw@archsci.arch.su.oz.au - -ENTRY - { address author booktitle chapter edition editor howpublished institution - journal key month note number organization pages publisher school - series title type volume year} - { field.used } - { canonical.label extra.label sort.label list.year } - - -INTEGERS {quoted italic bold plain attribute - space comma tiedcomma semicolon colon period block empty separator - prev.separator next.separator next.attribute} - -STRINGS { s temp f name.list first.name.format later.name.formats name.style} - -FUNCTION {init.state.consts} -{ - #100 'quoted := - #200 'italic := - #300 'bold := - #400 'plain := - - #7 'space := - #6 'comma := -% #5 'tiedcomma := -% #4 'semicolon := -% #3 'colon := - #2 'period := - #1 'block := - #0 'empty := -} - -FUNCTION {output2} -{ -% Wrap the attribute. - attribute bold = {"{\bf " swap$ * "}" *} {} if$ - attribute italic = {"{\it " swap$ * "}" *} {} if$ - attribute quoted = {"`" swap$ * "'" *} {} if$ -% Append additional separators - separator comma = {"," * space 'separator :=} {} if$ -% separator tiedcomma = {",~" * empty 'separator :=} {} if$ - separator space = {" " *} {} if$ - write$ - separator block = {newline$ "\newblock " write$} {} if$ -% Update variables, and put the new string back on the stack - next.attribute 'attribute := - next.separator 'separator := - temp -} - -% <string> <separator> <string> <attribute> <final separator> output <string> -FUNCTION {output.nonnull} -{ 'next.separator := - 'next.attribute := - 'temp := - 'prev.separator := -% If the new separator is stronger than the previous one, use it. - prev.separator separator < {prev.separator 'separator :=} {} if$ -% Append most separators to the string. - separator block = {add.period$} {} if$ - separator period = {add.period$ space 'separator :=} {} if$ - separator comma = {"," * space 'separator :=} {} if$ -% separator semicolon = {";" * space 'separator :=} {} if$ -% separator colon = {":" * space 'separator :=} {} if$ - output2 -} - -FUNCTION {output} -{ 'next.separator := - 'next.attribute := - duplicate$ empty$ - {pop$ pop$} - {next.attribute next.separator output.nonnull} - if$ -} - -FUNCTION {output.check} -{ 's := - 'next.separator := - 'next.attribute := - duplicate$ empty$ - {pop$ pop$ "empty " s * " in " * cite$ * warning$ } - {next.attribute next.separator output.nonnull} - if$ -} - -FUNCTION {item.check} -{ 'temp := - empty$ - { "empty " temp * " in " * cite$ * warning$ } - {} - if$ -} - -FUNCTION {plain.space} { plain space } - -FUNCTION {plain.space.output} { plain.space output } - -FUNCTION {fin.entry} -{ block note plain.space.output - - empty 'separator := - empty "" plain empty output.nonnull pop$ - newline$ -} - -FUNCTION {not} -{ { #0 } - { #1 } - if$ -} - -FUNCTION {and} -{ {} - { pop$ #0 } - if$ -} - -FUNCTION {or} -{ { pop$ #1 } - {} - if$ -} - -FUNCTION {field.or.null} -{ duplicate$ empty$ - { pop$ "" } - {} - if$ -} - -FUNCTION {emphasize} -{ duplicate$ empty$ - { pop$ "" } - { "{\em " swap$ * "}" * } - if$ -} - -FUNCTION {quote} -{ duplicate$ empty$ - { pop$ "" } - { add.period$ "`" swap$ * "'" * } - if$ -} - -INTEGERS { nameptr namesleft numnames } - -FUNCTION {format.names} -{ 'name.list := - 'name.style := - 'later.name.formats := - 's := % binary separator - 'first.name.format := - #1 'nameptr := - name.list num.names$ 'numnames := -% If we're to make this entry bold or something, prepend to the string of names - name.style "" = {} {"{" name.style *} if$ - numnames 'namesleft := - { namesleft #0 > } - { name.list nameptr nameptr #1 = {first.name.format} {later.name.formats} if$ - format.name$ 'temp := - nameptr #1 > - { namesleft #1 > - { ", " * temp * } - { temp "others" = - { " et~al." * } - {nameptr #2 = % handle ", and" vs " and " - {s * temp *} - {", and " * temp * } - if$ - } - if$ - } - if$ - } - 'temp - if$ - nameptr #1 + 'nameptr := - namesleft #1 - 'namesleft := - } - while$ -% If we're to make this entry bold or something, append to the string of names - name.style "" = {} {"}" * *} if$ -} - -FUNCTION {format.authors} -{ author empty$ - { "" } - { extra.label "\bysame" = - {"\bysame"} - { "{vv~}{ll}{, jj}{, ff}" ", and " "{ff~}{vv~}{ll}{, jj}" "" author - format.names } - if$ - } - if$ -} - -FUNCTION {format.editors} -{ editor empty$ - { "" } - { "{vv~}{ll}{, jj}{, ff}" ", and " "{ff~}{vv~}{ll}{, jj}" "" - editor format.names - editor num.names$ #1 > - { ", eds" * } - { ", ed." * } - if$ - } - if$ -} - -FUNCTION {format.editors.reverse} -{ editor empty$ - { "" } - { "ed. " - "{ff~}{vv~}{ll}{, jj}" " and " "{ff~}{vv~}{ll}{, jj}" "" - editor format.names - * - } - if$ -} - -FUNCTION {format.title} -{ space - title empty$ - { "" } - { title "t" change.case$} - if$ - quoted period -} - -FUNCTION {n.dashify} -{ 'temp := - "" - { temp empty$ not } - { temp #1 #1 substring$ "-" = - { temp #1 #2 substring$ "--" = not - { "--" * - temp #2 global.max$ substring$ 'temp := - } - { { temp #1 #1 substring$ "-" = } - { "-" * - temp #2 global.max$ substring$ 'temp := - } - while$ - } - if$ - } - { temp #1 #1 substring$ * - temp #2 global.max$ substring$ 'temp := - } - if$ - } - while$ -} - -FUNCTION {format.btitle} -{ title emphasize -} - -FUNCTION {tie.or.space.connect} -{ duplicate$ text.length$ #3 < - { "~" } - { " " } - if$ - swap$ * * -} - -FUNCTION {either.or.check} -{ empty$ - 'pop$ - { "can't use both " swap$ * " fields in " * cite$ * warning$ } - if$ -} - -FUNCTION {format.bvolume} -{ volume empty$ - { "" } - { "vol." volume tie.or.space.connect - series empty$ - {} - { " of " * series emphasize * } - if$ - "volume and number" number either.or.check - } - if$ -} - -FUNCTION {mid.sentence.q} -{ - separator empty = separator block = separator period = or or not -} - -FUNCTION {format.number.series} -{ volume empty$ - { number empty$ - {series field.or.null} - { mid.sentence.q - { "number" } - { "Number" } - if$ - number tie.or.space.connect - series empty$ - { "there's a number but no series in " cite$ * warning$ } - { add.period$ " In " * series quote * } - if$ - } - if$ - } - { "" } - if$ -} - -FUNCTION {format.edition} -{ edition empty$ - { "" } - { edition - mid.sentence.q { "l"} { "t"} if$ - change.case$ " ed." * - } - if$ -} - -FUNCTION {format.publisher.address} -{ - publisher empty$ address empty$ and - {} - { space - address empty$ {"("} {"(" address *} if$ - publisher empty$ address empty$ or {} {": " *} if$ - publisher empty$ {} {publisher *} if$ - ")" * plain.space output.nonnull - } - if$ -} - -INTEGERS { multiresult } - -FUNCTION {multi.page.check} -{ 'temp := - #0 'multiresult := - { multiresult not - temp empty$ not - and - } - { temp #1 #1 substring$ - duplicate$ "-" = - swap$ duplicate$ "," = - swap$ "+" = - or or - { #1 'multiresult := } - { temp #2 global.max$ substring$ 'temp := } - if$ - } - while$ - multiresult -} - -FUNCTION {format.pages} -{ pages empty$ - { "" } - { pages multi.page.check - { "pp.~" pages n.dashify * } - { "p.~" pages * } - if$ - } - if$ -} - -FUNCTION {output.vol.num.pages} -{ space - volume field.or.null - number empty$ - {} - { "(" number * ")" * * - volume empty$ - { "there's a number but no volume in " cite$ * warning$ } - {} - if$ - } - if$ - pages empty$ - {} - { duplicate$ empty$ - { pop$ format.pages } - { ",~" * pages n.dashify * } - if$ - } - if$ - plain.space.output -} - -FUNCTION {format.chapter.pages} -{ chapter empty$ - 'format.pages - { type empty$ - { "chapter" } - { type "l" change.case$ } - if$ - chapter tie.or.space.connect - pages empty$ - {} - { ", " * format.pages * } - if$ - } - if$ -} - -FUNCTION {output.in.ed.booktitle} -{ booktitle empty$ - { booktitle "booktitle" item.check } - { space "In" plain.space output.nonnull - editor empty$ - { space booktitle quoted space output.nonnull} - { space booktitle italic comma output.nonnull - comma format.editors.reverse plain.space output.nonnull} - if$ - } - if$ -} - -FUNCTION {empty.misc.check} -{ author empty$ title empty$ howpublished empty$ - month empty$ year empty$ note empty$ - and and and and and - key empty$ not and - { "all relevant fields are empty in " cite$ * warning$ } - {} - if$ -} - -FUNCTION {format.thesis.type} -{ type empty$ - {} - { pop$ - type "t" change.case$ - } - if$ -} - -FUNCTION {format.tr.number} -{ type empty$ - { "Technical Report" } - 'type - if$ - number empty$ - { } - { number tie.or.space.connect } - if$ -} - -FUNCTION {format.article.crossref} -{ key empty$ - { journal empty$ - { "need key or journal for " cite$ * " to crossref " * crossref * - warning$ - "" - } - { "in {\it " journal * "\/} \cite{" * crossref * "}" *} - if$ - } - { add.period$ "In \citeasnoun{" crossref * "}" * } - if$ - -} - -FUNCTION {format.book.crossref} -{ volume empty$ - { "empty volume in " cite$ * "'s crossref of " * crossref * warning$ - "in " - } - { "Vol." volume tie.or.space.connect - " of " * - } - if$ - editor empty$ - editor field.or.null author field.or.null = - or - { key empty$ - { series empty$ - { "need editor, key, or series for " cite$ * " to crossref " * - crossref * warning$ - "" * - } - { "{\it " * series * "\/} \cite{" * crossref * "}" *} - if$ - } - { " \citeasnoun{" * crossref * "}" * } - if$ - } - { " \citeasnoun{" * crossref * "}" * } - if$ -} - -FUNCTION {output.incoll.inproc.crossref} -{ editor empty$ - editor field.or.null author field.or.null = - or - { key empty$ - { booktitle empty$ - { "need editor, key, or booktitle for " cite$ * " to crossref " * - crossref * warning$ - } - { period "In {\it " booktitle * "\/}" * " \cite{" * crossref * "}" * plain.space output.nonnull} - if$ - } - { period "In \citeasnoun{" crossref * "}" * plain.space output.nonnull} - if$ - } - { period "In \citeasnoun{" crossref * "}" * plain.space output.nonnull} - if$ -} - -INTEGERS { len } - -FUNCTION {chop.word} -{ 's := - 'len := - s #1 len substring$ = - { s len #1 + global.max$ substring$ } - 's - if$ -} - -INTEGERS { author.field editor.field organization.field title.field key.field } - -FUNCTION {init.field.constants} -{ #0 'author.field := - #1 'editor.field := - #2 'organization.field := - #3 'title.field := - #4 'key.field := -} - -FUNCTION {format.lab.names.abbr} -{ 'name.list := - name.list num.names$ 'numnames := - numnames #1 > - { numnames #2 > - { name.list #1 "{vv~}{ll}" format.name$ " et al." * } - { name.list #2 "{ff }{vv }{ll}{ jj}" format.name$ "others" = - { name.list #1 "{vv~}{ll}" format.name$ " et al." * } - { name.list #1 "{vv~}{ll}" format.name$ " and " * - name.list #2 "{vv~}{ll}" format.name$ * - } - if$ - } - if$ - field.used editor.field = {", eds" *} {} if$ - } - { - name.list #1 "{vv~}{ll}" format.name$ - field.used editor.field = {", ed" *} {} if$ - } - if$ -} - -FUNCTION {format.lab.names.full} -{ 'name.list := - #1 'nameptr := - name.list num.names$ 'numnames := - numnames 'namesleft := - { namesleft #0 > } - { name.list nameptr "{vv~}{ll}" format.name$ 'temp := - nameptr #1 > - { namesleft #1 > - { ", " * temp * } - { temp "others" = - { " et~al." * } - { " and " * temp * } - if$ - } - if$ - } - 'temp - if$ - nameptr #1 + 'nameptr := - namesleft #1 - 'namesleft := - } - while$ - numnames #1 > field.used editor.field = and {", eds" *} {} if$ - numnames #1 = field.used editor.field = and {", ed" *} {} if$ -} - -FUNCTION {make.list.label} -{ author.field field.used = - { format.authors } - { editor.field field.used = - { format.editors } - { organization.field field.used = - { "The " #4 organization chop.word} - { title.field field.used = - { format.btitle } - { key.field field.used = - { key #3 text.prefix$ } - { "Internal error :001 on " cite$ * " label" * warning$ } - if$ - } - if$ - } - if$ - } - if$ - } - if$ -} - -FUNCTION {make.full.label} -{ author.field field.used = - { author format.lab.names.full } - { editor.field field.used = - { editor format.lab.names.full } - { organization.field field.used = - { "The " #4 organization chop.word #3 text.prefix$ } - { title.field field.used = - { format.btitle } - { key.field field.used = - { key #3 text.prefix$ } - { "Internal error :001 on " cite$ * " label" * warning$ } - if$ - } - if$ - } - if$ - } - if$ - } - if$ -} - -FUNCTION {make.abbr.label} -{ author.field field.used = - { author format.lab.names.abbr } - { editor.field field.used = - { editor format.lab.names.abbr } - { organization.field field.used = - { "The " #4 organization chop.word #3 text.prefix$ } - { title.field field.used = - { format.btitle } - { key.field field.used = - { key #3 text.prefix$ } - { "Internal error :001 on " cite$ * " label" * warning$ } - if$ - } - if$ - } - if$ - } - if$ - } - if$ -} - -FUNCTION {output.bibitem} -{ newline$ - "\harvarditem[" write$ - make.abbr.label write$ - "]{" write$ - make.full.label write$ - "}{" write$ - list.year write$ - "}{" write$ - cite$ write$ - "}" write$ - newline$ - "" - empty 'separator := - plain 'attribute := - - -% FUNCTION {list.label.output} - -space make.list.label plain.space output.nonnull - "n.d." list.year = - {} - { space "(" list.year * ")" * plain.space output.nonnull} - if$ -} - -FUNCTION {format.title.if.not.sortkey} -{title.field field.used = - {} - { format.title output } - if$} - -FUNCTION {format.title.if.not.sortkey.check} -{title.field field.used = - {} - { format.title "title" output.check } - if$} - -FUNCTION {article} -{ output.bibitem - author "author" item.check - format.title.if.not.sortkey.check - crossref missing$ - { space journal italic space "journal" output.check - pages empty$ - {} - {output.vol.num.pages} - if$ - } - { space format.article.crossref plain.space output.nonnull - comma format.pages plain.space.output - } - if$ - fin.entry -} - -FUNCTION {book} -{ output.bibitem - author empty$ - { editor "author and editor" item.check } - { crossref missing$ - { "author and editor" editor either.or.check } - {} - if$ - } - if$ - title.field field.used = - {} - { space title italic space "title" output.check } - if$ - crossref missing$ - { - space format.number.series plain.space.output - comma format.edition plain.space.output - comma format.bvolume plain.space.output - format.publisher.address - } - { space format.book.crossref plain.space output.nonnull - comma format.edition plain.space.output - } - if$ - fin.entry -} - -FUNCTION {booklet} -{ output.bibitem - format.title.if.not.sortkey.check - space howpublished plain.space.output - space address plain.space.output - fin.entry -} - -FUNCTION {inbook} -{ output.bibitem - author empty$ - { editor "author and editor" item.check } - { crossref missing$ - { "author and editor" editor either.or.check } - {} - if$ - } - if$ - title.field field.used = - {} - { space title italic space "title" output.check } - if$ - crossref missing$ - { space format.number.series plain.space.output - comma format.edition plain.space.output - comma format.bvolume plain comma output - format.publisher.address -% space publisher plain.space "publisher" output.check -% space address plain.space.output - } - { space format.book.crossref plain.space output.nonnull - comma format.edition plain.space.output - } - if$ - format.chapter.pages "chapter and pages" output.check - fin.entry -} - -FUNCTION {incollection} -{ output.bibitem - format.title.if.not.sortkey.check - author "author" item.check - crossref missing$ - { output.in.ed.booktitle - comma format.edition plain.space.output - comma format.bvolume plain.space.output - space format.number.series plain.space.output - format.publisher.address - } - { output.incoll.inproc.crossref } - if$ - space format.chapter.pages plain.space.output - fin.entry -} - -FUNCTION {inproceedings} -{ output.bibitem - format.title.if.not.sortkey.check - author "author" item.check - crossref missing$ - { output.in.ed.booktitle - comma format.bvolume plain.space.output - space format.number.series plain.space.output - address empty$ - { space organization plain.space.output - space publisher plain.space.output - } - { space organization plain.space.output - space publisher plain.space.output - space address plain.space output.nonnull - } - if$ - } - { output.incoll.inproc.crossref} - if$ - space format.pages plain.space.output - fin.entry -} - -FUNCTION {conference} { inproceedings } - -FUNCTION {manual} -{ output.bibitem - title.field field.used = - {} - {author empty$ {comma}{space} if$ - title italic space "title" output.check } - if$ - organization.field field.used = organization empty$ or - {} {space organization plain.space output.nonnull} if$ - comma format.edition plain.space.output - format.publisher.address - fin.entry -} - -FUNCTION {mastersthesis} -{ output.bibitem - author "author" item.check - format.title.if.not.sortkey.check space "Master's thesis" format.thesis.type plain.space output.nonnull - comma school plain.space "school" output.check - comma address plain.space.output - fin.entry -} - -FUNCTION {misc} -{ output.bibitem - format.title.if.not.sortkey - space howpublished plain.space.output - fin.entry - empty.misc.check -} - -FUNCTION {phdthesis} -{ output.bibitem - author "author" item.check - format.title.if.not.sortkey.check - space "PhD dissertation" format.thesis.type plain.space output.nonnull - comma school plain.space "school" output.check - comma address plain.space.output - fin.entry -} - -FUNCTION {proceedings} -{ output.bibitem - title.field field.used = - {} - { space title italic space "title" output.check } - if$ - comma format.bvolume plain.space.output - space format.number.series plain.space.output - address empty$ - { editor empty$ - {} - { space organization plain.space.output - } - if$ - space publisher plain.space.output - } - { editor empty$ - {} - { space organization plain.space.output } - if$ - space publisher plain.space.output - space address plain.space output.nonnull - } - if$ - fin.entry -} - -FUNCTION {techreport} -{ output.bibitem - author "author" item.check - format.title.if.not.sortkey.check - space format.tr.number plain.space output.nonnull - institution empty$ - {} - { comma institution plain.space "institution" output.check } - if$ - comma address plain.space.output - comma month plain.space.output - fin.entry -} - -FUNCTION {unpublished} -{ output.bibitem - author "author" item.check - format.title.if.not.sortkey.check - note "note" item.check - fin.entry -} - -FUNCTION {default.type} { misc } - -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"} - -READ - -EXECUTE {init.field.constants} - -FUNCTION {sortify} -{ purify$ - "l" change.case$ -} - -FUNCTION {author.key.label} -{ author empty$ - { title empty$ - { key.field 'field.used := } - { title.field 'field.used := } - if$ - } - { author.field 'field.used := } - if$ -} - -FUNCTION {author.editor.key.label} -{ author empty$ - { editor empty$ - { title empty$ - { key.field 'field.used := } - { title.field 'field.used := } - if$ - } - { editor.field 'field.used := } - if$ - } - { author.field 'field.used := } - if$ -} - -FUNCTION {author.key.organization.label} -{ author empty$ - { organization empty$ - { title empty$ - { key.field 'field.used := } - { title.field 'field.used := } - if$ - } - { organization.field 'field.used := } - if$ - } - { author.field 'field.used := } - if$ -} - -FUNCTION {editor.key.organization.label} -{ editor empty$ - { organization empty$ - { title empty$ - { key.field 'field.used := } - { title.field 'field.used := } - if$ - } - { organization.field 'field.used := } - if$ - } - { editor.field 'field.used := } - if$ -} - -FUNCTION {sort.format.title} -{ 'temp := - "A " #2 - "An " #3 - "The " #4 temp chop.word - chop.word - chop.word - sortify - #1 global.max$ substring$ -} - -FUNCTION {calc.label} -{ type$ "book" = - type$ "inbook" = - or - 'author.editor.key.label - { type$ "proceedings" = - 'editor.key.organization.label - { type$ "manual" = - 'author.key.organization.label - 'author.key.label - if$ - } - if$ - } - if$ - make.abbr.label - title.field field.used = - { sort.format.title } - { sortify } - if$ - year field.or.null purify$ #-1 #4 substring$ sortify - * - 'sort.label := -} - -FUNCTION {first.presort} -{ calc.label - sort.label - title.field field.used = - {} - { " " - * - make.list.label sortify - * - " " - * - title field.or.null - sort.format.title - * - } - if$ - #1 entry.max$ substring$ - 'sort.key$ := -} - -ITERATE {first.presort} - -SORT - -STRINGS { last.sort.label next.extra } - -INTEGERS { last.extra.num } - -FUNCTION {initialize.last.extra.num} -{ #0 int.to.chr$ 'last.sort.label := - "" 'next.extra := - #0 'last.extra.num := -} - -FUNCTION {forward.pass} -{ last.sort.label sort.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 := - sort.label 'last.sort.label := - } - if$ -} - -FUNCTION {reverse.pass} -{ next.extra "b" = - { "a" 'extra.label := } - {} - if$ - year empty$ - { "n.d." extra.label * 'list.year := } - { year extra.label * 'list.year := } - if$ - extra.label 'next.extra := -} - -EXECUTE {initialize.last.extra.num} - -ITERATE {forward.pass} - -REVERSE {reverse.pass} - -FUNCTION {second.presort} -{ make.list.label - title.field field.used = - { sort.format.title } - { sortify } - if$ - " " - * - list.year field.or.null sortify - * - " " - * - title.field field.used = - {} - { title field.or.null - sort.format.title - * - } - if$ - #1 entry.max$ substring$ - 'sort.key$ := -} - -ITERATE {second.presort} - -SORT - -STRINGS { prev.author } - -INTEGERS { number.label } - -FUNCTION {initialize.longest.label} -{ - #1 'number.label := - "abcxyz" 'prev.author := -} - -FUNCTION {longest.label.pass} -{ -author empty$ { editor empty$ {"foo"} {editor} if$} {author} if$ - prev.author = - { "\bysame" 'extra.label := } - { "" 'extra.label := -author empty$ { editor empty$ {"abcxyz"} {editor} if$} {author} if$ - 'prev.author := - } - if$ -} - -EXECUTE {initialize.longest.label} - -ITERATE {longest.label.pass} - -FUNCTION {begin.bib} -{ preamble$ empty$ - {} - { preamble$ write$ newline$ } - if$ - "\ifx\undefined\bysame" write$ newline$ - "\newcommand{\bysame}{\leavevmode\hbox to\leftmargin{\hrulefill\,\,}}" - write$ newline$ - "\fi" write$ newline$ - "\begin{thebibliography}{xx}" write$ newline$ -} - -EXECUTE {begin.bib} - -EXECUTE {init.state.consts} - -ITERATE {call.type$} - -FUNCTION {end.bib} - {newline$ "\end{thebibliography}" write$ newline$ } - -EXECUTE {end.bib} - diff --git a/Master/texmf-dist/bibtex/bst/economic/econometrica-fr.bst b/Master/texmf-dist/bibtex/bst/economic/econometrica-fr.bst deleted file mode 100644 index 285107d20be..00000000000 --- a/Master/texmf-dist/bibtex/bst/economic/econometrica-fr.bst +++ /dev/null @@ -1,1241 +0,0 @@ -%%% Econometrica-fr bibliography style -%%% For use with harvard.sty and LaTeX2e (NFSS) or LaTeX 2.09 -%%% 24-aug-94 -%%% -%%% Based on econometrica.bst, but with modifications by -%%% horny@cournot.u-strasbg.fr -%%% Please report any problems to me. -%%% -%% NOTICE: -%% This file may be used for non-profit purposes. -%% It may not be distributed in exchange for money, -%% other than distribution costs. -%% -%% The author provides it `as is' and does not guarantee it in any way. -%% -%%----------------------------------------------------------- -%% \CharacterTable -%% {Upper-case \A\B\C\D\E\F\G\H\I\J\K\L\M\N\O\P\Q\R\S\T\U\V\W\X\Y\Z -%% Lower-case \a\b\c\d\e\f\g\h\i\j\k\l\m\n\o\p\q\r\s\t\u\v\w\x\y\z -%% Digits \0\1\2\3\4\5\6\7\8\9 -%% Exclamation \! Double quote \" Hash (number) \# -%% Dollar \$ Percent \% Ampersand \& -%% Acute accent \' Left paren \( Right paren \) -%% Asterisk \* Plus \+ Comma \, -%% Minus \- Point \. Solidus \/ -%% Colon \: Semicolon \; Less than \< -%% Equals \= Greater than \> Question mark \? -%% Commercial at \@ Left bracket \[ Backslash \\ -%% Right bracket \] Circumflex \^ Underscore \_ -%% Grave accent \` Left brace \{ Vertical bar \| -%% Right brace \} Tilde \~} -%%--------------------------------------------------------------------- - % This is an author-year citation style bibliography. As such, it is - % non-standard LaTeX, and requires a style option to function properly. - % The appropriate style file is: harvard.sty - % The form of the bibitem entries is - % \harvarditem[Jones et al.]{Jones, Baker, and Smith}{1990}{key}... - % There are style changes that may be specified in the text with - % the command \citationstyle. - % \citeasnoun{key} ==>> Jones et al. (1990) - % \cite{key} ==>> (Jones et al. 1990) - % \cite[chap. 2]{key} ==>> (Jones et al. 1990, chap. 2) - % On the first citation of any work, the full author list is used. -%%--------------------------------------------------------------------- - -ENTRY - { address - author - booktitle - chapter - edition - editor - howpublished - institution - journal - key - month - note - number - organization - pages - publisher - school - series - title - type - volume - year - } - {} - { label extra.label sort.label } %%%KCB: removed long.label - -INTEGERS { output.state before.all mid.sentence after.sentence after.block } - -%%%KCB: new output state, no.comma -INTEGERS { no.comma} - -FUNCTION{fr.and}{ %% le "et" entre les deux derniers auteurs -" et " -} - -FUNCTION {init.state.consts} -{ #0 'before.all := - #1 'mid.sentence := - #2 'after.sentence := - #3 'after.block := - #4 'no.comma := %%%KCB -} - -STRINGS { s t } - - -%%%KCB: revise to use new output state -FUNCTION {output.nonnull} -{ 's := - output.state no.comma = %%%KCB: if in this state, write a space - { " " * write$ before.all 'output.state := } %%%KCB - { output.state mid.sentence = %%%KCB: add brace at beginning - { ", " * write$ } - { output.state after.block = - { add.period$ write$ - newline$ - "\newblock " write$ - } - { output.state before.all = - 'write$ - { add.period$ " " * write$ } - if$ - } - if$ - } - if$ - mid.sentence 'output.state := - } %%%KCB: matching brace - if$ %%%KCB: test for no.comma state - 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 {output.bibitem} -{ newline$ - "\harvarditem[" write$ - label write$ - "]{" label * "}{" * write$ %%%KCB: replaced long.label with label - year duplicate$ empty$ - { pop$ "????" } - 'skip$ - if$ - extra.label * "}{" * write$ - cite$ write$ - "}" write$ - newline$ - "" - before.all 'output.state := -} - -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 {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$ -} - -INTEGERS { nameptr namesleft numnames } - -%%%KCB: Here is a portable set of routines to check for repeated authors -%%% and replace them with a 3 em dash -%%% According to _Chicago_Manual_of_Style_, a dash is used to -%%% replace an author's name only if the entire list is the same, so: -%%% Compare names. See if prev.name is identical to CurrList. -%%% If not, then just output CurrList. -%%% If so, replace with \BySame -%%% I use a conservative matching scheme, -%%% and check to see if full names are identical, -%%% even though we only use initials. -%%% This may mean that you have to correct your .bib database -%%% to ensure consistency. -%%% -%%% sample usage: -%%% search for {format.author} - -INTEGERS {currNum prevNum} - -STRINGS {PrevList CurrList prev.name PrevTemp CurrTemp} - -%%%KCB: Initialize prev.name ot some nonsense string: - -FUNCTION {init.prev.name} -{ -"My puppy Harley" 'prev.name := -} - -%%%KCB: Must EXECUTE {init.prev.name} after READ - -%%%KCB: <CurrList> compare.names <modified name list> -FUNCTION {compare.names} -{ prev.name 'PrevList := - duplicate$ 'prev.name := % make current list the new previous list - 'CurrList := - PrevList num.names$ 'prevNum := - CurrList num.names$ 'currNum := -% - prevNum currNum = %% If prevNum = currNum - { "" 'PrevTemp := %% Then take this branch - "" 'CurrTemp := - #1 'nameptr := %%% start with first name in each list - { nameptr prevNum > not }%% while nameptr <= prevNum -%% Format both lists the same way. -%% Use full names: bib file might need to be corrected - { - PrevList nameptr "{ff }{vv~}{ll}{ jj}" format.name$ PrevTemp * 'PrevTemp := - CurrList nameptr "{ff }{vv~}{ll}{ jj}" format.name$ CurrTemp * 'CurrTemp := - nameptr #1 + 'nameptr := } - while$ -%% Now compare : - PrevTemp CurrTemp = %% If PrevTemp = CurrTemp - { "\BySame{}" } - { CurrList } - if$ - } - { CurrList } %% If not prevNum = currNum - if$ %% If prevNum = currNum -} - -%%% -%%% -%%%KCB: End of new routine. - - -FUNCTION {format.names} -{ 's := - #1 'nameptr := - s num.names$ 'numnames := - numnames 'namesleft := - { namesleft #0 > } - { nameptr #1 > - { s nameptr "{f.~}{vv~}{ll}{, jj}" format.name$ 't := } - { s nameptr "{vv~}{ll}{, jj}{, f.}" format.name$ 't := } - if$ - nameptr #1 > - { - namesleft #1 > - { ", " * t * } - { - ", " * - t "others" = - { " et~al." * } - { fr.and * t * } - if$ - } - if$ - } - 't - if$ - nameptr #1 + 'nameptr := - namesleft #1 - 'namesleft := - } - while$ -} - - -FUNCTION {format.names.ed} -{ 's := - #1 'nameptr := - s num.names$ 'numnames := - numnames 'namesleft := - { namesleft #0 > } - { s nameptr - "{f.~}{vv~}{ll}{, jj}" - format.name$ 't := - nameptr #1 > - { - namesleft #1 > - { ", " * t * } - { - ", " * - t "others" = - { " et~al." * } - { fr.and * t * } - if$ - } - if$ - } - 't - if$ - nameptr #1 + 'nameptr := - namesleft #1 - 'namesleft := - } - while$ -} - -FUNCTION {format.key} -{ empty$ - { key field.or.null } - { "" } - if$ -} - -FUNCTION {format.authors} -{ author empty$ - { "" } - { "\textsc{" author compare.names format.names * "} " * } - if$ -} - -FUNCTION {format.editors} -{ editor empty$ - { "" } - { "\textsc{" editor compare.names format.names * " }" * - editor num.names$ #1 > - { " (eds.)" * } - { " (ed.)" * } - if$ - } - if$ -} - -FUNCTION {format.in.editors} -{ editor empty$ - { "" } - { editor format.names.ed - } - if$ -} - -FUNCTION {format.title} -{ title empty$ - { "" } - { title - "``" swap$ * ",'' " * - } -no.comma 'output.state := %%%KCB: - if$ -} - -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} -{ "dans " } - -FUNCTION {format.date} -{ year duplicate$ empty$ - { "empty year in " cite$ * "; set to ????" * warning$ - pop$ "????" } - 'skip$ - if$ - " (" swap$ * extra.label * "):" * %%%KCB: added : - before.all 'output.state := %%%KCB: -} - -FUNCTION {format.btitle} -{ title emphasize -no.comma 'output.state := %%%KCB: -} - -FUNCTION {tie.or.space.connect} -{ duplicate$ text.length$ #3 < - { "~" } - { " " } - if$ - swap$ * * -} - -FUNCTION {either.or.check} -{ empty$ - 'pop$ - { "can't use both " swap$ * " fields in " * cite$ * warning$ } - if$ -} - -FUNCTION {format.bvolume} -{ volume empty$ - { "" } - { "vol." volume tie.or.space.connect - series empty$ - 'skip$ - { " of " * series emphasize * } - if$ - "volume and number" number either.or.check - } - if$ -} - -FUNCTION {format.number.series} -{ volume empty$ - { number empty$ - { series field.or.null } - { output.state mid.sentence = - { "no." } - { "No." } - if$ - number tie.or.space.connect - series empty$ - { "there's a number but no series in " cite$ * warning$ } - { " in " * series * } - if$ - } - if$ - } - { "" } - if$ -} - -FUNCTION {format.edition} -{ edition empty$ - { "" } - { output.state mid.sentence = - { edition "l" change.case$ " edn." * } - { edition "t" change.case$ " edn." * } - if$ - } - 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 empty$ - { "" } - { pages multi.page.check - { "pp." pages n.dashify tie.or.space.connect } - { "p." pages tie.or.space.connect } - if$ - } - if$ -} - -FUNCTION {format.vol.num.pages} -{ volume field.or.null - number empty$ - 'skip$ - { "(" number * ")" * * - volume empty$ - { "there's a number but no volume in " cite$ * warning$ } - 'skip$ - if$ - } - if$ - pages empty$ - 'skip$ - { duplicate$ empty$ - { pop$ format.pages } - { ", " * pages n.dashify * } - if$ - } - if$ -} - -FUNCTION {format.chapter.pages} -{ chapter empty$ - 'format.pages - { type empty$ - { "chap." } - { type "l" change.case$ } - if$ - chapter tie.or.space.connect - pages empty$ - 'skip$ - { ", " * format.pages * } - if$ - } - if$ -} - -FUNCTION {format.in.ed.booktitle} -{ booktitle empty$ - { "" } - { editor empty$ - { word.in booktitle emphasize * } - { word.in booktitle emphasize * ", ed. " * %%%KCB: abbrv ed. - format.in.editors * } - if$ - } - if$ -} - -FUNCTION {format.thesis.type} -{ type empty$ - 'skip$ - { pop$ - type "t" change.case$ - } - if$ -} - -FUNCTION {format.tr.number} -{ type empty$ - { "Document de \uppercase{t}ravail" } %%%KCB: changed default - 'type - if$ - number empty$ - { "t" change.case$ } - { number tie.or.space.connect } - if$ -} - -FUNCTION {format.article.crossref} -{ - word.in - "\cite{" * crossref * "}" * -} - -FUNCTION {format.book.crossref} -{ volume empty$ - { "empty volume in " cite$ * "'s crossref of " * crossref * warning$ - word.in - } - { "vol." volume tie.or.space.connect - " of " * - } - if$ - "\cite{" * crossref * "}" * -} - -FUNCTION {format.incoll.inproc.crossref} -{ - word.in - "\cite{" * crossref * "}" * -} - -FUNCTION {article} -{ output.bibitem - format.authors "author" output.check - author format.key output - format.date "year" output.check - format.title "title" output.check - crossref missing$ - { journal emphasize "journal" output.check - format.vol.num.pages output - } - { format.article.crossref output.nonnull - format.pages output - } - if$ - 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 - format.btitle "title" output.check - mid.sentence 'output.state := %%%KCB: - crossref missing$ - { format.bvolume output - format.number.series output - new.sentence - publisher "publisher" output.check - address output - } - { - format.book.crossref output.nonnull - } - if$ - format.edition output - note output - fin.entry -} - -FUNCTION {booklet} -{ output.bibitem - format.authors output - author format.key output - format.date "year" output.check - format.title "title" output.check - howpublished output - address output - 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 - format.btitle "title" output.check - crossref missing$ - { format.bvolume output - format.chapter.pages "chapter and pages" output.check - format.number.series output - new.sentence - publisher "publisher" output.check - address output - } - { format.chapter.pages "chapter and pages" output.check - format.book.crossref output.nonnull - } - if$ - format.edition output - note output - fin.entry -} - -FUNCTION {incollection} -{ output.bibitem - format.authors "author" output.check - author format.key output - format.date "year" output.check - 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 - new.sentence - publisher "publisher" output.check - address output - format.edition output - } - { format.incoll.inproc.crossref output.nonnull - format.chapter.pages output - } - if$ - note output - fin.entry -} - -FUNCTION {inproceedings} -{ output.bibitem - format.authors "author" output.check - author format.key output - format.date "year" output.check - format.title "title" output.check - crossref missing$ - { format.in.ed.booktitle "booktitle" output.check - format.bvolume output - format.number.series output - format.pages output - address output - new.sentence - organization output - publisher output - } - { format.incoll.inproc.crossref output.nonnull - format.pages output - } - if$ - note output - fin.entry -} - -FUNCTION {conference} { inproceedings } - -%%%KCB: special issue of a journal with a special editor - -FUNCTION {issue} -{ output.bibitem - format.editors output - editor format.key output - format.date "year" output.check - format.btitle "title" output.check - crossref missing$ - { journal emphasize "journal" output.check - format.vol.num.pages output - } - { format.article.crossref output.nonnull - format.pages output - } - if$ - note output - fin.entry -} - -FUNCTION {manual} -{ output.bibitem - format.authors output - author format.key output - format.date "year" output.check - format.btitle "title" output.check - organization output - address output - format.edition output - note output - fin.entry -} - -FUNCTION {mastersthesis} -{ output.bibitem - format.authors "author" output.check - author format.key output - format.date "year" output.check - format.title "title" output.check - "Mémoire de DEA" format.thesis.type output.nonnull - school "school" output.check - address output - note output - fin.entry -} - -FUNCTION {misc} -{ output.bibitem - format.authors output - author format.key output - format.date "year" output.check - format.title output - howpublished output - note output - fin.entry -} - -FUNCTION {phdthesis} -{ output.bibitem - format.authors "author" output.check - author format.key output - format.date "year" output.check - format.title "title" output.check - "Thèse de \uppercase{d}octorat" format.thesis.type output.nonnull - school "school" output.check - address output - note output - fin.entry -} - -FUNCTION {proceedings} -{ output.bibitem - format.editors output - editor format.key output - format.date "year" output.check - format.btitle "title" output.check - format.bvolume output - format.number.series output - address output - new.sentence - organization output - publisher output - note output - fin.entry -} - -FUNCTION {techreport} -{ output.bibitem - format.authors "author" output.check - author format.key output - format.date "year" output.check - format.title "title" output.check - format.tr.number output.nonnull - institution "institution" output.check - address output - note output - fin.entry -} - -FUNCTION {unpublished} -{ output.bibitem - format.authors "author" output.check - author format.key output - format.date "year" output.check - format.title "title" output.check - note "note" output.check - fin.entry -} - -FUNCTION {default.type} { misc } - -MACRO {jan} {"Janvier"} - -MACRO {feb} {"Février"} - -MACRO {mar} {"Mars"} - -MACRO {apr} {"Avril"} - -MACRO {may} {"Mai"} - -MACRO {jun} {"Juin"} - -MACRO {jul} {"Juillet"} - -MACRO {aug} {"Août"} - -MACRO {sep} {"Septembre"} - -MACRO {oct} {"Octobre"} - -MACRO {nov} {"Novembre"} - -MACRO {dec} {"Decembre"} - -%%%KCB: removed computer science journal macros -%%%KCB: added following macros for editions -MACRO {first} {"1er "} -MACRO {second} {"2d "} -MACRO {third} {"3ème "} -MACRO {fourth} {"4ème "} -MACRO {fifth} {"5ème "} -MACRO {sixth} {"6ème "} -MACRO {seventh} {"7ème "} -MACRO {eighth} {"8ème "} -MACRO {ninth} {"9ème "} -MACRO {tenth} {"10ème "} - -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$ -} - - -%%%KCB: Change format of labels: -FUNCTION {format.lab.names} -{ 's := - #1 'nameptr := - s num.names$ 'numnames := - numnames 'namesleft := - { namesleft #0 > } - { s nameptr "{vv~}{ll}" format.name$ 't := - nameptr #1 > - { namesleft #1 > - { ", " * t * } - { numnames #2 > - { "," * } - 'skip$ - if$ - t "others" = - { " et~al." * } - { fr.and * t * } - if$ - } - if$ - } - 't - if$ - nameptr #1 + 'nameptr := - namesleft #1 - 'namesleft := - } - while$ -} - -%%%KCB: removed FUNCTION {format.long.lab.names} - -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$ -} - -%%%KCB: use entire year field as label - -FUNCTION {calc.label} -{ type$ "book" = - type$ "inbook" = - or - type$ "issue" = %%%KCB: need for new entry type - or %%%KCB - 'author.editor.key.label - { type$ "proceedings" = - 'editor.key.label - 'author.key.label - if$ - } - if$ - ", " - * - year field.or.null - * - 'label := -} - -FUNCTION {calc.short.label} -{ type$ "book" = - type$ "inbook" = - or - 'author.editor.key.label - { type$ "proceedings" = - 'editor.key.label - 'author.key.label - if$ - } - if$ - 'label := -} - -%%%KCB: removed FUNCTION {calc.long.label} - -FUNCTION {sort.format.names} -{ 's := - #1 'nameptr := - "" - s num.names$ 'numnames := - numnames 'namesleft := - { namesleft #0 > } - { nameptr #1 > - { " " * } - 'skip$ - if$ - s nameptr - "{vv{ } }{ll{ }}{ f{ }}{ jj{ }}" - format.name$ 't := - nameptr numnames = t "others" = and - { "et al" * } - { t sortify * } - if$ - nameptr #1 + 'nameptr := - namesleft #1 - 'namesleft := - } - while$ -} - -FUNCTION {sort.format.title} -{ 't := - "A " #2 - "An " #3 - "The " #4 t chop.word - chop.word - chop.word - sortify - #1 global.max$ substring$ -} - -FUNCTION {author.sort} -{ author empty$ - { key empty$ - { "to sort, need author or key in " cite$ * warning$ - "" - } - { key sortify } - if$ - } - { author 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 - type$ "issue" = %%%KCB: need for new entry type - or %%%KCB - '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 } - -FUNCTION {initialize.extra.label.stuff} -{ #0 int.to.chr$ 'last.label := - "" 'next.extra := - #0 'last.extra.num := -} - -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$ -} - -FUNCTION {reverse.pass} -{ next.extra "b" = - { "a" 'extra.label := } - 'skip$ - if$ - extra.label 'next.extra := -} - -EXECUTE {initialize.extra.label.stuff} - -EXECUTE {init.prev.name} %%%KCB: needed for replacing repeated authors - -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$ := - calc.short.label -%%%KCB: removed calc.long.label -} - -ITERATE {bib.sort.order} - -SORT - -FUNCTION {begin.bib} -{ preamble$ empty$ - 'skip$ - { preamble$ write$ newline$ } - if$ -%%%KCB: add defn of \BySame, can be overridden in document -"\ifx\undefined\BySame" write$ newline$ - "\newcommand{\BySame}{\leavevmode\rule[.5ex]{3em}{.5pt}\ }" - write$ newline$ - "\fi" write$ newline$ -%%% KCB: For those who still cling to LaTeX 2.09 -"\ifx\undefined\textsc" write$ newline$ - "\newcommand{\textsc}[1]{{\sc #1}}" - write$ newline$ - "\newcommand{\emph}[1]{{\em #1\/}}" - write$ newline$ -"\let\tmpsmall\small" write$ newline$ -"\renewcommand{\small}{\tmpsmall\sc}" write$ newline$ - "\fi" write$ newline$ -%%% - "\begin{thebibliography}{}" write$ newline$ -} - -EXECUTE {begin.bib} - -EXECUTE {init.state.consts} - -ITERATE {call.type$} - -FUNCTION {end.bib} -{ newline$ - "\end{thebibliography}" write$ newline$ -"Done." top$ %%%KCB: Signal end for NeXTeX's TexView -} - -EXECUTE {end.bib} -%% End of customized bst file diff --git a/Master/texmf-dist/bibtex/bst/economic/econometrica.bst b/Master/texmf-dist/bibtex/bst/economic/econometrica.bst deleted file mode 100644 index 1ebf5065bee..00000000000 --- a/Master/texmf-dist/bibtex/bst/economic/econometrica.bst +++ /dev/null @@ -1,1292 +0,0 @@ -%%% Econometrica bibliography style -%%% For use with harvard.sty and LaTeX2e (NFSS) or LaTeX 2.09 -%%% 24-aug-94 -%%% -%%% Based on makebst, but with modifications by -%%% kcb@hss.caltech.edu (KC Border) -%%% Please report any problems to me. -%%% -%%% The main changes from the ouput of makebst are: -%%% 1. Addition of a function to replace repeated authors with a 3 em dash. -%%% (Search for compare.names, this function is portable.) -%%% 2. Modification of output.nonnull to allow commas inside quotation marks -%%% and no comma after year. -%%% 3.Eliminated feature (bug?) of the harvard style of citation. -%%% It creates a short label for subsequent citations. This alleged -%%% feature shortens both Aliprantis, Border, and Luxemburg (1991) and -%%% Aliprantis, Brown, and Burkinshaw (1991) to Aliprantis et~al. (1991). -%%% This creates the need to label these as -%%% Aliprantis, Border, and Luxemburg (1991a) and -%%% Aliprantis, Brown, and Burkinshaw (1991b), despite the fact -%%% that these entries have different authors. I used my own format -%%% for creating the labels, and used the same label for -%%% both the short and long forms. I know that the -%%% _Chicago_Manual_of_Style recommends using Aliprantis et~al, -%% but Econometrica regularly writes out three authors, -%% and it is rare to cite an article with more than four authors in -%%% Econometrica. (I couldn't find an example of even four being cited, -%%% but I didn't spend a lot of time looking.) -%%% 4. Addition of macros to handle editions. (My own idiosycracy.) -%%% 5. A new entry type called issue for special issues of a journal. -%%% (Another idiosyncracy.) -%%% 6. Many details to conform to Econometrica's quirks. -%%% (Search for KCB ) -%%% 7. I wrote this for use with LaTeX2e and the NFSS2. However, I did -%%% add some macros so it will work with LaTeX 2.09. -%%% (Search for \ifx\undefined\emph ) -%%% The remainder of this file was generated by makebst, except for -%%% modifications marked with KCB. -%% -%% This is file `em.bst', generated -%% on <1994/8/17> with the docstrip utility (2.2h). -%% -%% The original source files were: -%% -%% genbst.mbs (with options: `ay,har,nm-rev1,nmft-sc,dt-beg,yr-par,tit-qq,atit-u,thtit-a,volp-com,edby,blk-com,pp,ed,abr,and-com,nfss') -%% ---------------------------------------- -%% *** Econometrica style *** -%% -%% (Here are the specifications of the source file) -%% \def\filename{genbst.mbs} -%% \def\filedate{1994 July 1} -%% \def\fileversion{1.3} -%% For use with BibTeX version 0.99a or later, LaTeX version 2.09 -%%------------------------------------------------------------------- -%% NOTICE: -%% This file may be used for non-profit purposes. -%% It may not be distributed in exchange for money, -%% other than distribution costs. -%% -%% The author provides it `as is' and does not guarantee it in any way. -%% -%% Copyright (C) 1994 Patrick W. Daly -%% Max-Planck-Institut f\"ur Aeronomie -%% Postfach 20 -%% D-37189 Katlenburg-Lindau -%% Germany -%% -%% E-mail: -%% SPAN-- nsp::linmpi::daly (note nsp also known as ecd1) -%% Internet-- daly@linmpi.dnet.gwdg.de -%%----------------------------------------------------------- -%% \CharacterTable -%% {Upper-case \A\B\C\D\E\F\G\H\I\J\K\L\M\N\O\P\Q\R\S\T\U\V\W\X\Y\Z -%% Lower-case \a\b\c\d\e\f\g\h\i\j\k\l\m\n\o\p\q\r\s\t\u\v\w\x\y\z -%% Digits \0\1\2\3\4\5\6\7\8\9 -%% Exclamation \! Double quote \" Hash (number) \# -%% Dollar \$ Percent \% Ampersand \& -%% Acute accent \' Left paren \( Right paren \) -%% Asterisk \* Plus \+ Comma \, -%% Minus \- Point \. Solidus \/ -%% Colon \: Semicolon \; Less than \< -%% Equals \= Greater than \> Question mark \? -%% Commercial at \@ Left bracket \[ Backslash \\ -%% Right bracket \] Circumflex \^ Underscore \_ -%% Grave accent \` Left brace \{ Vertical bar \| -%% Right brace \} Tilde \~} -%%--------------------------------------------------------------------- - % This is an author-year citation style bibliography. As such, it is - % non-standard LaTeX, and requires a style option to function properly. - % The appropriate style file is: harvard.sty - % The form of the bibitem entries is - % \harvarditem[Jones et al.]{Jones, Baker, and Smith}{1990}{key}... - % There are style changes that may be specified in the text with - % the command \citationstyle. - % \citeasnoun{key} ==>> Jones et al. (1990) - % \cite{key} ==>> (Jones et al. 1990) - % \cite[chap. 2]{key} ==>> (Jones et al. 1990, chap. 2) - % On the first citation of any work, the full author list is used. -%%--------------------------------------------------------------------- - -ENTRY - { address - author - booktitle - chapter - edition - editor - howpublished - institution - journal - key - month - note - number - organization - pages - publisher - school - series - title - type - volume - year - } - {} - { label extra.label sort.label } %%%KCB: removed long.label - -INTEGERS { output.state before.all mid.sentence after.sentence after.block } - -%%%KCB: new output state, no.comma -INTEGERS { no.comma} - -FUNCTION {init.state.consts} -{ #0 'before.all := - #1 'mid.sentence := - #2 'after.sentence := - #3 'after.block := - #4 'no.comma := %%%KCB -} - -STRINGS { s t } - - -%%%KCB: revise to use new output state -FUNCTION {output.nonnull} -{ 's := - output.state no.comma = %%%KCB: if in this state, write a space - { " " * write$ before.all 'output.state := } %%%KCB - { output.state mid.sentence = %%%KCB: add brace at beginning - { ", " * write$ } - { output.state after.block = - { add.period$ write$ - newline$ - "\newblock " write$ - } - { output.state before.all = - 'write$ - { add.period$ " " * write$ } - if$ - } - if$ - } - if$ - mid.sentence 'output.state := - } %%%KCB: matching brace - if$ %%%KCB: test for no.comma state - 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 {output.bibitem} -{ newline$ - "\harvarditem[" write$ - label write$ - "]{" label * "}{" * write$ %%%KCB: replaced long.label with label - year duplicate$ empty$ - { pop$ "????" } - 'skip$ - if$ - extra.label * "}{" * write$ - cite$ write$ - "}" write$ - newline$ - "" - before.all 'output.state := -} - -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 {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$ -} - -INTEGERS { nameptr namesleft numnames } - -%%%KCB: Here is a portable set of routines to check for repeated authors -%%% and replace them with a 3 em dash -%%% According to _Chicago_Manual_of_Style_, a dash is used to -%%% replace an author's name only if the entire list is the same, so: -%%% Compare names. See if prev.name is identical to CurrList. -%%% If not, then just output CurrList. -%%% If so, replace with \BySame -%%% I use a conservative matching scheme, -%%% and check to see if full names are identical, -%%% even though we only use initials. -%%% This may mean that you have to correct your .bib database -%%% to ensure consistency. -%%% -%%% sample usage: -%%% search for {format.author} - -INTEGERS {currNum prevNum} - -STRINGS {PrevList CurrList prev.name PrevTemp CurrTemp} - -%%%KCB: Initialize prev.name ot some nonsense string: - -FUNCTION {init.prev.name} -{ -"My puppy Harley" 'prev.name := -} - -%%%KCB: Must EXECUTE {init.prev.name} after READ - -%%%KCB: <CurrList> compare.names <modified name list> -FUNCTION {compare.names} -{ prev.name 'PrevList := - duplicate$ 'prev.name := % make current list the new previous list - 'CurrList := - PrevList num.names$ 'prevNum := - CurrList num.names$ 'currNum := -% - prevNum currNum = %% If prevNum = currNum - { "" 'PrevTemp := %% Then take this branch - "" 'CurrTemp := - #1 'nameptr := %%% start with first name in each list - { nameptr prevNum > not }%% while nameptr <= prevNum -%% Format both lists the same way. -%% Use full names: bib file might need to be corrected - { - PrevList nameptr "{ff }{vv~}{ll}{ jj}" format.name$ PrevTemp * 'PrevTemp := - CurrList nameptr "{ff }{vv~}{ll}{ jj}" format.name$ CurrTemp * 'CurrTemp := - nameptr #1 + 'nameptr := } - while$ -%% Now compare : - PrevTemp CurrTemp = %% If PrevTemp = CurrTemp - { "\BySame{}" } - { CurrList } - if$ - } - { CurrList } %% If not prevNum = currNum - if$ %% If prevNum = currNum -} - -%%% -%%% -%%%KCB: End of new routine. - - -FUNCTION {format.names} -{ 's := - #1 'nameptr := - s num.names$ 'numnames := - numnames 'namesleft := - { namesleft #0 > } - { nameptr #1 > - { s nameptr "{f.~}{vv~}{ll}{, jj}" format.name$ 't := } - { s nameptr "{vv~}{ll}{, jj}{, f.}" format.name$ 't := } - if$ - nameptr #1 > - { - namesleft #1 > - { ", " * t * } - { - ", " * - t "others" = - { " et~al." * } - { " {\small and} " * t * } %%%KCB: added \small - if$ - } - if$ - } - 't - if$ - nameptr #1 + 'nameptr := - namesleft #1 - 'namesleft := - } - while$ -} - - -FUNCTION {format.names.ed} -{ 's := - #1 'nameptr := - s num.names$ 'numnames := - numnames 'namesleft := - { namesleft #0 > } - { s nameptr - "{f.~}{vv~}{ll}{, jj}" - format.name$ 't := - nameptr #1 > - { - namesleft #1 > - { ", " * t * } - { - ", " * - t "others" = - { " et~al." * } - { " {\small and} " * t * } %%%KCB: added \small - if$ - } - if$ - } - 't - if$ - nameptr #1 + 'nameptr := - namesleft #1 - 'namesleft := - } - while$ -} - -FUNCTION {format.key} -{ empty$ - { key field.or.null } - { "" } - if$ -} - -FUNCTION {format.authors} -{ author empty$ - { "" } - { "\textsc{" author compare.names format.names * "} " * } - if$ -} - -FUNCTION {format.editors} -{ editor empty$ - { "" } - { "\textsc{" editor compare.names format.names * " }" * - editor num.names$ #1 > - { " (eds.)" * } - { " (ed.)" * } - if$ - } - if$ -} - -FUNCTION {format.in.editors} -{ editor empty$ - { "" } - { editor format.names.ed - } - if$ -} - -FUNCTION {format.title} -{ title empty$ - { "" } - { title - "``" swap$ * ",'' " * - } -no.comma 'output.state := %%%KCB: - if$ -} - -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} -{ "in " } - -FUNCTION {format.date} -{ year duplicate$ empty$ - { "empty year in " cite$ * "; set to ????" * warning$ - pop$ "????" } - 'skip$ - if$ - " (" swap$ * extra.label * "):" * %%%KCB: added : - before.all 'output.state := %%%KCB: -} - -FUNCTION {format.btitle} -{ title emphasize -no.comma 'output.state := %%%KCB: -} - -FUNCTION {tie.or.space.connect} -{ duplicate$ text.length$ #3 < - { "~" } - { " " } - if$ - swap$ * * -} - -FUNCTION {either.or.check} -{ empty$ - 'pop$ - { "can't use both " swap$ * " fields in " * cite$ * warning$ } - if$ -} - -FUNCTION {format.bvolume} -{ volume empty$ - { "" } - { "vol." volume tie.or.space.connect - series empty$ - 'skip$ - { " of " * series emphasize * } - if$ - "volume and number" number either.or.check - } - if$ -} - -FUNCTION {format.number.series} -{ volume empty$ - { number empty$ - { series field.or.null } - { output.state mid.sentence = - { "no." } - { "No." } - if$ - number tie.or.space.connect - series empty$ - { "there's a number but no series in " cite$ * warning$ } - { " in " * series * } - if$ - } - if$ - } - { "" } - if$ -} - -FUNCTION {format.edition} -{ edition empty$ - { "" } - { output.state mid.sentence = - { edition "l" change.case$ " edn." * } - { edition "t" change.case$ " edn." * } - if$ - } - 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 empty$ - { "" } - { pages multi.page.check - { "pp." pages n.dashify tie.or.space.connect } - { "p." pages tie.or.space.connect } - if$ - } - if$ -} - -FUNCTION {format.vol.num.pages} -{ volume field.or.null - number empty$ - 'skip$ - { "(" number * ")" * * - volume empty$ - { "there's a number but no volume in " cite$ * warning$ } - 'skip$ - if$ - } - if$ - pages empty$ - 'skip$ - { duplicate$ empty$ - { pop$ format.pages } - { ", " * pages n.dashify * } - if$ - } - if$ -} - -FUNCTION {format.chapter.pages} -{ chapter empty$ - 'format.pages - { type empty$ - { "chap." } - { type "l" change.case$ } - if$ - chapter tie.or.space.connect - pages empty$ - 'skip$ - { ", " * format.pages * } - if$ - } - if$ -} - -FUNCTION {format.in.ed.booktitle} -{ booktitle empty$ - { "" } - { editor empty$ - { word.in booktitle emphasize * } - { word.in booktitle emphasize * ", ed. by " * %%%KCB: abbrv ed. - format.in.editors * } - if$ - } - if$ -} - -FUNCTION {format.thesis.type} -{ type empty$ - 'skip$ - { pop$ - type "t" change.case$ - } - if$ -} - -FUNCTION {format.tr.number} -{ type empty$ - { "Discussion Paper" } %%%KCB: changed default - 'type - if$ - number empty$ - { "t" change.case$ } - { number tie.or.space.connect } - if$ -} - -FUNCTION {format.article.crossref} -{ - word.in - "\cite{" * crossref * "}" * -} - -FUNCTION {format.book.crossref} -{ volume empty$ - { "empty volume in " cite$ * "'s crossref of " * crossref * warning$ - word.in - } - { "vol." volume tie.or.space.connect - " of " * - } - if$ - "\cite{" * crossref * "}" * -} - -FUNCTION {format.incoll.inproc.crossref} -{ - word.in - "\cite{" * crossref * "}" * -} - -FUNCTION {article} -{ output.bibitem - format.authors "author" output.check - author format.key output - format.date "year" output.check - format.title "title" output.check - crossref missing$ - { journal emphasize "journal" output.check - format.vol.num.pages output - } - { format.article.crossref output.nonnull - format.pages output - } - if$ - 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 - format.btitle "title" output.check - mid.sentence 'output.state := %%%KCB: - crossref missing$ - { format.bvolume output - format.number.series output - new.sentence - publisher "publisher" output.check - address output - } - { - format.book.crossref output.nonnull - } - if$ - format.edition output - note output - fin.entry -} - -FUNCTION {booklet} -{ output.bibitem - format.authors output - author format.key output - format.date "year" output.check - format.title "title" output.check - howpublished output - address output - 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 - format.btitle "title" output.check - crossref missing$ - { format.bvolume output - format.chapter.pages "chapter and pages" output.check - format.number.series output - new.sentence - publisher "publisher" output.check - address output - } - { format.chapter.pages "chapter and pages" output.check - format.book.crossref output.nonnull - } - if$ - format.edition output - note output - fin.entry -} - -FUNCTION {incollection} -{ output.bibitem - format.authors "author" output.check - author format.key output - format.date "year" output.check - 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 - new.sentence - publisher "publisher" output.check - address output - format.edition output - } - { format.incoll.inproc.crossref output.nonnull - format.chapter.pages output - } - if$ - note output - fin.entry -} - -FUNCTION {inproceedings} -{ output.bibitem - format.authors "author" output.check - author format.key output - format.date "year" output.check - format.title "title" output.check - crossref missing$ - { format.in.ed.booktitle "booktitle" output.check - format.bvolume output - format.number.series output - format.pages output - address output - new.sentence - organization output - publisher output - } - { format.incoll.inproc.crossref output.nonnull - format.pages output - } - if$ - note output - fin.entry -} - -FUNCTION {conference} { inproceedings } - -%%%KCB: special issue of a journal with a special editor - -FUNCTION {issue} -{ output.bibitem - format.editors output - editor format.key output - format.date "year" output.check - format.btitle "title" output.check - crossref missing$ - { journal emphasize "journal" output.check - format.vol.num.pages output - } - { format.article.crossref output.nonnull - format.pages output - } - if$ - note output - fin.entry -} - -FUNCTION {manual} -{ output.bibitem - format.authors output - author format.key output - format.date "year" output.check - format.btitle "title" output.check - organization output - address output - format.edition output - note output - fin.entry -} - -FUNCTION {mastersthesis} -{ output.bibitem - format.authors "author" output.check - author format.key output - format.date "year" output.check - format.title "title" output.check - "Master's thesis" format.thesis.type output.nonnull - school "school" output.check - address output - note output - fin.entry -} - -FUNCTION {misc} -{ output.bibitem - format.authors output - author format.key output - format.date "year" output.check - format.title output - howpublished output - note output - fin.entry -} - -FUNCTION {phdthesis} -{ output.bibitem - format.authors "author" output.check - author format.key output - format.date "year" output.check - format.title "title" output.check - "Ph.D. thesis" format.thesis.type output.nonnull - school "school" output.check - address output - note output - fin.entry -} - -FUNCTION {proceedings} -{ output.bibitem - format.editors output - editor format.key output - format.date "year" output.check - format.btitle "title" output.check - format.bvolume output - format.number.series output - address output - new.sentence - organization output - publisher output - note output - fin.entry -} - -FUNCTION {techreport} -{ output.bibitem - format.authors "author" output.check - author format.key output - format.date "year" output.check - format.title "title" output.check - format.tr.number output.nonnull - institution "institution" output.check - address output - note output - fin.entry -} - -FUNCTION {unpublished} -{ output.bibitem - format.authors "author" output.check - author format.key output - format.date "year" output.check - format.title "title" output.check - note "note" output.check - fin.entry -} - -FUNCTION {default.type} { misc } - -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"} - -%%%KCB: removed computer science journal macros -%%%KCB: added following macros for editions -MACRO {first} {"1st "} -MACRO {second} {"2d "} -MACRO {third} {"3d "} -MACRO {fourth} {"4th "} -MACRO {fifth} {"5th "} -MACRO {sixth} {"6th"} -MACRO {seventh} {"7th "} -MACRO {eighth} {"8th "} -MACRO {ninth} {"9th "} -MACRO {tenth} {"10th "} - -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$ -} - - -%%%KCB: Change format of labels: -FUNCTION {format.lab.names} -{ 's := - #1 'nameptr := - s num.names$ 'numnames := - numnames 'namesleft := - { namesleft #0 > } - { s nameptr "{vv~}{ll}" format.name$ 't := - nameptr #1 > - { namesleft #1 > - { ", " * t * } - { numnames #2 > - { "," * } - 'skip$ - if$ - t "others" = - { " et~al." * } - { " and " * t * } - if$ - } - if$ - } - 't - if$ - nameptr #1 + 'nameptr := - namesleft #1 - 'namesleft := - } - while$ -} - -%%%KCB: removed FUNCTION {format.long.lab.names} - -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$ -} - -%%%KCB: use entire year field as label - -FUNCTION {calc.label} -{ type$ "book" = - type$ "inbook" = - or - type$ "issue" = %%%KCB: need for new entry type - or %%%KCB - 'author.editor.key.label - { type$ "proceedings" = - 'editor.key.label - 'author.key.label - if$ - } - if$ - ", " - * - year field.or.null - * - 'label := -} - -FUNCTION {calc.short.label} -{ type$ "book" = - type$ "inbook" = - or - 'author.editor.key.label - { type$ "proceedings" = - 'editor.key.label - 'author.key.label - if$ - } - if$ - 'label := -} - -%%%KCB: removed FUNCTION {calc.long.label} - -FUNCTION {sort.format.names} -{ 's := - #1 'nameptr := - "" - s num.names$ 'numnames := - numnames 'namesleft := - { namesleft #0 > } - { nameptr #1 > - { " " * } - 'skip$ - if$ - s nameptr - "{vv{ } }{ll{ }}{ f{ }}{ jj{ }}" - format.name$ 't := - nameptr numnames = t "others" = and - { "et al" * } - { t sortify * } - if$ - nameptr #1 + 'nameptr := - namesleft #1 - 'namesleft := - } - while$ -} - -FUNCTION {sort.format.title} -{ 't := - "A " #2 - "An " #3 - "The " #4 t chop.word - chop.word - chop.word - sortify - #1 global.max$ substring$ -} - -FUNCTION {author.sort} -{ author empty$ - { key empty$ - { "to sort, need author or key in " cite$ * warning$ - "" - } - { key sortify } - if$ - } - { author 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 - type$ "issue" = %%%KCB: need for new entry type - or %%%KCB - '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 } - -FUNCTION {initialize.extra.label.stuff} -{ #0 int.to.chr$ 'last.label := - "" 'next.extra := - #0 'last.extra.num := -} - -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$ -} - -FUNCTION {reverse.pass} -{ next.extra "b" = - { "a" 'extra.label := } - 'skip$ - if$ - extra.label 'next.extra := -} - -EXECUTE {initialize.extra.label.stuff} - -EXECUTE {init.prev.name} %%%KCB: needed for replacing repeated authors - -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$ := - calc.short.label -%%%KCB: removed calc.long.label -} - -ITERATE {bib.sort.order} - -SORT - -FUNCTION {begin.bib} -{ preamble$ empty$ - 'skip$ - { preamble$ write$ newline$ } - if$ -%%%KCB: add defn of \BySame, can be overridden in document -"\ifx\undefined\BySame" write$ newline$ - "\newcommand{\BySame}{\leavevmode\rule[.5ex]{3em}{.5pt}\ }" - write$ newline$ - "\fi" write$ newline$ -%%% KCB: For those who still cling to LaTeX 2.09 -"\ifx\undefined\textsc" write$ newline$ - "\newcommand{\textsc}[1]{{\sc #1}}" - write$ newline$ - "\newcommand{\emph}[1]{{\em #1\/}}" - write$ newline$ -"\let\tmpsmall\small" write$ newline$ -"\renewcommand{\small}{\tmpsmall\sc}" write$ newline$ - "\fi" write$ newline$ -%%% - "\begin{thebibliography}{}" write$ newline$ -} - -EXECUTE {begin.bib} - -EXECUTE {init.state.consts} - -ITERATE {call.type$} - -FUNCTION {end.bib} -{ newline$ - "\end{thebibliography}" write$ newline$ -"Done." top$ %%%KCB: Signal end for NeXTeX's TexView -} - -EXECUTE {end.bib} -%% End of customized bst file diff --git a/Master/texmf-dist/bibtex/bst/economic/ecta.bst b/Master/texmf-dist/bibtex/bst/economic/ecta.bst deleted file mode 100644 index b1a55208cb8..00000000000 --- a/Master/texmf-dist/bibtex/bst/economic/ecta.bst +++ /dev/null @@ -1,1503 +0,0 @@ -%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% -%%% Econometrica bibliography style, -%%% -%%% for use with LaTeX2e and Natbib (or chicago), named style following the -%%% recommendations of Fudenberg and Hodges (1997), -%%% Econometrica Vol. 65, N. 4, pp. 965--975, -%%% found at http://www.econometricsociety.org/manual/manual.html -%%% for submission to Econometrica. -%%% -%%% by Sebastian Perez-Duarte, perez@ensae.fr (2000) -%%% -%%% Based on Makebst by Patrick Daly -%%% -%%%%%%%%%%%%%%%%%%%%%%%%%%% SUMMARY %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% -%%% Compared to the bst file econometrica.bst (by KC Border), the present -%%% style file is closer to the canonical way of presenting the list of -%%% references in Econometrica, a publication of the Econometric Society. -%%% -%%% The main differences are: the format of the address, the absence of number -%%% in articles. -%%%%%%%%%%%%%%%%%%%%%%%%%%%% LICENSE %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% -%%% 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. -%%% -%%%%%%%%%%%%%%%%%%%%%%%%%%%% END %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% -%% This is file `ecta.bst', -%% generated with the docstrip utility. -%% -%% The original source files were: -%% -%% merlin.mbs (with options: `ay,cay,nm-rev1,nmdash,nmft,nmft-sc,keyxyr,dt-beg,yr-par,yrp-col,note-yr,tit-qq,atit-u,thtit-a,vnum-x,volp-com,num-xser,bkpg-x,add-pub,pre-pub,edby,blk-com,ppx,ed,abr,ednx,xedn,nfss') -%% ---------------------------------------- -%% *** Econometrica -- close *** -%% -%% Copyright 1994-2000 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}[2000/05/04 4.01 (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 - % or: chicago.sty - % The form of the bibitem entries is - % \bibitem[\protect\citeauthoryear{Jones, Baker, and Smith} - % {Jones et al.}{1990}{key}... - %--------------------------------------------------------------------- - -ENTRY - { address - author - booktitle - chapter - edition - editor - 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 {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 {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 < - { "~" } - { " " } - 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} -{ "ed. 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 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 - duplicate$ #1 > - { "{f.~}{vv~}{ll}{, jj}" } - { "{vv~}{ll}{, jj}{, f.}" } - if$ - format.name$ - bibinfo bibinfo.check - 't := - nameptr #1 > - { - namesleft #1 > - { ", " * t * } - { - numnames #2 > - { "," * } - 'skip$ - if$ - s nameptr "{ll}" format.name$ duplicate$ "others" = - { 't := } - { pop$ } - if$ - t "others" = - { - " " * bbl.etal * - bib.name.font - } - { - bbl.and - space.word * t * - } - if$ - } - if$ - } - 't - if$ - nameptr #1 + 'nameptr := - namesleft #1 - 'namesleft := - } - while$ - t "others" = - 'skip$ - { bib.name.font } - if$ - } 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 * } - { - numnames #2 > - { "," * } - 'skip$ - if$ - 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 - * - } - 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$ * - non.stop - { ",} " * } - { "} " * } - if$ - } - if$ -} -FUNCTION {end.quote.title} -{ title empty$ - 'skip$ - { before.all 'output.state := } - 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$ - "\protect\citeauthoryear{" make.full.names * "}{" * write$ - label write$ - "}{" year duplicate$ empty$ - { pop$ "????" } - 'skip$ - if$ - * extra.label * "}]{" * 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 - { - 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.vol.num.pages} -{ volume field.or.null - duplicate$ empty$ 'skip$ - { - "volume" bibinfo.check - } - if$ - format.journal.pages -} - -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$ - { - 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 - 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 = -% { "---" } 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.date "year" output.check - date.block - format.title "title" output.check - end.quote.title - 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 - 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.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 - name.or.dash - format.date "year" output.check - date.block - format.title "title" output.check - end.quote.title - 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 - 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.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 - name.or.dash - format.date "year" output.check - date.block - format.title "title" output.check - end.quote.title - 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 - name.or.dash - format.date "year" output.check - date.block - format.title "title" output.check - end.quote.title - 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 - name.or.dash - 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 - name.or.dash - format.date "year" output.check - date.block - format.title - "title" output.check - end.quote.title - 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 - name.or.dash - format.date "year" output.check - date.block - format.title output - end.quote.title - howpublished "howpublished" bibinfo.check output - 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.title - "title" output.check - end.quote.title - 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 - name.or.dash - 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 - name.or.dash - format.date "year" output.check - date.block - format.title - "title" output.check - end.quote.title - 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 - name.or.dash - format.date "year" output.check - date.block - format.title "title" output.check - end.quote.title - 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 {calc.short.label} -{ calc.short.authors short.list - '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 := -} -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$ := - calc.short.label -} -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$ - "\expandafter\ifx\csname natexlab\endcsname\relax\def\natexlab#1{#1}\fi" - 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 `econm.bst'. diff --git a/Master/texmf-dist/bibtex/bst/economic/erae.bst b/Master/texmf-dist/bibtex/bst/economic/erae.bst deleted file mode 100644 index 22ca901e583..00000000000 --- a/Master/texmf-dist/bibtex/bst/economic/erae.bst +++ /dev/null @@ -1,1488 +0,0 @@ -%%% European Review of Agricultural Economics (ERAE) -%%% bibliography style for use with LaTeX2e -%%% version: 1.0 (20 August 2006) -%%% 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 ERAE 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 -%%% -%%% The following line has to be added to the LaTeX preamble: -%%% \usepackage[authoryear]{natbib} -%%% -%% -%% This is file `erae.bst', -%% generated with the docstrip utility. -%% -%% The original source files were: -%% -%% merlin.mbs (with options: `ay,nat,vonx,nm-rev,ed-rev,jnrlst,keyxyr,dt-beg,yr-par,yrp-per,yrpp-xsp,note-yr,jttl-rm,trtit-b,vnum-x,volp-sp,pp-last,num-xser,numser,jnm-x,btit-rm,bt-rm,add-pub,pre-pub,edpar,blk-tit,ppx,ed,abr,ednx,ord,and-xcom,em-x') -%% ---------------------------------------- -%% *** ERAE *** -%% -%% Copyright 1994-2002 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}[2002/10/21 4.05 (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 - 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 {no.blank.or.punct} -{ "\hspace{0pt}" * 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$ "" } - { "{\em " 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 - "{ll}{, f.}{, jj}{ vv}" - 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} -{ - 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 - "(" 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$ - { "" } - { series "series" bibinfo.check - volume "volume" bibinfo.check - duplicate$ empty$ 'pop$ - { swap$ "" 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 {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.vol.num.pages} -{ volume field.or.null - duplicate$ empty$ 'skip$ - { - "volume" bibinfo.check - } - 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$ - { - 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 * -new.sentence - 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.sentence - crossref missing$ - { - journal - "journal" bibinfo.check - emphasize - "journal" output.check - add.blank - format.vol.num.pages output - } - { format.article.crossref output.nonnull - } - if$ - format.journal.pages - 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.number.series output - format.publisher.address output - format.bvolume output - format.chapter.pages "chapter and pages" output.check - new.sentence - } - { - format.chapter.pages "chapter and pages" output.check - new.sentence - format.book.crossref output.nonnull - } - if$ - format.edition output - format.pages "pages" output.check - 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.number.series output - format.publisher.address output - format.bvolume output - format.chapter.pages output - format.edition output - } - { format.incoll.inproc.crossref output.nonnull - format.chapter.pages output - } - if$ - format.pages "pages" output.check - 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 - title "title" output.check - new.sentence - crossref missing$ - { format.in.ed.booktitle "booktitle" output.check - format.number.series output - format.bvolume 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.pages "pages" output.check - 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 - title "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 - 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 - 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 - title "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 - 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 - "{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$ - "\expandafter\ifx\csname natexlab\endcsname\relax\def\natexlab#1{#1}\fi" - 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 `erae.bst'. diff --git a/Master/texmf-dist/bibtex/bst/economic/ier.bst b/Master/texmf-dist/bibtex/bst/economic/ier.bst deleted file mode 100644 index d718618caae..00000000000 --- a/Master/texmf-dist/bibtex/bst/economic/ier.bst +++ /dev/null @@ -1,1497 +0,0 @@ -%% 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) -%% -%% This is file `ier.bst', -%% generated with the docstrip utility. -%% -%% The original source files were: -%% -%% merlin.mbs (with options: `ay,nat,nm-rev1,jnrlst,keyxyr,yr-par,aymth,note-yr,tit-qq,qx,bt-qq,atit-u,vnum-x,volp-blk,pp-last,num-xser,bkpg-x,add-pub,pub-date,pre-edn,blk-com,ppx,ed,xedn,and-xcom,nfss,') -%% ---------------------------------------- -%% *** International Economic Review *** -%% -%% 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} -{ - skip$ -} - -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} -{ "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} -{ "" } - -FUNCTION {bbl.page} -{ "" } - -FUNCTION {bbl.chapter} -{ "chapter" } - -FUNCTION {bbl.techrep} -{ "{T}echnical {R}eport" } - -FUNCTION {bbl.mthesis} -{ "Master's thesis" } - -FUNCTION {bbl.phdthesis} -{ "Ph.D. thesis" } - -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"} - -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 - duplicate$ #1 > - { "{f.~}{vv~}{ll}{, jj}" } - { "{vv~}{ll}{, f.}{, jj}" } - if$ - 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 - * - } - 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$ * - ",} " * - } - if$ -} -FUNCTION {end.quote.title} -{ title empty$ - 'skip$ - { before.all 'output.state := } - if$ -} -FUNCTION {end.quote.btitle} -{ booktitle empty$ - 'skip$ - { before.all 'output.state := } - 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 * - } - { - 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$ - month "month" bibinfo.check duplicate$ empty$ - 'skip$ - { - " " * swap$ - } - if$ - * - extra.label * - before.all 'output.state := - " (" swap$ * ")" * -} -FUNCTION {format.tr.date} -{ year "year" bibinfo.check duplicate$ empty$ - { - "empty year in " cite$ * "; set to ????" * warning$ - pop$ "????" - } - 'skip$ - if$ - month "month" bibinfo.check duplicate$ empty$ - 'skip$ - { - " " * swap$ - } - if$ - * - extra.label * - before.all 'output.state := - ", " swap$ * -} -FUNCTION {format.unpub.date} -{ year "year" bibinfo.check duplicate$ empty$ - { - "empty year in " cite$ * "; set to ????" * warning$ - pop$ "????" - } - 'skip$ - if$ - month "month" bibinfo.check duplicate$ empty$ - 'skip$ - { - " " * swap$ - } - 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 - { - 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$ -} - -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 {bt.enquote} -{ duplicate$ empty$ 'skip$ - { "\enquote{" swap$ * - "}, " * - } - 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 := - "" - add.blank "(" * - address "address" bibinfo.check * - t empty$ - 'skip$ - { address empty$ - 'skip$ - { ": " * } - if$ - t * - } - if$ - year duplicate$ empty$ - { "empty year in " cite$ * "; set to ????" * warning$ - pop$ "????" } - { "year" bibinfo.check extra.label * } - if$ - t empty$ address empty$ and - { * } - { ", " swap$ * * } - 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.title "title" output.check - end.quote.title - crossref missing$ - { - journal - "journal" bibinfo.check - emphasize - "journal" output.check - format.vol.num.pages - " " swap$ * - before.all 'output.state := - output - format.date "year" output.check - } - { format.article.crossref output.nonnull - } - if$ - eid empty$ - { format.journal.pages } - { format.journal.eid } - 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.btitle "title" output.check - crossref missing$ - { format.bvolume output - format.number.series output - format.edition output - format.publisher.address output - } - { - format.book.crossref output.nonnull - format.date "year" output.check - } - if$ - format.note output - fin.entry -} -FUNCTION {booklet} -{ output.bibitem - format.authors output - author format.key output - format.title "title" output.check - end.quote.title - 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 - } - { format.authors output.nonnull - 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.edition output - format.publisher.address output - } - { - format.chapter.pages "chapter and pages" output.check - format.book.crossref output.nonnull - format.date "year" output.check - } - if$ - format.pages "pages" output.check - format.note output - fin.entry -} - -FUNCTION {incollection} -{ output.bibitem - format.authors "author" output.check - author format.key output - format.title "title" output.check - end.quote.title - crossref missing$ - { format.in.ed.booktitle "booktitle" output.check - end.quote.btitle - format.bvolume output - format.number.series output - format.edition output - format.chapter.pages output - format.publisher.address output - } - { format.incoll.inproc.crossref output.nonnull - format.chapter.pages output - } - if$ - format.pages "pages" output.check - format.note output - fin.entry -} -FUNCTION {inproceedings} -{ output.bibitem - format.authors "author" output.check - author format.key output - format.title "title" output.check - end.quote.title - crossref missing$ - { format.in.ed.booktitle "booktitle" output.check - end.quote.btitle - 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.pages "pages" output.check - format.note output - fin.entry -} -FUNCTION {conference} { inproceedings } -FUNCTION {manual} -{ output.bibitem - format.authors output - author format.key output - 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 - 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 - format.title output - end.quote.title - 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 - 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 - 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.title - "title" output.check - end.quote.title - format.tr.number output.nonnull - institution "institution" bibinfo.warn output - address "address" bibinfo.check output - format.tr.date "year" output.check - format.note output - fin.entry -} - -FUNCTION {unpublished} -{ output.bibitem - format.authors "author" output.check - author format.key output - format.title - "title" output.check - end.quote.title - note "note" output.check - institution field.or.null output - format.unpub.date "year" 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$ - "\newcommand{\enquote}[1]{``#1''}" - 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 `ier.bst'. |