Home

Awesome

Moved to: https://codeberg.org/rahguzar/inspirehep.el

inspirehep.el: An Emacs package for High Enegry Physics literature search

GPL 3

inspirehep.el provides an Emacs interface to the literature search for high energy physics using the JSON api provided by INSPIRE.

Usage

Quick start: M-x inspirehep-lookup.

This displays a list of results in inspirehep-mode. In that mode, use:

Customization

There are a few options to change how this package works.

Downloading PDF

To use the pdf download functionality the variable inspirehep-download-directory must be set to an existing directory.

Pagination

INSPIRE's api returns the search results in pages. By default this package sets the number of results per page to 25. The value can be changed using inspirehep-search-parameters variable. Setting this variable to a high values increases the time it takes a response from INSPIRE to arrive.

By default this package will fetch the pages in background and insert the results in the buffer as they arrive. This behavior can be disabled by changing inspirehep-insert-all to nil. You can still use n to fetch the next page of the results and insert them into the buffer.

Target buffer selection

The variable inspirehep-target-buffer-function determines the buffer where the BibTeX will be inserted. By default, the buffer is chosen based on the major mode of the buffer that was current when inspirehep-lookup was called. If it was a LaTeX-mode buffer, the entry will be inserted in the corresponding BibTeX file, if it was a bibtex-mode buffer the entry will be inserted in the file it was visiting, if it was an inspirehep-mode buffer, the target buffer is inherited from it. In other cases, the entry isn't inserted in any file unless the target buffer is selected manually.

Example

The syntax for search queries is explained at https://help.inspirehep.net/knowledge-base/inspire-paper-search.

Acknowledgments

This package started as an attempt to add INSPIRE as a backend to biblio.el which is still a much better option for general reference search. But I wanted to make enough minor changes to the internals of it that I eventually extracted the parts I needed but they still make majority of the code in this package.