branch: externals/detached commit e8abfc23a3301b696adb4efbf0011b863e4a9faa Author: Niklas Eklund <niklas.ekl...@posteo.net> Commit: Niklas Eklund <niklas.ekl...@posteo.net>
Configure detached-init to initialize sessions --- detached-init.el | 7 ++++++- detached.el | 6 ------ 2 files changed, 6 insertions(+), 7 deletions(-) diff --git a/detached-init.el b/detached-init.el index fad43f4106..2922eac190 100644 --- a/detached-init.el +++ b/detached-init.el @@ -38,8 +38,9 @@ (declare-function detached-copy-session-command "detached") (declare-function detached-copy-session "detached") (declare-function detached-diff-session "detached") - +(declare-function detached-initialize-sessions "detached") (declare-function detached-shell-mode "detached") + (declare-function detached-compile--start "detached-compile") (declare-function detached-dired-do-shell-command "detached-dired") (declare-function detached-eshell-mode "detached-eshell") @@ -106,6 +107,10 @@ (defun detached-init () "Initialize `detached' integration with all packages." + ;; Trigger initialization of sessions upon load of `detached' + (with-eval-after-load 'detached + (detached-initialize-sessions)) + ;; Required for `detached-shell-command' which is always provided (add-hook 'shell-mode-hook #'detached-shell-mode) diff --git a/detached.el b/detached.el index 0f65db6f54..05acc44b4f 100644 --- a/detached.el +++ b/detached.el @@ -1120,13 +1120,11 @@ Optionally make the path LOCAL to host." (defun detached--db-insert-entry (session) "Insert SESSION into `detached--sessions' and update database." - (detached-initialize-sessions) (push `(,(detached--session-id session) . ,session) detached--sessions) (detached--db-update-sessions)) (defun detached--db-remove-entry (session) "Remove SESSION from `detached--sessions', delete log and update database." - (detached-initialize-sessions) (let ((log (detached--session-file session 'log))) (when (file-exists-p log) (delete-file log))) @@ -1136,24 +1134,20 @@ Optionally make the path LOCAL to host." (defun detached--db-update-entry (session &optional update) "Update SESSION in `detached--sessions' optionally UPDATE database." - (detached-initialize-sessions) (setf (alist-get (detached--session-id session) detached--sessions) session) (when update (detached--db-update-sessions))) (defun detached--db-get-session (id) "Return session with ID." - (detached-initialize-sessions) (alist-get id detached--sessions)) (defun detached--db-get-sessions () "Return all sessions stored in the database." - (detached-initialize-sessions) (seq-map #'cdr detached--sessions)) (defun detached--db-update-sessions () "Write `detached--sessions' to database." - (detached-initialize-sessions) (let ((db (expand-file-name "detached-sessions.db" detached-db-directory))) (with-temp-file db (insert (format ";; Detached Session Version: %s\n\n" detached-session-version))