From 6b1d507283b918f896e9e792bcff10831ea84f0a Mon Sep 17 00:00:00 2001 From: Joshua Potter Date: Mon, 20 Nov 2023 09:32:20 -0700 Subject: [PATCH] Add elixir language server. --- jrpotter/neovim/default.nix | 2 ++ jrpotter/neovim/lang/elixir.nix | 18 ++++++++++++++++++ 2 files changed, 20 insertions(+) create mode 100644 jrpotter/neovim/lang/elixir.nix diff --git a/jrpotter/neovim/default.nix b/jrpotter/neovim/default.nix index f11eea6..9d7b167 100644 --- a/jrpotter/neovim/default.nix +++ b/jrpotter/neovim/default.nix @@ -32,6 +32,7 @@ let plugin = (pkgs.vimPlugins.nvim-treesitter.withPlugins ( ps: with ps; [ bash + elixir lua nix python @@ -68,6 +69,7 @@ in imports = [ ./lang/bash.nix + ./lang/elixir.nix ./lang/lean.nix ./lang/lua.nix ./lang/nix.nix diff --git a/jrpotter/neovim/lang/elixir.nix b/jrpotter/neovim/lang/elixir.nix new file mode 100644 index 0000000..923113f --- /dev/null +++ b/jrpotter/neovim/lang/elixir.nix @@ -0,0 +1,18 @@ +{ pkgs, ... }: +{ + programs.neovim = { + nvim-lspconfig = '' + require('init.lsp').setup(require('lspconfig').elixirls) { + -- Keep command relative. Compatibility of `elixir-ls` depends tightly + -- on -- the version of elixir being used so this allows local (i.e. + -- within nix shells) versions of `elixir-ls` to override the version + -- specified -- in `extraPackages`. + cmd = { 'elixir-ls' }, + } + ''; + + extraPackages = with pkgs; [ + elixir-ls + ]; + }; +}