Variable: gptel-mode
gptel-mode is a buffer-local variable defined in gptel.el.
Documentation
Non-nil if GPTel mode is enabled.
Use the command gptel-mode(var)/gptel-mode(fun) to change this variable.
Key Bindings
This command is not in any keymaps.
Source Code
;; Defined in /nix/store/q3r7g81pvghw7a523kjk2k2zih3pfk8z-emacs-packages-deps/share/emacs/site-lisp/elpa/gptel-20261002.545/gptel.el
;;;; Minor mode
;;;###autoload
(define-minor-mode gptel-mode
"Minor mode for interacting with LLMs."
:lighter " GPT"
:keymap
(let ((map (make-sparse-keymap)))
(define-key map (kbd "C-c RET") #'gptel-send)
map)
(if gptel-mode
(progn
(unless (derived-mode-p 'org-mode 'markdown-mode 'text-mode)
(gptel-mode -1)
(user-error (format "`gptel-mode' is not supported in `%s'." major-mode)))
(add-hook 'before-save-hook #'gptel--save-state nil t)
(add-hook 'after-change-functions 'gptel--inherit-stickiness nil t)
(gptel--prettify-preset)
(cond
((derived-mode-p 'org-mode)
(require 'gptel-org)
(jit-lock-register 'gptel-org--annotate-links)
;; Work around bug in `org-fontify-extend-region'.
(add-hook 'gptel-post-response-functions #'font-lock-flush nil t))
((derived-mode-p 'markdown-mode)
(font-lock-add-keywords ;keymap is a font-lock-managed property in markdown-mode
nil '(("^```[ \t]*\\([[:alpha:]][^\n]*\\)?$" ;match code fences
0 (list 'face nil 'keymap gptel--markdown-block-map))))
(jit-lock-register 'gptel-markdown--annotate-links)))
(gptel--restore-state)
(if gptel-use-header-line
(progn (setq gptel--old-header-line header-line-format)
(gptel-use-header-line))
(gptel--update-status " Ready" 'success)))
(remove-hook 'before-save-hook #'gptel--save-state t)
(remove-hook 'after-change-functions 'gptel--inherit-stickiness t)
(cond
((derived-mode-p 'org-mode)
(jit-lock-unregister #'gptel-org--annotate-links)
(without-restriction (gptel--annotate-link-clear)))
((derived-mode-p 'markdown-mode)
(jit-lock-unregister #'gptel-markdown--annotate-links)
(without-restriction (gptel--annotate-link-clear))))
(gptel--prettify-preset)
(if gptel-use-header-line
(setq header-line-format gptel--old-header-line
gptel--old-header-line nil)
(setq mode-line-process nil))))