Table of Contents
Nível Básico
- i: Entra no modo de inserção, permitindo digitar no texto.
Exemplo: Após pressionar 'i', você pode começar a digitar onde o cursor está posicionado.
- ESC: Sai do modo de inserção ou de qualquer outro modo, retornando ao modo normal.
Exemplo: Quando você terminar de editar, pressione 'ESC' para voltar ao modo normal.
- :w: Salva o arquivo.
Exemplo: Após editar um arquivo, digite ':w' e pressione 'Enter' para salvar as mudanças.
- :q: Sai do editor.
Exemplo: Para sair do Vim, digite ':q' e pressione 'Enter'. (Se houver mudanças não salvas, será necessário adicionar '!' para forçar a saída.)
- :wq: Salva e sai do editor.
Exemplo: Após fazer modificações, use ':wq' para salvar as mudanças e fechar o arquivo.
- dd: Exclui a linha onde o cursor está.
Exemplo: Se quiser remover uma linha inteira, posicione o cursor nela e pressione 'dd'.
- yy: Copia (yank) a linha atual.
Exemplo: Para copiar uma linha, posicione o cursor sobre ela e pressione 'yy'. Você pode colar essa linha com o comando 'p'.
- p: Cola o conteúdo copiado após a linha atual.
Exemplo: Após copiar algo com 'yy', use 'p' para colar a linha abaixo do cursor.
- u: Desfaz a última ação.
Exemplo: Se cometer um erro, pressione 'u' para desfazer a última mudança.
- CTRL + r: Refaz a ação desfeita.
Exemplo: Para reverter o comando de desfazer, use 'CTRL + r'.
- x: Exclui o caractere sob o cursor.
Exemplo: Para apagar um caractere específico, posicione o cursor sobre ele e pressione 'x'.
- :help [comando]: Mostra a ajuda para um comando específico.
Exemplo: Para obter ajuda sobre o comando 'w', use ':help w' e pressione 'Enter'.
Nível Intermediário
- /palavra: Procura pela palavra no texto.
Exemplo: Digite '/erro' e pressione 'Enter' para encontrar a próxima ocorrência de “erro” no arquivo.
- n: Vai para a próxima ocorrência da palavra procurada.
Exemplo: Após buscar uma palavra com '/', pressione 'n' para ir para a próxima ocorrência.
- N: Vai para a ocorrência anterior da palavra procurada.
Exemplo: Após buscar uma palavra com '/', pressione 'N' para ir para a ocorrência anterior.
- :%s/palavra/substituição/g: Substitui todas as ocorrências de uma palavra por outra no arquivo inteiro.
Exemplo: Para substituir “erro” por “acerto” no arquivo inteiro, use ': %s/erro/acerto/g'.
- :noh: Limpa o destaque de uma busca anterior.
Exemplo: Após usar a busca '/' para encontrar uma palavra, o Vim destaca todas as ocorrências. Use ':noh' para limpar o destaque.
- V: Seleciona a linha inteira.
Exemplo: Pressione 'V' para selecionar uma linha inteira e então use comandos como 'd' para apagar ou 'y' para copiar a linha.
- CTRL + v: Inicia o modo de seleção em bloco (visual block).
Exemplo: Use 'CTRL + v' para iniciar uma seleção de bloco. Esse modo é útil para editar várias colunas de texto ao mesmo tempo.
- o: Insere uma nova linha abaixo da linha atual e entra no modo de inserção.
Exemplo: Posicione o cursor em uma linha e pressione 'o' para começar a digitar em uma nova linha abaixo.
- O: Insere uma nova linha acima da linha atual e entra no modo de inserção.
Exemplo: Posicione o cursor em uma linha e pressione 'O' para inserir uma linha acima da atual.
- gg: Move o cursor para o início do arquivo.
Exemplo: Pressione 'gg' para mover o cursor diretamente para a primeira linha do arquivo.
- G: Move o cursor para o final do arquivo.
Exemplo: Pressione 'G' para ir diretamente para a última linha do arquivo.
- dG: Exclui da linha atual até o final do arquivo.
Exemplo: Se você deseja apagar todo o conteúdo do arquivo a partir de uma linha específica, posicione o cursor e pressione 'dG'.
- :w !sudo tee %: Salva o arquivo com permissões elevadas (quando abriu o arquivo sem sudo).
Exemplo: Se você abriu um arquivo sem permissões de root, mas precisa salvá-lo, use ':w !sudo tee %' para salvá-lo sem sair do Vim.
- .: Repete o último comando de edição.
Exemplo: Se você deletar uma palavra com 'dw', pode pressionar '.' para repetir a mesma ação.
- :%!sort: Ordena as linhas do arquivo em ordem alfabética.
Exemplo: Para ordenar todo o conteúdo do arquivo, execute ':%!sort'.
Nível Avançado
- :e [nome_do_arquivo]: Abre outro arquivo dentro do Vim.
Exemplo: Para abrir 'meuarquivo.txt' enquanto estiver editando outro arquivo, use ':e meuarquivo.txt'.
- :bnext (ou :bn): Vai para o próximo buffer aberto.
Exemplo: Se você tiver múltiplos arquivos abertos, use ':bnext' para alternar para o próximo buffer.
- :bprev (ou :bp): Vai para o buffer anterior.
Exemplo: Use ':bp' para voltar ao buffer anterior quando estiver alternando entre vários arquivos.
- :sp [nome_do_arquivo]: Divide a janela horizontalmente e abre o arquivo especificado.
Exemplo: Para dividir a tela e abrir 'outroarquivo.txt', use ':sp outroarquivo.txt'.
- :vsp [nome_do_arquivo]: Divide a janela verticalmente e abre o arquivo especificado.
Exemplo: Use ':vsp outroarquivo.txt' para dividir verticalmente e abrir outro arquivo na nova janela.
- CTRL + w + w: Alterna entre as janelas divididas.
Exemplo: Quando você tem múltiplas janelas abertas, use 'CTRL + w + w' para navegar entre elas.
- :resize +N: Aumenta o tamanho da janela corrente em N linhas.
Exemplo: Use ':resize +5' para aumentar a altura da janela em 5 linhas.
- :resize -N: Diminui o tamanho da janela corrente em N linhas.
Exemplo: Use ':resize -5' para diminuir a altura da janela em 5 linhas.
- CTRL + w + =: Faz com que todas as janelas tenham o mesmo tamanho.
Exemplo: Após redimensionar janelas, pressione 'CTRL + w + =' para restaurar o tamanho padrão de todas.
- :windo [comando]: Executa um comando em todas as janelas abertas.
Exemplo: Para salvar todos os arquivos abertos em janelas diferentes, use ':windo w'.
- q: [número]: Grava uma macro para repetição de comandos.
Exemplo: Pressione 'q' seguido de uma letra (ex: 'qa' para gravar a macro no registro 'a'), execute as ações e depois pressione 'q' novamente para parar a gravação. Use '@a' para executar a macro gravada.
- @a: Executa a macro gravada no registro 'a'.
Exemplo: Após gravar uma macro em 'a' usando 'qa', você pode repetir as ações da macro pressionando '@a'.
- :bufdo [comando]: Executa um comando em todos os buffers.
Exemplo: Para salvar todos os buffers abertos, use ':bufdo w'.
- :args [arquivo1 arquivo2]: Abre múltiplos arquivos ao mesmo tempo.
Exemplo: Para abrir 'arquivo1.txt' e 'arquivo2.txt' em buffers diferentes, use ':args arquivo1.txt arquivo2.txt'.
- :argdo [comando]: Executa um comando em todos os arquivos abertos com ':args'.
Exemplo: Após abrir múltiplos arquivos com ':args', você pode rodar ':argdo %s/erro/correção/g' para substituir “erro” por “correção” em todos os arquivos.
- :mksession [nome]: Salva a sessão atual (janelas abertas, buffers, etc.).
Exemplo: Para salvar o estado atual do Vim, use ':mksession minha_sessao.vim'. Isso permite reabrir a mesma sessão posteriormente.
- :source [nome]: Reabre uma sessão salva anteriormente.
Exemplo: Para reabrir uma sessão salva com ':mksession', use ':source minha_sessao.vim'.
Nível Especializado
- :set number: Exibe a numeração das linhas.
Exemplo: Ative a exibição de números de linha no Vim com ':set number'.
- :set relativenumber: Mostra números relativos nas linhas, com exceção da linha atual.
Exemplo: Use ':set relativenumber' para facilitar a navegação e saltos entre linhas adjacentes.
- ci[char]: Apaga o conteúdo dentro de um par de caracteres e entra no modo de inserção.
Exemplo: 'ci(' remove o texto dentro dos parênteses e permite editar.
- yi[char]: Copia o conteúdo dentro de um par de caracteres.
Exemplo: 'yi(' copia o texto dentro dos parênteses.
- gf: Abre o arquivo cujo nome está sob o cursor.
Exemplo: Se o nome de um arquivo estiver no texto e o cursor estiver sobre ele, pressione 'gf' para abrir o arquivo no Vim.
- CTRL + ^: Alterna entre os dois últimos arquivos editados.
Exemplo: Para alternar rapidamente entre dois arquivos, pressione 'CTRL + ^'.
- :set autoindent: Ativa a indentação automática.
Exemplo: Ao ativar com ':set autoindent', o Vim automaticamente alinha as linhas subsequentes de acordo com o código anterior.
- :set paste: Desativa o autoindent e outros recursos ao colar texto.
Exemplo: Antes de colar um texto no Vim, use ':set paste' para evitar problemas de formatação.
- :set nowrap: Desativa a quebra automática de linha.
Exemplo: Para que longas linhas de texto não quebrem visualmente, use ':set nowrap'.
- :grep [pattern] [arquivos]: Faz busca no estilo grep dentro dos arquivos.
Exemplo: Use ':grep TODO *.c' para buscar pela palavra “TODO” em todos os arquivos `.c` no diretório atual.
- :copen: Abre a lista de resultados após um comando de busca (como grep).
Exemplo: Após usar ':grep', use ':copen' para abrir a lista de ocorrências encontradas.
- gv: Reseleciona a última seleção visual.
Exemplo: Se você fez uma seleção visual e perdeu o foco, use 'gv' para restaurar essa seleção.
- :map [chave] [comando]: Cria um atalho personalizado para um comando.
Exemplo: Use ':map <F2> :w<CR>' para salvar o arquivo ao pressionar a tecla F2.
- :ab [atalho] [expansão]: Cria uma abreviação que é expandida automaticamente.
Exemplo: ':ab brb be right back' faz com que “brb” seja automaticamente expandido para “be right back”.
- :set spell: Habilita a verificação ortográfica.
Exemplo: Use ':set spell' para ativar a verificação de ortografia e corrigir palavras sublinhadas.
- :diffthis: Ativa o modo de comparação de arquivos (diff) na janela atual.
Exemplo: Quando dois arquivos estão abertos em janelas separadas, use ':diffthis' para ver as diferenças entre eles.
- :set cursorline: Destaca a linha atual onde o cursor está.
Exemplo: Use ':set cursorline' para destacar visualmente a linha onde o cursor se encontra.
- :tabnew [arquivo]: Abre um novo arquivo em uma aba separada.
Exemplo: Para abrir 'outroarquivo.txt' em uma nova aba, use ':tabnew outroarquivo.txt'.
- :tabn: Vai para a próxima aba.
Exemplo: Se você estiver trabalhando com múltiplas abas, use ':tabn' para ir para a próxima.
- :tabp: Vai para a aba anterior.
Exemplo: Use ':tabp' para voltar à aba anterior.
- :earlier [tempo]: Reverte o arquivo para o estado anterior.
Exemplo: Use ':earlier 10m' para ver o estado do arquivo como estava 10 minutos atrás.
- :later [tempo]: Avança o arquivo para o estado mais recente, se você usou ':earlier'.
Exemplo: Se você reverteu o arquivo com ':earlier', pode avançar para o estado mais recente usando ':later'.
- :mksession! [nome]: Salva uma sessão completa de trabalho, incluindo janelas, abas, buffers, etc.
Exemplo: ':mksession! meu_trabalho.vim' salva a sessão atual para que você possa retomá-la depois.
- :set mouse=a: Ativa o uso do mouse no Vim.
Exemplo: Use ':set mouse=a' para permitir a navegação e seleção de texto com o mouse.
- vim -o arquivo1 arquivo2: Abre múltiplos arquivos em janelas divididas horizontalmente.
Exemplo: Use 'vim -o arquivo1 arquivo2' para editar dois arquivos lado a lado.
- vim -O arquivo1 arquivo2: Abre múltiplos arquivos em janelas divididas verticalmente.
Exemplo: Use 'vim -O arquivo1 arquivo2' para abrir dois arquivos em janelas verticais.
