From 776886a0a449dbb19fa0ee76cef89c4386d6bdb4 Mon Sep 17 00:00:00 2001 From: Henrik Lissner Date: Wed, 25 Apr 2018 16:56:49 -0400 Subject: [PATCH] feature/workspaces: restore missing +workspace/{save,load} commands --- .../feature/workspaces/autoload/workspaces.el | 30 +++++++++++++++++++ 1 file changed, 30 insertions(+) diff --git a/modules/feature/workspaces/autoload/workspaces.el b/modules/feature/workspaces/autoload/workspaces.el index 8e97cd836..54d81e33e 100644 --- a/modules/feature/workspaces/autoload/workspaces.el +++ b/modules/feature/workspaces/autoload/workspaces.el @@ -199,6 +199,36 @@ throws an error." ;; Interactive commands ;; +;;;###autoload +(defun +workspace/load (name) + "Load a workspace and switch to it. If called with C-u, try to reload the +current workspace (by name) from session files." + (interactive + (list + (if current-prefix-arg + (+workspace-current-name) + (completing-read + "Workspace to load: " + (persp-list-persp-names-in-file + (expand-file-name +workspace-data-file persp-save-dir)))))) + (if (not (+workspace-load name)) + (+workspace-error (format "Couldn't load workspace %s" name)) + (+workspace/switch-to name) + (+workspace/display))) + +;;;###autoload +(defun +workspace/save (name) + "Save the current workspace. If called with C-u, autosave the current +workspace." + (interactive + (list + (if current-prefix-arg + (+workspace-current-name) + (completing-read "Workspace to save: " (+workspace-list-names))))) + (if (+workspace-save name) + (+workspace-message (format "'%s' workspace saved" name) 'success) + (+workspace-error (format "Couldn't save workspace %s" name)))) + ;;;###autoload (defun +workspace/load-session (&optional name) "Load a session and switch to it. If called with C-u, try to load the last