aboutsummaryrefslogtreecommitdiff
path: root/gui/conf
diff options
context:
space:
mode:
Diffstat (limited to 'gui/conf')
-rw-r--r--gui/conf/init.el75
-rw-r--r--gui/conf/metakr.org5
2 files changed, 54 insertions, 26 deletions
diff --git a/gui/conf/init.el b/gui/conf/init.el
index b543c6b..567b1cf 100644
--- a/gui/conf/init.el
+++ b/gui/conf/init.el
@@ -47,6 +47,8 @@
(setq fast-but-imprecise-scrolling t)
(fset 'yes-or-no-p 'y-or-n-p)
+(setq use-dialog-box nil)
+
(setq-default indent-tabs-mode nil)
(setq-default tab-width 2)
(setq-default c-basic-offset 2)
@@ -201,6 +203,7 @@
(org-icalendar-timezone "Europe/Berlin")
(org-icalendar-use-deadline '(event-if-not-todo event-if-todo))
(org-icalendar-use-scheduled '(event-if-not-todo event-if-todo))
+ (org-agenda-skip-deadline-prewarning-if-scheduled t)
:init
(require 'org-protocol)
(require 'ox-bibtex)
@@ -320,6 +323,45 @@
(use-package ob-async
:ensure t)
+(use-package gptel
+ :ensure t
+ :config
+ (evil-leader/set-key "am" 'gptel-menu)
+ (evil-leader/set-key "as" 'gptel-send)
+ (evil-leader/set-key "ac" 'gptel-abort)
+ (evil-leader/set-key "ar" 'gptel-rewrite)
+ (setq gptel-default-mode 'org-mode)
+ (setq gptel-org-branching-context t)
+ (setq gptel-include-reasoning nil)
+ (setq gptel-rewrite-default-action 'dispatch)
+ (defun gptel--read-key-file (path)
+ "Read API key from PATH, trimming whitespace."
+ (with-temp-buffer
+ (insert-file-contents path)
+ (string-trim (buffer-string))))
+ (setq gptel-backend
+ (gptel-make-gemini "Google"
+ :key (lambda () (gptel--read-key-file "~/.gemini-ai-key"))
+ :models '("gemini-flash-latest" "gemini-pro-latest")
+ :stream t))
+ (setq gptel--kit-backend
+ (gptel-make-openai "KIT-Toolbox"
+ :host "ki-toolbox.scc.kit.edu"
+ :endpoint "/api/v1/chat/completions"
+ :stream t
+ :key (lambda () (gptel--read-key-file "~/.kit-ai-key"))
+ :models '("azure.gpt-5")))
+ (setq gptel-default-model "Google:gemini-flash-latest"))
+
+(use-package ob-gptel
+ :ensure t
+ :hook ((org-mode . ob-gptel-install-completions))
+ :defines ob-gptel-install-completions
+ :config
+ (defun ob-gptel-install-completions ()
+ (add-hook 'completion-at-point-functions
+ 'ob-gptel-capf nil t)))
+
(custom-theme-set-faces
'user
'(org-level-1 ((t (:family "Iosevka Aile" :weight light))))
@@ -433,7 +475,8 @@
(latex . t)
(org . t)
(dot . t)
- (C . t)))
+ (C . t)
+ (gptel . t)))
(setq org-confirm-babel-evaluate nil)
@@ -536,10 +579,10 @@
(electric-indent-local-mode -1))
(add-hook 'c-mode-common-hook 'disable-electric-indent-mode t)
-(use-package ace-jump-mode
+(use-package avy
:ensure t
:config
- (evil-leader/set-key "SPC" 'ace-jump-mode))
+ (evil-leader/set-key "SPC" 'avy-goto-char))
(use-package auctex
:defer t)
@@ -606,9 +649,11 @@
ad-do-it
(message "org-tangle took %f sec" (float-time (time-subtract (current-time) time)))))
-(use-package gptel
+(use-package envrc
:ensure t)
+(envrc-global-mode)
+
(let ((mu4e-config "~/.emacs.d/email.el"))
(when (file-exists-p mu4e-config)
(load-file mu4e-config)))
@@ -616,25 +661,3 @@
(let ((patches "~/.emacs.d/patches.el"))
(when (file-exists-p patches)
(load-file patches)))
-
-(use-package envrc
- :ensure t)
-
-(use-package gptel
- :ensure t
- :config
- (defun read-file-contents (file-path)
- "Read the contents of FILE-PATH and return it as a string."
- (with-temp-buffer
- (insert-file-contents file-path)
- (buffer-string)))
- (defun gptel-api-key ()
- (read-file-contents "~/.kit-ai-api"))
- (setq gptel-backend (gptel-make-openai "KIT-Toolbox"
- :host "ki-toolbox.scc.kit.edu"
- :endpoint "/api/v1/chat/completions"
- :stream t
- :key #'gptel-api-key
- :models '("azure.gpt-5"))))
-
-(envrc-global-mode)
diff --git a/gui/conf/metakr.org b/gui/conf/metakr.org
index 16c9717..2fec43c 100644
--- a/gui/conf/metakr.org
+++ b/gui/conf/metakr.org
@@ -400,6 +400,11 @@ For quick iteration all colors are stored in a table.
(font-latex-italic-face
:inherit italic
:foreground @muted)
+
+;; gptel
+ (gptel-rewrite-highlight-face
+ :background @meta
+ :foreground @bg)
)
#+END_SRC