[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[elpa] externals/beframe 3331201060 01/10: Add abstractions for assume a
From: |
ELPA Syncer |
Subject: |
[elpa] externals/beframe 3331201060 01/10: Add abstractions for assume and unassume operations |
Date: |
Mon, 27 Mar 2023 10:57:27 -0400 (EDT) |
branch: externals/beframe
commit 33312010603ad02f92ef66b8af9a2c5391a83b6c
Author: Protesilaos Stavrou <info@protesilaos.com>
Commit: Protesilaos Stavrou <info@protesilaos.com>
Add abstractions for assume and unassume operations
---
beframe.el | 56 ++++++++++++++++++++++++++++++--------------------------
1 file changed, 30 insertions(+), 26 deletions(-)
diff --git a/beframe.el b/beframe.el
index bdb96fe7b4..d22ffe02e5 100644
--- a/beframe.el
+++ b/beframe.el
@@ -415,6 +415,32 @@ its placement and other parameters."
(beframe--frame-object (beframe--frame-prompt)))))
(display-buffer (beframe-list-buffers-noselect frame :sort sort)))
+(defun beframe--assume (buffers)
+ "Unassume BUFFERS from current frame.
+BUFFERS is a list of buffer objects. If BUFFERS satisfies
+`framep', then the list of buffers is that of the corresponding
+frame object (per `beframe-buffer-list')."
+ (let ((buffer-list
+ (delete-dups
+ (append
+ (if (framep buffers)
+ (beframe-buffer-list buffers)
+ buffers)
+ (beframe-buffer-list)))))
+ (modify-frame-parameters nil `((buffer-list . ,buffer-list)))))
+
+(defun beframe--unassume (buffers)
+ "Unassume BUFFERS from current frame.
+BUFFERS is a list of buffer objects. If BUFFERS satisfies
+`framep', then the list of buffers is that of the corresponding
+frame object (per `beframe-buffer-list')."
+ (let ((buffer-list
+ (seq-filter
+ (lambda (buf)
+ (not (member buf (if (framep buffers) (beframe-buffer-list
buffers) buffers))))
+ (beframe-buffer-list))))
+ (modify-frame-parameters nil `((buffer-list . ,buffer-list)))))
+
;;;###autoload
(defun beframe-assume-frame-buffers (frame)
"Assume FRAME buffer list, copying it into current buffer list.
@@ -424,11 +450,7 @@ Else FRAME must satisfy `framep'.
Also see `beframe-unassume-frame-buffers',
`beframe-assume-buffers', `beframe-unassume-buffers'."
(interactive (list (beframe--frame-object (beframe--frame-prompt))))
- (let* ((other-buffer-list (beframe-buffer-list frame))
- (buffers (delete-dups (append other-buffer-list
(beframe-buffer-list)))))
- (modify-frame-parameters
- nil
- `((buffer-list . ,buffers)))))
+ (beframe--assume frame))
(defalias 'beframe-add-frame-buffers 'beframe-assume-frame-buffers
"Alias of `beframe-assume-frame-buffers' command.")
@@ -442,15 +464,7 @@ Else FRAME must satisfy `framep'.
Also see `beframe-assume-frame-buffers',
`beframe-assume-buffers', `beframe-unassume-buffers'."
(interactive (list (beframe--frame-object (beframe--frame-prompt))))
- (let* ((other-buffer-list (beframe-buffer-list frame))
- (new-buffer-list
- (seq-filter
- (lambda (buf)
- (not (member buf other-buffer-list)))
- (beframe-buffer-list))))
- (modify-frame-parameters
- nil
- `((buffer-list . ,new-buffer-list)))))
+ (beframe--unassume frame))
(defalias 'beframe-remove-frame-buffers 'beframe-unassume-frame-buffers
"Alias of `beframe-unassume-frame-buffers' command.")
@@ -489,10 +503,7 @@ Also see `beframe-assume-frame-buffers',
(beframe--buffer-list-prompt-crm
(beframe--frame-object
(beframe--frame-prompt))))))
- (let ((buffer-list (delete-dups (append buffers (beframe-buffer-list)))))
- (modify-frame-parameters
- nil
- `((buffer-list . ,buffer-list)))))
+ (beframe--assume buffers))
(defalias 'beframe-add-buffers 'beframe-assume-buffers
"Alias of `beframe-assume-buffers' command.")
@@ -512,14 +523,7 @@ Also see `beframe-assume-frame-buffers',
(list
(beframe--buffers-name-to-objects
(beframe--buffer-list-prompt-crm))))
- (let ((buffer-list
- (seq-filter
- (lambda (buf)
- (not (member buf buffers)))
- (beframe-buffer-list))))
- (modify-frame-parameters
- nil
- `((buffer-list . ,buffer-list)))))
+ (beframe--unassume buffers))
(defalias 'beframe-remove-buffers 'beframe-unassume-buffers
"Alias of `beframe-unassume-buffers' command.")
- [elpa] externals/beframe updated (534f11d369 -> edfab6eefe), ELPA Syncer, 2023/03/27
- [elpa] externals/beframe 9895696a21 02/10: Simplify the package Commentary, ELPA Syncer, 2023/03/27
- [elpa] externals/beframe b12ab27542 05/10: Add command to assume buffers from the consolidated buffer list, ELPA Syncer, 2023/03/27
- [elpa] externals/beframe cedf2c206d 07/10: Remove duplicate entry from the manual, ELPA Syncer, 2023/03/27
- [elpa] externals/beframe b2deda2a2c 04/10: Add commands to assume/unassume the consolidated buffer list, ELPA Syncer, 2023/03/27
- [elpa] externals/beframe 92fc21ad66 09/10: Clarify some statements in the manual, ELPA Syncer, 2023/03/27
- [elpa] externals/beframe 3331201060 01/10: Add abstractions for assume and unassume operations,
ELPA Syncer <=
- [elpa] externals/beframe edfab6eefe 10/10: Update to version 0.2.0, ELPA Syncer, 2023/03/27
- [elpa] externals/beframe 3ae1773a4d 03/10: Add helper functions for the consolidated buffer list, ELPA Syncer, 2023/03/27
- [elpa] externals/beframe d8230d1d09 08/10: Add link to video demo, ELPA Syncer, 2023/03/27
- [elpa] externals/beframe 2fdabea0c6 06/10: Rewrite the manual about assuming and unassuming buffers, ELPA Syncer, 2023/03/27