Using more than one Dropbox folder using Dropboxifier
Dropbox is a nice tool for synchronizing files over different computers. One problem is that you have to put your files in the Dropbox folder. I often make small changes to my settings in Emacs, so I used to have my home directory for Emacs in my Dropbox folder.
You can choose where to put your Dropbox folder on your machine, however, you can only have one Dropbox folder. What to do, if you want to synchronize your whole Emacs program directory (or any other directory you don’t want to move to your Dropbox folder)?
There is a nice open source utility called dropboxifier (http://dropboxifier.codeplex.com/) that allows you to put a symbolic link in your Dropbox folder. The folder remains in the original position but Dropbox treats it as if it is in the Dropbox folder. This utility can also be used for Skydrive or Google Drive.
Examples of my use of dropboxifier:
- As you probably know, you can easily copy your Emacs directory to another computer. If the home directory on the other computer is properly set, you can start directly working with it. Using dropboxifier I nowadays sync the whole Emacs directory and don’t have to bother, when I update or add packages on one computer. They are automatically installed on the other computer.
- I have a directory called “Inbox”. I use if for all the files I download (and don’t want to put in a project or other directory) and for “scratch” files, small files I use for testing stuff (for example, if I answer a question in a mailing list, I, if necessary, usually test my answer with a small file). I use dropboxifier for this folder too (of course, I could have put the whole directory in my Dropbox folder, but than it is hidden deep down in my folder hierarchy). Note, that in the figure above, I still have to add the symbolic link on my other computer. I use my inbox folder also for all my downloads (you can change the download folder in your browser easily).
Note that I don’t use this for my project directories and files, because for this task I use my version control system.