[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[elpa] externals-release/activities f55b63a1cf 023/103: Seems to work
|
From: |
ELPA Syncer |
|
Subject: |
[elpa] externals-release/activities f55b63a1cf 023/103: Seems to work |
|
Date: |
Tue, 30 Jan 2024 03:57:47 -0500 (EST) |
branch: externals-release/activities
commit f55b63a1cfadf6cfe3bc9a94548f4c6418b3dce5
Author: Adam Porter <adam@alphapapa.net>
Commit: Adam Porter <adam@alphapapa.net>
Seems to work
---
activity.el | 35 +++++++++++++++++------------------
1 file changed, 17 insertions(+), 18 deletions(-)
diff --git a/activity.el b/activity.el
index d08930ce32..5216d267b5 100644
--- a/activity.el
+++ b/activity.el
@@ -5,7 +5,7 @@
;; Author: Adam Porter <adam@alphapapa.net>
;; Keywords: convenience
;; Version: 0.1-pre
-;; Package-Requires: ((emacs "29.1"))
+;; Package-Requires: ((emacs "29.1") (persist "0.5"))
;; This program is free software; you can redistribute it and/or modify
;; it under the terms of the GNU General Public License as published by
@@ -57,7 +57,7 @@
(require 'cl-lib)
(require 'bookmark)
(require 'map)
-(require 'multisession)
+(require 'persist)
(require 'subr-x)
;;;; Debugging
@@ -161,7 +161,8 @@ Selects ACTIVITY's frame/tab and then switches back."
;;;; Variables
-(define-multisession-variable activity-activities nil)
+(persist-defvar activity-activities nil
+ "FIXME: Docstring.")
(defvar activity-buffer-local-variables nil
"Variables whose value are saved and restored by activities.
@@ -267,14 +268,14 @@ If DEFAULTP, save its default state; if LASTP, its last."
(new-state (activity-state)))
(setf (activity-default activity) (if (or defaultp (not default))
new-state default)
(activity-last activity) (if (or lastp (not last)) new-state last)
- (map-elt (multisession-value activity-activities) name)
activity))))
+ (map-elt activity-activities name) activity))))
(defun activity-save-all ()
"Save all active activities' last states.
In order to be safe for `kill-emacs-hook', this demotes errors."
(interactive)
(with-demoted-errors "activity-save-all: ERROR: %S"
- (dolist (activity (cl-remove-if-not #'activity-active-p (map-values
(multisession-value activity-activities))))
+ (dolist (activity (cl-remove-if-not #'activity-active-p (map-values
activity-activities)))
(activity-save activity :lastp t))))
(defun activity-reset (activity)
@@ -354,7 +355,7 @@ closed."
(defun activity-named (name)
"Return activity having NAME."
- (map-elt (multisession-value activity-activities) name))
+ (map-elt activity-activities name))
(defun activity-switch (activity)
"Switch to ACTIVITY.
@@ -413,22 +414,20 @@ activity's name is NAME."
(translate-leaf (leaf)
"Translate window parameters in LEAF."
(pcase-let* ((`(leaf . ,attrs) leaf)
- ((map parameters ('buffer
`(,buffer-name-or-buffer . ,_))) attrs))
+ ((map parameters ('buffer
`(,buffer-or-buffer-name . ,_buffer-attrs))) attrs))
(setf (map-elt parameters 'activity-buffer)
;; HACK: Set buffer props parameter (maybe not the
"right" place).
- (activity--serialize (get-buffer
buffer-name-or-buffer))
- ;; HACK: Replace unserializable buffer (though
- ;; `window-state-get' should be filtering that
- ;; out...).
- (map-elt attrs 'buffer) (buffer-name (get-buffer
buffer-name-or-buffer)))
- (message "activity--window-serialized: (map-elt attrs
'buffer):%S" (map-elt attrs 'buffer))
+ (activity--serialize (get-buffer (car (map-elt attrs
'buffer))))
+ ;; HACK: Replace unserializable buffer (though
`window-state-get'
+ ;; should be filtering that out...). NOTE: We must
include the
+ ;; "buffr-attrs" as-is.
+ (car (map-elt attrs 'buffer)) (buffer-name (get-buffer
buffer-or-buffer-name)))
(pcase-dolist (`(,parameter . ,(map serialize))
activity-window-parameters-translators)
(when (map-elt parameters parameter)
(setf (map-elt parameters parameter)
(funcall serialize (map-elt parameters
parameter)))))
(setf (map-elt attrs 'parameters) parameters)
- (message "activity--window-serialized: (cons 'leaf
attrs):%S" (cons 'leaf attrs))
(cons 'leaf attrs))))
(translate-state state)))
@@ -570,12 +569,12 @@ activity's name is NAME."
(current-buffer)))))
(cl-defun activity-completing-read
- (&key (activities (multisession-value activity-activities)) (prompt "Open
activity: "))
+ (&key (activities activity-activities) (prompt "Open activity: "))
"Return an activity read with completion from ACTIVITIES.
PROMPT is passed to `completing-read', which see."
(let* ((names (activity-names activities))
(name (completing-read prompt names nil nil nil
activity-completing-read-history)))
- (or (map-elt (multisession-value activity-activities) name)
+ (or (map-elt activity-activities name)
(make-activity :name name))))
;; (defun activity--bookmarks ()
@@ -587,13 +586,13 @@ PROMPT is passed to `completing-read', which see."
;; (equal #'activity-bookmark-handler handler))
;; bookmark-alist)))
-(cl-defun activity-names (&optional (activities (multisession-value
activity-activities)))
+(cl-defun activity-names (&optional (activities activity-activities))
"Return list of names of ACTIVITIES."
(map-keys activities))
(defun activity-bookmark-handler (bookmark)
"Switch to BOOKMARK's activity."
- (activity-switch (map-elt (multisession-value activity-activities) (car
bookmark))))
+ (activity-switch (map-elt activity-activities (car bookmark))))
(defun activity--buffer-local-variables (variables)
"Return alist of buffer-local VARIABLES for current buffer.
- [elpa] externals-release/activities 6d2aa1a381 003/103: WIP, (continued)
- [elpa] externals-release/activities 6d2aa1a381 003/103: WIP, ELPA Syncer, 2024/01/30
- [elpa] externals-release/activities 388f31f686 007/103: WIP, ELPA Syncer, 2024/01/30
- [elpa] externals-release/activities 2027ede904 001/103: Initial commit, ELPA Syncer, 2024/01/30
- [elpa] externals-release/activities 9de2334d94 011/103: Tabs WIP, ELPA Syncer, 2024/01/30
- [elpa] externals-release/activities 10c1a7f629 010/103: WIP, ELPA Syncer, 2024/01/30
- [elpa] externals-release/activities a337656530 014/103: WIP, ELPA Syncer, 2024/01/30
- [elpa] externals-release/activities 003df257af 002/103: WIP, ELPA Syncer, 2024/01/30
- [elpa] externals-release/activities 3738d539e9 018/103: Add FAQ, ELPA Syncer, 2024/01/30
- [elpa] externals-release/activities bf181fa512 019/103: Update FAQ, ELPA Syncer, 2024/01/30
- [elpa] externals-release/activities bf84de5214 022/103: WIP (multisession doesn't seem to work with alists, trying persist next), ELPA Syncer, 2024/01/30
- [elpa] externals-release/activities f55b63a1cf 023/103: Seems to work,
ELPA Syncer <=
- [elpa] externals-release/activities 43c4524b47 025/103: Fix: (activity-switch) Set frame name, call make-frame correctly, ELPA Syncer, 2024/01/30
- [elpa] externals-release/activities 4bc5b0f757 026/103: Fixes and additions, ELPA Syncer, 2024/01/30
- [elpa] externals-release/activities e0bdd210bd 027/103: Fix, ELPA Syncer, 2024/01/30
- [elpa] externals-release/activities 42f9e302be 031/103: Tidy, ELPA Syncer, 2024/01/30
- [elpa] externals-release/activities 68dc0e0d55 033/103: Fix: Don't redisplay, ELPA Syncer, 2024/01/30
- [elpa] externals-release/activities 31d563422f 030/103: Fix, tidy, ELPA Syncer, 2024/01/30
- [elpa] externals-release/activities d3d1c9f6dd 036/103: Docs: Update readme, ELPA Syncer, 2024/01/30
- [elpa] externals-release/activities 0a5bdc6f1a 044/103: Add: (activity-new) Use prefix to redefine, ELPA Syncer, 2024/01/30
- [elpa] externals-release/activities 2f4ce2441c 046/103: Docs: Update, add Info manual, ELPA Syncer, 2024/01/30
- [elpa] externals-release/activities 99ae983d0b 048/103: Tidy, ELPA Syncer, 2024/01/30