X-Git-Url: http://gitweb.michael.orlitzky.com/?p=mjotex.git;a=blobdiff_plain;f=mjo.bst;h=3bf6e633466ae3a0fe0a34f5a81c9747f34a0c8b;hp=e35241dcea13cbf150fe8a9bee1e6e8bff75d844;hb=e49da80d1ec7904d4ba8ca0e4bb1a24b14c1d74e;hpb=34cdeee15aa76cbc04f7a4746e27b2c75491c60d diff --git a/mjo.bst b/mjo.bst index e35241d..3bf6e63 100644 --- a/mjo.bst +++ b/mjo.bst @@ -66,6 +66,13 @@ ENTRY } {} { label } + +STRINGS { doiprefix doiurl } +FUNCTION {init.doi.variables} +{ + "http://dx.doi.org/" 'doiurl := % prefix to make URL from DOI + "doi:" 'doiprefix := % text prefix printed before DOI ref +} INTEGERS { output.state before.all mid.sentence after.sentence after.block } FUNCTION {init.state.consts} { #0 'before.all := @@ -304,46 +311,6 @@ 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$ @@ -482,13 +449,13 @@ FUNCTION {format.issn} if$ } +FUNCTION {make.href} +{ "\href {" swap$ * "} {\path{" * swap$ * "}}" * } + FUNCTION {format.doi} { doi empty$ { "" } - { - new.block - "\doi{" doi * "}" * - } + { doiprefix doi * doiurl doi * make.href } if$ } FUNCTION {format.note} @@ -1449,8 +1416,13 @@ FUNCTION {begin.bib} write$ newline$ " \providecommand{\doi}{doi:\discretionary{}{}{}\begingroup \urlstyle{rm}\Url}\fi" write$ newline$ + "\expandafter\ifx\csname href\endcsname\relax" + write$ newline$ + " \def\href#1#2{#2} \def\path#1{#1}\fi" + write$ newline$ } EXECUTE {begin.bib} +EXECUTE {init.doi.variables} EXECUTE {init.state.consts} ITERATE {call.type$} FUNCTION {end.bib}