From db31fa87d8401be9523780293c7011f5775f59a8 Mon Sep 17 00:00:00 2001 From: Alan Pearce Date: Wed, 12 Mar 2025 17:54:15 +0100 Subject: emacs: install minuet for local LLM-based completions --- user/emacs/init.el | 23 +++++++++++++++++++++++ user/settings/emacs.nix | 1 + 2 files changed, 24 insertions(+) (limited to 'user') diff --git a/user/emacs/init.el b/user/emacs/init.el index bdde6e7c..198a5007 100644 --- a/user/emacs/init.el +++ b/user/emacs/init.el @@ -654,6 +654,29 @@ _C-k_: prev _u_pper _=_: upper/lower _s_mart resolve (setq kind-icon-default-face 'corfu-default) (add-to-list 'corfu-margin-formatters #'kind-icon-margin-formatter))) +(use-package minuet + :general ("M-" #'minuet-show-suggestion) + :config (progn + (setq minuet-provider 'openai-fim-compatible + minuet-n-completions 1 + minuet-context-window 512) + (plist-put minuet-openai-fim-compatible-options :end-point "http://localhost:11434/v1/completions") + (plist-put minuet-openai-fim-compatible-options :name "Ollama") + (plist-put minuet-openai-fim-compatible-options :api-key "TERM") + (plist-put minuet-openai-fim-compatible-options :model "qwen2.5-coder:32b") + (minuet-set-optional-options minuet-openai-fim-compatible-options :max_tokens 256) + (minuet-set-optional-options minuet-openai-fim-compatible-options :top_p 0.9))) + +(defun my/minuet-disable-tabnine () + (when minuet-auto-suggestion-mode + (tabnine-mode -1)) ) +(add-hook 'minuet-auto-suggestion-mode-hook #'my/minuet-disable-tabnine) + +(defun my/tabnine-disable-minuet () + (when tabnine-mode + (minuet-auto-suggestion-mode -1))) +(add-hook 'tabnine-mode-hook #'my/tabnine-disable-minuet) + (use-package tabnine-core :config (progn (with-demoted-errors "TabNine error: %s" diff --git a/user/settings/emacs.nix b/user/settings/emacs.nix index 87ffb628..0ff321b7 100644 --- a/user/settings/emacs.nix +++ b/user/settings/emacs.nix @@ -134,6 +134,7 @@ in magit-todos markdown-mode marginalia + minuet nerd-icons nix-ts-mode orderless -- cgit 1.4.1