fun2src
Neovim: nvim-lsp + elixir
Hi all,
Anyone using nvim-lsp + Neovim 0.5.0?
How did you configure it for Elixir?
https://neovim.io/doc/user/lsp.html
The following LSP configs are included:
als
bashls
…
rust-analyzer …
Elixir??
https://github.com/neovim/nvim-lsp → Configurations
Issue(closed): Elixir Language Server · Issue #58 · neovim/nvim-lspconfig · GitHub
Marked As Solved
mortepau
Hey!
I just wanted to mention that nvim-lsp just merged an elixir-ls configuration into master.
So if anybody come here wondering about how to do that, it should be available now. ![]()
Also Liked
tomkonidas
Yes, I use native LSP with elixir-ls
I have this in my lspconfig for elixir.
-- Elixir
require'lspconfig'.elixirls.setup{
cmd = { vim.loop.os_homedir().."/path/to/elixir-ls/language_server.sh" };
}
I also have these setup:
" LSP
nnoremap <silent> gd <cmd>lua vim.lsp.buf.definition()<CR>
nnoremap <silent> gD <cmd>lua vim.lsp.buf.declaration()<CR>
nnoremap <silent> gr <cmd>lua vim.lsp.buf.references()<CR>
nnoremap <silent> gi <cmd>lua vim.lsp.buf.implementation()<CR>
nnoremap <silent> K <cmd>lua vim.lsp.buf.hover()<CR>
nnoremap <silent> <C-k> <cmd>lua vim.lsp.buf.signature_help()<CR>
nnoremap <silent> [g <cmd>lua vim.lsp.diagnostic.goto_prev()<CR>
nnoremap <silent> ]g <cmd>lua vim.lsp.diagnostic.goto_next()<CR>
command! -nargs=0 Format :lua vim.lsp.buf.formatting()
I am using completion-nvim for my popup menu but have also been playing around with compe
" Use <Tab> and <S-Tab> to navigate through popup menu
inoremap <expr> <Tab> pumvisible() ? "\<C-n>" : "\<Tab>"
inoremap <expr> <S-Tab> pumvisible() ? "\<C-p>" : "\<S-Tab>"
" Manually trigger completion
imap <silent> <C-Space> <Plug>(completion_trigger)
" Set completeopt to have a better completion experience
set completeopt=menuone,noinsert,noselect
" Avoid showing message extra message when using completion
set shortmess+=c
let g:completion_matching_strategy_list = ['exact', 'substring', 'fuzzy']
adw632
I love the LazyVim setup vs anything else I’ve used and the keymaps are documented and easy to discover with which-key provided out of the box.
I use the nightly build of nvim because it’s proven to be more stable in practice, where with O/S provided nvim package and even stable I would still get nvim crashes.
I didn’t like the LazyVim default use of the ‘s’ keymap for search as I have too many decades of using s to delete the character under the cursor and enter insert mode.
But its is trivial to configure due to clean approach and documentation.
Popular in Questions
Other popular topics
Categories:
Sub Categories:
Forums
Popular Tags
- #ecto
- #liveview
- #troubleshooting
- #learning-elixir
- #deployment
- #library
- #erlang
- #testing
- #genserver
- #mix
- #absinthe
- #remote-other
- #otp
- #plug
- #how-to-question
- #macros
- #postgres
- #channels
- #elixirconf
- #exunit
- #discussion
- #code-sync
- #javascript
- #podcasts
- #onsite
- #dialyzer
- #docker
- #authentication
- #umbrella
- #full-time-contract
- #podcasts-by-brainlid
- #ecto-query
- #elixir-ls
- #phoenix_html
- #iex
- #blog-post
- #graphql
- #genstage
- #ai
- #websockets
- #supervisor
- #elixirconf-us
- #advent-of-code
- #distillery
- #processes
- #forms
- #api
- #metaprogramming
- #security
- #hex









