[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[nongnu] elpa/gptel d13b0c4ab7 088/273: gptel-transient: Fix gptel-syste
From: |
ELPA Syncer |
Subject: |
[nongnu] elpa/gptel d13b0c4ab7 088/273: gptel-transient: Fix gptel-system-prompt |
Date: |
Wed, 1 May 2024 10:01:53 -0400 (EDT) |
branch: elpa/gptel
commit d13b0c4ab76d9611e3c8886f73ec44bf104d59d4
Author: Karthik Chikmagalur <karthikchikmagalur@gmail.com>
Commit: Karthik Chikmagalur <karthikchikmagalur@gmail.com>
gptel-transient: Fix gptel-system-prompt
* gptel-transient.el (gptel--system-prompt-programming,
gptel--system-prompt-default, gptel--system-prompt-writing,
gptel--system-prompt-chat, gptel-system-prompt): Define explicit helper
functions to set the system prompt. This is a temporary workaround for #45
until dynamic transients are supported in a new transient release.
---
gptel-transient.el | 43 +++++++++++++++++++++++--------------------
1 file changed, 23 insertions(+), 20 deletions(-)
diff --git a/gptel-transient.el b/gptel-transient.el
index e85ba882cd..79e177b607 100644
--- a/gptel-transient.el
+++ b/gptel-transient.el
@@ -104,6 +104,25 @@ Or is it the other way around?"
;; ** Prefix for setting the system prompt.
+;; These helper functions are a temporary workaround to fix #45. Once dynamic
+;; transients are supported, we can do away with all this jank.
+(defun gptel--system-prompt-programming ()
+ (interactive)
+ (setq gptel--system-message
+ (alist-get 'programming gptel-directives)))
+(defun gptel--system-prompt-default ()
+ (interactive)
+ (setq gptel--system-message
+ (alist-get 'chat gptel-directives)))
+(defun gptel--system-prompt-writing ()
+ (interactive)
+ (setq gptel--system-message
+ (alist-get 'writing gptel-directives)))
+(defun gptel--system-prompt-chat ()
+ (interactive)
+ (setq gptel--system-message
+ (alist-get 'default gptel-directives)))
+
(transient-define-prefix gptel-system-prompt ()
"Change the system prompt to send ChatGPT.
@@ -123,26 +142,10 @@ Customize `gptel-directives' for task-specific prompts."
:class transient-column
:pad-keys t
(gptel--suffix-system-message)
- ("p" "Programming"
- (lambda () (interactive)
- (setq gptel--system-message
- (alist-get 'programming gptel-directives)))
- :transient t)
- ("d" "Default"
- (lambda () (interactive)
- (setq gptel--system-message
- (alist-get 'default gptel-directives)))
- :transient t)
- ("w" "Writing"
- (lambda () (interactive)
- (setq gptel--system-message
- (alist-get 'writing gptel-directives)))
- :transient t)
- ("c" "Chat"
- (lambda () (interactive)
- (setq gptel--system-message
- (alist-get 'chat gptel-directives)))
- :transient t)])
+ ("p" "Programming" gptel--system-prompt-programming :transient t)
+ ("d" "Default" gptel--system-prompt-default :transient t)
+ ("w" "Writing" gptel--system-prompt-writing :transient t)
+ ("c" "Chat" gptel--system-prompt-chat :transient t)])
;; ** Prefix for rewriting/refactoring
- [nongnu] elpa/gptel a500c76a68 053/273: Encode a lambda-provided API key as utf-8, (continued)
- [nongnu] elpa/gptel a500c76a68 053/273: Encode a lambda-provided API key as utf-8, ELPA Syncer, 2024/05/01
- [nongnu] elpa/gptel c22c59d20a 061/273: gptel: Add post-response hook and fix org converter, ELPA Syncer, 2024/05/01
- [nongnu] elpa/gptel 1cd0f58552 067/273: gptel-curl: Better error handling when streaming, ELPA Syncer, 2024/05/01
- [nongnu] elpa/gptel 44045be327 072/273: gptel: gptel-mode is local by default, ELPA Syncer, 2024/05/01
- [nongnu] elpa/gptel a43f5ac5fa 064/273: gptel: Rename stream-related vars and defuns, ELPA Syncer, 2024/05/01
- [nongnu] elpa/gptel 2e34981aa0 062/273: gptel: Rename :insert-marker, ELPA Syncer, 2024/05/01
- [nongnu] elpa/gptel 23332a9bc5 077/273: gptel-transient: Add outline-minor-mode support, ELPA Syncer, 2024/05/01
- [nongnu] elpa/gptel 00abbf7597 081/273: gptel-transient: More visual feedback, ELPA Syncer, 2024/05/01
- [nongnu] elpa/gptel 444a43134f 083/273: gptel-curl: Fix current-buffer for Curl requests, ELPA Syncer, 2024/05/01
- [nongnu] elpa/gptel 37c381c2e5 092/273: README: Update with acknowledgments and more, ELPA Syncer, 2024/05/01
- [nongnu] elpa/gptel d13b0c4ab7 088/273: gptel-transient: Fix gptel-system-prompt,
ELPA Syncer <=
- [nongnu] elpa/gptel 6202474a6e 080/273: README: Update with changes to gptel-menu, ELPA Syncer, 2024/05/01
- [nongnu] elpa/gptel 075609544a 085/273: README: Update instructions for setting key (#46), ELPA Syncer, 2024/05/01
- [nongnu] elpa/gptel a7207a3835 097/273: README: Add TOC, ELPA Syncer, 2024/05/01
- [nongnu] elpa/gptel f218388d4d 082/273: gptel-transient: Fix bug when sending in existing session, ELPA Syncer, 2024/05/01
- [nongnu] elpa/gptel 30700cc88a 096/273: README: Mention extensions, gptel-proxy, ELPA Syncer, 2024/05/01
- [nongnu] elpa/gptel 09729ee718 089/273: gptel: Create customization group, ELPA Syncer, 2024/05/01
- [nongnu] elpa/gptel ac754ceb2a 086/273: gptel: Handle read-only gptel-buffers, ELPA Syncer, 2024/05/01
- [nongnu] elpa/gptel cc6c5e7321 104/273: gptel: saving and restoring state, and limiting context, ELPA Syncer, 2024/05/01
- [nongnu] elpa/gptel 24add64455 114/273: gptel: Adjust how gptel--system-message is set, ELPA Syncer, 2024/05/01
- [nongnu] elpa/gptel 17a58d38e7 135/273: gptel: Fix bug in url-retrieve setup, ELPA Syncer, 2024/05/01