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

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

[elpa] externals/ellama 0eac37ffe3 09/19: Add ellama-session-kill functi


From: ELPA Syncer
Subject: [elpa] externals/ellama 0eac37ffe3 09/19: Add ellama-session-kill functionality
Date: Sun, 23 Feb 2025 06:58:08 -0500 (EST)

branch: externals/ellama
commit 0eac37ffe353f6a685dd852b2f4a4ae6db2f3dee
Author: Sergey Kostyaev <sskostyaev@gmail.com>
Commit: Sergey Kostyaev <sskostyaev@gmail.com>

    Add ellama-session-kill functionality
    
    Added new function `ellama-session-kill` to select and kill an active 
session.
    Updated README.org with new command description. Modified the transient 
menu to
    include the new "Kill Session" option.
---
 README.org |  4 ++++
 ellama.el  | 13 ++++++++++++-
 2 files changed, 16 insertions(+), 1 deletion(-)

diff --git a/README.org b/README.org
index 9b491ff40c..205216a3dc 100644
--- a/README.org
+++ b/README.org
@@ -250,6 +250,10 @@ Delete ellama session.
 
 Change current active session.
 
+*** ellama-session-kill
+
+Select and kill one of active sessions.
+
 *** ellama-session-rename
 
 Rename current ellama session.
diff --git a/ellama.el b/ellama.el
index 92bdd3cd9e..3bfc2fbe19 100644
--- a/ellama.el
+++ b/ellama.el
@@ -1002,6 +1002,16 @@ If EPHEMERAL non nil new session will not be associated 
with any file."
     (display-buffer buffer (when ellama-chat-display-action-function
                             `((ignore . 
(,ellama-chat-display-action-function)))))))
 
+;;;###autoload
+(defun ellama-session-kill ()
+  "Select and kill one of active sessions."
+  (interactive)
+  (let* ((id (completing-read
+             "Select session to kill: "
+             (hash-table-keys ellama--active-sessions)))
+        (buffer (ellama-get-session-buffer id)))
+    (kill-buffer buffer)))
+
 ;;;###autoload
 (defun ellama-session-rename ()
   "Rename current ellama session."
@@ -3086,7 +3096,8 @@ Call CALLBACK on result list of strings.  ARGS contains 
keys for fine control.
     ("l" "Load Session" ellama-load-session)
     ("r" "Rename Session" ellama-session-rename)
     ("d" "Delete Session" ellama-session-delete)
-    ("a" "Activate Session" ellama-session-switch)]
+    ("a" "Activate Session" ellama-session-switch)
+    ("k" "Kill Session" ellama-session-kill)]
    ["Quit" ("q" "Quit" transient-quit-one)]])
 
 (transient-define-prefix ellama-transient-improve-menu ()



reply via email to

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