Edição
- r - substituir um único carácter
- J - juntar a linha seguinte com a linha actual
- gJ - join line below to the current one without space in between
- gwip - reflow paragraph
- cc - substituir a linha toda
- C - change (replace) to the end of the line
- c$ - substituir até ao fim da linha
- ciw - change (replace) entire word
- cw - substituir até ao fim da palavra actual
- s - apagar um carácter e substituir texto
- S - apagar um carácter e substituir até ao fim da linha (igual ao cc)
- xp - transpor duas letras (cortar e colar)
- u - anular
- Ctrl + r - refazer
- . - repetir o último comando
Marcação de texto (modo visual)
- v - começar modo visual, marcar linhas e executar um comando (como o y - copiar)
- V - começar modo visual de linha
- o - ir alternadamente para o fim/início da área marcada
- Ctrl + v - iniciar modo visual de bloco
- O - ir alternadamente para o fim/início do bloco na linha actual
- aw - marcar uma palavra
- ab - marcar bloco dentro de (), incluindo ()
- aB - marcar bloco dentro de {}, incluindo {}
- ib - marcar bloco dentro de (), excluindo ()
- iB - marcar bloco dentro de {}, excluindo {}
- Esc - sair do modo visual
Comandos no modo visual
- > - deslocar texto para a direita
- < - deslocar texto para a esquerda
- y - copiar texto marcado
- d - apagar texto marcado
- ~ - alternar maiúsculas/minúsculas
Registos
- :reg - mostrar conteúdo dos registos
- "xy - copiar para o registo 'x'
- "xp - colar conteúdo do registo 'x'
Tip Os registos são guardados em ~/.viminfo e serão carregados novamente quando reiniciar o vim
Tip O registo 0 (zero) contém sempre o último valor copiado
Marcas
- :marks - lista das marcas
- ma - definir a marca 'a' na posição actual
- `a - ir para a posição da marca 'a'
- y`a - copiar texto da posição actual até à marca 'a'
Macros
- qa - começar a gravar a macro 'a'
- q - parar de gravar a macro
- @a - correr a macro 'a'
- @@ - correr novamente a última macro executada