(use-package eglot :ensure t) ;; Dart (setq dart-server-format-on-save t) (add-hook 'dart-mode-hook 'lsp) (setq gc-cons-threshold (* 100 1024 1024) read-process-output-max (* 1024 1024)) ;; Go (use-package go-mode :ensure t :init (progn (bind-key [remap find-tag] #'godef-jump)) :config (add-hook 'go-mode-hook #'yas-minor-mode) (add-hook 'go-mode-hook 'electric-pair-mode) (add-hook 'go-mode-hook 'my-go-mode-hook) (add-hook 'before-save-hook 'gofmt-before-save)) (use-package go-eldoc :ensure t :init (add-hook 'go-mode-hook 'go-eldoc-setup)) ;; Define function to call when go-mode loads (defun my-go-mode-hook () (set 'compile-command "go build -v && go test -v && go vet")) ;; Latex (add-hook 'latex-mode-hook 'flyspell-mode) (setq TeX-PDF-mode t) (defun pdfevince () (add-to-list 'TeX-output-view-style '("^pdf$" "." "evince %o %(outpage)"))) (add-hook 'LaTeX-mode-hook 'pdfevince t) ; AUCTeX LaTeX mode ;; Markdown (use-package markdown-mode :ensure t :config (setq auto-mode-alist (cons '("\\.mdwn" . markdown-mode) auto-mode-alist))) ;; Python (use-package blacken :ensure t :defer t) (add-hook 'python-mode-hook 'py-autopep8-enable-on-save) ;; Terraform (use-package terraform-mode :ensure t :defer t) ;; YAML (use-package yaml-mode :ensure t :defer t) ;; Rust (use-package rust-mode :defer t :init (setq rust-mode-treesitter-derive t) :config (add-hook 'rust-mode-hook 'eglot-ensure) ) (provide 'rul-prog)