diff options
author | Karl Berry <karl@freefriends.org> | 2020-04-12 21:29:31 +0000 |
---|---|---|
committer | Karl Berry <karl@freefriends.org> | 2020-04-12 21:29:31 +0000 |
commit | 321ccf46e86d034685420aa1c5faa90cc6d543e4 (patch) | |
tree | a300a0e5a6c3a6f8d854e956d80d5f711bb0259c /Master/texmf-dist/bibtex/bst | |
parent | 656c2588b2ce9d477986f176d75589bbec400918 (diff) |
asmejour (12apr20)
git-svn-id: svn://tug.org/texlive/trunk@54698 c570f23f-e606-0410-a88d-b1316a301751
Diffstat (limited to 'Master/texmf-dist/bibtex/bst')
-rw-r--r-- | Master/texmf-dist/bibtex/bst/asmejour/asmejour.bst | 466 |
1 files changed, 346 insertions, 120 deletions
diff --git a/Master/texmf-dist/bibtex/bst/asmejour/asmejour.bst b/Master/texmf-dist/bibtex/bst/asmejour/asmejour.bst index 426add9076d..c590f0be904 100644 --- a/Master/texmf-dist/bibtex/bst/asmejour/asmejour.bst +++ b/Master/texmf-dist/bibtex/bst/asmejour/asmejour.bst @@ -1,14 +1,14 @@ %% -%% This is file `asmejour.bst', -%% generated with the docstrip utility. +%% This is file `asmejour.bst', initially generated with the docstrip utility and extensively customized. %% -%% The original source files were: -%% -%% merlin.mbs (with options: `seq-no,nm-rev,jnrlst,dt-beg,xmth,tit-qq,atit-u,thtit-a,vol-bf,volp-com,jwdpg,pp-last,num-xser,numser,ser-vol,ser-ed,pre-edn,doi,edby,edbyy,blk-com,in-x,pp,ed,abr,ednx,ord,jabr,revdata,eprint,url,url-blk,eprint,url,url-nt,em-it,nfss,') -%% ---------------------------------------- %% *** This bibtex style follows ASME journals *** -%% -%% Copyright 1994-2011 Patrick W Daly +%% + % The original source files for docstrip were: + % + % merlin.mbs (with options: `seq-no,nm-rev,jnrlst,dt-beg,xmth,tit-qq,atit-u,thtit-a,vol-bf,volp-com,jwdpg,pp-last,num-xser,numser,ser-vol,ser-ed,pre-edn,doi,edby,edbyy,blk-com,in-x,pp,ed,abr,ednx,ord,jabr,revdata,eprint,url,url-blk,eprint,url,url-nt,em-it,nfss,') + % ---------------------------------------- + % + % Copyright 1994-2011 Patrick W Daly % =============================================================== % IMPORTANT NOTICE: % This bibliographic style (bst) file has been generated from one or @@ -26,21 +26,20 @@ % =============================================================== %------------------------------------------------------------------- %% - %% This file is asmejour.bst, version 1.02 dated 2019/12/03. + %% This file is asmejour.bst, version 1.03 dated 2020/04/12. %% %% This file was generated and edited by John Lienhard. %% This file is a derivative work under Clause 6 of the LPPL license. %% - %% The generated file and the modifications are based on what ASME is actually putting into - %% published journal papers in early 2019. The modifications mainly relate to handling of online - %% information. Details follow. + %% The generated file and the modifications are based on the formats that ASME is using in + %% published journal papers in early 2020. Details of the modifications follow. %% - %% Added fields: eventdate, urldate, urltype, venue, version, versiontype - %% Added: @online{...} for web publications (and aliased it to @www and @electronic) - %% Added: urlprefix = {}, format.web.urldate, bbl.urldate; urltype field changes "accessed" to something else. - %% Added: venue and eventdate to @inproceedings - %% Added: format.version to @book, @online, and @manual; text can be changed with versiontype field. - %% Updated: doi url prefix to https://doi.org/ + %% Created entry: @online{...} for web publications (and aliased it to @www and @electronic) + %% Created fields: eventdate, urldate, urltype, venue, version, versiontype + %% Format for url: urlprefix = {}, format.web.urldate, bbl.urldate; urltype = {} changes "accessed" to other text. + %% Added fields: venue and eventdate to @inproceedings + %% Added field: version={}, format.version to @book, @online, @manual; versiontype = {} changes "Version" to other + %% Updated doi: doi url prefix updated to https://doi.org/ %% %% Remove "emphasize" from journal article, and linked doi (or else url) to journal name (or book title) %% without explicitly showing the urls. The urls may be added to the note = {..} field to display explicitly @@ -50,14 +49,42 @@ %% %% Capitalize: Vol., Chap., & No. %% Remove "emphasize" before comma in format.bvolume, - %% @incollection: move chapter and edition, change format.in.ed.booktitle, modify format for "series" + %% @incollection: move chapter and edition, change format.in.ed.booktitle, modify format for "series" %% %% Modify \eprint to include full url, and provided some macros for archive={..} ... %% ....this format is uncommon in ASME journals so implemented only as a url (but can easily patch if needed) %% %% Change format.note capitalizations from "l" to "t" and "u" to "t" respectively. %% - %% Included macros for titles of some of ASME's many journals. + %% Included macros for the titles of ASME's journals, following ASME formats (updated 4/10/20) + %% + %% + %% Modifications in v1.03 (2020/04/12) + %% + %% @article: add warning for empty pages; change ordering of numpages "pages" for eid + %% @book: reorder edition, version, and volume + %% @inbook: reorder edition, version, volume, etc.; hyperlink title to doi, url, or eprint + %% @incollection: create format.doi.booktitle to hyperlink title of collection to doi, url, or eprint. + %% @inproceedings: move venue, eventdate, and paper number toward end; warn that address should not be used with venue; + %% warn for empty venue and empty date; + %% create format.pvolume and format.in.ed.proctitle, to permit both [paper] number and volume + %% print either organization or publisher but not both + %% add bbl.paperno = "Paper No." and enable type ={} to change it (this is not backward compatible!) + %% hyperlink paper number to doi, or url, or eprint by default. + %% @inserialcollection: new entry type created to deal with citing articles in edited volumes that + %% come under different titles in a an ongoing series. This changes the placement + %% of Vol. number in the reference, putting series name and volume in ( ) after title. + %% This calls a new function format.in.ed.serialtitle. Hyperlink title of book. + %% For most uses, ordinary @incollection will be preferred. + %% This edit also reverts @incollection and @inproceedings to use Series, Vol. after eds, + %% which is consistent with many ASME references + %% @proceedings: edit order of fields; warn that address should not be used with venue; + %% print either organization or publisher but not both; + %% hyperlink title of proceedings to doi, url, or eprint; + %% provide format.alt.link to print the hyperlink if the report number is empty. + %% @techrep: move report number after address; hyperlink report number to doi, url, or eprint; + %% provide format.alt.link to print the hyperlink if the report number is empty. + %% provide institution.address function %% %% %% Author: John H. Lienhard V @@ -68,7 +95,7 @@ %======================================================================== %% LICENSE: %% - %% Copyright (c) 2019 John H. Lienhard + %% Copyright (c) 2020 John H. Lienhard %% %% Permission is hereby granted, free of charge, to any person obtaining a copy of this software and %% associated documentation files (the "Software"), to deal in the Software without restriction, @@ -200,24 +227,12 @@ FUNCTION {fin.entry} } if$ } + +%% For entries that hyperlink content FUNCTION {fin.urllink.entry} -{ doi empty$ - { eprint empty$ - { - add.period$ - write$ - newline$ - }{ - write$ - newline$ - } - if$ - }{ - add.period$ +{ add.period$ write$ newline$ - } - if$ } FUNCTION {new.block} @@ -377,6 +392,9 @@ FUNCTION {bbl.chapter} FUNCTION {bbl.techrep} { "Tech. Rep." } +FUNCTION {bbl.paperno} +{ "Paper No." } + FUNCTION {bbl.mthesis} { "Master's thesis" } @@ -469,21 +487,70 @@ MACRO {hndl} {"http://hdl.handle.net/"} MACRO {jstor} {"http://www.jstor.org/stable/"} +MACRO {oclc} {"http://www.worldcat.org/oclc/"} + MACRO {pubmed} {"http://www.ncbi.nlm.nih.gov/pubmed/"} +MACRO {amr} {"Appl. Mech. Rev."} + +MACRO {lds} {"ASME Letters Dynamic Systems"} + +MACRO {jru} {"ASME J. Risk Uncertainty"} + +MACRO {jsbc} {"ASME J. Sustainable Bldg. and Cities"} + +MACRO {jam} {"ASME J. Appl. Mech."} + +MACRO {jbe} {"ASME J. Biomed. Eng."} + +MACRO {jcnd} {"ASME J. Comput. Nonlin. Dyn."} + +MACRO {jcise} {"ASME J. Comput. Inf. Sci. Eng."} + +MACRO {jds} {"J. Dyn. Syst.-T. ASME"} + MACRO {jep} {"ASME J. Electron. Packag."} +MACRO {jert} {"ASME J. Energy Resour."} + MACRO {jegtp} {"ASME J. Eng. Gas Turbines Power"} -MACRO {jert} {"ASME J. Energy Resour. Technol."} +MACRO {jem} {"ASME J. Eng. Mater."} MACRO {jfe} {"ASME J. Fluids Eng."} +MACRO {jfcst} {"ASME J. Fuel Cell Sci. Tech."} + MACRO {jht} {"ASME J. Heat Transfer"} +MACRO {jmse} {"ASME J. Manuf. Sci. E."} + MACRO {jmd} {"ASME J. Mech. Des."} +MACRO {jmr} {"ASME J. Mech. Robot."} + +MACRO {jmdv} {"ASME J. Med. Devices"} + +MACRO {jmnm} {"ASME J. Micro Nano-Manuf."} + +MACRO {jnem} {"ASME J. Nanotech Eng. Med."} + +MACRO {joma} {"ASME J. Offshore Mech. Arct."} + +MACRO {jpv} {"ASME J. Press. Vess."} + +MACRO {jse} {"ASME J. Sol. Energy"} + +MACRO {jtsea} {"ASME J. Therm. Sci. Eng. Appl."} + +MACRO {jtb} {"ASME J. Tribol."} + +MACRO {jtm} {"ASME J. Turbomach."} + +MACRO {jva} {"ASME J. Vib. Acoust."} + + MACRO {acmcs} {"ACM Comput. Surv."} @@ -759,7 +826,11 @@ FUNCTION {doilink} { pop$ "" } { doi empty$ { url empty$ - { skip$ } + { eprint empty$ + { skip$ } + { "\href{" archive eprint * * "}{" * swap$ * "}" * } + if$ + } { "\href{" url * "}{" * swap$ * "}" * } if$ } @@ -900,6 +971,18 @@ FUNCTION {format.bvolume} } if$ } +FUNCTION {format.pvolume} +{ volume empty$ + { "" } + { bbl.volume volume tie.or.space.prefix + "volume" bibinfo.check * * + series "series" bibinfo.check + duplicate$ empty$ 'pop$ + { ", " * swap$ *} + if$ + } + if$ +} FUNCTION {format.number.series} { volume empty$ { number empty$ @@ -1025,9 +1108,13 @@ FUNCTION {format.pages} if$ } FUNCTION {format.journal.pages} -{ pages duplicate$ empty$ 'pop$ - { swap$ duplicate$ empty$ - { pop$ pop$ format.pages } +{ pages duplicate$ empty$ + { "empty pages in " cite$ * warning$ } + 'skip$ + if$ + duplicate$ empty$ 'pop$ + { swap$ duplicate$ empty$ + { pop$ pop$ format.pages} { ", " * swap$ @@ -1055,8 +1142,8 @@ FUNCTION {format.journal.eid} if$ swap$ * numpages empty$ 'skip$ - { bbl.eidpp numpages tie.or.space.prefix - "numpages" bibinfo.check * * + { numpages bbl.eidpp tie.or.space.prefix + "numpages" bibinfo.check * * " (" swap$ * ")" * * } if$ @@ -1104,9 +1191,60 @@ FUNCTION {format.booktitle} booktitle "booktitle" bibinfo.check emphasize } +FUNCTION {format.doi.booktitle} +{ + booktitle "booktitle" bibinfo.check + doilink emphasize +} FUNCTION {format.in.ed.booktitle} +{ format.doi.booktitle duplicate$ empty$ 'skip$ + { + format.edition duplicate$ empty$ 'pop$ + { ", " swap$ * * } + if$ + editor "editor" format.names.ed duplicate$ empty$ 'pop$ + { + get.bbl.editor + swap$ "," * + " " * swap$ * + swap$ + "," * + " " * swap$ + * } + if$ + format.bvolume duplicate$ empty$ 'pop$ + { ", " swap$ * * } + if$ + word.in swap$ * + } + if$ +} +FUNCTION {format.in.ed.proctitle} { format.booktitle duplicate$ empty$ 'skip$ { + format.edition duplicate$ empty$ 'pop$ + { ", " swap$ * * } + if$ + editor "editor" format.names.ed duplicate$ empty$ 'pop$ + { + get.bbl.editor + swap$ "," * + " " * swap$ * + swap$ + "," * + " " * swap$ + * } + if$ + format.pvolume duplicate$ empty$ 'pop$ + { ", " swap$ * * } + if$ + word.in swap$ * + } + if$ +} +FUNCTION {format.in.ed.serialtitle} +{ format.doi.booktitle duplicate$ empty$ 'skip$ + { format.bvolume duplicate$ empty$ 'pop$ { " (" swap$ * * ")" *} if$ @@ -1127,6 +1265,7 @@ FUNCTION {format.in.ed.booktitle} } if$ } + FUNCTION {empty.misc.check} { author empty$ title empty$ howpublished empty$ month empty$ year empty$ note empty$ @@ -1143,6 +1282,33 @@ FUNCTION {format.thesis.type} } if$ } + +FUNCTION {format.alt.link} +{ doi empty$ + { url empty$ + { eprint empty$ + { format.note output + fin.urllink.entry + } + { format.note output + format.eprint output + fin.entry + } + if$ + } + { format.note output + format.url output + fin.entry + } + if$ + } + { format.doi output + format.note output + fin.urllink.entry + } + if$ +} + FUNCTION {format.tr.number} { number "number" bibinfo.check type duplicate$ empty$ @@ -1154,7 +1320,45 @@ FUNCTION {format.tr.number} { pop$ "t" change.case$ } { tie.or.space.prefix * * } if$ + duplicate$ empty$ 'skip$ + { + doilink + } + if$ +} + +FUNCTION {format.paper.number} +{ number "number" bibinfo.check + type duplicate$ empty$ + { pop$ bbl.paperno } + 'skip$ + if$ + "type" bibinfo.check + swap$ duplicate$ empty$ + { pop$ "t" change.case$ } + { tie.or.space.prefix * * } + if$ + duplicate$ empty$ 'skip$ + { + doilink + } + if$ +} +FUNCTION {format.venue} +{ venue "venue" bibinfo.check + duplicate$ empty$ 'skip$ + { + } + if$ +} +FUNCTION {format.eventdate} +{ eventdate "eventdate" bibinfo.check + duplicate$ empty$ 'skip$ + { + } + if$ } + FUNCTION {format.article.crossref} { key duplicate$ empty$ @@ -1273,6 +1477,10 @@ FUNCTION {format.organization.address} { organization "organization" bibinfo.check format.org.or.pub } +FUNCTION {format.institution.address} +{ institution "institution" bibinfo.check format.org.or.pub +} + FUNCTION {article} { output.bibitem format.authors "author" output.check @@ -1294,11 +1502,11 @@ FUNCTION {article} eid empty$ { format.journal.pages } { format.journal.eid } - if$ + if$ format.note output - format.eprint output fin.urllink.entry } + FUNCTION {book} { output.bibitem author empty$ @@ -1315,9 +1523,9 @@ FUNCTION {book} date.block format.doi.btitle "title" output.check crossref missing$ - { format.bvolume output - format.edition output + { format.edition output format.version output + format.bvolume output format.number.series output format.publisher.address output } @@ -1326,9 +1534,9 @@ FUNCTION {book} } if$ format.note output - format.eprint output fin.urllink.entry } + FUNCTION {booklet} { output.bibitem format.authors output @@ -1359,14 +1567,15 @@ FUNCTION {inbook} if$ format.date "year" output.check date.block - format.btitle "title" output.check + format.doi.btitle "title" output.check crossref missing$ { - format.bvolume output - format.chapter.pages "chapter and pages" output.check format.edition output + format.version output + format.bvolume output format.number.series output format.publisher.address output + format.chapter.pages "chapter and pages" output.check } { format.chapter.pages "chapter and pages" output.check @@ -1374,11 +1583,8 @@ FUNCTION {inbook} } if$ format.pages "pages" output.check - format.doi output format.note output - format.eprint output - format.url output - fin.entry + fin.urllink.entry } FUNCTION {incollection} @@ -1399,13 +1605,11 @@ FUNCTION {incollection} } if$ format.pages "pages" output.check - format.doi output format.note output - format.eprint output - format.url output - fin.entry + fin.urllink.entry } -FUNCTION {inproceedings} + +FUNCTION {inserialcollection} { output.bibitem format.authors "author" output.check format.date "year" output.check @@ -1413,28 +1617,55 @@ FUNCTION {inproceedings} format.title "title" output.check end.quote.title crossref missing$ - { format.in.ed.booktitle "booktitle" output.check - venue output - eventdate output + { format.in.ed.serialtitle "booktitle" output.check format.number.series output + format.publisher.address output + format.chapter.pages output + } + { format.incoll.inproc.crossref output.nonnull + format.chapter.pages output + } + if$ + format.pages "pages" output.check + format.note output + fin.urllink.entry +} + +FUNCTION {inproceedings} +{ output.bibitem + format.authors "author" output.check + format.date "year" output.check + date.block + format.title "title" output.check + end.quote.title + crossref missing$ + { format.in.ed.proctitle "booktitle" output.check publisher empty$ { format.organization.address output } - { organization "organization" bibinfo.check output - format.publisher.address output - } + { format.publisher.address output } if$ } { format.incoll.inproc.crossref output.nonnull } if$ - format.pages "pages" output.check - format.doi output - format.note output - format.eprint output - format.url output - fin.entry + venue empty$ + { venue "venue" output.check} + { "address and venue" address either.or.check format.venue output } + if$ + format.eventdate "eventdate" output.check + number empty$ + { format.pages "pages" output.check + format.alt.link + } + { format.paper.number "number" output.check + format.pages "pages" output.check + format.note output + fin.urllink.entry + } + if$ } FUNCTION {conference} { inproceedings } + FUNCTION {manual} { output.bibitem author empty$ @@ -1450,6 +1681,8 @@ FUNCTION {manual} format.date output date.block format.btitle "title" output.check + format.edition output + format.version output author empty$ { organization empty$ { @@ -1463,8 +1696,6 @@ FUNCTION {manual} address "address" bibinfo.check output } if$ - format.edition output - format.version output format.doi output format.note output format.eprint output @@ -1504,6 +1735,36 @@ FUNCTION {misc} fin.entry empty.misc.check } + +FUNCTION {online} +{ output.bibitem + author empty$ + { format.editors "author and editor" output.check + } + { format.authors output.nonnull + crossref missing$ + { "author and editor" editor either.or.check } + 'skip$ + if$ + } + if$ + format.date "year" output.check + date.block + format.title + "title" output.check + end.quote.title + format.version output + organization "organization" bibinfo.warn output + address "address" bibinfo.check output + format.doi output + format.note output + format.eprint output + format.url "url" bibinfo.warn output + fin.entry +} +FUNCTION {electronic} { online } +FUNCTION {www} { online } + FUNCTION {phdthesis} { output.bibitem format.authors "author" output.check @@ -1531,10 +1792,8 @@ FUNCTION {proceedings} if$ format.date "year" output.check date.block - format.btitle "title" output.check + format.doi.btitle "title" output.check format.bvolume output - venue output - eventdate output editor empty$ { publisher empty$ { format.number.series output } @@ -1550,17 +1809,15 @@ FUNCTION {proceedings} format.organization.address output } { format.number.series output - organization "organization" bibinfo.check output format.publisher.address output } if$ } if$ - format.doi output + "address and venue" address either.or.check format.venue "venue" output.check + format.eventdate "eventdate" output.check format.note output - format.eprint output - format.url output - fin.entry + fin.urllink.entry } FUNCTION {techreport} @@ -1571,47 +1828,16 @@ FUNCTION {techreport} format.title "title" output.check end.quote.title - format.tr.number output.nonnull - institution "institution" bibinfo.warn output - address "address" bibinfo.check output - format.doi output - format.note output - format.eprint output - format.url output - fin.entry -} - -FUNCTION {online} -{ output.bibitem - author empty$ - { format.editors "author and editor" output.check - } - { format.authors output.nonnull - crossref missing$ - { "author and editor" editor either.or.check } - 'skip$ - if$ - } + format.institution.address output + number empty$ + { format.alt.link } + { format.tr.number output.nonnull + format.note output + fin.urllink.entry + } if$ - format.date "year" output.check - date.block - format.title - "title" output.check - end.quote.title - format.version output - organization "organization" bibinfo.warn output - address "address" bibinfo.check output - format.doi output - format.note output - format.eprint output - format.url "url" bibinfo.warn output - fin.entry } -FUNCTION {electronic} { online } - -FUNCTION {www} { online } - FUNCTION {unpublished} { output.bibitem format.authors "author" output.check |