Estou usando o vim a 10 anos e não consigo migrar deste editor.

Durante os últimos anos parece que nada mudou e minha produtividade parece estável em termos de editor, mas sempre estou encontrando plugins legais e vou compartilhar meu setup básico com VIM.

Neste tópico não vou falar sobre como fazer o setup do editor e usar as funcionalidaes básicas. Vou apenas expor algumas das coisas que gosto pra caramba no meu setup e workflow do dia a dia.

Eu tenho um fork do dotvim do astrails que tem vários atalhos inspiradores que estou sempre tentando incluir no meu workflow. Esse set de plugins que fiz o fork foi uma dica do @nandosousafr que me apresentou logo que comecei a trabalhar na Resultados Digitais.

, como mapleader

No vim têm esse conceito de map keys com leader.

O leader funciona como um tecla mágica que têm um timeout esperando a próxima tecla, se não acontecer ela é invalidada. Então se você digitar <esc>leader e não seguir com o comando, logo seu <leader> é esquecido.

Lembrando que mapleader é uma variável do vim e por padrão é a a barra invertida: \\.

Nesse caso ele usa , como leader. Então quando eu um mapeamento no vim:

map <Leader>f :call <SID>JumpToFile()<CR>

Isso quer dizer que quando eu estiver usando o editor e usar <esc>,f ele vai chamar a função JumpToFile() que deve estar em algum plugin ou faz parte do vim.

Então se eu fizer um mapeamento:

map <Leader>rr :!ruby %<CR>

Quer dizer que quero rodar um script ruby com o arquivo atual que é compilado em tempo real através da variável %.

Splits, multijanela

No final do vídeo anterior faço um split da tela horizontal e existem várias maneiras de fazer isso.

A gerência de janelas é data por <ctrl-w><disposition> onde <disposition> pode ser s ou n para horizontal ou v para vertical. Use <ctrl>ww para navegar entre as janelas do split. Também é possível clicar para focar em uma janela específica.

Eu me sinto muito confortável trabalhar e acompanhar o contexto de múltiplos arquivos de interesse.

No vídeo abaixo exploro algumas navegabilidades basicas entre arquivos em um projeto rails.

E aí já pensou em dar uma chance para o VIM no seu workflow com Ruby e Rails?

Quais são os atalhos e conveniências que você vê nos outros editores que são parecidos com estes?

Você é um amante do sublime, atom, textmate? Deixe seu feedback!

Eu acredito que os editores são ferramentas chave para ter proudutividade no ambiente de desenvolvimento.

Eu uso o VIM para toda e qualquer edição que exige concentração e produtividade. Não apenas para programar :)

Abaixo fiz um live coding com ruby puro observando meus vícios de linguagem no blog:


Share → Twitter Facebook Linkedin


Hello there, my name is Jônatas Davi Paganini and this is my personal blog.
I'm developer advocate at Timescale and I also have a few open source projects on github.

Check my talks or connect with me via linkedin / twitter / github / instagram / facebook / strava / meetup.