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

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

[elpa] externals/ellama d217cb2727 1/7: Add transient menu for ellama


From: ELPA Syncer
Subject: [elpa] externals/ellama d217cb2727 1/7: Add transient menu for ellama
Date: Tue, 15 Oct 2024 18:58:11 -0400 (EDT)

branch: externals/ellama
commit d217cb27279d565fd2eec3e3df0409026b615e00
Author: Marko Kocic <marko@euptera.com>
Commit: Marko Kocic <marko@euptera.com>

    Add transient menu for ellama
---
 ellama.el | 97 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++-
 1 file changed, 96 insertions(+), 1 deletion(-)

diff --git a/ellama.el b/ellama.el
index 1cdee8c35f..d6f0fd923f 100644
--- a/ellama.el
+++ b/ellama.el
@@ -5,7 +5,7 @@
 ;; Author: Sergey Kostyaev <sskostyaev@gmail.com>
 ;; URL: http://github.com/s-kostyaev/ellama
 ;; Keywords: help local tools
-;; Package-Requires: ((emacs "28.1") (llm "0.6.0") (spinner "1.7.4") (compat 
"29.1"))
+;; Package-Requires: ((emacs "28.1") (llm "0.6.0") (spinner "1.7.4") 
(transient "0.7.6") (compat "29.1"))
 ;; Version: 0.11.14
 ;; SPDX-License-Identifier: GPL-3.0-or-later
 ;; Created: 8th Oct 2023
@@ -40,6 +40,7 @@
 (require 'llm)
 (require 'llm-provider-utils)
 (require 'spinner)
+(require 'transient)
 (require 'info)
 (require 'shr)
 (require 'eww)
@@ -2033,6 +2034,100 @@ otherwise prompt user for URL to summarize."
       (make-llm-ollama
        :chat-model model-name :embedding-model model-name))))
 
+(transient-define-prefix ellama-transient-code-menu ()
+  "Code Commands."
+  [["Code Commands"
+    ("c" "Complete" ellama-code-complete)
+    ("a" "Add" ellama-code-add)
+    ("e" "Edit" ellama-code-edit)
+    ("i" "Improve" ellama-code-improve)
+    ("r" "Review" ellama-code-review)
+    ("m" "Generate Commit Message" ellama-generate-commit-message)]
+   ["Quit" ("q" "Quit" transient-quit-one)]])
+
+(transient-define-prefix ellama-transient-summarize-menu ()
+  "Summarize Commands."
+  [["Summarize Commands"
+    ("s" "Summarize" ellama-summarize)
+    ("w" "Summarize Webpage" ellama-summarize-webpage)
+    ("c" "Summarize Killring" ellama-summarize-killring)]
+   ["Quit" ("q" "Quit" transient-quit-one)]])
+
+(transient-define-prefix ellama-transient-session-menu ()
+  "Session Commands."
+  [["Session Commands"
+    ("l" "Load Session" ellama-load-session)
+    ("r" "Rename Session" ellama-session-rename)
+    ("d" "Remove Session" ellama-session-remove)
+    ("a" "Activate Session" ellama-session-switch)]
+   ["Quit" ("q" "Quit" transient-quit-one)]])
+
+(transient-define-prefix ellama-transient-improve-menu ()
+  "Improve Commands."
+  [["Improve Commands"
+    ("w" "Improve Wording" ellama-improve-wording)
+    ("g" "Improve Grammar" ellama-improve-grammar)
+    ("c" "Improve Conciseness" ellama-improve-conciseness)]
+   ["Quit" ("q" "Quit" transient-quit-one)]])
+
+(transient-define-prefix ellama-transient-make-menu ()
+  "Make Commands."
+  [["Make Commands"
+    ("l" "Make List" ellama-make-list)
+    ("t" "Make Table" ellama-make-table)
+    ("f" "Make Format" ellama-make-format)]
+   ["Quit" ("q" "Quit" transient-quit-one)]])
+
+(transient-define-prefix ellama-transient-ask-menu ()
+  "Ask Commands."
+  [["Ask Commands"
+    ("i" "Chat" ellama-chat)
+    ("l" "Ask Line" ellama-ask-line)
+    ("s" "Ask Selection" ellama-ask-selection)
+    ("a" "Ask About" ellama-ask-about)]
+   ["Quit" ("q" "Quit" transient-quit-one)]])
+
+(transient-define-prefix ellama-transient-translate-menu ()
+  "Translate Commands."
+  [["Translate Commands"
+    ("t" "Translate Text" ellama-translate)
+    ("b" "Translate Buffer" ellama-translate-buffer)
+    ("e" "Enable Translation" ellama-chat-translation-enable)
+    ("d" "Disable Translation" ellama-chat-translation-disable)
+    ("c" "Text Complete" ellama-complete)]
+   ["Quit" ("q" "Quit" transient-quit-one)]])
+
+(transient-define-prefix ellama-transient-context-menu ()
+  "Context Commands."
+  [["Context Commands"
+    ("b" "Add Buffer" ellama-context-add-buffer)
+    ("f" "Add File" ellama-context-add-file)
+    ("s" "Add Selection" ellama-context-add-selection)
+    ("i" "Add Info Node" ellama-context-add-info-node)]
+   ["Quit" ("q" "Quit" transient-quit-one)]])
+
+(transient-define-prefix ellama-transient-provider-menu ()
+  "Provider Commands."
+  [["Provider Commands"
+    ("s" "Select Provider" ellama-provider-select)]
+   ["Quit" ("q" "Quit" transient-quit-one)]])
+
+(transient-define-prefix ellama-transient-main-menu ()
+  "Main Menu."
+  [["Chat"
+    ("a" "Ask" ellama-transient-ask-menu)
+    ("c" "Code" ellama-transient-code-menu)]]
+  [["Text"
+    ("s" "Summarize" ellama-transient-summarize-menu)
+    ("i" "Improve" ellama-transient-improve-menu)
+    ("t" "Translate" ellama-transient-translate-menu)
+    ("m" "Make" ellama-transient-make-menu)]]
+  [["System"
+    ("S" "Session" ellama-transient-session-menu)
+    ("x" "Context" ellama-transient-context-menu)
+    ("p" "Provider" ellama-transient-provider-menu)]]
+  [["Quit" ("q" "Quit" transient-quit-one)]])
+
 ;;;###autoload
 (defun ellama-provider-select ()
   "Select ellama provider."



reply via email to

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