emacs-devel
[Top][All Lists]
Advanced

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

Re: [ELPA] New package: activities


From: Adam Porter
Subject: Re: [ELPA] New package: activities
Date: Fri, 26 Jan 2024 04:42:26 -0600
User-agent: Mozilla Thunderbird

Hi Eli,

On 1/26/24 01:45, Eli Zaretskii wrote:
Date: Thu, 25 Jan 2024 18:59:42 -0600
From: Adam Porter <adam@alphapapa.net>

I'd like to add a new package to ELPA, activities.el.  It's hosted at:

    https://github.com/alphapapa/activities.el

Here's the description; please see the readme/manual for more details.

    Inspired by Genera's and KDE's concepts of "activities", this library
allows the user to select an "activity", the loading of which restores a
window configuration and/or frameset, along with the buffers shown in
each window.  Saving an activity saves the state for later restoration.
Switching away from an activity saves the last-used state for later
switching back to, while still allowing the activity's initial or
default state to be restored on demand.  Resuming an activity loads the
last-used state, or the initial/default state when a universal argument
is provided.

 From the user-facing POV, how is this different from desktop.el's
ability to save/restore Emacs sessions to/from separate desktop files?

As the documentation explains:

How does this differ from the built-in ~desktop-mode~? :: As best this author can tell, ~desktop-mode~ saves and restores one set of buffers, with various options to control its behavior. It does not use ~bookmark~ internally, which prevents it from restoring non-file-backed buffers. As well, it is not intended to be used on-demand to switch between sets of buffers, windows, or frames (i.e. "activities").

In addition to that, activities.el provides a mode to automatically save an activity's last window configuration in addition to its default. And it provides integration with tab-bar-mode, as well as other conveniences and interactive commands. Finally, activities.el is designed to be independent of other features and co-exist with them, avoiding interference with other libraries. It's only a few days old, but is based on another library of mine; I intend to continue developing it with user feedback to allow further extension and integration with other tools.

Thanks,
Adam



reply via email to

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