summary refs log tree commit diff stats
diff options
context:
space:
mode:
-rw-r--r--.envrc1
-rw-r--r--npins/sources.json6
-rw-r--r--user/emacs/init.el48
-rw-r--r--user/settings/accounting.nix6
-rw-r--r--user/settings/development/base.nix11
-rw-r--r--user/settings/development/clojure.nix4
-rw-r--r--user/settings/development/golang.nix6
-rw-r--r--user/settings/development/javascript.nix12
-rw-r--r--user/settings/development/lisp.nix6
-rw-r--r--user/settings/development/rust.nix5
-rw-r--r--user/settings/development/web.nix4
-rw-r--r--user/settings/emacs.nix17
-rw-r--r--user/settings/shell.nix1
13 files changed, 106 insertions, 21 deletions
diff --git a/.envrc b/.envrc
index a4c05ce1..8b202a81 100644
--- a/.envrc
+++ b/.envrc
@@ -1,2 +1,3 @@
 use nix
 PATH_add bin
+watch_file npins/sources.json
diff --git a/npins/sources.json b/npins/sources.json
index 5a5aa9a3..d0dc5923 100644
--- a/npins/sources.json
+++ b/npins/sources.json
@@ -114,10 +114,10 @@
       "pre_releases": false,
       "version_upper_bound": null,
       "release_prefix": null,
-      "version": "v0.1.27",
-      "revision": "30d58a8304b490cf926e408965fd305cb06f091a",
+      "version": "v0.1.28",
+      "revision": "7bb77ff5729cc9434afee895a470fd3b4c12e6d1",
       "url": null,
-      "hash": "0h2vibsj1x4nykryf0yrvhsjfxbf84ynqcnxz79a25p7p14vxb4v"
+      "hash": "1cv8bmrrv9lgl13rcwcgc73jaipnzgl8ba87q1fw65x8kln2apdl"
     },
     "srvos": {
       "type": "Git",
diff --git a/user/emacs/init.el b/user/emacs/init.el
index 785a9f53..5d5c1cb3 100644
--- a/user/emacs/init.el
+++ b/user/emacs/init.el
@@ -170,6 +170,12 @@
                               (side . bottom) (slot . 0) (preserve-size . (nil . t))
                               (no-other-window . t) (no-delete-other-windows . t))))
 
+(use-package buffer-terminator
+  :defer 60
+  :config (progn
+            (buffer-terminator-mode +1)
+            (setq buffer-terminator-verbose nil)))
+
 (defun noct-relative ()
   "Show relative line numbers."
   (when display-line-numbers
@@ -257,7 +263,7 @@ The DWIM behaviour of this command is as follows:
         mac-command-modifier 'super
         mac-right-command-modifier 'left
         mac-function-modifier 'hyper)
-  (define-key global-map (kbd "s-w") #'kill-this-buffer))
+  (define-key global-map (kbd "s-w") #'kill-current-buffer))
 
 (use-package avy
   :defer 2
@@ -648,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-<tab>" #'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"
@@ -782,6 +811,7 @@ _C-k_: prev  _u_pper              _=_: upper/lower       _s_mart resolve
           (with-eval-after-load 'evil-ex
             (evil-ex-define-cmd "esh[ell]" #'eshell)))
   :config (progn
+            (eshell-load-modules eshell-modules-list)
             (setq eshell-prompt-function (lambda ()
                                            (concat (eshell/pwd) "\n$ "))
                   eshell-prompt-regexp "^[$][[:blank:]]"
@@ -829,18 +859,15 @@ _C-k_: prev  _u_pper              _=_: upper/lower       _s_mart resolve
   :general (:keymaps 'comint-mode-map
                      "C-c C-l" #'counsel-shell-history))
 
-(use-package chatgpt-shell
-  :defer 5
-  :config (progn
-            (chatgpt-shell-ollama-load-models :override t)
-            (setq chatgpt-shell-model-version "llama3.3")))
-
 ;;; Editing
 
 (setq-default tab-always-indent 'complete
               indent-tabs-mode nil
               tab-width 4)
 
+(if (fboundp 'kill-ring-deindent-mode)
+    (kill-ring-deindent-mode +1))
+
 (electric-pair-mode +1)
 
 (use-package ws-butler
@@ -1120,11 +1147,12 @@ paths for the same project."
             (require 'magit-extras)))
 
 (use-package magit-todos
-  :after magit
+  :defer 10
   :config (progn
             (magit-todos-mode +1)))
 
-(use-package difftastic)
+(use-package difftastic
+  :defer 5)
 (use-package difftastic-bindings
   :after magit
   :config (progn
@@ -1370,7 +1398,7 @@ paths for the same project."
   ";" #'execute-extended-command
   "a" #'my/ls-code-actions
   "bb" #'consult-buffer
-  "bx" #'kill-this-buffer
+  "bx" #'kill-current-buffer
   "br" #'revert-buffer
   "bk" #'kill-buffer
   "dd" #'dired
diff --git a/user/settings/accounting.nix b/user/settings/accounting.nix
index 664ca083..d87afd43 100644
--- a/user/settings/accounting.nix
+++ b/user/settings/accounting.nix
@@ -9,4 +9,10 @@
     beancount
     reckon
   ];
+  programs.emacs.extraPackages = epkgs: (with epkgs; [
+    (treesit-grammars.with-grammars (grammars: with grammars; [
+      tree-sitter-beancount
+      tree-sitter-ledger
+    ]))
+  ]);
 }
diff --git a/user/settings/development/base.nix b/user/settings/development/base.nix
index 0dce4fe0..83ec0334 100644
--- a/user/settings/development/base.nix
+++ b/user/settings/development/base.nix
@@ -46,6 +46,17 @@
     LIMA_INSTANCE = "nixos";
   };
 
+  programs.emacs.extraPackages = epkgs: (with epkgs; [
+    (treesit-grammars.with-grammars (grammars: with grammars; [
+      tree-sitter-bash
+      tree-sitter-fish
+      tree-sitter-just
+      tree-sitter-make
+      tree-sitter-dockerfile
+      tree-sitter-sql
+    ]))
+  ]);
+
   editorconfig = {
     enable = true;
     settings = {
diff --git a/user/settings/development/clojure.nix b/user/settings/development/clojure.nix
index c85bf869..ad6f19ba 100644
--- a/user/settings/development/clojure.nix
+++ b/user/settings/development/clojure.nix
@@ -8,5 +8,9 @@
   ];
   programs.emacs.extraPackages = epkgs: (with epkgs; [
     cider
+    clojure-mode
+    (treesit-grammars.with-grammars (grammars: with grammars; [
+      tree-sitter-clojure
+    ]))
   ]);
 }
diff --git a/user/settings/development/golang.nix b/user/settings/development/golang.nix
index 220fd776..ef6cf412 100644
--- a/user/settings/development/golang.nix
+++ b/user/settings/development/golang.nix
@@ -30,6 +30,12 @@
     go-eldoc
     go-tag
     templ-ts-mode
+    (treesit-grammars.with-grammars (grammars: with grammars; [
+      tree-sitter-go
+      tree-sitter-gowork
+      tree-sitter-gomod
+      tree-sitter-templ
+    ]))
   ]);
   programs.neovim.plugins = with pkgs.vimPlugins; [
     coc-go
diff --git a/user/settings/development/javascript.nix b/user/settings/development/javascript.nix
index 81d8c631..61ddfde4 100644
--- a/user/settings/development/javascript.nix
+++ b/user/settings/development/javascript.nix
@@ -22,6 +22,18 @@
     };
   };
 
+  programs.emacs.extraPackages = epkgs: (with epkgs; [
+    astro-ts-mode
+    svelte-mode
+    (treesit-grammars.with-grammars (grammars: with grammars; [
+      tree-sitter-jsdoc
+      tree-sitter-svelte
+      tree-sitter-tsx
+      tree-sitter-typescript
+      tree-sitter-javascript
+    ]))
+  ]);
+
   home.shellAliases = {
     bn = "bun";
     bni = "bun install";
diff --git a/user/settings/development/lisp.nix b/user/settings/development/lisp.nix
index ddf0803a..e7652b46 100644
--- a/user/settings/development/lisp.nix
+++ b/user/settings/development/lisp.nix
@@ -11,6 +11,12 @@
     ccl
   ];
 
+  programs.emacs.extraPackages = epkgs: (with epkgs; [
+    (treesit-grammars.with-grammars (grammars: with grammars; [
+      tree-sitter-commonlisp
+    ]))
+  ]);
+
   programs.git.attributes = [
     "*.lisp diff=common-lisp"
   ];
diff --git a/user/settings/development/rust.nix b/user/settings/development/rust.nix
index c1b1a9df..cb7f7dfc 100644
--- a/user/settings/development/rust.nix
+++ b/user/settings/development/rust.nix
@@ -10,4 +10,9 @@
     rust-analyzer
     clippy
   ];
+  programs.emacs.extraPackages = epkgs: (with epkgs; [
+    (treesit-grammars.with-grammars (grammars: with grammars; [
+      tree-sitter-rust
+    ]))
+  ]);
 }
diff --git a/user/settings/development/web.nix b/user/settings/development/web.nix
index 13b0ea5c..0212d9fd 100644
--- a/user/settings/development/web.nix
+++ b/user/settings/development/web.nix
@@ -97,6 +97,10 @@
     emmet-mode
     nginx-mode
     web-mode
+    (treesit-grammars.with-grammars (grammars: with grammars; [
+      tree-sitter-css
+      tree-sitter-html
+    ]))
   ]);
   programs.neovim.plugins = with pkgs.vimPlugins; [
     coc-css
diff --git a/user/settings/emacs.nix b/user/settings/emacs.nix
index aeb5c454..0ff321b7 100644
--- a/user/settings/emacs.nix
+++ b/user/settings/emacs.nix
@@ -68,13 +68,11 @@ in
       [
         ace-link
         apheleia
-        astro-ts-mode
         avy
         benchmark-init
+        buffer-terminator
         cape
-        clojure-mode
         cask-mode
-        chatgpt-shell
         corfu
         consult
         consult-dir
@@ -128,7 +126,6 @@ in
         helpful
         jinx
         just-ts-mode
-        justl
         kind-icon
         lua-mode
         lsp-mode
@@ -137,18 +134,17 @@ in
         magit-todos
         markdown-mode
         marginalia
+        minuet
         nerd-icons
         nix-ts-mode
         orderless
         doom-modeline
-        php-mode
         persist-state
         posframe
         quickrun
         rainbow-mode
         rainbow-delimiters
         ssh-deploy
-        svelte-mode
         stimmung-themes
         systemd
         tempel
@@ -158,8 +154,15 @@ in
         treemacs-evil
         treemacs-magit
         treemacs-nerd-icons
-        treesit-grammars.with-all-grammars
         treesit-auto
+        (treesit-grammars.with-grammars (grammars: with grammars; [
+          tree-sitter-nix
+          tree-sitter-markdown
+          tree-sitter-json
+          tree-sitter-json5
+          tree-sitter-toml
+          tree-sitter-yaml
+        ]))
         try
         ultra-scroll
         vc-msg
diff --git a/user/settings/shell.nix b/user/settings/shell.nix
index a8a525a6..33130556 100644
--- a/user/settings/shell.nix
+++ b/user/settings/shell.nix
@@ -148,6 +148,5 @@ in
   };
   home.packages = with pkgs; [
     fzf
-    up
   ];
 }