# HG changeset patch # User Meredith Howard # Date 1687806636 18000 # Node ID 199d907c2f671bedb9107050c337b8d826c2ddd2 # Parent 8f8a93daa98c5f7c09b1df13916a26bf9f254421 Add elixir-tools.nvim diff --git a/.config/nvim/lua/plugins/filetype.lua b/.config/nvim/lua/plugins/filetype.lua --- a/.config/nvim/lua/plugins/filetype.lua +++ b/.config/nvim/lua/plugins/filetype.lua @@ -39,4 +39,35 @@ return { "asciidoc/vim-asciidoc", { "vim-perl/vim-perl", branch = "dev" }, "yko/mojo.vim", + + -- Because of Elixir/OTP mismatches, this is more reliable than Mason for + -- elixir-ls + { + "elixir-tools/elixir-tools.nvim", + version = "*", + event = { "BufReadPre", "BufNewFile" }, + config = function() + local elixir = require("elixir") + local elixirls = require("elixir.elixirls") + + elixir.setup({ + credo = {}, + elixirls = { + enable = true, + settings = elixirls.settings({ + dialyzerEnabled = false, + enableTestLenses = false, + }), + on_attach = function(client, bufnr) + vim.keymap.set("n", "fp", ":ElixirFromPipe", { buffer = true }) + vim.keymap.set("n", "tp", ":ElixirToPipe", { buffer = true }) + vim.keymap.set("v", "em", ":ElixirExpandMacro", { buffer = true }) + end, + }, + }) + end, + dependencies = { + "nvim-lua/plenary.nvim", + }, + }, }