Neovim é um editor de texto baseado no Vim, refatorado para facilitar a extensibilidade, com uma API Lua e RPC que permite a plugins e interfaces externas controlar o editor.
neovim/nvim-lspconfig
Coleção de configurações prontas do Language Server Protocol para conectar o Neovim a diversos servidores de linguagem.
- Estrelas
- 13,997
- Forks
- 2,503
- Issues abertas
- 40
- Último commit
- anteontem
O que é?
nvim-lspconfig oferece arquivos de configuração específicos para cada servidor, usados pelo cliente LSP integrado ao Neovim. Cada configuração informa ao Neovim como iniciar um servidor de linguagem, a quais tipos de arquivo ele se aplica e como detectar a raiz do projeto, para que recursos como completamento de código, diagnósticos e navegação funcionem sem precisar configurar tudo manualmente.
Depois de instalar o binário do servidor por conta própria, os usuários o ativam com vim.lsp.enable(); o plugin não instala servidores. É possível adicionar configurações personalizadas às opções padrão com vim.lsp.config(), e o plugin inclui anotações de tipos em Lua para as configurações dos servidores, habilitando o completamento e os diagnósticos no arquivo de configuração.
O projeto está migrando do framework legado require('lspconfig'), que foi descontinuado, para a API nativa vim.lsp.config, introduzida no Nvim 0.11. As configurações em si continuam sendo a parte compatível e ficam no diretório lsp/.
Recursos principais
- 01Inclui configurações para diversos servidores de linguagem no diretório lsp/.
- 02Ative um servidor com uma única chamada a vim.lsp.enable().
- 03Personalize as opções padrão com vim.lsp.config() ou arquivos em after/lsp/.
- 04Oferece anotações de tipos em Lua para as configurações dos servidores.
- 05Inclui a detecção de marcadores de raiz para conectar os servidores ao projeto correto.
Casos de uso
- Configurar completamento de código e diagnósticos para Python, Rust ou Lua no Neovim.
- Padronizar a configuração de LSP entre os ambientes Neovim de uma equipe.
- Adicionar um servidor de linguagem que ainda não esteja incluído nas configurações disponíveis.
Início rápido
- 1
Instale um servidor de linguagem, como o pyright
npm i -g pyright - 2
Ative a configuração dele no init.lua
vim.lsp.enable('pyright') - 3
Abra um arquivo de código no Nvim para que o LSP se conecte
nvim main.py
Antes de usar
- Requer Nvim 0.11.3 ou posterior e não instala servidores de linguagem para você.
- O framework legado require('lspconfig') foi descontinuado em favor de vim.lsp.config.
Tópicos
Perguntas frequentes
- O que é nvim-lspconfig?
- Coleção de configurações prontas do Language Server Protocol para conectar o Neovim a diversos servidores de linguagem. nvim-lspconfig oferece arquivos de configuração específicos para cada servidor, usados pelo cliente LSP integrado ao Neovim. Cada configuração informa ao Neovim como iniciar um servidor de linguagem, a quais tipos de arquivo ele se aplica e como detectar a raiz do projeto, para que recursos como completamento de código, diagnósticos e navegação funcionem sem precisar configurar tudo manualmente.
- nvim-lspconfig é gratuito? Qual é a licença?
- nvim-lspconfig é open source sob a licença Apache-2.0. Confira os termos da licença antes de usá-lo em produtos comerciais.
- nvim-lspconfig ainda é mantido?
- Manutenção ativa. O último commit de nvim-lspconfig foi em 4 de nov. de 2026.
- Para que posso usar nvim-lspconfig?
- Configurar completamento de código e diagnósticos para Python, Rust ou Lua no Neovim. Padronizar a configuração de LSP entre os ambientes Neovim de uma equipe. Adicionar um servidor de linguagem que ainda não esteja incluído nas configurações disponíveis.
- Como instalar nvim-lspconfig?
- Instale um servidor de linguagem, como o pyright: npm i -g pyright Ative a configuração dele no init.lua: vim.lsp.enable('pyright') Abra um arquivo de código no Nvim para que o LSP se conecte: nvim main.py
- Onde consigo nvim-lspconfig?
- O código-fonte e as instruções de instalação estão no GitHub: https://github.com/neovim/nvim-lspconfig
Resumo gerado por IA a partir do README do projeto. As estatísticas do GitHub são atualizadas diariamente.
Projetos relacionados
Plugin para Vim e Neovim que analisa código de forma assíncrona enquanto você digita, executa ferramentas de correção como prettier e eslint e funciona como cliente LSP.
Plugin do Neovim para navegar pelo sistema de arquivos e por outras estruturas em árvore em layouts de barra lateral, janela flutuante ou no estilo netrw.
Verificador de tipos e servidor de linguagem para Python, rápido e escrito em Rust, com recursos de IDE como navegação, autocompletar e realce semântico.
Implementação oficial do Language Server Protocol para Elixir, que oferece inteligência de código para projetos Elixir nos editores.
Plugin leve e extensível de statusline e tabline para Vim, que exibe modo, status do Git, informações do arquivo e posição.