Aprendendo VIM

10 08 2010

Quando comecei a estudar Ruby on Rails, a primeira coisa que procurei foi uma IDE.

Anos trabalhando no Visual Studio tornaram inconcebível a idéia de desenvolver sistemas sem ter um ambiente integrado com debug, editor visual e de código, wizards, integração com controle de versão etc.

Antes trabalhar com .NET eu tinha longos anos trabalhando somente com editores de texto, tanto em PHP quanto em ASP e PL/SQL. Voltar a usar um simples editor me parecia um retrocesso. Procurando por uma experiência no mínimo semelhante ao VS, encontrei o RubyMine que foi o que me fez sentir mais “em casa”. Fiz muito dos meus aplicativos de estudo nele, e não tinha do que reclamar. O autocomplete estava lá, debug, integração com controle de versão, code highlight…

Mas os desenvolvedores ROR mais famosos não o usavam. Estavam todos divididos entre o TextMate e o (G/Mac)VIM. Li um pouco sobre o TextMate e os bundles não me empolgaram, não havia nada de novo ali para mim. O TextMate faz o que a maioria dos editores avançados faz (até onde minha pesquisa chegou, pelo menos), e a obrigatoriedade de usar o OSX matou qualquer possibilidade de usá-lo.

Já o VIM, era um velho conhecido. Sabe aquele cara que você encontra todo dia no trabalho e cumprimenta, mas não sabe nem o nome e nem em que trabalha? Esse era o VIM pra mim. Nos encontramos no Linux, no Solaris e no BSD mas sempre foram encontros rápidos. Nada além de abrir um arquivo, apertar “i”, editar algumas linhas, ESC, :wq! e adeus editor bizarro. Instalar o nano, quando possível era o que eu fazia, afinal era um editor normal que eu conseguia usar naturalmente. Porém, todo post que eu lia sobre o VIM falava maravilhas. O ganho de produtividade era imenso, as tarefas mais complexas eram triviais.

O Akita fez um post onde ensinava a deixar o VIM pronto para o desenvolvimento em Rails que eu decidi seguir e….

… realmente o bicho ficou bonitinho! Mas continuava bizarro. Ficar alternando entre modos não era nada natural e eu mais uma vez, desencanei.

Continuei meus estudos e num dia falando com o Leo, pedi para ele mostrar o uso do VIM. Puxamos a config dele do github, configuramos e realmente, algumas coisas pareciam amigáveis e sem dúvidas muito inteligentes. Havia muito pra aprender, muitas funcionalidades estavam em plugins e integrações com outras ferramentas.

Passei a usá-lo como editor principal, não só em Rails, e procurando na internet, no livro free tudo que não sabia fazer fui aprendendo a me virar. A curva de aprendizado é grande. Grande não, imensa! No início, tudo parece disperdício e perda de tempo. São muitos comandos para fazer tarefas simples, que num editor comum seriam triviais. Afinal, você está acostumado a apertar uma tecla, e a letra aparecer na tela.

Eu não sou nenhum pioneiro na migração para Rails. Muitas pessoas que eu acompanho dos tempos de .net também estão no mesmo caminho, muitos também começaram a usar o VIM como editor principal. Um caso em especial, é o do Rob Conery, um cara que eu sempre admirei pelo modo de pensar e pela qualidade do código. Em alguns posts recentes, ele falam sobre a experiência com o VIM. A comparação do VIM com cerveja é genial!

Enfim, o investimento tem se pagado, tenho me tornado cada dia mais produtivo. Passo então a ser mais um dos que diz: Cerveja é uma delícia! (leia o post do Conery!) Eu sei que você acha amarga e acha bizarro que eu e um monte de gente tome com tanto prazer.

Talvez provando você também possa entender os motivos. Eu vou compartilhar em alguns posts curtos a solução de alguns problemas que for encontrando no dia a dia (Com VIM, não com cerveja) e espero que sejam de alguma utilidade.

Seguem algumas fontes para pesquisa/estudo:

Vim 101 (dicas)
http://twitter.com/vim101

VimCasts
http://vimcasts.org/

PeepCode
http://peepcode.com/products/smash-into-vim-i
http://peepcode.com/products/smash-into-vim-ii

vimbook (Livro sobre o Vim em português)
http://code.google.com/p/vimbook/

Vim Tips Wiki
http://vim.wikia.com/wiki/Vim_Tips_Wiki

Anúncios

Ações

Information

Deixe um comentário

Preencha os seus dados abaixo ou clique em um ícone para log in:

Logotipo do WordPress.com

Você está comentando utilizando sua conta WordPress.com. Sair / Alterar )

Imagem do Twitter

Você está comentando utilizando sua conta Twitter. Sair / Alterar )

Foto do Facebook

Você está comentando utilizando sua conta Facebook. Sair / Alterar )

Foto do Google+

Você está comentando utilizando sua conta Google+. Sair / Alterar )

Conectando a %s




%d blogueiros gostam disto: