Plugins indispensáveis para o VIM

Neto Guimarães
4 min readFeb 21, 2017

--

Há um tempo atrás escrevi sobre o VIM e algumas dicas para começar a explorar esse editor de texto e o artigo teve uma boa repercussão. Agora, após quase 6 meses usando o VIM, decidi compartilhar os plugins que acho mais úteis. Sem mais delongas, seguem as dicas.

ctrl + p

O ctrl + p é uma mão na roda em qualquer situação, principalmente quando se trabalha com uma arquitetura grande de pastas ou mesmo quando se tem muitos arquivos em um projeto. O ctrl + p é um plugin de busca, como o atalho ctrl + p do Atom dentre outros editores. Mas além do esperado, mas também possui algumas funcionalidades a mais. Por padrão, o plugin possui 2 modos de busca. O primeiro utiliza lógica fuzzy e permite por exemplo que você consiga achar o arquivo no path /src/components/shared/table.js com o padrão sha/tab ou co/s/tab e afins. E ele prioriza arquivos mais abertos e abertos recentemente. O segundo modo de busca é utilizando regex. Ou seja, poderíamos achar o arquivo anteriormente utilizado como exemplo usando qualquer regex que desse match com o mesmo.

O plugin também possui suporte para adicionar pastas na blacklist e ignorá-las. Ou seja, suas buscas podem, por exemplo, não incluir as pastas de libs ou a famigerada node_modules.

fugitive

Este cria um uma camada de abstração do git dentro do vim, permitindo executarmos comandos do git dentro do próprio vim. Mas os comandos que rodamos em cima dessa camada nos dá outputs diferentes dos que recebemos no terminal. Os outputs são adaptados ao ambiente do vim. Exemplos disso são os comandos :Gblame e :Gdiff, equivalentes à [git blame] e [git diff] respectivamente.

:Gdiff

Aqui por exemplo temos um diff chamado pelo fugitive dentro do vim. O que acontece na prática é ele abrir uma window com o buffer de origem e demarcar as alterações. O diferencial aqui não é o visual e sim o fato de que você pode alterar o arquivo atual em tempo real e ver as alterações sumindo ou aparecendo. Pode ser útil para evitar conflitos de arquivos ou para excluir diffs desnecessários em arquivos versionados.

nerdtree

Este é talvez o mais famoso plugin para o VIM, também um dos mais usados. Seu uso é bem simples. Quando ativado, ele cria uma windows lateral na interface do vim com toda a árvore de pastas, permitindo navegação entre pastas e possibilitando abrir os arquivos a partir dali. Facilita nossa vida quando não conhecemos bem a estrutura de pastas de um determinado projeto ou quando queremos consultar os nomes dos assets. Uma opção interessante é abrir o arquivo usando a tecla “S”, que dá split na window atual e abre o arquivo ao lado do arquivo que já estava aberto.

Delimitmate

Plugin muito simples, mas muito útil para preguiçosos. Simplesmente autocompleta caracteres de bloco de código, como aspas simples, duplas, chaves, parenteses e etc;

mxw/vim-jsx

Identar e dar highlight em arquivos JSX é um desafio para alguns editores e no vim não é diferente. Por padrão ES6 não é suportado pelo editor e JSX muito menos. Um peso nas costas de quem trabalha com frontend utilizando um stack “nova”, como react + ES6+ e afins. Dentre os muitos plugins para highlight de JSX, esse foi o único que funcionou comigo, então fica registrado aqui. Highlight de todas as outras linguagens e filetypes são bem mais simples e qualquer plugin de syntax consegue fazer bem o serviço, até mesmo a syntax padrão do VIM cobre a maioria dos casos.

vim-wakatime

Wakatime é um serviço que oferece análise de produtividade para programadores. Possui uma dashboard com dados sobre quanto tempo de programação foi gasto nos últimos 7 dias, gráfico sobre as linguagens utilizadas e possui a opção de compartilhar tais informações com outros usuários. Dá pra definir objetivos e ver quais projetos você trabalhou ou não. Seja para uso pessoal ou empresarial, o wakatime é uma mão na roda.

Concluindo

A variedade de plugins pro VIM é imensa, engana-se quem pensa que não existem plugins bons e atualizados pelo fato do editor ter surgido há muito tempo atrás. Para mais plugins interessantes, VimAwesome é uma fonte muito interessante. Até mais, folks.

--

--

Neto Guimarães

Entusiasta de programação, noSurf, minimalismo, a vida e seus tentáculos. http://blog.netoguimaraes.com.br/