From c6abda6f0fa64d49db41b3266ec0c8c83d7862eb Mon Sep 17 00:00:00 2001 From: Karthik Chikmagalur Date: Sun, 9 Apr 2023 03:34:16 -0700 Subject: [PATCH] gptel-transient: Rename gptel-send-menu -> gptel-menu * gptel.el (gptel-send): Replace references to `gptel-send-menu'. * gptel-transient.el: Rename `gptel-send-menu' t `gptel-menu'. This shorter name is apropos of its increased feature set (in the forthcoming commits). --- gptel-transient.el | 29 ++++++++++++++++++++++++++--- gptel.el | 8 ++++---- 2 files changed, 30 insertions(+), 7 deletions(-) diff --git a/gptel-transient.el b/gptel-transient.el index a94cc05..2748806 100644 --- a/gptel-transient.el +++ b/gptel-transient.el @@ -29,8 +29,31 @@ (require 'gptel) (require 'transient) -;;;###autoload (autoload 'gptel-send-menu "gptel-transient" nil t) -(transient-define-prefix gptel-send-menu () +(declare-function ediff-regions-internal "ediff") +(declare-function ediff-make-cloned-buffer "ediff-utils") + +;; * Helper functions +(defun gptel--refactor-or-rewrite () + "Rewrite should be refactored into refactor. + +Or is it the other way around?" + (if (derived-mode-p 'prog-mode) + "Refactor" "Rewrite")) + +(defvar-local gptel--rewrite-message nil) +(defun gptel--rewrite-message () + "Set a generic refactor/rewrite message for the buffer." + (if (derived-mode-p 'prog-mode) + (format "You are a %s programmer. Refactor the following code. Generate only code, no explanation." + (substring (symbol-name major-mode) nil -5)) + (format "You are a prose editor. Rewrite the following text to be more professional."))) + +;; * Transient Prefixes + +(define-obsolete-function-alias 'gptel-send-menu 'gptel-menu "0.3.2") + +;;;###autoload (autoload 'gptel-menu "gptel-transient" nil t) +(transient-define-prefix gptel-menu () "Change parameters of prompt to send ChatGPT." [:description (lambda () (format "Directive: %s" @@ -233,7 +256,7 @@ will get progressively longer!" `((display-buffer-reuse-window display-buffer-use-some-window) (body-function . ,#'select-window))) - (call-interactively #'gptel-send-menu)))))) + (call-interactively #'gptel-menu)))))) (provide 'gptel-transient) ;;; gptel-transient.el ends here diff --git a/gptel.el b/gptel.el index 656ce42..fc50b24 100644 --- a/gptel.el +++ b/gptel.el @@ -54,7 +54,7 @@ ;;; Code: (declare-function markdown-mode "markdown-mode") (declare-function gptel-curl-get-response "gptel-curl") -(declare-function gptel-send-menu "gptel-transient") +(declare-function gptel-menu "gptel-transient") (declare-function pulse-momentary-highlight-region "pulse") (eval-when-compile @@ -260,14 +260,14 @@ By default, \"openai.com\" is used as HOST and \"apikey\" as USER." " " 'display `(space :align-to ,(max 1 (- (window-width) (+ 2 l1 l2))))) (propertize (button-buttonize num-exchanges - (lambda (&rest _) (gptel-send-menu))) + (lambda (&rest _) (gptel-menu))) 'mouse-face 'highlight 'help-echo "Number of past exchanges to include with each request") " " (propertize (button-buttonize (concat "[" gptel-model "]") - (lambda (&rest _) (gptel-send-menu))) + (lambda (&rest _) (gptel-menu))) 'mouse-face 'highlight 'help-echo "OpenAI GPT model in use")))))) (setq header-line-format gptel--old-header-line))) @@ -395,7 +395,7 @@ With prefix arg ARG activate a transient menu with more options instead." (interactive "P") (if (and arg (require 'gptel-transient nil t)) - (call-interactively #'gptel-send-menu) + (call-interactively #'gptel-menu) (message "Querying ChatGPT...") (let* ((response-pt (if (use-region-p)