branch: elpa/gptel commit c818ce3426a7ebac78c737cf6106282f26dcbb80 Author: Karthik Chikmagalur <karthikchikmaga...@gmail.com> Commit: Karthik Chikmagalur <karthikchikmaga...@gmail.com>
gptel: read-only handling for non-default callbacks * gptel.el (gptel--handle-pre-insert): Only use the fallback LLM response buffer for requests sent from read-only buffers when using the default callbacks. For general gptel-request usage leave it to the callback to manage read-only buffers. (#772) --- gptel.el | 9 ++++++--- 1 file changed, 6 insertions(+), 3 deletions(-) diff --git a/gptel.el b/gptel.el index 775a3e6102..69bc000fee 100644 --- a/gptel.el +++ b/gptel.el @@ -1969,9 +1969,12 @@ Handle read-only buffers and run pre-response hooks (but only if the request succeeded)." (let* ((info (gptel-fsm-info fsm)) (start-marker (plist-get info :position))) - (when (with-current-buffer (plist-get info :buffer) - (or buffer-read-only - (get-char-property start-marker 'read-only))) + (when (and + (memq (plist-get info :callback) + '(gptel--insert-response gptel-curl--stream-insert-response)) + (with-current-buffer (plist-get info :buffer) + (or buffer-read-only + (get-char-property start-marker 'read-only)))) (message "Buffer is read only, displaying reply in buffer \"*LLM response*\"") (display-buffer (with-current-buffer (get-buffer-create "*LLM response*")