Package: caleb
calebOverviewcalebis a tool for automatically filling in your Latex citations. It assumes
that the citations in your tex files are of the form\cite{author:title:year}or\cite{author:title}.calebthen extracts the citation keys from the aux
file and will retrieve bibliographic data from eitherhttps://www.crossref.org/(default) orhttps://mathscinet.ams.org/mrlookup.
By default, these entries are then appending to the bib file. If the--dry-runoption is passed, then the entries are printed instead.Usage examplesThe quickest way to see whatcalebis doing is to use the--get-this-keyflag.$ caleb --get-this-key 'mazur:eisenstein' --method 'ams'
@article {mazur:eisenstein,
    AUTHOR = {Mazur, B.},
     TITLE = {Modular curves and the {E}isenstein ideal},
      NOTE = {With an appendix by Mazur and M. Rapoport},
   JOURNAL = {Inst. Hautes \'{E}tudes Sci. Publ. Math.},
  FJOURNAL = {Institut des Hautes \'{E}tudes Scientifiques. Publications
              Math\'{e}matiques},
    NUMBER = {47},
      YEAR = {1977},
     PAGES = {33--186 (1978)},
      ISSN = {0073-8301},
   MRCLASS = {14G25 (10D05)},
  MRNUMBER = {488287},
MRREVIEWER = {M. Ohta},
       URL = {http://www.numdam.org/item?id=PMIHES_1977__47__33_0},
}The following examples occur in theexamplesdirectory.First runpdflatex an_example.texto generatean_example.aux.calebwill now parsean_example.auxto generate the appropriate bibliography
file.$ caleb an_exampleThe first important commandline option is--take-first. When making a
query, it is possible that there are multiple result. By default,calebwill take no action here. However, if the--take-firstflag is passed,calebwill take the first entry.$ caleb --take-first an_exampleThe next important commandline option is--method. By default,calebusescrossref.org. However, we can also tellcalebto usehttps://mathscinet.ams.org/mrlookup.$ caleb --method ams an_exampleWorkflow integrationlatexmkThe best way is probably to integrate intolatexmk. The-pdflatexflag
allows us to runcalebafter eachpdflatexcall.latexmk -pdf -pdflatex='pdflatex %O %S; caleb -t -m ams %B' an_exampleWe can set the-pdflatexflag in a.latexmkrcfile. This can either go in
the your tex project folder or in the home directory. So in the.latexmkrcfile, include the following line (see examples directory for an example):$pdflatex='pdflatex %O %S; caleb %B'BarebonesThe barebone approach is to runcalebbefore running bibtex.pdflatex an_example
caleb an_example
bibtex an_example
pdflatex an_example
pdflatex an_examplecocalchttp://cocalc.comcontains a collaborative latex editor that allows you to use a
custom build command. We can usecalebby changing it tolatexmk -pdf -pdflatex='pdflatex %O %S; caleb -t -m ams %B' -f -g -bibtex -synctex=1 -interaction=nonstopmode an_example.texHelpcalebcomes with some command line arguments.$ caleb --help
usage: caleb [-h] [-t] [-v] [--version] [-m {crossref,ams}] [-g GET_THIS_KEY]
             [-dr]
             [input_name]

positional arguments:
  input_name

optional arguments:
  -h, --help            show this help message and exit
  -t, --take-first      Take first result if multiple results
  -v, --verbose         Increase verbosity of output
  --version             Outputs the version
  -m {crossref,ams}, --method {crossref,ams}
                        Specify a method for retrieving citations
  -g GET_THIS_KEY, --get-this-key GET_THIS_KEY
                        Print the first entry with this key
  -dr, --dry-run        Write the changes to stdout instead of the bibtexInstallationDependenciescrossref_commons_pyrequestspython3(tested with >=3.6)Testing and Development Dependenciespoetrypython-coverallspytestpytest-covblackisortmypypipThe recommended method is to getcalebfrom itsPyPI
repository.pip3 install caleb --usersetup.pyAlternatively, asetup.pyfile is auto-generated usingdephell. Let me know if something goes
wrong!python setup.py install --userGoal of projectReach feature parity with IRLCalebby version 2.13.1995.Homepagehttps://github.com/kevinywlui/caleb