[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.
- [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, 2023/03/27
- [elpa] externals/beframe edfab6eefe 10/10: Update to version 0.2.0,
ELPA Syncer <=
- [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