Meus 10 plugins favoritos para o Neovim em 2022
Tags: neovim, plugins, vim, lua
Published: 2022-05-13 17:56:41

> Uma breve lista dos melhores plugins pra usar agora e aumentar sua produtividade


Quando comecei a usar o Neovim, lá por 2017, depois de passar 6 anos usando Vim, não tinha sentido uma diferença tão grande porque primeiro a API lua era praticamente inexistente e minha configuração ainda era puramente vimscript e meus plugins também. 

Mas tudo mudou quando fiz o upgrade pras versões 0.4.x e gradualmente comecei a me aventurar no mundo do Lua, no final de 2019. De lá pra ca já consegui migrar minhas configurações 100% para Lua e 99% dos plugins que uso hoje também são feitos na linguagem. Aqui vai minha lista dos 10 melhores plugins que acho indispensáveis hoje:

## #10

{% embed https://github.com/wbthomason/packer.nvim %}

Começando por esse incrível gerenciador de plugins, que vai deixar sua vida bem mais fácil na hora de instalar, atualizar e configurar seus plugins, principalmente se você utiliza lua nas suas configurações. Tem suporte a instalação de pacotes do luarocks, _lazy loading_ e mais.

## #9

{% embed https://github.com/numToStr/Comment.nvim %}

Um poderoso plugin para inserir e remover comentários em códigos. Tem suporte ao treesitter, que vamos falar mais pra frente. 

## #8 

{% embed https://github.com/neovim/nvim-lspconfig %}

Plugin obrigatório para quem quer utilizar o maravilhoso cliente nativo LSP. Com esse plugin a configuração dos LSP servers das linguagens fica extremamente fácil.

## #7 

{% embed https://github.com/williamboman/nvim-lsp-installer %}

Plugin que fornece todo suporte para uma rápida instalação dos LSP servers com uma excelente UX. É um plugin que funciona em conjunto com o **nvim-lspconfig**

## #6 

{% embed https://github.com/jose-elias-alvarez/null-ls.nvim %}

Gere diagnósticos, formate, realize ações de código e mais, utilizando esse plugin que utiliza o neovim como um servidor LSP, e faz a ponte entre ferramentas que não fazem uma conexão direta com o cliente nativo LSP. Entre os exemplos podemos citar:
- Formatar código ao salvar o buffer com o prettier
- Gerar relatório de erros e warnings com golangci-lint para Go
- Formatar código Lua com stylua

e [mais](https://github.com/jose-elias-alvarez/null-ls.nvim/blob/main/doc/BUILTINS.md)! 

## #5 

{% embed https://github.com/nvim-treesitter/nvim-treesitter %}

Um plugin que faz interface com o excelente projeto [tree-sitter](https://github.com/tree-sitter/tree-sitter) e traz funcionalides como _syntax highlighting _, indentação, seleção incremental, movimentação, folding, entre outros. 

## #4 

{% embed https://github.com/L3MON4D3/LuaSnip %}

O melhor script para criação de snippets do Neovim. Simples assim. Tem uma curva de aprendizado um pouco alta, mas quando se pega o jeito, você não vai querer largar nunca. [Aqui](https://www.youtube.com/watch?v=Dn800rlPIho) um vídeo explicando mais sobre as funcionalidades dele (Em inglês)

## #3 

{% embed https://github.com/hrsh7th/nvim-cmp %}

Seguindo o melhor plugin para snippets, esse com certeza vai ser o melhor plugin para autocomplete que você irá ter no mercado até o momento. Seu design flexível permite incluir vários tipos diferentes de _sources_, desde sugestões de LSP, snippets, etc. A lista é [gigantesca](https://github.com/hrsh7th/nvim-cmp/wiki/List-of-sources) e você também conta com uma excelente documentação caso queira criar os seus próprios sources também.

## #2 

{% embed https://github.com/nvim-lualine/lualine.nvim %}

Minha escolha para plugin de statusline. Simples, rápido e bem flexível.

## #1 

{% embed https://github.com/nvim-telescope/telescope.nvim %}

Talvez o plugin mais essencial de todos hoje. Faça buscas por arquivo, texto e muito mais, numa velocidade absurda, com esse plugin fantástico.

## Conclusão

Com o ecossistema Lua se desenvolvendo cada dia mais, [muitos plugins estão surgindo todos os dias](https://github.com/topics/neovim-plugin?l=lua) e com certeza essa lista provavelmente precisará ser atualizada em um futuro próximo.

**Faltou algum plugin nessa lista? Me conta ae nos comentários!**