Skip to content

eugeneteo/reference-toolkit

 
 

Repository files navigation

reference-toolkit

Python-based tools for managing bibliographies using BibTeX

Stores journal articles in a tree structure based from directory provided in the .referencerc file
Saves journal articles and article supplements with name format provided in the .referencerc file
Formats *.ris and *.bib bibliography files into a standard format

Functions

read_referencerc.py: Reads the file format and base directory from the .referencerc file

gen_citekeys.py: Generates Papers2-like cite keys for BibTeX

python gen_citekeys.py --author Rignot --year 2008 --doi "10.1038/ngeo102"

smart_citekeys.py: Creates Papers2-like cite keys using information from the crossref REST API

python smart_citekeys.py "10.1038/ngeo102"

format_bibtex.py: Reformats BibTeX files into a standard format with Universal cite keys

python format_bibtex.py -C -O example.bib

smart_bibtex.py: Creates a BibTeX entry with Universal cite keys using information from the crossref REST API

python smart_bibtex.py -O "10.1038/ngeo102"

ris_to_bibtex.py: Converts RIS bibliography files into BibTeX files with Universal cite keys

python ris_to_bibtex.py -C -O example.ris

copy_journal_article.py: Copies a journal article and supplements from a website to the reference directory

python copy_journal_articles.py --author Rignot --year 2008 \
	--journal "Nature Geoscience" --volume 1 \
	https://www.nature.com/ngeo/journal/v1/n2/pdf/ngeo102.pdf

smart_copy_articles.py: Copies a journal article and supplements from a website to the reference directory using the crossref REST API

python smart_copy_articles.py --doi 10.1038/ngeo102 \
	https://www.nature.com/ngeo/journal/v1/n2/pdf/ngeo102.pdf

move_journal_article.py: Moves a journal article and supplements from a local directory to the reference directory

python move_journal_article.py --author Rignot --year 2008 \
	--journal "Nature Geoscience" --volume 1 ~/Downloads/ngeo102.pdf

smart_move_articles.py: Copies a journal article and supplements from a local directory to the reference directory using the crossref REST API

python smart_move_articles.py --doi 10.1038/ngeo102 ~/Downloads/ngeo102.pdf

search_references.py: Searches all managed BibTeX files for keywords, authors and/or journal

python search_references.py -A Rignot -F -Y 2008 -J "Nature Geoscience"

open_doi.py: Opens the webpages associated with a Digital Object Identifier (DOI)

python open_doi.py 10.1038/ngeo102

export_library.py: Exports library of individual BibTeX files into a single sorted BibTeX file

python export_library.py  --sort author --export bibtex_library.bib

sync_library.py: Syncs complete library with a different directory

python sync_library.py -V ~/references.dir

scp_library.py: Syncs complete library with a remote host

python scp_library.py -V user@remote:~/references.dir

language_conversion.py: Mapping function that converts to/from LaTeX and python unicode for special characters

#-- 1st column: latex format for output bibtex files
#-- 2nd column: character with combining modifier unicode
#-- 3rd column: precomposed character and modifier unicode
#-- 4th column: plain text "equivalent" (scrubbed of symbols for citekeys)
for LV, CV, UV, PV in language_conversion():
	author = author.replace(UV, CV)

Journal Abbreviations

List of Journal Name and Abbreviation modified from Web of Science

Dependencies

Download

The program homepage is:
https://github.com/tsutterley/reference-toolkit
A zip archive of the latest version is available directly at:
https://github.com/tsutterley/reference-toolkit/archive/master.zip

Disclaimer

This program is not sponsored or maintained by the Universities Space Research Association (USRA) or NASA. The work here has absolutely no affiliation with the Papers App or the ReadCube company. It is provided here for your convenience but with no guarantees whatsoever.

About

Python-based tools for managing bibliographies using BibTeX

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • Python 100.0%