diff options
author | Tom Willemse | 2013-08-06 17:04:18 +0200 |
---|---|---|
committer | Tom Willemse | 2013-08-06 17:04:18 +0200 |
commit | 395277047e36bf3135f019a83bca0d40acd2afde (patch) | |
tree | 3fec2a2cf07ee7fc300a008b6cc6972e82bb9c2e /desktop-registry.el | |
parent | 131cd421c0b41559c0a93e89cd3e1888912b1e2f (diff) | |
download | desktop-registry-395277047e36bf3135f019a83bca0d40acd2afde.tar.gz desktop-registry-395277047e36bf3135f019a83bca0d40acd2afde.zip |
Add desktop-registry-current-desktop
* desktop-registry.el (desktop-registry--canonicalize-dir):
(desktop-registry-current-desktop): New functions.
(desktop-registry-add-directory): Use
`desktop-registry--canonicalize-dir' to get the "clean" directory
name.
Diffstat (limited to 'desktop-registry.el')
-rw-r--r-- | desktop-registry.el | 18 |
1 files changed, 17 insertions, 1 deletions
diff --git a/desktop-registry.el b/desktop-registry.el index c8bc55e..71c8b4b 100644 --- a/desktop-registry.el +++ b/desktop-registry.el @@ -44,11 +44,27 @@ (defvar desktop-registry--history nil "History variable for `desktop-registry'.") +(defun desktop-registry--canonicalize-dir (dir) + "Canonicalize DIR for use." + (directory-file-name (expand-file-name dir))) + +;;;###autoload +(defun desktop-registry-current-desktop () + "Get the name of the currently loaded desktop. + +Returns an empty string when `desktop-dirname' is nil." + (if desktop-dirname + (let ((canonical + (desktop-registry--canonicalize-dir desktop-dirname))) + (car (cl-find-if (lambda (d) (equal (cdr d) canonical)) + desktop-registry-registry))) + "")) + ;;;###autoload (defun desktop-registry-add-directory (dir) "Add DIR to the desktop registry." (interactive "DDirectory: ") - (let* ((clean-dir (directory-file-name (expand-file-name dir))) + (let* ((clean-dir (desktop-registry--canonicalize-dir dir)) (label (file-name-base clean-dir))) (unless (assoc label desktop-registry-registry) (customize-save-variable |