Giter Site home page Giter Site logo

paperless's Introduction

MELPA Build Status

Paperless - Emacs assisted PDF document filing

You've just scanned a stack of papers that have been cluttering up your desk. Now what? Paperless mode is an Emacs major mode designed to assist with the filing of scanned documents into a hierarchy of folders.

alt text

Paperless mode provides PDF document previews, ido-based target directory completion, and simple batch filing commands designed to simplify and speed the filing of all of your scanned documents.

Here's how it works...

Step 1

Scan your documents and dump them into a holding directory. Set the variable paperless-capture-directory to reference this directory. Use M-x customize-variable to set this string.

Step 2

Tell paperless-mode where to file the documents by setting paperless-root-directory with M-x customize-variable, or you can set both variables in your ~/.emacs/init.el like so:

(custom-set-variables
 '(paperless-capture-directory "/home/green/CAPTURE")
 '(paperless-root-directory "/home/green/Documents"))

Under paperless-root-directory, create a hierarchy of directories that makes sense for you. For example, you might create directories to sort documents like so:

[paperless-root-directory]/Finance
                             /Taxes
                                /2015
                                /2016
                             /Insurance
                                /Car
                                /Home
                             /Work
                                /Expenses
                                   /2016-FOSDEM
                                   /20170102-NYC
                                   /20170202-SFO
                          /Medical
                             /Receipts
                                /2016
                                /2017
                          /Utilities
                             /Mobile
                             /Electricity

At the time of this writing, the author's directory tree contains over 620 folders.

Step 3

Once loaded, start paperless with M-x paperless and you'll be presented with the list of PDF files in paperless-capture-directory. Use the [SPC] key to open PDF preview buffers. The -, +, = and 0 keys will adjust the scale of the preview, just as they do in DocView or PDFView mode. Use the r key to rename the file. If you omit a filename extention, paperless will append ".pdf" to your new filename. Use the f key to select the destination directory. Use the d key to mark the file for deletion. Deletion always moves the file to the system trash folder (emacs's move-file-to-trash). Use the g key to rescan the directory hierarchy under paperless-root-directory for new or deleted folders. Files aren't renamed, moved or deleted until you select the x key.

Org Mode Integration

Paperless features basic Org mode integration as well. Org links stored while in paperless mode point to the appropriate target file location. Be sure to (require 'org-paperless) to enable this feature.

Installation

Paperless requires Emacs 24.4, and is available in the MELPA package repository.

To install from source, simply download this package to your local filesystem, and add something like the following to your ~/.emacs/init.el:

(autoload 'paperless "paperless" "A major mode for filing PDFs" t)
(add-to-list 'load-path
	     (expand-file-name "/home/green/git/paperless/"))

Don't forget to set paperless-capture-directory and paperless-root-directory as per above.

Paperless requires DocView mode, which currently ships with GNU Emacs, however it will always prefer to use PDF Tools if you have that installed.

Licensing

Copyright (C) 2016, 2017, 2018 by Anthony Green

Paperless is provided under the terms of the 3-clause BSD license. See paperless.el for details.

paperless's People

Contributors

atgreen avatar

Watchers

James Cloos avatar  avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.