racket / scribble

Other
194 stars 90 forks source link

Add bibtex and autobib support for DOIs #340

Closed wilbowma closed 1 year ago

wilbowma commented 1 year ago

Rendered examples:

image image

Example file:

meow.scrbl:

#lang scribble/acmart @nonacm @review @anonymous @screen

@(require
 scriblib/autobib
 scriblib/bibtex)

@(define-cite acite acitet generate-bibliography)
@(define-bibtex-cite* "bib.bib" acite acitet ~cite citet)

@title{Foo}

@author[
"William J. Bowman"
]

@~cite["ghuloum2006" "keep2013"]

@(generate-bibliography)

bib.bib:

@String{icfp    = {International Conference on Functional Programming ({ICFP})}}

@InProceedings{keep2013,
  author    = {Andrew W. Keep and R. Kent Dybvig},
  booktitle = icfp,
  doi       = {10.1145/2500365.2500618},
  title     = {A nanopass framework for commercial compiler development},
  year      = {2013},
  editor    = {Greg Morrisett and Tarmo Uustalu},
  pages     = {343--350},
  publisher = {{ACM}},
  bibsource = {dblp computer science bibliography, https://dblp.org},
  biburl    = {https://dblp.org/rec/bib/conf/icfp/KeepD13},
  file      = {:keep2013 - A Nanopass Framework for Commercial Compiler Development.pdf:PDF},
}

@InProceedings{ghuloum2006,
  author    = {Abdulaziz Ghuloum},
  booktitle = {Scheme Workshop},
  title     = {An Incremental Approach to Compiler Construction},
  year      = {2006},
  file      = {:ghuloum2006 - An Incremental Approach to Compiler Construction.pdf:PDF},
  keywords  = {nanopass},
  url       = {http://scheme2006.cs.uchicago.edu/11-ghuloum.pdf},
}
mflatt commented 1 year ago

Merged as e1385468e45f6598e50b514e32d7b6a916565c26 (squashed manually due to #347 merge, and with doc updates).