branch: externals/beframe
commit 87d0c0cb63be0f07e973cf3ebf5bdf41126d3b94
Author: Protesilaos Stavrou <i...@protesilaos.com>
Commit: Protesilaos Stavrou <i...@protesilaos.com>

    BREAKING rename project to "reframe"
---
 framed-buffers.el => reframe.el | 156 ++++++++++++++++++++--------------------
 1 file changed, 78 insertions(+), 78 deletions(-)

diff --git a/framed-buffers.el b/reframe.el
similarity index 60%
rename from framed-buffers.el
rename to reframe.el
index a8c76df008..f4c329bb76 100644
--- a/framed-buffers.el
+++ b/reframe.el
@@ -1,10 +1,10 @@
-;;; framed-buffers.el --- WORK-IN-PROGRESS -*- lexical-binding: t -*-
+;;; reframe.el --- WORK-IN-PROGRESS -*- lexical-binding: t -*-
 
 ;; Copyright (C) 2023  Free Software Foundation, Inc.
 
 ;; Author: Protesilaos Stavrou <i...@protesilaos.com>
 ;; Maintainer: Protesilaos Stavrou General Issues 
<~protesilaos/general-iss...@lists.sr.ht>
-;; URL: https://git.sr.ht/~protesilaos/framed-buffers
+;; URL: https://git.sr.ht/~protesilaos/reframe
 ;; Mailing-List: https://lists.sr.ht/~protesilaos/general-issues
 ;; Version: 0.0.0
 ;; Package-Requires: ((emacs "27.1") (compat "29.1.3.2"))
@@ -32,36 +32,36 @@
 
 (require 'compat)
 
-(defgroup framed-buffers ()
+(defgroup reframe ()
   "Isolate buffers per frame WORK-IN-PROGRESS."
   :group 'frames)
 
-(defcustom framed-buffers-global-buffers '("*scratch*" "*Messages*" 
"*Backtrace*")
+(defcustom reframe-global-buffers '("*scratch*" "*Messages*" "*Backtrace*")
   "List of buffer names to include in all frames.
 These buffers are shown in the buffer selection prompts even if
 they have not been used by---and thus associated with---the
 current frame.
 
 Otherwise framed buffers are limited to the frame that uses them."
-  :group 'framed-buffers
-  :package-version '(framed-buffers . "0.1.0")
+  :group 'reframe
+  :package-version '(reframe . "0.1.0")
   :type '(repeat string))
 
-(defcustom framed-buffers-project-always-in-frame nil
-  "When non-nil, open projects in new frames with `framed-buffers-mode'.
+(defcustom reframe-project-always-in-frame nil
+  "When non-nil, open projects in new frames with `reframe-mode'.
 
-When the `framed-buffers-mode' is enabled, install advice around
+When the `reframe-mode' is enabled, install advice around
 `project-prompt-project-dir' so that every prompt for a new
 project is prefixed with `other-frame-prefix'."
-  :group 'framed-buffers
-  :package-version '(framed-buffers . "0.1.0")
+  :group 'reframe
+  :package-version '(reframe . "0.1.0")
   :initialize #'custom-initialize-default
   :set (lambda (symbol value)
          (set-default symbol value)
-         (framed-buffers-mode 1))
+         (reframe-mode 1))
   :type 'boolean)
 
-(defun framed-buffers--frame-buffers (&optional frame)
+(defun reframe--frame-buffers (&optional frame)
   "Produce list of buffers for either specified or current FRAME."
   (seq-filter
    (lambda (buf)
@@ -69,61 +69,61 @@ project is prefixed with `other-frame-prefix'."
           (not (string-prefix-p " " (buffer-name buf)))))
    (frame-parameter frame 'buffer-list)))
 
-(defun framed-buffers--global-buffers ()
-  "Return list of `framed-buffers-global-buffers' buffer objects."
+(defun reframe--global-buffers ()
+  "Return list of `reframe-global-buffers' buffer objects."
   (mapcar
    (lambda (name)
      (get-buffer name))
-   framed-buffers-global-buffers))
+   reframe-global-buffers))
 
-(defun framed-buffers--buffer-list (&optional frame)
+(defun reframe--buffer-list (&optional frame)
   "Return list of buffers that are used by the current frame.
 With optional FRAME as an object that satisfies `framep', return
 the list of buffers that are used by FRAME.
 
-Include `framed-buffers-global-buffers' in the list."
+Include `reframe-global-buffers' in the list."
   (delete-dups
-   (append (framed-buffers--frame-buffers frame)
-           (framed-buffers--global-buffers))))
+   (append (reframe--frame-buffers frame)
+           (reframe--global-buffers))))
 
-(defun framed-buffers--buffer-names (&optional frame)
-  "Return list of names of `framed-buffers--buffer-list' as strings.
+(defun reframe--buffer-names (&optional frame)
+  "Return list of names of `reframe--buffer-list' as strings.
 With optional FRAME, do it for the given frame name."
   (mapcar
    (lambda (buf)
      (buffer-name buf))
-   (framed-buffers--buffer-list frame)))
+   (reframe--buffer-list frame)))
 
-(defun framed-buffers--read-buffer-p (buf &optional frame)
+(defun reframe--read-buffer-p (buf &optional frame)
   "Return non-nil if BUF belongs to the current FRAME.
-BUF is a string or a cons cell, per `framed-buffers-read-buffer'.
+BUF is a string or a cons cell, per `reframe-read-buffer'.
 If optional FRAME is nil, then default to the current one.  Else
 it must satisfy `framep'."
   (let ((b buf))
     (when (consp buf)
       (setq b (car buf)))
     (unless (string-prefix-p " " b)
-      (seq-contains-p (framed-buffers--buffer-names frame) b 
#'string-match-p))))
+      (seq-contains-p (reframe--buffer-names frame) b #'string-match-p))))
 
-(defvar framed-buffers-history nil
+(defvar reframe-history nil
   "Minibuffer history of frame specific buffers.")
 
 ;;;###autoload
-(defun framed-buffers-read-buffer (prompt &optional def require-match 
_predicate)
+(defun reframe-read-buffer (prompt &optional def require-match _predicate)
   "The `read-buffer-function' that limits buffers to frames.
 PROMPT, DEF, REQUIRE-MATCH, and PREDICATE are the same as
 `read-buffer'.  The PREDICATE is ignored, however, to apply the
 per-frame filter."
   (completing-read prompt
-                   (framed-buffers--buffer-names)
-                   #'framed-buffers--read-buffer-p
+                   (reframe--buffer-names)
+                   #'reframe--read-buffer-p
                    require-match
                    nil
-                   'framed-buffers-history
+                   'reframe-history
                    def))
 
-(defun framed-buffers--buffer-prompt (&optional frame)
-  "Prompt for buffer among `framed-buffers--buffer-names'.
+(defun reframe--buffer-prompt (&optional frame)
+  "Prompt for buffer among `reframe--buffer-names'.
 
 Use the previous buffer as the default value, such that
 subsequent invocations of this command flip between the current
@@ -135,12 +135,12 @@ frame name."
    "Switch to frame buffer: "
    (other-buffer (current-buffer))
    (confirm-nonexistent-file-or-buffer)
-   ;; NOTE: This predicate is not needed if `framed-buffers-mode' is
+   ;; NOTE: This predicate is not needed if `reframe-mode' is
    ;; non-nil because it sets the `read-buffer-function'.
    (lambda (buf)
-     (framed-buffers--read-buffer-p buf frame))))
+     (reframe--read-buffer-p buf frame))))
 
-(defun framed-buffers--buffers-with-current ()
+(defun reframe--buffers-with-current ()
   "Return frame list with current one renamed appropriately."
   (let ((frames (make-frame-names-alist)))
     (mapcar
@@ -159,34 +159,34 @@ frame name."
            frame))))
      frames)))
 
-(defun framed-buffers--frame-prompt ()
+(defun reframe--frame-prompt ()
   "Prompt to select a frame among the list of frames."
-  (let ((frames (framed-buffers--buffers-with-current)))
+  (let ((frames (reframe--buffers-with-current)))
     (completing-read "Select Frame: " frames nil t nil 'frame-name-history 
(caar frames))))
 
-(defun framed-buffers--frame-object (frame)
+(defun reframe--frame-object (frame)
   "Retun frame object of named FRAME.
 FRAME is the human-readable representation of a frame."
-  (let* ((frames (framed-buffers--buffers-with-current))
+  (let* ((frames (reframe--buffers-with-current))
          (names (mapcar #'car frames)))
     (when (seq-contains-p names frame #'string-match-p)
       (alist-get frame frames nil nil #'string-match-p))))
 
 ;;;###autoload
-(defun framed-buffers-switch-buffer (buffer)
+(defun reframe-switch-buffer (buffer)
   "Switch to BUFFER in the current frame using completion.
 
 Either bind this command to a key as an alternative to
 `switch-to-buffer', or enable the minor mode
-`framed-buffers-mode' which makes all buffer prompts limit the
+`reframe-mode' which makes all buffer prompts limit the
 candidates to those that belong to the selected frame.
 
-Also see `framed-buffers-switch-buffer-in-frame'."
-  (interactive (list (framed-buffers--buffer-prompt)))
+Also see `reframe-switch-buffer-in-frame'."
+  (interactive (list (reframe--buffer-prompt)))
   (switch-to-buffer buffer))
 
 ;;;###autoload
-(defun framed-buffers-switch-buffer-in-frame (frame buffer)
+(defun reframe-switch-buffer-in-frame (frame buffer)
   "Switch to BUFFER that belongs to FRAME.
 
 BUFFER is selected with completion among a list of buffers that
@@ -194,23 +194,23 @@ belong to FRAME.
 
 Either bind this command to a key as an alternative to
 `switch-to-buffer', or enable the minor mode
-`framed-buffers-mode' which makes all buffer prompts limit the
+`reframe-mode' which makes all buffer prompts limit the
 candidates to those that belong to the selected frame.
 
-Also see `framed-buffers-switch-buffer'.
+Also see `reframe-switch-buffer'.
 
 Raising and then selecting FRAME does not depend solely on Emacs.
 The window manager must permit such an operation.  See bug#61319:
 <https://debbugs.gnu.org/cgi/bugreport.cgi?bug=61319>."
   (interactive
-   (let ((obj (framed-buffers--frame-object (framed-buffers--frame-prompt))))
-     (list obj (framed-buffers--buffer-prompt obj))))
+   (let ((obj (reframe--frame-object (reframe--frame-prompt))))
+     (list obj (reframe--buffer-prompt obj))))
   (select-frame-set-input-focus frame)
   (switch-to-buffer buffer))
 
 ;;; Minor mode setup
 
-(defun framed-buffers--rename-frame (frame)
+(defun reframe--rename-frame (frame)
   "Rename FRAME.
 Add this to `after-make-frame-functions'."
   (select-frame frame)
@@ -223,20 +223,20 @@ Add this to `after-make-frame-functions'."
     (t
      default-directory))))
 
-(defun framed-buffers--frame-parameter-p (buf)
+(defun reframe--frame-parameter-p (buf)
   "Return non-nil if BUF belongs to the current frame.
-BUF is a buffer object among `framed-buffers--buffer-list'."
-  (memq buf (framed-buffers--buffer-list)))
+BUF is a buffer object among `reframe--buffer-list'."
+  (memq buf (reframe--buffer-list)))
 
-(defun framed-buffers--frame-predicate (&optional frame)
+(defun reframe--frame-predicate (&optional frame)
   "Set FRAME `buffer-predicate' parameter.
 If FRAME is nil, use the current frame."
-  (set-frame-parameter frame 'buffer-predicate 
#'framed-buffers--frame-parameter-p))
+  (set-frame-parameter frame 'buffer-predicate #'reframe--frame-parameter-p))
 
-(defvar framed-buffers--read-buffer-function nil
+(defvar reframe--read-buffer-function nil
   "Last value of `read-buffer-function'.")
 
-(defun framed-buffers--with-other-frame (&rest app)
+(defun reframe--with-other-frame (&rest app)
   "Apply APP with `other-frame-prefix'.
 Use this as :around advice to commands that must make a new frame."
   (funcall (compat-function other-frame-prefix))
@@ -245,22 +245,22 @@ Use this as :around advice to commands that must make a 
new frame."
 (declare-function project-prompt-project-dir "project")
 
 ;;;###autoload
-(define-minor-mode framed-buffers-mode
+(define-minor-mode reframe-mode
   "Make all buffer prompts limit candidates per frame."
   :global t
-  (if framed-buffers-mode
+  (if reframe-mode
       (progn
-        (setq framed-buffers--read-buffer-function read-buffer-function
-              read-buffer-function #'framed-buffers-read-buffer)
-        (add-hook 'after-make-frame-functions 
#'framed-buffers--frame-predicate)
-        (add-hook 'after-make-frame-functions #'framed-buffers--rename-frame)
-        (when framed-buffers-project-always-in-frame
-          (advice-add (compat-function project-prompt-project-dir) :around 
#'framed-buffers--with-other-frame)))
-    (setq read-buffer-function framed-buffers--read-buffer-function
-          framed-buffers--read-buffer-function nil)
-    (remove-hook 'after-make-frame-functions #'framed-buffers--frame-predicate)
-    (remove-hook 'after-make-frame-functions #'framed-buffers--rename-frame)
-    (advice-remove (compat-function project-prompt-project-dir) 
#'framed-buffers--with-other-frame)))
+        (setq reframe--read-buffer-function read-buffer-function
+              read-buffer-function #'reframe-read-buffer)
+        (add-hook 'after-make-frame-functions #'reframe--frame-predicate)
+        (add-hook 'after-make-frame-functions #'reframe--rename-frame)
+        (when reframe-project-always-in-frame
+          (advice-add (compat-function project-prompt-project-dir) :around 
#'reframe--with-other-frame)))
+    (setq read-buffer-function reframe--read-buffer-function
+          reframe--read-buffer-function nil)
+    (remove-hook 'after-make-frame-functions #'reframe--frame-predicate)
+    (remove-hook 'after-make-frame-functions #'reframe--rename-frame)
+    (advice-remove (compat-function project-prompt-project-dir) 
#'reframe--with-other-frame)))
 
 ;;;; Integration with `consult'
 
@@ -268,21 +268,21 @@ Use this as :around advice to commands that must make a 
new frame."
 (declare-function consult--buffer-state "consult")
 
 (with-eval-after-load 'consult
-  (defface framed-buffers-buffer
+  (defface reframe-buffer
     '((t :inherit font-lock-string-face))
     "Face for `consult' framed buffers.")
 
-  (defvar framed-buffers--consult-source
+  (defvar reframe--consult-source
     `( :name     "Frame-specific buffers (current frame)"
        :narrow   ?F
        :category buffer
-       :face     framed-buffers-buffer
-       :history  framed-buffers-history
-       :items    ,#'framed-buffers--buffer-names
+       :face     reframe-buffer
+       :history  reframe-history
+       :items    ,#'reframe--buffer-names
        :action   ,#'switch-to-buffer
        :state    ,#'consult--buffer-state))
 
-  (add-to-list 'consult-buffer-sources 'framed-buffers--consult-source))
+  (add-to-list 'consult-buffer-sources 'reframe--consult-source))
 
-(provide 'framed-buffers)
-;;; framed-buffers.el ends here
+(provide 'reframe)
+;;; reframe.el ends here

Reply via email to