papis


Namepapis JSON
Version 0.14 PyPI version JSON
download
home_pageNone
SummaryPowerful and highly extensible command-line based document and bibliography manager
upload_time2024-11-08 19:07:52
maintainerNone
docs_urlNone
authorNone
requires_python>=3.8
licenseGPL-3.0
keywords biblatex bibtex biliography books cli command-line crossref datasheets document elsevier ieee latex libgen mathematics mendeley papers physics pubmed reference manager research science scihub tui zotero
VCS
bugtrack_url
requirements No requirements were recorded.
Travis-CI No Travis.
coveralls test coverage
            Papis
=====

|ghbadge| |RTD| |CodeQL| |Pypi| |zenodo_badge|

Papis is a powerful and highly extensible CLI document and bibliography manager.

|first_glance|

With Papis, you can search your library for books and papers, add documents and
notes, import and export to and from other formats, and much much more. Papis
uses a human-readable and easily hackable ``.yaml`` file to store each entry's
bibliographical data. It strives to be easy to use while providing a wide range
of features. And for those who still want more, Papis makes it easy to write
scripts that extend its features even further.

Features
--------

- **Add documents** and automatically fetch their metadata.
- **Search** by author, title, tags, and so on.
- **Synchronize** your library with whatever software you're already using.
- **Share** your documents with colleagues without having to force some proprietary
  service onto them.
- **Import** your data from other bibliography managers.
- **Export** to BibTeX and other formats.
- **Integrate with your editor** with plugins for (Neo)vim and Emacs.
- **TUIs** make it easy to get a quick overview of your library.
- **Use the web app** when the CLI doesn't quite cut it (for example on your tablet).
- **Hacking** Papis is easy! Use the API to easily create your own custom python scripts.

Quick tour
----------

Install Papis with pip (or `one of the alternatives <https://papis.readthedocs.io/en/latest/install.html>`__):

.. code:: bash

    pip install papis

Let's download a couple of documents:

.. code:: bash

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

We can now add these to the (default) library. This will automatically query for
the metadata associated with the ``doi``.

.. code:: bash

    papis add --from doi 10.1090/noti963 rnoti-p434.pdf

|add|

You can also use ``--set`` to add information:

.. code:: bash

    papis add libc.pdf --set author "Sandra Loosemore" \
                       --set title "GNU C reference manual" \
                       --set year 2018 \
                       --set tags programming \
                       --confirm

Now open an attached file or edit an entry:

.. code:: bash

    papis open
    papis edit


|edit|

The Papis picker (set using the ``picktool`` configuration option) has
helpful shortcuts to call other functionality as well (press ``F1`` for
a complete list). It can be used to open (``Ctrl-o``), browse (``Ctrl-b``)
or edit (``Ctrl-e``) selected documents (marked with ``Ctrl-t``).

Import your bibliography into Papis from BibTeX:

.. code:: bash

    papis bibtex read mylib.bib import --all

Or export it to BibTeX:

.. code:: bash

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

|bibtex_export|

Papis also includes a web app that you can start with:

.. code:: bash

    papis serve

You can then open the indicated address (``http://localhost:8888``) in your
browser.

|web_app|

All ``papis`` commands come with help messages:

.. code:: bash

    papis -h      # General help
    papis add -h  # Help with a specific command

Installation & setup
--------------------

Information about installation and setup can be found in the
`docs <https://papis.readthedocs.io/en/latest/>`__, for example in the these sections:

- `Installation <https://papis.readthedocs.io/en/latest/install.html>`__
- `Configuration <https://papis.readthedocs.io/en/latest/configuration.html>`__
- `Import <https://papis.readthedocs.io/en/latest/importing.html>`__
- `Editor integration <https://papis.readthedocs.io/en/latest/editors.html>`__

Questions?
----------

The `docs <https://papis.readthedocs.io/en/latest/>`__ cover Papis' features and
discuss possible work flows. If you still have questions, head to our
`GitHub discussions <https://github.com/papis/papis/discussions>`__ — we're
more than happy to help. If you've found a bug, please
`open an issue <https://github.com/papis/papis/issues>`__ and help make Papis
even better!

If you're not finding a command or configuration value that shows up in the
documentation in your local installation, you may just be looking at the wrong
docs. You can find the documentation for the latest *released* version
`here <https://papis.readthedocs.io/en/stable/>`__ and the documentation for
the *in-development* version `here <https://papis.readthedocs.io/en/latest/>`__.

Reviews and blog posts
----------------------

- `Blog post <https://alejandrogallo.github.io/blog/posts/getting-paper-references-with-papis/>`__
  about getting a paper's references with ``papis explore``.
- `Blog post <https://nicolasshu.com/zotero_and_papis.html>`__ about using Papis
  with Zotero and Syncthing.
- GNU/Linux Switzerland `wrote about Papis <https://gnulinux.ch/papis-dokumentenverwaltung-fuer-die-kommandozeile>`__
  *(in German)*.
- The folks at OSTechNix wrote a review of `Papis
  <https://www.ostechnix.com/papis-command-line-based-document-bibliography-manager/>`__.
- A `review of Papis <https://ubunlog.com/papis-administrador-documentos/>`__
  by Ubunlog *(in Spanish)*.

Contributing
------------

Contributions are very welcome! Take a look at
`CONTRIBUTING.md <https://github.com/papis/papis/blob/main/CONTRIBUTING.md>`__ for
general rules and `HACKING.md <https://github.com/papis/papis/blob/main/HACKING.md>`__
for additional code-related information. We encourage you to also check out,
contribute to, or even help maintain the other projects in the Papis ecosystem
mentioned below :wink:.

The Papis ecosystem
-------------------

Papis has grown over the years and there are now a number of projects that
extend Papis' features or integrate it with other software.

.. list-table::
   :widths: 33 67
   :header-rows: 1

   * - Project
     - Maintained by

   * - `papis (core) <https://github.com/papis/papis-rofi/>`__
     - `Alejandro Gallo <https://alejandrogallo.github.io/>`__, `Julian Hauser <https://github.com/jghauser>`__, `Alex Fikl <https://github.com/alexfikl>`__

   * - `papis-rofi <https://github.com/papis/papis-rofi/>`__
     - `Etn40ff <https://github.com/Etn40ff>`__

   * - `papis-dmenu <https://github.com/papis/papis-dmenu>`__
     - you?

   * - `papis-vim <https://github.com/papis/papis-vim>`__
     - you?

   * - `papis.nvim <https://github.com/jghauser/papis.nvim>`__
     - `Julian Hauser <https://github.com/jghauser>`__

   * - `papis-emacs <https://github.com/papis/papis.el>`__
     - `Alejandro Gallo <https://alejandrogallo.github.io/>`__

   * - `papis-zotero <https://github.com/papis/papis-zotero>`__
     - `Alex Fikl <https://github.com/alexfikl>`__

   * - `papis-libgen <https://github.com/papis/papis-zotero>`__
     - you?

   * - `papis-firefox <https://github.com/papis/papis-firefox>`__
     - `wavefrontshaping <https://github.com/wavefrontshaping>`__
   * - `papis-qa <https://github.com/isaksamsten/papisqa>`__ (AI for Papis)
     - `Isak Samsten <https://github.com/isaksamsten>`__

Related software
----------------

Papis isn't the only fish in the pond. You might also be interested in:

- `bibman <https://codeberg.org/KMIJPH/bibman>`__ (open source)
- `cobib <https://github.com/mrossinek/cobib>`__ (open source)
- `jabref <https://www.jabref.org/>`__ (open source)
- `Mendeley <https://www.mendeley.com/>`__ (proprietary)
- `pubs <https://github.com/pubs/pubs/>`__ (open source)
- `Xapers <https://finestructure.net/xapers/>`__ (open source)
- `Zotero <https://www.zotero.org/>`__ (open source)


Thanks
------

We thank `Irteza Rehman <https://www.irtezarehman.com/>`__ for generously creating
our beautiful logo.

.. |ghbadge| image:: https://github.com/papis/papis/workflows/CI/badge.svg
   :target: https://github.com/papis/papis/actions?query=branch%3Amain+workflow%3ACI
.. |RTD| image:: https://readthedocs.org/projects/papis/badge/?version=latest
   :target: http://papis.readthedocs.io/en/latest/?badge=latest
.. |CodeQL| image:: https://github.com/papis/papis/workflows/CodeQL/badge.svg
   :target: https://github.com/papis/papis/actions?query=branch%3Amain+workflow%3ACodeQL
.. |Pypi| image:: https://badge.fury.io/py/papis.svg
   :target: https://pypi.org/project/papis/
.. |zenodo_badge| image:: https://zenodo.org/badge/82691622.svg
   :target: https://zenodo.org/badge/latestdoi/82691622

.. |first_glance| image:: https://papis.github.io/images/first_glance.gif
.. |edit| image:: https://papis.github.io/images/edit.gif
.. |bibtex_export| image:: https://papis.github.io/images/bibtex_export.gif
.. |add| image:: https://papis.github.io/images/add.gif
.. |web_app| image:: https://papis.github.io/images/web_app.jpg

            

Raw data

            {
    "_id": null,
    "home_page": null,
    "name": "papis",
    "maintainer": null,
    "docs_url": null,
    "requires_python": ">=3.8",
    "maintainer_email": "Alejandro Gallo <aamsgallo@gmail.com>",
    "keywords": "biblatex, bibtex, biliography, books, cli, command-line, crossref, datasheets, document, elsevier, ieee, latex, libgen, mathematics, mendeley, papers, physics, pubmed, reference manager, research, science, scihub, tui, zotero",
    "author": null,
    "author_email": "Alejandro Gallo <aamsgallo@gmail.com>",
    "download_url": "https://files.pythonhosted.org/packages/e0/7d/2630b156dd12d48a9df539afa81e7e102f1364006795f4b7a37a9308f7fe/papis-0.14.tar.gz",
    "platform": null,
    "description": "Papis\n=====\n\n|ghbadge| |RTD| |CodeQL| |Pypi| |zenodo_badge|\n\nPapis is a powerful and highly extensible CLI document and bibliography manager.\n\n|first_glance|\n\nWith Papis, you can search your library for books and papers, add documents and\nnotes, import and export to and from other formats, and much much more. Papis\nuses a human-readable and easily hackable ``.yaml`` file to store each entry's\nbibliographical data. It strives to be easy to use while providing a wide range\nof features. And for those who still want more, Papis makes it easy to write\nscripts that extend its features even further.\n\nFeatures\n--------\n\n- **Add documents** and automatically fetch their metadata.\n- **Search** by author, title, tags, and so on.\n- **Synchronize** your library with whatever software you're already using.\n- **Share** your documents with colleagues without having to force some proprietary\n  service onto them.\n- **Import** your data from other bibliography managers.\n- **Export** to BibTeX and other formats.\n- **Integrate with your editor** with plugins for (Neo)vim and Emacs.\n- **TUIs** make it easy to get a quick overview of your library.\n- **Use the web app** when the CLI doesn't quite cut it (for example on your tablet).\n- **Hacking** Papis is easy! Use the API to easily create your own custom python scripts.\n\nQuick tour\n----------\n\nInstall Papis with pip (or `one of the alternatives <https://papis.readthedocs.io/en/latest/install.html>`__):\n\n.. code:: bash\n\n    pip install papis\n\nLet's download a couple of documents:\n\n.. code:: bash\n\n    wget https://www.gnu.org/s/libc/manual/pdf/libc.pdf\n    wget https://www.ams.org/notices/201304/rnoti-p434.pdf\n\nWe can now add these to the (default) library. This will automatically query for\nthe metadata associated with the ``doi``.\n\n.. code:: bash\n\n    papis add --from doi 10.1090/noti963 rnoti-p434.pdf\n\n|add|\n\nYou can also use ``--set`` to add information:\n\n.. code:: bash\n\n    papis add libc.pdf --set author \"Sandra Loosemore\" \\\n                       --set title \"GNU C reference manual\" \\\n                       --set year 2018 \\\n                       --set tags programming \\\n                       --confirm\n\nNow open an attached file or edit an entry:\n\n.. code:: bash\n\n    papis open\n    papis edit\n\n\n|edit|\n\nThe Papis picker (set using the ``picktool`` configuration option) has\nhelpful shortcuts to call other functionality as well (press ``F1`` for\na complete list). It can be used to open (``Ctrl-o``), browse (``Ctrl-b``)\nor edit (``Ctrl-e``) selected documents (marked with ``Ctrl-t``).\n\nImport your bibliography into Papis from BibTeX:\n\n.. code:: bash\n\n    papis bibtex read mylib.bib import --all\n\nOr export it to BibTeX:\n\n.. code:: bash\n\n    papis export --all --format bibtex > mylib.bib\n\n|bibtex_export|\n\nPapis also includes a web app that you can start with:\n\n.. code:: bash\n\n    papis serve\n\nYou can then open the indicated address (``http://localhost:8888``) in your\nbrowser.\n\n|web_app|\n\nAll ``papis`` commands come with help messages:\n\n.. code:: bash\n\n    papis -h      # General help\n    papis add -h  # Help with a specific command\n\nInstallation & setup\n--------------------\n\nInformation about installation and setup can be found in the\n`docs <https://papis.readthedocs.io/en/latest/>`__, for example in the these sections:\n\n- `Installation <https://papis.readthedocs.io/en/latest/install.html>`__\n- `Configuration <https://papis.readthedocs.io/en/latest/configuration.html>`__\n- `Import <https://papis.readthedocs.io/en/latest/importing.html>`__\n- `Editor integration <https://papis.readthedocs.io/en/latest/editors.html>`__\n\nQuestions?\n----------\n\nThe `docs <https://papis.readthedocs.io/en/latest/>`__ cover Papis' features and\ndiscuss possible work flows. If you still have questions, head to our\n`GitHub discussions <https://github.com/papis/papis/discussions>`__ \u2014 we're\nmore than happy to help. If you've found a bug, please\n`open an issue <https://github.com/papis/papis/issues>`__ and help make Papis\neven better!\n\nIf you're not finding a command or configuration value that shows up in the\ndocumentation in your local installation, you may just be looking at the wrong\ndocs. You can find the documentation for the latest *released* version\n`here <https://papis.readthedocs.io/en/stable/>`__ and the documentation for\nthe *in-development* version `here <https://papis.readthedocs.io/en/latest/>`__.\n\nReviews and blog posts\n----------------------\n\n- `Blog post <https://alejandrogallo.github.io/blog/posts/getting-paper-references-with-papis/>`__\n  about getting a paper's references with ``papis explore``.\n- `Blog post <https://nicolasshu.com/zotero_and_papis.html>`__ about using Papis\n  with Zotero and Syncthing.\n- GNU/Linux Switzerland `wrote about Papis <https://gnulinux.ch/papis-dokumentenverwaltung-fuer-die-kommandozeile>`__\n  *(in German)*.\n- The folks at OSTechNix wrote a review of `Papis\n  <https://www.ostechnix.com/papis-command-line-based-document-bibliography-manager/>`__.\n- A `review of Papis <https://ubunlog.com/papis-administrador-documentos/>`__\n  by Ubunlog *(in Spanish)*.\n\nContributing\n------------\n\nContributions are very welcome! Take a look at\n`CONTRIBUTING.md <https://github.com/papis/papis/blob/main/CONTRIBUTING.md>`__ for\ngeneral rules and `HACKING.md <https://github.com/papis/papis/blob/main/HACKING.md>`__\nfor additional code-related information. We encourage you to also check out,\ncontribute to, or even help maintain the other projects in the Papis ecosystem\nmentioned below :wink:.\n\nThe Papis ecosystem\n-------------------\n\nPapis has grown over the years and there are now a number of projects that\nextend Papis' features or integrate it with other software.\n\n.. list-table::\n   :widths: 33 67\n   :header-rows: 1\n\n   * - Project\n     - Maintained by\n\n   * - `papis (core) <https://github.com/papis/papis-rofi/>`__\n     - `Alejandro Gallo <https://alejandrogallo.github.io/>`__, `Julian Hauser <https://github.com/jghauser>`__, `Alex Fikl <https://github.com/alexfikl>`__\n\n   * - `papis-rofi <https://github.com/papis/papis-rofi/>`__\n     - `Etn40ff <https://github.com/Etn40ff>`__\n\n   * - `papis-dmenu <https://github.com/papis/papis-dmenu>`__\n     - you?\n\n   * - `papis-vim <https://github.com/papis/papis-vim>`__\n     - you?\n\n   * - `papis.nvim <https://github.com/jghauser/papis.nvim>`__\n     - `Julian Hauser <https://github.com/jghauser>`__\n\n   * - `papis-emacs <https://github.com/papis/papis.el>`__\n     - `Alejandro Gallo <https://alejandrogallo.github.io/>`__\n\n   * - `papis-zotero <https://github.com/papis/papis-zotero>`__\n     - `Alex Fikl <https://github.com/alexfikl>`__\n\n   * - `papis-libgen <https://github.com/papis/papis-zotero>`__\n     - you?\n\n   * - `papis-firefox <https://github.com/papis/papis-firefox>`__\n     - `wavefrontshaping <https://github.com/wavefrontshaping>`__\n   * - `papis-qa <https://github.com/isaksamsten/papisqa>`__ (AI for Papis)\n     - `Isak Samsten <https://github.com/isaksamsten>`__\n\nRelated software\n----------------\n\nPapis isn't the only fish in the pond. You might also be interested in:\n\n- `bibman <https://codeberg.org/KMIJPH/bibman>`__ (open source)\n- `cobib <https://github.com/mrossinek/cobib>`__ (open source)\n- `jabref <https://www.jabref.org/>`__ (open source)\n- `Mendeley <https://www.mendeley.com/>`__ (proprietary)\n- `pubs <https://github.com/pubs/pubs/>`__ (open source)\n- `Xapers <https://finestructure.net/xapers/>`__ (open source)\n- `Zotero <https://www.zotero.org/>`__ (open source)\n\n\nThanks\n------\n\nWe thank `Irteza Rehman <https://www.irtezarehman.com/>`__ for generously creating\nour beautiful logo.\n\n.. |ghbadge| image:: https://github.com/papis/papis/workflows/CI/badge.svg\n   :target: https://github.com/papis/papis/actions?query=branch%3Amain+workflow%3ACI\n.. |RTD| image:: https://readthedocs.org/projects/papis/badge/?version=latest\n   :target: http://papis.readthedocs.io/en/latest/?badge=latest\n.. |CodeQL| image:: https://github.com/papis/papis/workflows/CodeQL/badge.svg\n   :target: https://github.com/papis/papis/actions?query=branch%3Amain+workflow%3ACodeQL\n.. |Pypi| image:: https://badge.fury.io/py/papis.svg\n   :target: https://pypi.org/project/papis/\n.. |zenodo_badge| image:: https://zenodo.org/badge/82691622.svg\n   :target: https://zenodo.org/badge/latestdoi/82691622\n\n.. |first_glance| image:: https://papis.github.io/images/first_glance.gif\n.. |edit| image:: https://papis.github.io/images/edit.gif\n.. |bibtex_export| image:: https://papis.github.io/images/bibtex_export.gif\n.. |add| image:: https://papis.github.io/images/add.gif\n.. |web_app| image:: https://papis.github.io/images/web_app.jpg\n",
    "bugtrack_url": null,
    "license": "GPL-3.0",
    "summary": "Powerful and highly extensible command-line based document and bibliography manager",
    "version": "0.14",
    "project_urls": {
        "Documentation": "https://papis.readthedocs.io",
        "Repository": "https://github.com/papis/papis"
    },
    "split_keywords": [
        "biblatex",
        " bibtex",
        " biliography",
        " books",
        " cli",
        " command-line",
        " crossref",
        " datasheets",
        " document",
        " elsevier",
        " ieee",
        " latex",
        " libgen",
        " mathematics",
        " mendeley",
        " papers",
        " physics",
        " pubmed",
        " reference manager",
        " research",
        " science",
        " scihub",
        " tui",
        " zotero"
    ],
    "urls": [
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "ba145e89ebb61c194b94770b0516654a86b8edeb134e5093ef4dc0e75ab3ef35",
                "md5": "90e34f7b1cd0030b0a5f3bb10f8947ed",
                "sha256": "a36b6cdce349aab53b7c697a489637c9ee4ec2b352be7ff91e8684a674c399a2"
            },
            "downloads": -1,
            "filename": "papis-0.14-py3-none-any.whl",
            "has_sig": false,
            "md5_digest": "90e34f7b1cd0030b0a5f3bb10f8947ed",
            "packagetype": "bdist_wheel",
            "python_version": "py3",
            "requires_python": ">=3.8",
            "size": 254933,
            "upload_time": "2024-11-08T19:07:50",
            "upload_time_iso_8601": "2024-11-08T19:07:50.206414Z",
            "url": "https://files.pythonhosted.org/packages/ba/14/5e89ebb61c194b94770b0516654a86b8edeb134e5093ef4dc0e75ab3ef35/papis-0.14-py3-none-any.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "e07d2630b156dd12d48a9df539afa81e7e102f1364006795f4b7a37a9308f7fe",
                "md5": "02b2f2ce4cd199b897e7ce59331b2f67",
                "sha256": "ba48a6094e27aa040704961b4f89269e6b44ad82c3ecff9cd2ac323e146de91e"
            },
            "downloads": -1,
            "filename": "papis-0.14.tar.gz",
            "has_sig": false,
            "md5_digest": "02b2f2ce4cd199b897e7ce59331b2f67",
            "packagetype": "sdist",
            "python_version": "source",
            "requires_python": ">=3.8",
            "size": 1151104,
            "upload_time": "2024-11-08T19:07:52",
            "upload_time_iso_8601": "2024-11-08T19:07:52.080076Z",
            "url": "https://files.pythonhosted.org/packages/e0/7d/2630b156dd12d48a9df539afa81e7e102f1364006795f4b7a37a9308f7fe/papis-0.14.tar.gz",
            "yanked": false,
            "yanked_reason": null
        }
    ],
    "upload_time": "2024-11-08 19:07:52",
    "github": true,
    "gitlab": false,
    "bitbucket": false,
    "codeberg": false,
    "github_user": "papis",
    "github_project": "papis",
    "travis_ci": false,
    "coveralls": true,
    "github_actions": true,
    "lcname": "papis"
}
        
Elapsed time: 0.47200s