diff --git a/dev-settings.el b/dev-settings.el index cdbdd2a..9814a10 100644 --- a/dev-settings.el +++ b/dev-settings.el @@ -71,6 +71,44 @@ ;; Arch: sudo pacman -S clang ;; Windows: Download from LLVM releases +;;; Go Configuration + +(use-package go-ts-mode + :ensure nil ; Built-in to Emacs 29+ + :mode "\\.go\\'" + :hook (go-ts-mode . eglot-ensure) + :config + (setq go-ts-mode-indent-offset 4)) + +;; Install gopls for Go LSP support +;; Arch: sudo pacman -S go gopls +;; Debug adapter: go install github.com/go-delve/delve/cmd/dlv@latest + +(with-eval-after-load 'dap-mode + (require 'dap-dlv-go)) + +;;; Rust Configuration + +(use-package rust-ts-mode + :ensure nil ; Built-in to Emacs 29+ + :mode "\\.rs\\'" + :hook (rust-ts-mode . eglot-ensure) + :config + (setq rust-ts-mode-indent-offset 4)) + +;; Install rust-analyzer for Rust LSP support +;; Arch: sudo pacman -S rust rust-analyzer + +(with-eval-after-load 'eglot + (add-to-list 'eglot-server-programs + '(rust-ts-mode . ("rust-analyzer")))) + +(with-eval-after-load 'dap-mode + (require 'dap-gdb-lldb)) + +;; Note: Rust debugging uses the same gdb-lldb adapter as C/C++ +;; configured in the DAP Mode section above + ;;; Common Lisp Configuration (use-package slime