From c64186fad84da24f793af87de2957e81dd2e054d Mon Sep 17 00:00:00 2001 From: marc Date: Sun, 22 Mar 2026 18:54:56 +0100 Subject: [PATCH] New emacs config and claude --- config/doom/config.el | 4 ++++ config/doom/init.el | 14 ++++++++++---- hosts/reykjavik/default.nix | 2 ++ modules/dev/claude.nix | 15 +++++++++++++++ modules/editors/emacs.nix | 5 +++++ 5 files changed, 36 insertions(+), 4 deletions(-) create mode 100644 modules/dev/claude.nix diff --git a/config/doom/config.el b/config/doom/config.el index 1b9041c..8c2355f 100644 --- a/config/doom/config.el +++ b/config/doom/config.el @@ -119,6 +119,10 @@ (setq pipenv-with-projectile t) (setenv "PIPENV_MAX_DEPTH" "10")) +;; (with-eval-after-load 'eglot +;; (add-to-list 'eglot-server-programs +;; '(python-mode . ("ty" "server")))) + ;; ----------------------------------------------------------------------------- ;; Web (HTML + CSS) ;; ----------------------------------------------------------------------------- diff --git a/config/doom/init.el b/config/doom/init.el index 21ce8a5..1c5dca6 100644 --- a/config/doom/init.el +++ b/config/doom/init.el @@ -136,7 +136,9 @@ ;;idris ; a language you can depend on json ; At least it ain't XML ;;(java +meghanada) ; the poster child for carpal tunnel syndrome - ;;javascript ; all(hope(abandon(ye(who(enter(here)))))) + (javascript ; all(hope(abandon(ye(who(enter(here)))))) + +lsp + +tree-sitter) ;;julia ; a better, faster MATLAB ;;kotlin ; a better, slicker Java(Script) latex ; writing papers in Emacs has never been so fun @@ -154,8 +156,9 @@ php ; perl's insecure younger brother ;;plantuml ; diagrams for confusing people more ;;purescript ; javascript, but functional - (python - +lsp) ; beautiful is better than ugly + (python ; beautiful is better than ugly + +lsp + +tree-sitter) ;;qt ; the 'cutest' gui framework ever ;;racket ; a DSL for DSLs ;;raku ; the artist formerly known as perl6 @@ -171,7 +174,10 @@ ;;solidity ; do you need a blockchain? No. ;;swift ; who asked for emoji variables? ;;terra ; Earth and Moon in alignment for performance. - ;;web ; the tubes + (web ; the tubes + +html + +css + +lsp) yaml ; JSON, but readable :email diff --git a/hosts/reykjavik/default.nix b/hosts/reykjavik/default.nix index c1a1778..10b6d1a 100644 --- a/hosts/reykjavik/default.nix +++ b/hosts/reykjavik/default.nix @@ -110,5 +110,7 @@ in # - Extra / Temporary -------------------------- programs.dconf.enable = true; # Inkscape crashes + environment.systemPackages = with pkgs; [ + ]; fonts.packages = []; } diff --git a/modules/dev/claude.nix b/modules/dev/claude.nix new file mode 100644 index 0000000..ceb260f --- /dev/null +++ b/modules/dev/claude.nix @@ -0,0 +1,15 @@ +{ config, lib, pkgs, ... }: + +let + cfg = config.samfelag.modules.dev.claude; +in +{ + options.samfelag.modules.dev.claude = with lib.types; { + enable = lib.mkEnableOption "claude"; + }; + config = lib.mkIf cfg.enable { + environment.systemPackages = with pkgs; [ + claude + ]; + }; +} diff --git a/modules/editors/emacs.nix b/modules/editors/emacs.nix index 62aacc5..234f26b 100644 --- a/modules/editors/emacs.nix +++ b/modules/editors/emacs.nix @@ -7,6 +7,11 @@ let hyprCfg = config.samfelag.modules.desktop.wm.hyprland; emacsPackages = epkgs: [ epkgs.vterm + (epkgs.treesit-grammars.with-grammars (grammars: [ + grammars.tree-sitter-typescript + grammars.tree-sitter-tsx + grammars.tree-sitter-python + ])) ]; emacsWithPackages = with pkgs; ((emacsPackagesFor emacs-unstable).emacsWithPackages emacsPackages); in {