git clone 'git://github.com/pavpanchekha/dropbox.el.git'
dropbox.el, A Dropbox Client for Emacs
It's often joked that Emacs is an operating system; well, it might as well have a Dropbox client.
dropbox.el provides a partial Dropbox client for Emacs. You can log in to Dropbox and read and write your files. Since it implements handlers for all of the normal Emacs file operations,
dropbox.el can also be considered a Dropbox API client in Emacs Lisp.
dropbox.el is available in the Marmalade repository, under the name “
The first step is to get
dropbox.el; the easiest way is to use the Marmalade repository, but you can also just download the
dropbox.el file from this very project. However, before you use it, you'll need to set up a few configuration variables.
customize-group, with group
dropbox, will take you to a configuration screen.
The key step is to set up the “Consumer Key” and “Consumer Secret” variables. Unfortunately, Dropbox uses OAuth 1.0, which isn't particularly friendly to open source applications since it requires keeping a key secret. Instead, you'll have to create your own, private application key and secret, and tell
dropbox.el to use these.
To do this, navigate over to the Dropbox developers console. You'll want to create an application for the “Core” API. Any name at all works for the application name, and you want to give it access to your full Dropbox.
Click “Create App”, and you'll be taken to a page that includes the “App key” and “App secret”. You'll want to enter these into the corresponding fields in the Customize window, and save the buffer. You are, of course, free to ignore Customize and just stick the necessary settings into your
Once you have a consumer key and secret set up (and don't worry, you only need to do this once), you can run
dropbox-connect to get a special token from Dropbox and begin using the API. The token is stored, by default, in
~/.emacs.d/dropbox-token, but you can change this with the
dropbox-connect will cause you to browse to a web page asking you to allow the application to use your Dropbox; allow it to, and you're done.
Once connected, you can use
dropbox.el by simply attempting to open a file in any folder beginning with
/db:. In particular, if you browse to
/db:, you'll get a Dired window open onto the root of your Dropbox folder. You can use many of the usual Dired commands from here; you can also open files and read and write them.
dropbox.el supports much of the functionality you'd expect from an Emacs Dropbox client. A few otherwise-reasonable features aren't yet supported.
process-file variants are supported, though it might be possible to implement them by downloading local copies.