William Oliveira

Carreira em programação, JavaScript, Nodejs, Performance Web, Git, GitHub, Linux, Open Source, mas também coisas realmente importantes como inclusão e diversidade - Vim da periferia pro mundo

Não perca minhas novidades!

Inscreva-se na minha newsletter para receber os últimos artigos, vídeos e sorteios.

Clique aqui para se inscrever

Começando com VIM: O Editor de Texto

A tarefa que um Desenvolvedor de Software precisa cumprir com a maior agilidade é a escrita/edição de texto. Depois de pensar por algumas horas, planejar o que vai fazer e como fazer (quais funções, métodos, classes criar), nós partimos para a escrita do código fonte no nosso editor de texto favorito ou em uma IDE.

Existem várias técnicas para você ficar fera no teclado, porém hoje vou apresentar outra forma de agilizar as coisas. Vou apresentar (pela minha perspectiva) o VIM.

O VIM é um editor de texto muito amado por alguns e odiado por outros. A primeira vez que você abre o VIM, você pensa: como é que eu faço pra sair daqui.

Existe até uma piada (velha) que diz:

HUE HUE HUE.

Eu sou apaixonado pelo Sublime Text a alguns anos e você pode sentir isso nesse post, onde eu falo sobre o uso do Sublime Text no dia-a-dia, nesse outro post, onde eu ensino instalar e configurar o Sublime no Ubuntu, nesse outro post, que eu mostrei alguns plugins que uso diariamente e no meu .dotfiles, onde você encontra mais plugins e configurações legais para o Sublime.

Mas, se o Sublime Text atende hoje 100% meu Workflow e eu sou apaixonado por esse editor, então por que eu fui inventar de aprender usar o VIM?

A resposta é simples: fui experimentar.

Eu sempre vi algumas pessoas aclamando o editor como se ele fosse um deus de alguma religião, e de fato é. Existe até uma Igreja do VIM, onde você pode aprender como exorcizar um computador!

Sai capeta Achei muito interessante essa comunidade em cima de um editor de texto e fui conhecer melhor. Em São Paulo existe até um grupo de Meetup, o VIM-SP. Gostei bastante da galera que usa o editor e acabei me interessando mais em aprender a usa-lo.

Também foi quando eu vi o site, extremamente futurista, do VIM, que logo eu decidi que deveria testar de verdade esse negócio!

Então, sem mais delongas, vamos a minha visão da coisa.

Primeiros contatos com o VIM

O primeiro contato com o VIM pode ser bem esquisito. Você pensa: Pra que que eu vou sair do meu super editor pra vir pra esse negócio, dentro do Terminal, cheio de atalhos que eu tenho que decorar???

A primeira vez que eu abri o VIM para editar um texto grande, me senti usando uma dessas:

"Máquina de escrever"

Mas a primeira impressão não bastou pra mim.

Acabei descobrindo que estava colocando o carro na frente dos bois.

A tal da agilidade usando VIM

A primeira coisa que você precisa entender, quando começa a usar o VIM, é que você não precisa forçar para decorar TODOS os comandos de uma só vez. Você só precisa aprender os básicos e depois vai, gradualmente, aumentando seu nível de uso do editor e sua agilidade ao usar o mesmo.

É igual usar qualquer outro editor. Você não sai digitando extremamente rápido quando começa a usar uma IDE. Demora para você pegar todos os comandos, o mesmo funciona com os editores de texto e o VIM não é diferente disso.

Durante o aprendizado eu fui salvando os comandos que eu ia aprendendo em um repositório no meu GitHub, que acabou se tornando um GitBook chamado VIM para Noobs, onde você pode encontrar vários comandos, plugins úteis, temas e mais fonte de informação sobre o editor, mas não caia de cabeça nele agora. Continue a leitura.

Acho que o principal problema de quem começa com o VIM é a ideia de que, se outras pessoas dizem que escrevem texto super rápido no editor, logo no primeiro dia eu preciso escrever assim também.

Fast type writer

Mas não é bem assim.

Se imagine aprendendo uma nova linguagem de programação, no primeiro dia você já sai dando aula? - Se você for um prodigio, não responda, por favor. ;P

Antes de começar a usar o VIM, saiba

O VIM trabalha com modos de operação. Onde, se você está em um modo ele possui determinados comandos e em outro modo os mesmos comandos podem fazer outra coisa. Os modos do VIM são os seguintes:

O modo em que você está fica marcado na parte de baixo do editor.

Ex.:

Modo de inserção

Alguns comandos do VIM aparecem nos tutoriais como letra maiúscula. Significa que você usa SHIFT + letra para executar o comando.

A maioria dos comandos é executado em Modo Normal.

Agora vamos conhecer os comandos que, realmente, vamos utilizar muito no começo.

Foque neles, nos primeiros dias, até aprender bem.

Abrir um arquivo

No Terminal, você pode cambiar até a pasta onde está o arquivo que você vai abrir e então basta digitar:

vim nome_do_arquivo

Mas você também pode usar o comando direto:

vim diretorio/outro_diretorio/nome_do_arquivo

Sintaxes

O VIM vai reconhecer a sintaxe automaticamente quando você abrir um arquivo com extensão específica, mas, se você começar a partir do VIM a criar um arquivo que ainda não existe no sistema, você pode executar o comando:

set syntax=sintaxe

Ex.:

set syntax=javascript

Para que o VIM passe a reconhecer a sintaxe que você está digitando.

Se movimentando dentro de um texto

Você pode usar as setinhas do teclado no começo, mas com o tempo vai aprender a usar mais as próprias letras, então você poderá usar:

Isso no Modo Normal.

Uma maneira de se acostumar a usar os movimentos pelas letras é brincar um pouco no VIM Adventures.

Existe, ainda, algumas coisinhas legais que você vai usar bastante:

Da para formar comandos com contadores para agilizar ainda mais as coisas.

Imagine que você precisa pular 10 linhas no texto, você pode usar 10j.

Inserindo texto com VIM

Saber se movimentar vai servir para ler um texto ou para posicionar o cursor para executar um comando, mas como escrever um texto?

É bem simples, você pode pressionar o i para entrar no modo de inserção onde o cursor estiver posicionado e pode sair digitando a vontade.

Claro que, também, tem alguns comandinhos legais que você pode usar:

Como apagar um texto

Você pode usar:

Como copiar e colar ou recortar texto usando o VIM

Para copiar e colar você vai usar o comando y, para copiar, e o p, para colar.

Para facilitar a vida:

Já para recortar um texto é, ainda, mais simples.

Toda vez que você deleta um texto usando x, dd, dw, etc, o VIM não joga fora de uma vez, ele armazena em cache e você pode usar o p para colar em outro lugar.

Ex.:

Você pode deletar uma linha inteira usando dd e depois colar em outro lugar usando o p.

Para copiar para o Clipboard e poder colar fora do VIM, você vai selecionar o texto usando o modo visual (v) e usar o comando "+y.

Para colar a partir do Clipboard você pode usar "+p.

E o mesmo esquema de montar comandos com contadores funciona para os de copiar e colar.

Ex.:

Copiar 10 linhas de um texto

10yy

Como desfazer alguma coisa

Quando fazemos algo errado, podemos usar o famoso CTRL+Z nos editores comuns, mas no VIM é um pouco diferente.

Você vai utilizar os comandos:

Como localizar uma palavra dentro de um texto

Você pressionaria o CTRL+F em editores comuns, mas no VIM você vai usar somente RegEx!

No modo normal, você pode pressionar /, digitar o texto, pressionar enter e a busca vai acontecer.

Para pular de uma ocorrencia para outra você pode usar n para ir para a próxima e N para voltar.

Salvando ou saindo de um arquivo

Depois de editar o texto, conforme ensinado, como salvar as coisas agora?

É bem simples, você vai usar os comandos, no modo normal:

Se você quiser salvar o arquivo com outro nome, então pode utilizar o :w novo_nome e pronto!

Ainda se quiser salvar com um novo nome e sair do arquivo, pode usar: :wq novo_nome

E se você não quiser ficar digitando :wq, pode ainda usar o ZZ, que também salva e sai do arquivo

História do VIM e mais comandos legais

Se você quiser conhecer a história por trás dos comandos do VIM, da uma olhada nesse vídeo do Magnun Leno, no Grupylango.

Você vai entender o por que dos comandos específicos.

Dizem que, se usarmos o VIM por muito tempo, logo estaremos digitando extremamente rápido. Igual esse gatinho:

Gatinho digitando

Plugins, temas, janelas, abas, sintaxes configurações especiais e magia negra

O VIM ainda possui MUUUUUITO mais coisas para se aprender.

O mais legal do VIM é que ele é extremamente “Hackeavel” (não que o Sublime também não seja). Você pode deixar o SEU VIM com sua cara, sua forma de digitar, suas manias, etc.

Isso você vai conseguir através de configurações no .vimrc, que é o arquivo de configuração do VIM, com plugins e até criando seus comandos e macros.

Como eu disse foque nos comandos principais na primeira semana, pelo menos, e depois vá se aprofundando, instalando plugins, criando comandos, etc.

Mas as primeiras configurações, como mudar um tema, você pode fazer logo de começo.

Você vai encontrar temas legais nesse site e, normalmente, a forma de instalar o tema, consta na documentação dos mesmos.

O esquema de cores que eu curto é esse aqui, parecido com o Monokai do Sublime.

Se quiser, pode até criar seu próprio tema rapidamente aqui.

Tudo isso e um pouco mais, você encontra no VIM para Noobs, depois de passar uma semana com o VIM, da uma olhada lá para aprender um pouco mais. :D

E ai, curtiu conhecer o VIM?

Eu ainda não utilizo ele 100%. O Sublime ainda é meu editor principal, mas, aos poucos, eu estou migrando para o VIM.

Logo logo postarei mais sobre minhas experiências com esse negócio!

Se curtiu esse artigo, compartilhe com os amigos nas Redes Sociais, espalhe nos grupos, mostra pro seu Gatinho.

Espalhe a palavra.

Espalhe a palavra!

Compartilhe este artigo nas redes sociais clicando nos ícones.

Deixe um comentário