Como Instalar Lua LSP no Neovim

Série de como configurar o LSP para sua linguagem de Programação no Neovim


Como Instalar Lua LSP no Neovim


Hoje vamos iniciar uma série de como instalar Language Server Protocol(LSP) para diversas linguagens de programação no Neovim .

Esse artigo pressupõe que você já sabe:

  • O que é um LSP, caso não saiba veja aqui e aqui.
  • Já sabe configurar seu Neovim, caso não saiba veja aqui e/ou aqui .
  • Já possui conhecimentos básicos em Lua, caso não tenha veja aqui .

Nesse primeiro artigo da série vamos configurar o LSP para Lua .

Lua utiliza o LSP que fica no repositório https://github.com/sumneko/lua-language-server, o mesmo usado no VS Code .

E como “cobaia” vamos utilizar o Ubuntu 22.04 , se estiver em uma versão diferente ou sistema operacional diferente ou até mesmo em outra distribuição, basta usar o search do seu gerenciador de pacotes .


Dependências

Antes de mais nada, certifique-se que possui os seguintes pacotes/softwares instalados no seu sistema:

Exemplo:

sudo apt install gcc g++ clang ninja-build

Instalação do LSP

1º - Prepare um diretório onde ficará armazenado o LSP

Nesse caso vou armazenar em ${HOME}/.config/lsp, mude o caminho caso lhe interesse mais

Crie o diretório e entre no mesmo

mkdir -p ~/.config/lsp
cd ~/.config/lsp

2º - Agora clone e compile o binário lua-language-server

Com os seguintes comandos na ordem:

git clone --depth=1 https://hub.fastgit.xyz/sumneko/lua-language-server
cd lua-language-server
git submodule update --init --recursive
cd 3rd/luamake
compile/install.sh
cd ../..
./3rd/luamake/luamake rebuild

3º - Adicionar o binário à sua $PATH

O Neovim já tem diversos LSP embutidos, o que falta é ele encontrar na sua $PATH o caminho do binário .

Para isso rode os comandos abaixo:

Se você usou um caminho diferente de ~/.config/lsp , altere conforme seu caso.

echo 'export PATH="${HOME}/.config/lsp/lua-language-server/bin:${PATH}"' >> ~/.bashrc
source ~/.bashrc
exec $SHELL

Configurando o Neovim

Adicione o suporte ao LSP para Lua conforme o estilo de configuração que você escolheu. Nesse caso, como exemplo, vamos usar o init.lua .

vim ~/.config/nvim/init.lua

E adicione o código abaixo

require'lspconfig'.sumneko_lua.setup {}

Se estiver tudo certo, você terá: detalhes de funções, informações de erros e warnings, autocomplete de acordo com tabelas e entre outros. Exemplos:

print LSP Lua Autocomplete table LSP Lua warnings and erros LSP Lua


Links úteis


lua neovim


Compartilhe


Nosso canal no Youtube

Inscreva-se


Marcos Oliveira

Marcos Oliveira

Desenvolvedor de software
https://github.com/terroo


Crie Aplicativos Gráficos para Linux e Windows com C++

Aprenda C++ Moderno e crie Games, Programas CLI, GUI e TUI de forma fácil.

Saiba Mais

Receba as novidades no seu e-mail!

Após cadastro e confirmação do e-mail, enviaremos semanalmente resumos e também sempre que houver novidades por aqui para que você mantenha-se atualizado!