Refactor +workspace/new: use persp-copy

Instead of manually adding buffers to new workspace.
This commit is contained in:
Henrik Lissner 2018-06-23 19:59:17 +02:00
parent 16d3f75f1d
commit 863fa16bcc
No known key found for this signature in database
GPG key ID: 5F6C0EA160557395

View file

@ -332,18 +332,16 @@ workspace, otherwise the new workspace is blank."
(interactive "iP")
(unless name
(setq name (format "#%s" (+workspace--generate-id))))
(condition-case-unless-debug ex
(if (+workspace-exists-p name)
(error "%s already exists" name)
(condition-case e
(cond ((+workspace-exists-p name)
(error "%s already exists" name))
(clone-p (persp-copy name t))
(t
(+workspace-switch name t)
(if clone-p
(let ((persp (+workspace-get name)))
(dolist (window (window-list))
(persp-add-buffer (window-buffer window) persp nil)))
(delete-other-windows-internal)
(switch-to-buffer (doom-fallback-buffer)))
(+workspace/display))
('error (+workspace-error (cadr ex) t))))
(persp-delete-other-windows)
(switch-to-buffer (doom-fallback-buffer))
(+workspace/display)))
((debug error) (+workspace-error (cadr e) t))))
;;;###autoload
(defun +workspace/switch-to (index)