pkgs.vimPlugins.gitlinker-nvim
pkgs.vimPlugins.gitsigns-nvim
pkgs.vimPlugins.haskell-tools-nvim
+ pkgs.vimPlugins.elixir-tools-nvim
pkgs.vimPlugins.hunk-nvim
pkgs.vimPlugins.image-nvim
(pkgs.vimUtils.buildVimPlugin {
pkgs.lua-language-server
pkgs.nixd
pkgs.nil
+ pkgs.next-ls
#pkgs.rust-analyzer
];
snacks = [
--- /dev/null
+-- Neovim plugin for Elixir
+-- https://github.com/elixir-tools/elixir-tools.nvim
+return {
+ "elixir-tools.nvim",
+ events = { "BufReadPre", "BufNewFile" },
+ after = function()
+ local elixir = require("elixir")
+ local elixirls = require("elixir.elixirls")
+
+ elixir.setup({
+ nextls = { enable = true },
+ elixirls = {
+ enable = true,
+ settings = elixirls.settings({
+ dialyzerEnabled = false,
+ enableTestLenses = false,
+ }),
+ on_attach = function(client, bufnr)
+ vim.keymap.set("n", "<space>fp", ":ElixirFromPipe<cr>", { buffer = true, noremap = true })
+ vim.keymap.set("n", "<space>tp", ":ElixirToPipe<cr>", { buffer = true, noremap = true })
+ vim.keymap.set("v", "<space>em", ":ElixirExpandMacro<cr>", { buffer = true, noremap = true })
+ end,
+ },
+ projectionist = {
+ enable = true,
+ },
+ })
+ end,
+}