Function: gptel--restore-state
gptel--restore-state is a natively compiled function defined in
gptel.el.
Signature
(gptel--restore-state)
Documentation
Restore gptel state when turning on gptel-mode(var)/gptel-mode(fun).
Source Code
;; Defined in /nix/store/q3r7g81pvghw7a523kjk2k2zih3pfk8z-emacs-packages-deps/share/emacs/site-lisp/elpa/gptel-20261002.545/gptel.el
(defun gptel--restore-state ()
"Restore gptel state when turning on `gptel-mode'."
(when (buffer-file-name)
(if (derived-mode-p 'org-mode)
(progn
(require 'gptel-org)
(gptel-org--restore-state))
(when gptel--bounds
(gptel--restore-props gptel--bounds)
(message "gptel chat restored."))
(when gptel--preset
(if (gptel-get-preset gptel--preset)
(gptel--apply-preset
gptel--preset (lambda (sym val) (set (make-local-variable sym) val)))
(display-warning
'(gptel presets)
(format "Could not activate gptel preset `%s' in buffer \"%s\""
gptel--preset (buffer-name)))))
(when gptel--backend-name
(if-let* ((backend (alist-get
gptel--backend-name gptel--known-backends
nil nil #'equal)))
(setq-local gptel-backend backend)
(message
(substitute-command-keys
(concat
"Could not activate gptel backend \"%s\"! "
"Switch backends with \\[universal-argument] \\[gptel-send]"
" before using gptel."))
gptel--backend-name)))
(when gptel--tool-names
(if-let* ((tools (cl-loop
for tname in gptel--tool-names
for tool = (with-demoted-errors "gptel: %S"
(gptel-get-tool tname))
if tool collect tool else do
(display-warning
'(gptel org tools)
(format "Tool %s not found, ignoring" tname)))))
(setq-local gptel-tools tools))))))