diff options
Diffstat (limited to 'Master/texmf-dist/bibtex/bst/apacite/apacannx.bst')
-rw-r--r-- | Master/texmf-dist/bibtex/bst/apacite/apacannx.bst | 453 |
1 files changed, 174 insertions, 279 deletions
diff --git a/Master/texmf-dist/bibtex/bst/apacite/apacannx.bst b/Master/texmf-dist/bibtex/bst/apacite/apacannx.bst index 79e3ddb0b96..90bf644d606 100644 --- a/Master/texmf-dist/bibtex/bst/apacite/apacannx.bst +++ b/Master/texmf-dist/bibtex/bst/apacite/apacannx.bst @@ -43,7 +43,7 @@ %% the generated files. %% %% apacannx.bst -%% [2013/07/04 v6.02 APA annotated bibl. style with author index info] +%% [2013/07/21 v6.03 APA annotated bibl. style with author index info] %% apacannx.bst : reference list according to APA manual %% with annotations and author indexing information %% Written by Erik Meijer @@ -51,7 +51,7 @@ FUNCTION {identify.apacite.version} { % Put identifying string in the .blg file "apacannx.bst" -" [2013/07/04 v6.02 APA annotated bibl. style with author index info]" +" [2013/07/21 v6.03 APA annotated bibl. style with author index info]" * top$ } ENTRY @@ -139,6 +139,11 @@ STRINGS { s t u old.label field year.label.old } FUNCTION {test} { #0 } +FUNCTION {dump.stack} +{ "---- STACK {" cite$ * "} ----" * top$ + stack$ + "---- END STACK {" cite$ * "} ----" * top$ +} FUNCTION {make.index} { #1 } FUNCTION {unsorted} { #0 } MACRO {jan} {"{\APACmonth{01}}"} @@ -621,9 +626,8 @@ FUNCTION {remove.spaces} %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% % - % starting new block by writing what's left on the stack, - % starting a new line and adding some extra space or - % whatever is more defined in \newblock + % end block by writing what's left on the stack and + % starting a new line % FUNCTION {output.end.block} { write$ @@ -632,14 +636,23 @@ FUNCTION {output.end.block} %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% % + % end block by adding a period and writing what's left + % on the stack and starting a new line + % +FUNCTION {output.dot.end.block} +{ add.period$ + output.end.block +} + +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% + % % starting new block by writing what's left on the stack, % starting a new line and adding some extra space or % whatever is more defined in \newblock % FUNCTION {output.new.block} { output.end.block - "\newblock" write$ - newline$ + "\newblock" write$ newline$ } %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% @@ -659,8 +672,6 @@ FUNCTION {start.new.block} { "\unskip\ " write$ newline$ "\newblock " write$ newline$ } -%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% -%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% FUNCTION {sort.name.format.classic} { "{ll{}}{ f{}}{ vv{}}{ jj{}}" } @@ -2045,10 +2056,8 @@ FUNCTION {make.title.number} FUNCTION {make.citeorder.number} { old.number #1 + 'cite.order := cite.order 'old.number := - cite.order conv.int.to.str citeorder.sort.label := + cite.order conv.int.to.str 'citeorder.sort.label := } -%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% -%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% FUNCTION {last.part.name.format.classic} { "{ll}" } @@ -3343,8 +3352,6 @@ FUNCTION {format.year.month.day.check} "}" * } -%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% -%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% FUNCTION {format.atitle.no.dot} { "{\BBOQ}" swap$ "{\BBCQ}" swap$ @@ -3807,16 +3814,6 @@ FUNCTION { format.type.number } if$ } -%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% -%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% - -%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% - % - % format howpublished if not empty, - % for various entry types - % call with - % format.howpublished - % FUNCTION {format.howpublished} { howpublished empty$ 'skip$ @@ -3829,14 +3826,6 @@ FUNCTION {format.howpublished} } if$ } - -%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% - % - % format howpublished if not empty, - % for misc - % call with - % output.howpublished - % FUNCTION {output.howpublished} { howpublished empty$ 'skip$ @@ -3845,9 +3834,15 @@ FUNCTION {output.howpublished} } if$ } - -%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% -%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +FUNCTION {howpublished.block} +{ howpublished empty$ + 'skip$ + { start.new.block + "\APAChowpublished {" howpublished * "}" * + output.dot.end.block + } + if$ +} FUNCTION {begin.end.url.env} { "\begin{APACrefURL} " lastchecked empty$ @@ -3870,18 +3865,8 @@ FUNCTION {begin.end.msg.env} { "\begin{APACrefURLmsg} " " \end{APACrefURLmsg} " } - -%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% - % - % format url given that it is not empty, - % for various entry types - % call with - % format.url - % FUNCTION {format.url} -{ % First format begin and end of the enclosing environment. - % With posted messages, a different environment is used. - type.2 empty$ +{ type.2 empty$ { begin.end.url.env } { type.2 "\bibmessage" = { begin.end.msg.env } @@ -3889,37 +3874,47 @@ FUNCTION {format.url} if$ } if$ - % The url string. "\url{" url * "}" * - % Enclose in begin and end environment enclose.check } - -%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% - % - % format doi given that it is not empty, - % for various entry types - % call with - % format.doi - % +FUNCTION {url.block} +{ doi empty$ + { url empty$ + 'skip$ + { start.new.block + format.url + output.end.block + } + if$ + } + 'skip$ + if$ +} FUNCTION {format.doi} -{ % First format begin and end of the enclosing environment. - begin.end.doi.env - % The doi string. +{ begin.end.doi.env "\doi{" doi * "}" * - % Enclose in begin and end environment enclose.check } - -%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% -%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% - -%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% - % - % format optional note - % +FUNCTION {doi.block} +{ doi empty$ + 'skip$ + { start.new.block + format.doi + output.end.block + } + if$ +} FUNCTION {format.note} { "\APACrefnote{" "}" note enclose.check } +FUNCTION {note.block} +{ note empty$ + 'skip$ + { start.new.block + format.note + output.end.block + } + if$ +} %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% % @@ -4015,20 +4010,14 @@ FUNCTION {format.orig.note} } if$ } - -%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% - % - % finish current entry - % by writing what's left on the stack and starting a new line - % FUNCTION {fin.entry} { doi empty$ - { output.end.block } + 'skip$ { output.new.block format.doi - output.end.block } if$ + output.end.block "\PrintBackRefs{\CurrentBib}" write$ newline$ test { "\vspace{\baselineskip}" write$ newline$ } @@ -4059,8 +4048,31 @@ FUNCTION {fin.entry} } if$ } -%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% -%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +FUNCTION {fin.entry.2} +{ doi.block + "\PrintBackRefs{\CurrentBib}" write$ newline$ + test + { "\vspace{\baselineskip}" write$ newline$ } + 'skip$ + if$ + annote empty$ + {% Try annotate + annotate empty$ + 'skip$ + { % add annotation + "\begin{APACrefannotation}" write$ newline$ + annotate write$ newline$ + "\end{APACrefannotation}" write$ newline$ + } + if$ + } + { % add annotation + "\begin{APACrefannotation}" write$ newline$ + annote write$ newline$ + "\end{APACrefannotation}" write$ newline$ + } + if$ +} FUNCTION {periodical} { author empty$ @@ -4363,8 +4375,13 @@ FUNCTION {format.tr.title.number} % warning if no institution % FUNCTION {format.address.institution.check} -{ "institution" institution warning.if.empty - "address" address warning.if.empty +{ url empty$ + doi empty$ and + { "institution" institution warning.if.empty + "address" address warning.if.empty + } + 'skip$ + if$ institution empty$ address empty$ and @@ -4623,122 +4640,95 @@ FUNCTION {lecture} fin.entry } -%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% -%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% - -%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% - % - % default thesis type is on top of stack - % now, if type field is empty, this default is used - % else default is removed and replaced by value of - % type field - % -FUNCTION {format.type.school} -{ type empty$ - 'skip$ - { pop$ - type "t" change.case$ - } - if$ - school connect.with.comma.check -} - -%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% - % - % phd theses, etc. - % call with - % "default.published.thesis" "default.unpublished.thesis" thesis - % -FUNCTION {thesis} -{ author empty$ - { "author" author warning.if.empty } - { format.authors start.new.block } +FUNCTION {format.ttitle.type.school} +{ doi empty$ not + url empty$ not or + howpublished empty$ not or + { pop$ } + { swap$ pop$ } if$ - % - % format year and check if year present - % - format.year.check output.dot.new.block - % - % format title and check if title present - % journal empty => unpublished PhD thesis - % journal not empty => published (e.g., Dissertation Abstracts Int.) - % - journal empty$ - { format.btitle.vol.edition output.dot.new.block - % - % pop default unpublished thesis, top is default published thesis - % - swap$ pop$ - format.type.school - address connect.with.comma.check - } - % - % pop default published thesis, top is default unpublished thesis - % - { pop$ - type empty$ - school empty$ and - originalyear empty$ and + type empty$ + 'skip$ + { type "\bibnotype" = { pop$ "" } - { format.type.school - originalyear connect.with.comma.check - parenthesize.check + { pop$ + type } if$ - format.aetitle.check - swap$ connect.with.space.check - "title" title warning.if.empty - title format.atitle.connect output.new.block - pages format.journal.vol.num.pages.check } if$ - % - % if not empty, insert howpublished. - % (used if thesis is retrieved from the internet) - % - format.howpublished add.period$ - % - % format url - % - url empty$ - 'skip$ - { % Clear the stack - duplicate$ empty$ + duplicate$ empty$ + doi empty$ + url empty$ and + howpublished empty$ and + address empty$ + school empty$ and or and + { 'pop$ + title empty$ not + englishtitle empty$ not or + { start.new.block } 'skip$ - { output.new.block } if$ - format.url + "" + } + { start.new.block + "\APACtypeAddressSchool {" swap$ * "}{" * + doi empty$ + url empty$ and + howpublished empty$ and + { "}{}" * } + { address "" connect.check "}{" * + school "" connect.check "}" * + } + if$ } if$ - % - % format optional note - % - note empty$ - 'skip$ - { % Clear the stack - duplicate$ empty$ + format.betitle.check swap$ + connect.with.space.check + "title" title warning.if.empty + title format.btitle.connect +} +FUNCTION {unpub.address.school.block} +{ doi empty$ + url empty$ and + howpublished empty$ and + { "school" school warning.if.empty + school empty$ + address empty$ and 'skip$ - { output.new.block } + { start.new.block + "\APACaddressSchool {" address "" connect.check "}{" * + school "" connect.check "}" * + output.dot.end.block + } if$ - format.note + } + 'skip$ + if$ +} +FUNCTION {thesis} +{ journal empty$ not + { pop$ pop$ + article + } + { author empty$ + { "author" author warning.if.empty } + { format.authors start.new.block } + if$ + format.year.check output.dot.end.block + format.ttitle.type.school output.dot.end.block + unpub.address.school.block + howpublished.block + url.block + note.block + fin.entry.2 } if$ - fin.entry } - -%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% - % - % phd theses, etc. - % FUNCTION {phdthesis} { "\BPhD" "\BUPhD" thesis } - -%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% - % - % master's theses, etc. - % FUNCTION {mastersthesis} { "\BMTh" "\BUMTh" thesis } @@ -5027,11 +5017,6 @@ FUNCTION {manual} %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% % - % following functions not used for APA Manual examples - % - -%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% - % % booklet % FUNCTION {booklet} @@ -5072,57 +5057,24 @@ FUNCTION {proceedings} FUNCTION {default.type} { misc } -%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% -%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% - FUNCTION {initialize} -{ % - % Maximum number of names to be formatted . +{ #6 'name.max := %% #250 'entry.max$ := %% #5000 'global.max$ := } - FUNCTION {init.old.number} -{ % - % For numbering the entries according to current sorting order. - #0 'old.number := -} - +{ #0 'old.number := } FUNCTION {init.old.label} -{ % - % For comparing labels across entries . - "zzzzzz" 'old.label := -} - +{ "zzzzzz" 'old.label := } FUNCTION {init.cite.initials.add.to.year} -{ % - % Initialize "cite initials" indicator for all entries. - #0 'cite.initials := - % - % Initialize "add to year", i.e., whether a, b, etc. must - % be added to the year in citation, to "no". +{ #0 'cite.initials := #0 'add.to.year := - % } - FUNCTION {move.forward} -{ % - % Indicates that we're moving forward (ITERATE) through the entry list . - #1 'forward := -} - +{ #1 'forward := } FUNCTION {move.backward} -{ % - % Indicates that we're moving backward (REVERSE) through the entry list . - #0 'forward := -} - -%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% -%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% - -%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% - +{ #0 'forward := } FUNCTION {begin.bib} { preamble$ empty$ 'skip$ @@ -5130,101 +5082,44 @@ FUNCTION {begin.bib} if$ "\begin{thebibliography}{}" write$ newline$ } - -%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% - FUNCTION {end.bib} { newline$ "\end{thebibliography}" write$ newline$ } - -%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% - FUNCTION {write.bbl.entry} -{ % - % Output \bibitem and \citeauthoryear command. - % +{ make.cite.labels - % - % Format and output reference list entry. - % call.type$ } - -%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% -%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% - - READ - - EXECUTE { identify.apacite.version } - - EXECUTE { initialize } - - EXECUTE { init.old.number } - ITERATE { make.citeorder.number } - - ITERATE { make.sort.title } - SORT - EXECUTE { init.old.number } - EXECUTE { init.old.label } - ITERATE { make.title.number } - - ITERATE { make.tentative.sort.label } - SORT - - ITERATE { init.cite.initials.add.to.year } - EXECUTE { init.initials } - ITERATE { check.add.initials } - EXECUTE { init.initials } - REVERSE { check.add.initials } - ITERATE { tentative.cite.num.names } - EXECUTE { init.cite.num.names } - EXECUTE { move.forward } - ITERATE { definitive.cite.num.names } - EXECUTE { init.cite.num.names } - EXECUTE { move.backward } - REVERSE { definitive.cite.num.names } - - ITERATE { make.final.sort.key } - SORT - - EXECUTE { begin.bib } - - ITERATE { write.bbl.entry } - - EXECUTE { end.bib } -%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% -%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% -%% %% %% End of file `apacannx.bst'. |