Keep a central registry of desktop files
Find a file
Tom Willemse d5feb53a4e Add some management functions to desktop list
This commit changes some of the interactive functions to first look if
the desktop list is being shown and, if so, if there is a desktop
specified under the cursor. If either of these conditions is not true,
they fall back to asking the user for a name, as before.
2014-01-19 14:50:10 +01:00
.gitignore Initial commit 2013-06-04 01:57:06 +02:00
desktop-registry.el Add some management functions to desktop list 2014-01-19 14:50:10 +01:00
NEWS Bump version to 1.1.0 2013-08-07 22:27:50 +02:00
README.org Remove title from README 2013-08-07 22:27:07 +02:00

After reading this post I started using desktop.el as a simple project file-like system. The only problem was that remembering which desktops were where and switching between them is bothersome. This module tries to fix that.

Installation

If you have Marmalade set up you can just use:

M-x package-install <RET> desktop-registry

Usage

To switch between desktops you can use desktop-registry-change-desktop, this will prompt (with completion) for the directory you would like to load.

When you're done with a desktop or want to get rid of a desktop for another reason you can use desktop-registry-remove-desktop.

If you've registered a desktop and you don't like what it made of the name you can use desktop-registry-rename-desktop to give it a new name.

Adding new desktops

You can use desktop-registry-add-directory to add a new directory to the registry, or desktop-registry-add-current-desktop to add the currently loaded desktop to the registry. With either of these function you can use the universal argument (C-u) to specify a name for the desktop as well.

If you enable desktop-registry-auto-register it will automatically add new desktop files to the registry when you use desktop-save.

With org-capture-templates

The desktop-registry-current-desktop can be used to insert the currently loaded desktop into an org capture template.

  (add-to-list 'org-capture-templates
               '("t" "Task" entry nil
                 "* TODO %?  :%(desktop-registry-current-desktop \"\"):"))