From 221e75e7391a4c613d089a5ac7d98f0011bc03d0 Mon Sep 17 00:00:00 2001 From: Henrik Lissner Date: Wed, 22 Mar 2023 17:03:12 -0400 Subject: [PATCH] refactor!(elixir): remove alchemist BREAKING CHANGE: alchemist appears to be unmaintained and has reportedly been replaced by elixir-ls and LSP (#5488). To restore your Elixir dev environemnt, enable :lang (elixir +lsp) and install elixir-ls via your package manager or 'M-x lsp-install-server'. Close: #5488 --- modules/lang/elixir/README.org | 4 +--- modules/lang/elixir/config.el | 33 --------------------------------- modules/lang/elixir/packages.el | 1 - 3 files changed, 1 insertion(+), 37 deletions(-) diff --git a/modules/lang/elixir/README.org b/modules/lang/elixir/README.org index 4c17f3341..d4850645b 100644 --- a/modules/lang/elixir/README.org +++ b/modules/lang/elixir/README.org @@ -4,8 +4,7 @@ #+since: 2.0.3 (#83) * Description :unfold: -This module provides support for [[https://elixir-lang.org/][Elixir programming language]] via [[doom-package:alchemist]] or -[[https://github.com/elixir-lsp/elixir-ls/][elixir-ls]]. +This module provides support for [[https://elixir-lang.org/][Elixir programming language]] via [[https://github.com/elixir-lsp/elixir-ls/][elixir-ls]]. ** Maintainers /This module has no dedicated maintainers./ [[doom-contrib-maintainer:][Become a maintainer?]] @@ -19,7 +18,6 @@ This module provides support for [[https://elixir-lang.org/][Elixir programming editing. Requires [[doom-module::tools tree-sitter]]. ** Packages -- [[doom-package:alchemist]] - [[doom-package:elixir-mode]] - [[doom-package:exunit]] - [[doom-package:flycheck-credo]] if [[doom-module::checkers syntax]] diff --git a/modules/lang/elixir/config.el b/modules/lang/elixir/config.el index 93f39e4d1..f1b68ddef 100644 --- a/modules/lang/elixir/config.el +++ b/modules/lang/elixir/config.el @@ -56,39 +56,6 @@ :config (flycheck-credo-setup)) -(use-package! alchemist - :hook (elixir-mode . alchemist-mode) - :config - (set-lookup-handlers! 'elixir-mode - :definition #'alchemist-goto-definition-at-point - :documentation #'alchemist-help-search-at-point) - (set-eval-handler! 'elixir-mode #'alchemist-eval-region) - (set-repl-handler! 'elixir-mode #'alchemist-iex-project-run) - (map! :after elixir-mode - :localleader - :map elixir-mode-map - "m" #'alchemist-mix - "c" #'alchemist-mix-compile - "i" #'alchemist-iex-project-run - "f" #'elixir-format - (:prefix ("e" . "eval") - "e" #'alchemist-iex-send-last-sexp - "r" #'alchemist-iex-send-region - "l" #'alchemist-iex-send-current-line - "R" #'alchemist-iex-reload-module))) - - -(use-package! alchemist-company - :when (modulep! :completion company) - :commands alchemist-company - :config - (set-company-backend! 'alchemist-mode '(alchemist-company company-yasnippet)) - ;; Alchemist doesn't use hook symbols to add these backends, so we have to use - ;; the entire closure to get rid of it. - (let ((fn (byte-compile (lambda () (add-to-list (make-local-variable 'company-backends) 'alchemist-company))))) - (remove-hook 'alchemist-mode-hook fn) - (remove-hook 'alchemist-iex-mode-hook fn))) - (use-package! exunit :hook (elixir-mode . exunit-mode) :init diff --git a/modules/lang/elixir/packages.el b/modules/lang/elixir/packages.el index 60b570f67..f4f6cb474 100644 --- a/modules/lang/elixir/packages.el +++ b/modules/lang/elixir/packages.el @@ -3,7 +3,6 @@ ;; +elixir.el (package! elixir-mode :pin "7641373f0563cab67cc5459c34534a8176b5e676") -(package! alchemist :pin "6f99367511ae209f8fe2c990779764bbb4ccb6ed") (package! exunit :pin "e0a8c2b81f3d53885ed753b911b3cb6ee9229bec") (when (modulep! :checkers syntax) (package! flycheck-credo :pin "e88f11ead53805c361ec7706e44c3dfee1daa19f"))