<span class="mw-page-title-main">Doi2bib</span>
Elena & Fabrice's Web

doi2bib

doi2bib is a perl, jq script to generate the bibTeX entry, according to my own standard and with my own conventions, from the doi of a scientific reference.

More details on the script (including the genesis of its creation) can be found in this blog post.

Usage

Pass a valid doi to the script.

doi2bib 10.1103/PhysRevLett.80.3483

The above example returns:

Article{saleh98a,
  author =       {B. E. A. Saleh and B. M. Jost and H. Fei and M. C. Teich},
  title =        {Entangled-Photon Virtual-State Spectroscopy},
  journal =      prl,
  year =         1998,
  volume =       80,
  pages =        3483,
  pdf =          {sci/saleh98a},
  url =          {doi:10.1103/physrevlett.80.3483}
}

You may have to put the doi between quotes if there are escape characters:

doi2bib "10.1016/0030-4018(91)90618-N"

Versions

  1. 30 July (2023): v°0.1 achieves the basic functionality.

Possible improvements

  1. Doesn't detect well doi with escape characters, e.g., 10.1016/0038-1098(95)00389-4 (kavokin95a).
  2. more robust on firstnames and particles, e.g., does not truncate by its initials lowercases strings, that are typically "de", "del", "von", etc.
curl -LH "Accept: application/json" "http://dx.doi.org/10.48550/arXiv.2305.15827"

Installation

Copy the chmod +x script in the local bin directory. Two additional files should be put somewhere, as defined by

  • iso4 -- substitution rules for journals.
  • bibnames -- substitution rules for authors.

(in my case, these files are in ~/bib/doi2bib/).

Script

Links