blog-post

Usando VIM

author image
Índice

Ainda faço pouca coisa no VIM mas vou acrescentando aqui conforme vou aprendendo

Introdução

Tem um certo tempo que uso o VIM da forma mais básica possível, mas tudo mudou quando resolvi estudá-lo e quero compartilhar o que vou aprendendo e usando.

Antes de tudo

Ao instalar o pacote vim, em seu sistema operacional, perceberá que virá junto o vimtutor e esse deve ser o seu primeiro passo para começar a usar o VIM.

Captura de tela do vimtutor

Tinham anos usando o VIM e nunca tinha ouvido falar no vimtutor e, te garanto, ajudou muito e é a primeira coisa que recomendo.

Alguns comandos organizados por contexto (cheat sheet 📝)

Linhas 〰️

Mover o cursor

ComandoDescrição
jPara a linha abaixo
kPara a linha acima
g jQuando tem quebra de linha, para a linha abaixo
g kQuando tem quebra de linha, para a linha acima
0Para o início da linha
^Para o primeiro caractere que não está em branco (identação?!)
$Para o fim da linha
g _Para o último caractere que não está em branco
g gPara a primeira linha do documento
GPara a última linha do documento
7 g gVai para a linha 7
7 GVai para a linha 7

Manipular/editar com o cursor

ComandoDescrição
c cModificar (substituir) linha inteira
c $Modificar (substituir) do cursor até a linha inteira
CModificar (substituir) do cursor até o fim da linha
JTrás a linha de baixo para cima separando por espaço
g JTrás a linha de baixo para cima sem separar por espaço
IEntrar no modo de inserção no início da linha
🌱

Palavras 🗨️

Mover o cursor

ComandoDescrição
wAvança para o início da próxima palavra
WAvança para o início da próxima palavra (incluindo pontuação)
bVolta para o início de uma palavra
BVolta para o início de uma palavra (incluindo pontuação)
eAvança para o fim da próxima palavra
EAvança para o fim da próxima palavra (incluindo pontuação)
g eVolta para o fim da próxima palavra
g EVolta para o fim da próxima palavra (incluindo pontuação)

Manipular com o cursor

ComandoDescrição
wAvança para o início da próxima palavra
WAvança para o início da próxima palavra (incluindo pontuação)
🌱

Caracteres🅰️

Mover o cursor

ComandoDescrição
hMove o cursor para a esquerda
lMove o cursor para a direita

Manipular com o cursor

ComandoDescrição
rSubstitui o caractere no cursor
xApaga (recorta) o caractere no cursor
iEntra no modo de inserção após o cursor
🌱

Interface💻

🌱

Gerenciamento de arquivos📂

🌱

Gerenciamento da edição

ComandoDescrição
uDesfazer/voltar
URestaura (desfaz) a última linha alterada
Ctrl+rRefaz
.Repete o último comando

Salvando e/ou saindo do VIM

ComandoDescrição
:wEscreve/salva mas não sai
:w !sudo tee %Escreve/salva o arquivo atual com sudo
:wqEscreve/salva e sai
:xEscreve/salva e sai
Z ZEscreve/salva e sai
:qSai (se houver modificações, falha)
:q!Sai descartando modificações
Z QSai descartando modificações
:wqaEscreve/salva e sai de todas as abas

Casos de uso do VIM🤔

Alguns usos que me chamaram atenção e que podem chamar a sua também! Fiz animado para sentir o drama kkkk.

Escrever em múltiplas linhas✏

Animação da inserção multilinha com vim

Comandos usados (caso não dê para acompanhar pelo key-mon):

  • Ctrl+v para entrar no modo visual;
  • j várias vezes para escolher a quantidade de linhas afetadas;
  • I (ou Shift+i) para entrar no modo de inserção no início da linha e, daí, escrevo ##;
  • Esc para aplicar nas linhas selecionadas o que foi escrito.

Apagar em múltiplas linhas🗑

Animação da remoção multilinha com vim

Comandos usados (caso não dê para acompanhar pelo key-mon):

  • Ctrl+v para entrar no modo visual;
  • j várias vezes para escolher a quantidade de linhas afetadas;
  • l uma vez para selecionar o segundo caractere (pra pegar os dois ##);
  • x para apagar o que está na seleção.

Publicações Recentes

blog-post

Ativar WSL do Windows

Este how-to é baseado na documentação oficial. Sobre a foto de capa: Foto de Umberto na Unsplash Pré-requisitos Tenha …

blog-post

O navegador Vieb

O que é o Vieb? Vieb é um navegador, software livre, baseado em Electron com interface gráfica minimalista, onde sua …

Quer saber mais sobre mim?

Para conversar comigo ou saber outros detalhes profissionais
me encontre no…

Linkedin
*