[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[elpa] externals/beframe 4ca2206b3c 08/19: Add user option beframe-renam
From: |
ELPA Syncer |
Subject: |
[elpa] externals/beframe 4ca2206b3c 08/19: Add user option beframe-rename-function |
Date: |
Thu, 23 Feb 2023 13:57:24 -0500 (EST) |
branch: externals/beframe
commit 4ca2206b3cea35f9b31cb800916af9192c901dc4
Author: Protesilaos Stavrou <info@protesilaos.com>
Commit: Protesilaos Stavrou <info@protesilaos.com>
Add user option beframe-rename-function
---
README.org | 5 ++++-
beframe.el | 29 +++++++++++++++++++++++------
2 files changed, 27 insertions(+), 7 deletions(-)
diff --git a/README.org b/README.org
index 275ce552c3..76144ba86e 100644
--- a/README.org
+++ b/README.org
@@ -93,8 +93,11 @@ The ~beframe-mode~ does the following:
- Add a filter to newly created frames so that their
~buffer-predicate~ parameter beframes buffers.
+ #+vindex: beframe-rename-function
- Renames newly created frames so that they have a potentially more
- meaningful title.
+ meaningful title. The user option ~beframe-rename-function~
+ specifies the function that handles this process. When its value is
+ nil, no renaming is performed.
#+vindex: beframe-functions-in-frames
- When the user option ~beframe-functions-in-frames~ contains a list
diff --git a/beframe.el b/beframe.el
index 4ccc668f7d..8b0f08dc69 100644
--- a/beframe.el
+++ b/beframe.el
@@ -62,7 +62,9 @@
;; `buffer-predicate' parameter beframes buffers.
;;
;; - Renames newly created frames so that they have a potentially more
-;; meaningful title.
+;; meaningful title. The user option `beframe-rename-function'
+;; specifies the function that handles this process. When its value
+;; is nil, no renaming is performed.
;;
;; #+vindex: beframe-functions-in-frames
;; - When the user option `beframe-functions-in-frames' contains a list
@@ -126,6 +128,22 @@ function so that every invocation of it is called with
(beframe--functions-in-frames))
:type '(repeat symbol))
+(defcustom beframe-rename-function #'beframe-rename-frame
+ "Function that renames new frames when `beframe-mode' is enabled.
+
+The function accepts one argument, the current frame, as is
+called by the `after-make-frame-functions' hook.
+
+If nil, no renaming is performed."
+ :group 'beframe
+ :package-version '(beframe . "0.2.0")
+ :initialize #'custom-initialize-default
+ :set (lambda (symbol value)
+ (beframe--functions-in-frames :disable)
+ (set-default symbol value)
+ (beframe--functions-in-frames))
+ :type '(repeat symbol))
+
(defun beframe--frame-buffers (&optional frame)
"Produce list of buffers for either specified or current FRAME."
(seq-filter
@@ -275,9 +293,8 @@ The window manager must permit such an operation. See
bug#61319:
;;; Minor mode setup
-(defun beframe--rename-frame (frame)
- "Rename FRAME.
-Add this to `after-make-frame-functions'."
+(defun beframe-rename-frame (frame)
+ "Rename FRAME per `beframe-rename-function'."
(select-frame frame)
(set-frame-name
(cond
@@ -329,12 +346,12 @@ With optional DISABLE remove the advice."
(setq beframe--read-buffer-function read-buffer-function
read-buffer-function #'beframe-read-buffer)
(add-hook 'after-make-frame-functions #'beframe--frame-predicate)
- (add-hook 'after-make-frame-functions #'beframe--rename-frame)
+ (add-hook 'after-make-frame-functions #'beframe-rename-function)
(beframe--functions-in-frames))
(setq read-buffer-function beframe--read-buffer-function
beframe--read-buffer-function nil)
(remove-hook 'after-make-frame-functions #'beframe--frame-predicate)
- (remove-hook 'after-make-frame-functions #'beframe--rename-frame)
+ (remove-hook 'after-make-frame-functions #'beframe-rename-function)
(beframe--functions-in-frames :disable)))
;;;; Integration with `consult'
- [elpa] externals/beframe updated (87d0c0cb63 -> 2222123af4), ELPA Syncer, 2023/02/23
- [elpa] externals/beframe 7aa4f70821 02/19: Add option to open functions in frames (undo cfafcda), ELPA Syncer, 2023/02/23
- [elpa] externals/beframe 4ca2206b3c 08/19: Add user option beframe-rename-function,
ELPA Syncer <=
- [elpa] externals/beframe 6038ea9920 06/19: Update to version 0.1.0, ELPA Syncer, 2023/02/23
- [elpa] externals/beframe e018ddfcc4 09/19: Bump version to trigger GNU ELPA package rebuild, ELPA Syncer, 2023/02/23
- [elpa] externals/beframe 6ccf94f30f 10/19: Add the value of beframe-rename-function to the hook, ELPA Syncer, 2023/02/23
- [elpa] externals/beframe e8c2f94f3d 16/19: Rearrange portions of the minor mode setup, ELPA Syncer, 2023/02/23
- [elpa] externals/beframe f15ac3672b 18/19: Bump version to trigger package rebuild, ELPA Syncer, 2023/02/23
- [elpa] externals/beframe 0bbd2e62e6 17/19: Set beframe-functions-in-frames to nil by default, ELPA Syncer, 2023/02/23
- [elpa] externals/beframe 2222123af4 19/19: Add user options for frame-specific scratch buffers, ELPA Syncer, 2023/02/23
- [elpa] externals/beframe 55bbd6dcee 03/19: Add manual; update package Commentary, ELPA Syncer, 2023/02/23
- [elpa] externals/beframe 50b968d4fb 14/19: Move integration with Consult to the manual, ELPA Syncer, 2023/02/23
- [elpa] externals/beframe 0e2d5d1e31 15/19: Remove compat.el; depend on Emacs 28, ELPA Syncer, 2023/02/23