Skip to content
forked from papis/papis

Papis is a powerful and highly extensible command-line based document and bibliography manager.

License

Notifications You must be signed in to change notification settings

tsatsoulis/papis

 
 

Repository files navigation

Papis

Build Status

Documentation Status PyPI version

Description

Papis is a powerful and highly extensible command-line based document and bibliography manager.

Take a look at the documentation!

Super quick start

Install papis with pip3

sudo pip3 install papis

Let us download a couple of documents

wget http://www.gnu.org/s/libc/manual/pdf/libc.pdf
wget http://www.ams.org/notices/201304/rnoti-p434.pdf 

Now add them to the (defaultly created) library

papis add libc.pdf --author "Sandra Loosemore" --title "GNU C reference manual" --confirm
# Get paper information automatically via de DOI
papis add --from-doi 10.1090/noti963 rnoti-p434.pdf 

Now open one for example

papis open

asciicast Or edit them and export them to bibtex

papis edit
papis export --all --bibtex > mylib.bib

asciicast

find help messages in all commands:

papis -h
papis add -h

asciicast AND MUCH, MUCH MORE!

Main features

  • Synchronizing of documents: put your documents in some folder and synchronize it using the tools you love: git, dropbox, rsync, OwnCloud, Google Drive ... whatever.
  • Share libraries with colleagues without forcing them to open an account, nowhere, never.
  • Download directly paper information from DOI number via Crossref.
  • (optional) scihub support, use the example papis script examples/scripts/papis-scihub to download papers from scihub and add them to your library with all the relevant information, in a matter of seconds.
  • Import from Zotero using the examples/scripts/papis-zotero.
  • Create custom scripts to help you achieve great tasks easily (doc).
  • Export documents into many formats (bibtex, yaml..)
  • Command-line granularity, all the power of a library at the tip of your fingers.

Help Wanted

Papis is looking for active developers to help improve the code.

TODO

  • Implement a mini query language in order to filter by field the searches, for example:
    papis open "author=stein year=192 ueber die "
    
    so that it matches all papers with a regex match for stein, then also where the year matches 192 (i.e., 1920, 1921...) and then also it matches ueber die using the default match-format configuration variable. This can be done by updating the function papis.utils.match_document.
  • Match search strings to documents using multiple cores through the standard multiprocess module.
  • Make sure that setup.py installs the python-rofi module from https://github.com/alejandrogallo/python-rofi and not from the original website.
  • Bibitem support for exporting references in the export command. (Done through the --template option of list)
  • Youtube video explaining the main uses of papis.
  • Implement proxy to donwload papers.
  • Testing on Windows.
  • Logo.
  • Gtk or Qt based GUI.

About

Papis is a powerful and highly extensible command-line based document and bibliography manager.

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages

  • Python 86.0%
  • TeX 6.8%
  • Makefile 4.4%
  • Vim Script 2.2%
  • Shell 0.6%