 
 (use-package magit-delta :straight t :defer t)
 
+(use-package elm-mode :straight t :defer t)
+
 (require 'subr-x)
 (use-package git :straight t)
 
 (straight-use-package '(org-plus-contrib :includes (org)))
-
-;; (defun org-git-version ()
-;;   "The Git version of org-mode.
-;; Inserted by installing org-mode or when a release is made."
-;;   (require 'git)
-;;   (let ((git-repo (expand-file-name
-;;                    "straight/repos/org/" user-emacs-directory)))
-;;     (string-trim
-;;      (git-run "describe"
-;;               "--match=release\*"
-;;               "--abbrev=6"
-;;               "HEAD"))))
-;;
-;; (defun org-release ()
-;;   "The release version of org-mode.
-;; Inserted by installing org-mode or when a release is made."
-;;   (require 'git)
-;;   (let ((git-repo (expand-file-name
-;;                    "straight/repos/org/" user-emacs-directory)))
-;;     (string-trim
-;;      (string-remove-prefix
-;;       "release_"
-;;       (git-run "describe"
-;;                "--match=release\*"
-;;                "--abbrev=0"
-;;                "HEAD")))))
 
 (use-package plantuml-mode :straight t
   :config

(add-to-list 'package-archives
             '("melpa" . "https://melpa.org/packages/"))

;; Automatically :ensure each use-package.
;; (setq use-package-always-pin "melpa")
(use-package poet-theme :straight t)
(use-package ayu-theme :straight t)

;; (load-theme 'poet t)
;; (load-theme 'ayu-light t)
(load-theme 'leuven t)

;; (straight-use-package 'deadgrep)
(use-package deadgrep :straight t :bind (("C-c C-s"  . deadgrep)))

(use-package lsp-metals :straight t)
(use-package lsp-java :straight t)

(use-package nvm :straight t)

(use-package lsp-ui :straight t :commands lsp-ui-mode)
(use-package lsp-ivy :straight t :commands lsp-ivy-workspace-symbol)

(use-package dap-mode :straight t)

(use-package lsp-mode
  :straight t
  ;; :config
  ;; (lsp-register-custom-settings
  ;;'(;; ("gopls.completeUnimported" t t)
     ;; ("gopls.experimentalDiagnosticsDelay" "250ms" t)
     ;; ("gopls.experimentalPackageCacheKey" t t)
     ;;("gopls.experimentalWorkspaceModule" t t)))
  :init
  (setq lsp-rust-server 'rust-analyzer
        read-process-output-max (* 1024 1024)
