I created this tool during the work on my diploma thesis in physics since I was unhappy with existing tools like Mendeley. I use this tool together with Git for version control and JabRef for browsing. This tool adheres more to the Unix philosophy that a small tool for each task is better than one thing which tries to solve everything. If you use JabRef for browsing and tagging it is unnecessary to sort the papers into different sub directories by hand. Just throw them all in one directory!
Note: This tool is derived from a script which I used during my thesis. It worked quite well and reliable during that time. But be aware that I used Git for version control of the BibTeX file. So any mistakes which might be made by this tool could be reverted.
BibSync supports the following features:
- Synchronization between a BibTeX file and a directory containing the papers in pdf, ps or djvu format
- JabRef file fields are generated, so you can open the existing papers directly out of JabRef
- Downloading of arXiv or DOI metadata
- Extraction of arXiv or DOI id out of the file using pdftotext
- Downloading of new versions of arXiv papers
- Simple validation of BibTeX files (Checks for missing fields etc)
- Simple transformation of BibTeX fields (Normalization of author, year and journal field...)
- Works under every platform supporting Ruby and
pdftotext(Linux, Windows, ...)
At first you have to ensure that you have the
pdftotext program available on your
$PATH. Under Debian you can install
the package using
apt-get as follows
$ apt-get install poppler-utils $ pdftotext pdftotext version 0.24.1 ...
BibSync requires Ruby >= 1.9.2 to run. It is distributed as a RubyGems package. You can install it via the command line
$ gem install bibsync
And for updating, you write
$ gem update bibsync
After that you can use the 'bibsync' tool on the command line. At first let's validate a BibTeX file called 'thesis.bib'.
$ bibsync -b ~/thesis/thesis.bib
Then we want to synchronize all the papers in our paper directory with 'bibsync' and automatically download the missing metadata.
$ bibsync -d ~/thesis/papers -b ~/thesis/thesis.bib
$ bibsync --help
- BibSync for synchronizing
- JabRef for browsing the bibliography, tagging and categorizing papers
- Biblatex to include a bibliography in LaTeX with full Unicode support
- Mendeley (Commercial, synchronizes with their server, limited disk space, bloated gui application)
- Zotero (Firefox plugin, Open source)
A better name?
If you have a suggestion for a better name, just let me know...