aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMatthew White <mehw.is.me@inventati.org>2021-08-28 04:53:43 +0000
committerMatthew White <mehw.is.me@inventati.org>2021-10-21 00:22:43 +0200
commit2279a2931c4824820eb80e95518507fa93c65c31 (patch)
treed7b13077f67a39380935c81c5772fb37b2fc4813
parent0e0d191272480c4ef2761813e41e8a1e3f83ac98 (diff)
persp-set-buffer: disassociate buffer via persp-forget-buffer
Use 'persp-forget-buffer' rather than 'persp-remove-buffer' to disassociate a buffer with other perspectives.
-rw-r--r--CHANGELOG.md1
-rw-r--r--perspective.el2
2 files changed, 2 insertions, 1 deletions
diff --git a/CHANGELOG.md b/CHANGELOG.md
index 6ccd7ef..f3bf67c 100644
--- a/CHANGELOG.md
+++ b/CHANGELOG.md
@@ -52,6 +52,7 @@ The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/).
- `persp-mode`: add/remove `persp-maybe-kill-buffer` hook.
- `persp-kill`: switch `persp-maybe-kill-buffer` on/off to allow killing a perspective's last left buffer.
- `persp-set-buffer`: walk perspectives rather than using a while `persp-buffer-in-other-p` loop, since the former isn't prone to infinite loops. This is needed due to buffers kept in perspectives by `persp-maybe-kill-buffer` and `persp-remove-buffer` when a buffer is a perspective`s last left buffer.
+- `persp-set-buffer`: use `persp-forget-buffer` to remove a buffer from a perspective.
- `persp-remove-buffer`: use `persp-forget-buffer` to remove a buffer from a perspective.
- `persp-remove-buffer`: do not kill/remove a perspective's last left buffer.
- `persp-remove-buffer`: when burying a buffer, walk windows rather than using a while loop, since the former isn't prone to infinite loops.
diff --git a/perspective.el b/perspective.el
index b0c439e..0e0eb4d 100644
--- a/perspective.el
+++ b/perspective.el
@@ -824,7 +824,7 @@ See also `persp-switch' and `persp-remove-buffer'."
;; go into an infinite loop.
(cl-loop for other-persp in (remove (persp-current-name) (persp-all-names))
do (with-perspective other-persp
- (persp-remove-buffer buffer))))))
+ (persp-forget-buffer buffer))))))
(cl-defun persp-buffer-in-other-p (buffer)
"Returns nil if BUFFER is only in the current perspective.