gptel: Name gptel buffer according to backend

* gptel.el (gptel-default-session, gptel): Name the gptel buffer
according to the default backend.  Delete the variable
`gptel-default-session`.  Fix #174.

* gptel-openai.el (gptel-make-openai): Don't specify a key by
default. Fix #170.
This commit is contained in:
Karthik Chikmagalur 2024-01-05 21:53:20 -08:00
parent e67ed41e31
commit 8ec233d79c
3 changed files with 24 additions and 20 deletions

View file

@ -113,8 +113,7 @@
;;;###autoload ;;;###autoload
(cl-defun gptel-make-openai (cl-defun gptel-make-openai
(name &key header models stream (name &key header models stream key
(key 'gptel-api-key)
(host "api.openai.com") (host "api.openai.com")
(protocol "https") (protocol "https")
(endpoint "/v1/chat/completions")) (endpoint "/v1/chat/completions"))

View file

@ -132,7 +132,9 @@ which see."
:reader :reader
(lambda (prompt _ history) (lambda (prompt _ history)
(read-string (read-string
prompt (generate-new-buffer-name "*ChatGPT*") history))) prompt (generate-new-buffer-name
(concat "*" (gptel-backend-name gptel-backend) "*"))
history)))
("e" "Existing session" "e" ("e" "Existing session" "e"
:class transient-option :class transient-option
:prompt "Existing session: " :prompt "Existing session: "

View file

@ -236,7 +236,6 @@ to the LLM, and after a text insertion."
:group 'gptel :group 'gptel
:type 'hook) :type 'hook)
(defvar gptel-default-session "*ChatGPT*")
(defcustom gptel-default-mode (if (fboundp 'markdown-mode) (defcustom gptel-default-mode (if (fboundp 'markdown-mode)
'markdown-mode 'markdown-mode
'text-mode) 'text-mode)
@ -1104,22 +1103,26 @@ If region is active, use it as the INITIAL prompt. Returns the
buffer created or switched to. buffer created or switched to.
INTERACTIVEP is t when gptel is called interactively." INTERACTIVEP is t when gptel is called interactively."
(interactive (list (if current-prefix-arg (interactive
(read-string "Session name: " (generate-new-buffer-name gptel-default-session)) (let* ((backend (default-value 'gptel-backend))
gptel-default-session) (backend-name
(let ((backend (default-value 'gptel-backend))) (format "*%s*" (gptel-backend-name backend))))
(list (if current-prefix-arg
(read-string "Session name: "
(generate-new-buffer-name
backend-name))
backend-name)
(condition-case nil (condition-case nil
(gptel--get-api-key (gptel--get-api-key
(gptel-backend-key backend)) (gptel-backend-key backend))
((error user-error) ((error user-error)
(setq gptel-api-key (setq gptel-api-key
(read-passwd (read-passwd
(format "%s API key: " (format "%s API key: " backend-name)))))
(gptel-backend-name backend)))))))
(and (use-region-p) (and (use-region-p)
(buffer-substring (region-beginning) (buffer-substring (region-beginning)
(region-end))) (region-end)))
t)) t)))
(with-current-buffer (get-buffer-create name) (with-current-buffer (get-buffer-create name)
(cond ;Set major mode (cond ;Set major mode
((eq major-mode gptel-default-mode)) ((eq major-mode gptel-default-mode))