emacs-elpa-diffs
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[elpa] externals/beframe edfab6eefe 10/10: Update to version 0.2.0


From: ELPA Syncer
Subject: [elpa] externals/beframe edfab6eefe 10/10: Update to version 0.2.0
Date: Mon, 27 Mar 2023 10:57:27 -0400 (EDT)

branch: externals/beframe
commit edfab6eefe4ac35cd8d1ed87fc7f670496d25e40
Author: Protesilaos Stavrou <info@protesilaos.com>
Commit: Protesilaos Stavrou <info@protesilaos.com>

    Update to version 0.2.0
---
 CHANGELOG.org | 126 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
 README.org    |  17 ++------
 beframe.el    |   2 +-
 3 files changed, 131 insertions(+), 14 deletions(-)

diff --git a/CHANGELOG.org b/CHANGELOG.org
new file mode 100644
index 0000000000..748ead4a50
--- /dev/null
+++ b/CHANGELOG.org
@@ -0,0 +1,126 @@
+#+title: Change log of Beframe
+#+author: Protesilaos Stavrou
+#+email: info@protesilaos.com
+#+options: ':nil toc:nil num:nil author:nil email:nil
+
+This document contains the release notes for each tagged commit on the
+project's main git repository: <https://git.sr.ht/~protesilaos/beframe>.
+
+The newest release is at the top.  For further details, please consult
+the manual: <https://protesilaos.com/emacs/beframe>.
+
+* 0.2.0
+
+There were no release notes for the initial version of Beframe.  Watch
+the video demo I produced on 2023-02-28 to get an overview of what
+this package is all about:
+<https://protesilaos.com/codelog/2023-02-28-emacs-beframe-demo/>.
+
+In short: beframe your buffers, not your outlook.  Oops that is for
+the philosophy blog! 🙃
+
+** A beframed buffer menu
+
+The command ~beframe-buffer-menu~ produces a dedicated buffer with a
+list of buffers for the current frame.  This is the counterpart of
+~beframe-switch-buffer~.  When called with a prefix argument (=C-u=
+with default key bindings), it prompts for a frame whose buffers it
+will display.
+
+** Frame-specific scratch buffer
+
+The user option ~beframe-create-frame-scratch-buffer~ allows
+~beframe-mode~ to create a frame-specific scratch buffer that runs the
+~initial-major-mode~.  This is done upon the creation of a new frame
+and the scratch buffer is named after the frame it belongs to.  For
+example, if the frame is called =modus-themes=, the corresponding
+scratch buffer is =*scratch for modus-themes*=.  Set this user option
+to ~nil~ to disable the creation of such scratch buffers.
+
+The user option ~beframe-kill-frame-scratch-buffer~ is the counterpart
+of ~beframe-create-frame-scratch-buffer~.  It kills the frame-specific
+scratch buffer after the frame is deleted.  Set this user option to
+~nil~ to disable the killing of such buffers.
+
+** Assuming and unassuming buffers
+
+Beframe makes it possible to add or remove buffers from the list of
+buffers associated with the current frame.  This provides for a
+flexible workflow where buffers can be initially beframed yet
+consolidated into new lists on demand.
+
+*** Assuming buffers
+
+To assume buffers is to include them in the buffer list associated
+with the current frame.
+
+- The command ~beframe-assume-frame-buffers~ (alias
+  ~beframe-add-frame-buffers~) prompts for a frame and then copies its
+  buffer list into the current frame.
+
+- The command ~beframe-assume-buffers~ (alias ~beframe-add-buffers~)
+  adds buffers from a given frame to the current frame.  In
+  interactive use, the command first prompts for a frame and then asks
+  about the list of buffers therein.  The to-be-assumed buffer list is
+  compiled with ~completing-read-multiple~.  This means that the user
+  can select multiple buffers, each separated by the ~crm-separator~
+  (typically a comma).
+
+- The command ~beframe-assume-buffers-all-frames~ prompts with
+  minibuffer completion for a list of buffers to assume.  The
+  interface is the same as that of ~beframe-assume-buffers~ except
+  that there is no prompt for a frame: buffers belong to the
+  consolidated buffer list (all frames).
+
+- The command ~beframe-assume-all-buffers-no-prompts~ unconditionally
+  assumes the consolidated buffer list.
+
+*** Unassuming buffers
+
+To unassume buffers is to omit them from the buffer list associated with
+the current frame.
+
+- The command ~beframe-unassume-frame-buffers~ (alias
+  ~beframe-remove-frame-buffers~) prompts for a frame and then removes
+  its buffer list from the current frame.
+
+- The command ~beframe-unassume-buffers~ (alias
+  ~beframe-remove-buffers~) removes buffers from the current frame.
+  In interactive use, the to-be-unassumed buffer list is compiled with
+  ~completing-read-multiple~.  This means that the user can select
+  multiple buffers, each separated by the ~crm-separator~ (typically a
+  comma).
+
+- The command ~beframe-unassume-all-buffers-no-prompts~ unconditionally
+  unassumes the consolidated buffer list, but preserves the list
+  stored in the user option ~beframe-global-buffers~.
+
+** Sort beframed buffers from Lisp
+
+This is courtesy of Tony Zorman:
+<https://lists.sr.ht/~protesilaos/general-issues/%3C87edq4n3qt.fsf%40hyperspace%3E>.
+
+#+begin_quote
+commit dfa4678c208e1e5c41413f2d39416f84c21f28ff
+Author: Tony Zorman <soliditsallgood@mailbox.org>
+Date:   Sat Mar 4 11:48:17 2023 +0100
+
+  Add the ability to sort the buffer list
+
+  Some completion libraries, like consult, give the user the option to
+  sort the list of buffers according to some strategy.  For example,
+  sorting by visibility—in the sense that one is first shown hidden
+  buffers, then visible ones, and only then the current buffer—may be
+  preferrable when deciding to switch buffers via consult-buffer.
+
+  Since beframe.el can be used as a consult source (see the manual),
+  endowing beframe--buffer-list with an arbitrary sort function greatly
+  improves the synergy between the two libraries.
+
+ beframe.el | 56 ++++++++++++++++++++++++++++++++++++++++++--------------
+ 1 file changed, 42 insertions(+), 14 deletions(-)
+#+end_quote
+
+The manual explains how this works in practice:
+<https://protesilaos.com/emacs/beframe#h:1c2d3d64-aa7b-4585-a418-ccedbb548b38>.
+Thanks to Tony Zorman for including the reference to the sorting mechanism!
diff --git a/README.org b/README.org
index 1422e7788f..7a9012845a 100644
--- a/README.org
+++ b/README.org
@@ -4,9 +4,9 @@
 #+language:              en
 #+options:               ':t toc:nil author:t email:t num:t
 #+startup:               content
-#+macro:                 stable-version 0.1.1
-#+macro:                 release-date 2023-02-14
-#+macro:                 development-version 0.2.0-dev
+#+macro:                 stable-version 0.2.0
+#+macro:                 release-date 2023-03-27
+#+macro:                 development-version 0.3.0-dev
 #+export_file_name:      beframe.texi
 #+texinfo_filename:      beframe.info
 #+texinfo_dir_category:  Emacs misc features
@@ -73,8 +73,7 @@ is achieved in three main ways:
    a list of buffers for the current frame.  This is the counterpart
    of ~beframe-switch-buffer~.  When called with a prefix argument
    (=C-u= with default key bindings), it prompts for a frame whose
-   buffers it will display.  [ ~beframe-buffer-menu~ is part of
-   {{{development-version}}}. ]
+   buffers it will display.
 
 [[#h:5b751614-8749-4aa8-aaed-f181beaddc57][Features of beframe-mode]].
 
@@ -88,8 +87,6 @@ that represent buffers names.  Those buffers are never 
beframed and
 are available in all frames.  The default value contains the buffers
 =*scratch*=, =*Messages*=, and =*Backtrace*=.
 
-[ The following are part of {{{development-version}}}. ]
-
 #+vindex: beframe-create-frame-scratch-buffer
 The user option ~beframe-create-frame-scratch-buffer~ allows
 ~beframe-mode~ to create a frame-specific scratch buffer that runs the
@@ -110,8 +107,6 @@ scratch buffer after the frame is deleted.  Set this user 
option to
 :CUSTOM_ID: h:97b140d0-677d-427d-b9c4-631dc36dbab7
 :END:
 
-[ Part of {{{development-version}}}. ]
-
 Beframe makes it possible to add or remove buffers from the list of
 buffers associated with the current frame.  This provides for a
 flexible workflow where buffers can be initially beframed yet
@@ -122,8 +117,6 @@ consolidated into new lists on demand.
 :CUSTOM_ID: h:dc12ca87-9ba7-4d11-89c8-653bf19015a1
 :END:
 
-[ Part of {{{development-version}}}. ]
-
 To assume buffers is to include them in the buffer list associated
 with the current frame.
 
@@ -159,8 +152,6 @@ with the current frame.
 :CUSTOM_ID: h:8fb895ac-7f99-4c92-b15a-18871b30c7b9
 :END:
 
-[ Part of {{{development-version}}}. ]
-
 To unassume buffers is to omit them from the buffer list associated with
 the current frame.
 
diff --git a/beframe.el b/beframe.el
index 719bf00ab5..4b2157f655 100644
--- a/beframe.el
+++ b/beframe.el
@@ -6,7 +6,7 @@
 ;; Maintainer: Protesilaos Stavrou General Issues 
<~protesilaos/general-issues@lists.sr.ht>
 ;; URL: https://git.sr.ht/~protesilaos/beframe
 ;; Mailing-List: https://lists.sr.ht/~protesilaos/general-issues
-;; Version: 0.1.11
+;; Version: 0.2.0
 ;; Package-Requires: ((emacs "28.1"))
 
 ;; This file is NOT part of GNU Emacs.



reply via email to

[Prev in Thread] Current Thread [Next in Thread]